LINUX.ORG.RU

История изменений

Исправление Zubok, (текущая версия) :

Вот и мне интересно, почему apt-get autoremove до сих пор так плохо работает и удаляет НЕ ВСЕ ненужные зависимости после удаления программы?

По умолчанию стоит установка рекомендуемых. Их может удержать другой пакет. А если он не рекомендуемый, а предлагаемый, то уже интереснее. Похоже на ситуацию, когда установленный автоматически пакет только предлагет (suggests) кто-то другой установленный. В этом случае, похоже, пакет может остаться в системе. В любом случае, такие пакеты легко найти aptitude:

$ aptitude search '?for x: ?not(?reverse-depends(?for z: ~i)) \ 
?not(?reverse-recommends(?for z: ~i)) ?reverse-suggests(?for z: ~i) ~i~M'

Запрос какой-то корявый получился, так как с ходу написал его. Надо подумать, как его упростить синтаксически, но он работает. Этот запрос ищет среди *автоматически* установленных пакетов такие, от которых в установленной системе ничего не зависит (не depends), которых никто не рекомендует (не recommends), но которые кто-то предлагает (suggests). По идее, такие пакеты можно безбоязненно удалить, если они кажутся ненужными.

1) aptitude purge `deborphan` (удаляет опять же не всё, остаются, к примеру, пакеты perl-скриптов).

Это совершенно лишнее. С помощью aptitude можно найти любые подвисшие пакеты. Надо только запросы правильные писать.

Исправление Zubok, :

Вот и мне интересно, почему apt-get autoremove до сих пор так плохо работает и удаляет НЕ ВСЕ ненужные зависимости после удаления программы?

По умолчанию стоит установка рекомендуемых. Их может удержать другой пакет. А если он не рекомендуемый, а предлагаемый, то уже интереснее. Похоже на ситуацию, когда установленный автоматически пакет только предлагет (suggests) кто-то другой установленный. В этом случае, похоже, пакет может остаться в системе. В любом случае, такие пакеты легко найти aptitude:

$ aptitude search '?for x: ?not(?reverse-depends(?for z: ~i)) \ 
?not(?reverse-recommends(?for z: ~i)) ?reverse-suggests(?for z: ~i) ~i~M'

Запрос какой-то корявый получился, так как с ходу написал его. Надо подумать, как его упростить синтаксически, но он работает. Этот запрос ищет среди *автоматически* установленных пакетов такие, от которых ничего не зависит (не depends), которых никто не рекомендует (не recommends), но которые кто-то предлагает (suggests). По идее, такие пакеты можно безбоязненно удалить, если они кажутся ненужными.

1) aptitude purge `deborphan` (удаляет опять же не всё, остаются, к примеру, пакеты perl-скриптов).

Это совершенно лишнее. С помощью aptitude можно найти любые подвисшие пакеты. Надо только запросы правильные писать.

Исправление Zubok, :

Вот и мне интересно, почему apt-get autoremove до сих пор так плохо работает и удаляет НЕ ВСЕ ненужные зависимости после удаления программы?

По умолчанию стоит установка рекомендуемых. Их может удержать другой пакет. А если он не рекомендуемый, а предлагаемый, то уже интереснее. Похоже на ситуацию, когда установленный автоматически пакет только предлагет (suggests) кто-то другой установленный. В этом случае, похоже, пакет может остаться в системе. В любом случае, такие пакеты легко найти aptitude:

$ aptitude search '?for x: ?not(?reverse-depends(?for z: ~i)) \ 
?not(?reverse-recommends(?for z: ~i)) ?reverse-suggests(?for z: ~i) ~i~M'

Запрос какой-то корявый получился. Надо подумать, как его упростить синтаксически, но он работает. Этот запрос ищет среди *автоматически* установленных пакетов такие, от которых ничего не зависит (не depends), которых никто не рекомендует (не recommends), но которые кто-то предлагает (suggests). По идее, такие пакеты можно безбоязненно удалить, если они кажутся ненужными.

1) aptitude purge `deborphan` (удаляет опять же не всё, остаются, к примеру, пакеты perl-скриптов).

Это совершенно лишнее. С помощью aptitude можно найти любые подвисшие пакеты. Надо только запросы правильные писать.

Исходная версия Zubok, :

Вот и мне интересно, почему apt-get autoremove до сих пор так плохо работает и удаляет НЕ ВСЕ ненужные зависимости после удаления программы?

По умолчанию стоит установка рекомендуемых. Их может удержать другой пакет. А если он не рекомендуемый, а предлагаемый, то уже инетреснее. Похоже на ситуацию, когда установленный автоматически пакет только предлагет (suggests) кто-то другой установленный. В этом случае, похоже, пакет может остаться в системе. В любом случае, такие пакеты легко найти aptitude:

$ aptitude search '?for x: ?not(?reverse-depends(?for z: ~i)) \ 
?not(?reverse-recommends(?for z: ~i)) ?reverse-suggests(?for z: ~i) ~i~M'

Запрос какой-то корявый получился. Надо подумать, как его упростить синтаксически, но он работает. Этот запрос ищет среди *автоматически* установленных пакетов такие, от которых ничего не зависит, которых никто не рекомендует, но которые кто-то предлагает (suggests). По идее, такие пакеты можно безбоязненно удалить, если они кажутся ненужными.

1) aptitude purge `deborphan` (удаляет опять же не всё, остаются, к примеру, пакеты perl-скриптов).

Это совершенно лишнее. С помощью aptitude можно найти любые подвисшие пакеты. Надо только запросы правильные писать.