Это большой вопрос. Вы могли бы подумать, что был бы один хороший, удобный инструмент, чтобы сказать вам такие вещи, но я этого не знаю. Я пойду один за другим и дам свои лучшие предложения.
- Для чего используется пакет?
- Когда это было установлено?
- Был ли этот пакет установлен вручную или он требовался другим пакетом?
- Существуют ли в настоящее время какие-либо пакеты, которые зависят от этого пакета, то есть что-то сломается, если он будет удален?
В командной строке
aptitude show package
илиapt-cache show package
предоставим описание пакета, а также много другой информации. Synaptic позволяет искать элемент различными способами и предоставляет описание пакета. (Описания, которые вы получаете от всех этих методов, идентичны. Я полагаю, что все они получают информацию из одного и того же места в .deb.)Такая простая вещь, но кроме копания в логах, я не могу придумать, как это сделать. Synaptic, похоже, не хранит эту информацию в качестве метаданных. (Это приведет к большой ошибке в списке желаний.) Вот один из способов сделать это:
zgrep package /var/log/dpkg*
Это немного глупо, и это даст много выходных данных, но также должно дать вам желаемую дату. (Это нужно,
zgrep
так как старые журналы будут архивироваться с огнестрельным оружием.) Кстати, вы должны иметь права root даже для поискаdpkg
журналов.Если вы запускаете
aptitude show package
установленный пакет, установите флажок «Автоматически установлен». Если он говорит да, он был введен как зависимость какого-то другого пакета. (Для записи есть вещи, которые вы можете сделать, чтобы вручную изменить этот параметр. То есть вы можете пометить пакет, который будет выглядеть установленным вручную, даже если он фактически был установлен как зависимость. Но по большей части результаты здесь должны быть действительным.) Вы также можете фильтровать поиски Synaptic для поиска вещей, установленных как зависимости.Грубый способ проверить это:
aptitude -s remove package
-s
Флаг имитирует команду. Вы можете запустить такую команду как обычный пользователь, и нет никакой опасности нанести вред вашей системе. Это позволяет вам легко увидеть, что будет делать предложенное действие. Нужно иметь в виду, что такая проверка покажет вам грубую поломку, но не приведет к более широким ошибкам. Я имею в виду, что вы можете удалить пакет Foo, не нарушая вашу систему, но это может серьезно ограничить полезность пакета Bar. В общем, пакеты объединяются с помощью рекомендаций, чтобы предотвратить это, но это стоит иметь в виду. Вы также можете выполнять поиск зависимостей и обратных зависимостей, используяapt-cache
, но я считаю, что симуляция - это самый яркий способ увидеть, что произойдет.
Еще один общий совет по поиску для Aptitude. В командной строке вы можете использовать эти поиски, чтобы быстро увидеть, что вы установили по выбору, а не то, что было установлено автоматически, как зависимость чего-то другого:
aptitude search '~i !~M' # Find things not installed as something else's dependency aptitude search '~i ~M' # Find things installed as something else's dependency