Я только что установил пакет (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]?
Итак, я установил его и зависимости. Пока все хорошо.
Позже я решил, что этот пакет просто не для меня, поэтому я хочу удалить его и все остальные ненужные файлы, которые он установил вместе с ним, так как он мне не понадобится: [ 1110]
# 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 месяца назад, имел зависимости вместе с ним), есть ли способ удалить пакет и все другие зависимости, которые были установлены, как в этом случае?
Как izx сказал, в его общем ответе, первой точке, может быть причина этого вида вещей.
Те зависимости теперь также требуются/рекомендуются некоторым другим пакетом (пакетами), которые все еще установлены в Вашей системе.
Это - самая вероятная и допустимая причина этого вида ситуации, Но я думаю, что, другие пакеты назвали с 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
файлы.
Необходимо удалить установленные пакеты путем явного именования их имени. Так, в Вашей определенной ситуации это
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
команда, следовательно это не рекомендуется. (на самом деле это настоятельно рекомендовано, чтобы не делать это, если Вы не довольны поврежденной системой),
Это не нормальное поведение:
izx@preciseunity:~$ 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: clamav* clamav-base* clamav-freshclam* dansguardian* libclamav6* libtommath0* python-gpgme* 0 upgraded, 0 newly installed, 7 to remove and 91 not upgraded. After this operation, 14.7 MB disk space will be freed. Do you want to continue [Y/n]?
См. Общий ответ №. 1 ниже по наиболее вероятной причине.
Это может происходить по нескольким причинам. Наиболее распространенными из них являются:
Чтобы удалить , используйте apt-cache depends package-name
, чтобы получить его зависимости, и подайте их в apt-get remove
. Дважды проверьте показанный список, чтобы убедиться, что вы ничего не потеряете!
Вы можете сделать это за один шаг с помощью следующей команды (опять же, не нажимайте Y, если вы не прочитали список!) :
sudo apt-get remove `apt-cache depends dansguardian | grep Dep | cut -d: -f2 | tr '\n' ' '`