Поиск всех «необходимых» пакетов с помощью apt

Поиск всех «необходимых» пакетов с помощью apt

Когда я запускаю synaptic, есть определенные пакеты, которые synaptic рассматривает как «необходимые». Например, если я выберу bash для удаления, я буду предупрежден, что bash является «необходимым пакетом». Если я затем нажму кнопку «Применить», я получу список пакетов, которые будут обработаны. Один из этих списков — список необходимых пакетов, которые я собираюсь удалить.

Как с помощью набора инструментов apt сгенерировать список всех пакетов, которые Synaptic считает необходимыми?

решение1

Вы можете перечислить все основные пакеты, используя aptitude search '?essential'или dpkg-query -Wf '${Package;-40}${Essential}\n' | grep yes.

Кроме того, есть также несколько пакетов с приоритетомнеобходимыйчто вам также не следует удалять:dpkg-query -Wf '${Package;-40}${Priority}\n' | grep -E "required"

Довожу до вашего сведения,СущественныйиПриоритетполя в контрольном файле пакета.

решение2

aptitude search ~E

для других шаблонов поиска вы можете посмотреть вдок-т способностей.

решение3

  • для ежедневного использования: apt list ?essentialилиapt list ~E
  • для сценария:apt-cache show ~E | grep -Po '(?<=^Package: ).*'

?essentialи ~Eзадокументированы вapt-шаблоны(7), доступно в Ubuntu 20.04 LTS и Debian 11.

Связанный контент