我刚刚安装了一个包(本例中是dansguardian),apt告诉我我有未满足的依赖关系。
# sudo apt-get install dansguardian
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following extra packages will be installed:
clamav clamav-base clamav-freshclam libclamav6 libtommath0
Suggested packages:
clamav-docs squid libclamunrar6
The following NEW packages will be installed:
clamav clamav-base clamav-freshclam dansguardian libclamav6 libtommath0
0 upgraded, 6 newly installed, 0 to remove and 0 not upgraded.
Need to get 0 B/4,956 kB of archives.
After this operation, 14.4 MB of additional disk space will be used.
Do you want to continue [Y/n]?所以我安装了它和依赖项。到目前一切尚好。
稍后,我决定这个包不适合我,所以我想删除它和它安装的所有其他垃圾,因为我不需要它:
# sudo apt-get remove --auto-remove --purge dansguardian
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages will be REMOVED:
dansguardian
0 upgraded, 0 newly installed, 1 to remove and 0 not upgraded.
After this operation, 1,816 kB disk space will be freed.
Do you want to continue [Y/n]?然而,它只是删除了一个特定的包。那clamav clamav-base clamav-freshclam libclamav6 libtommath0呢?它不仅没有删除它们,而且clamav实际上运行的是一个守护进程,每次计算机启动时都会加载这个守护进程。我认为--auto-remove不仅会删除包,而且还会删除与它一起安装的依赖项。
因此,基本上,如果不遍历apt历史日志文件(如果我甚至记得这么做,或者我甚至还记得我在3个月前安装的特定包与它有依赖关系),是否有办法删除包和在本例中安装的所有其他依赖项?
发布于 2012-06-24 03:51:51
正如伊兹所说,在他的一般回答中,第一点可能是造成这类事情的原因。
其他软件包(S)现在也需要/推荐这些依赖项,这些包仍然安装在您的系统上。
这是造成这种情况的最可能和最有效的原因,但我认为,使用clamav clamav-base clamav-freshclam libclamav6 libtommath0命名的其他包很可能只与它们的母包clamav关联。因此,第一点,在这种特殊情况下可能不是这样。
造成此问题的最可能原因是,在安装dansguardian包之后,您随后通过执行以下命令安装了所有它的依赖包:
sudo apt-get install clamav clamav-base clamav-freshclam dansguardian libclamav6 libtommath0如果确实如此,您无法通过删除它们的母包dansguardian来卸载它们。因为在APT的语言中,它们是“手动”安装的,因为您通过将这些包的名称输入apt-get命令来显式地安装它们,所以还必须通过显式声明它们的包名来卸载它们
如果是这样的话,可以通过查看/var/log/apt/history.log文件来检查。
要删除的
您必须通过显式命名它们的name.So来删除已安装的包,在您的特定情况下
sudo apt-get purge clamav clamav-base clamav-freshclam dansguardian libclamav6 libtommath0您可以使用以下命令找到所有依赖的包:
apt-cache depends -i dansguardian | cut -f 2 -d ':' | tr '\n' ' '.注意,dansguardian依赖于包libc6。而这个包在你的系统中是非常重要的。因此,不能通过使用dansguardian命令生成它们的依赖包列表来删除apt-cache的所有依赖项,因此不建议这样做。(实际上,强烈建议您避免这样做,除非您对系统崩溃感到满意)
https://askubuntu.com/questions/155260
复制相似问题