2010-01-30 00:20:14 +0000 2010-01-30 00:20:14 +0000
197
197

如何用'apt-get'重装一个软件包?

我的aptitude好像不知怎么就坏了:

sudo aptitude update
0% [Working]Segmentation fault

dmesg
[223282.616599] aptitude[30972]: segfault at 67707f ip 7f954dcfae5d sp 7ffff5a5f950 error 4 in libapt-pkg-libc6.7-6.so.4.6.0[7f954dca5000+bd000]

所以我想用aptitude重装apt-get,请问

&001

我想用apt-get重装aptitude

不幸的是,aptitude update好像没有重装的选项。

怎么才能让&007重装呢?

有可能是我找到了aptitude的segfault的根本原因。下面是我的重现方法:

1.通过Cygwin的rxvt终端(从Windows 7 64位德国版)‘ssh'远程登录到Debian机器。放大 rxvt 窗口,使其跨越两个显示器(没错,我有两个显示器) 3. 运行&007。注意:当我把rxvt终端的大小调整到正常的时候,就不会出现这些分段故障了!

答案 (5)

333
333
333
2010-01-30 01:29:56 +0000
$ man apt-get | grep reinsta -A2
       --reinstall
           Re-Install packages that are already installed and at the newest
           version. Configuration Item: APT::Get::ReInstall.

所以,使用它来重装aptitude使用:

sudo apt-get install --reinstall aptitude
120
120
120
2012-07-18 19:45:57 +0000

你可以用sudo apt-get install --reinstall packagename重新安装一个软件包。这可以完全删除该包(但不包括依赖它的包),然后重新安装该包。

当该包有许多反向依赖关系时,这可以很方便。

25
25
25
2014-08-20 05:39:07 +0000

sudo apt-get install --reinstall xxxx

&007

重装应用程序,保留配置文件。

14
14
14
2010-01-30 00:26:22 +0000

移除aptitude并重新安装应该是安全的,因为这不会影响其他apt工具。所以:apt-get remove aptitude之后是apt-get install aptitude,如果还是不行的话,可以尝试apt-get purge aptitude之后是apt-get install aptitude

在做以上任何一个步骤之前,我建议做一个完整的文件系统和坏块检查,以防有问题导致问题的发生(根据问题的不同,如果有问题的话,进一步的活动可能会使事情变得更糟)。另外,确保你在删除/清除步骤中要删除的内容,然后再让它继续进行(如果因为删除那个包而改变了任何额外的东西,它应该会暂停请求许可),以重复检查我的想法,这是很安全的。

1
1
1
2019-09-27 12:19:25 +0000
sudo apt remove --purge package
sudo apt install package

那就好像你以前没有安装过包一样。我是经常做运动之类的事情。