Какие пакеты установлены по умолчанию в Debian? Есть ли термин для этого набора? Почему некоторые из этих пакетов «автоматически установлены», а некоторые нет?

Это очень простой вопрос, но мне интересно, есть ли термин для ссылки на подмножество пакетов, которое автоматически устанавливается дистрибутивом Debian?

Я полагаю, что это связано с приоритетами пакетов, но, похоже, это не так, потому что по умолчанию установлены пакеты всех уровней приоритета среди пакетов, установленных по умолчанию.

Кроме того, некоторые из этих пакетов исходного подмножества automatically installed флаг, например, wireless-tools . Таким образом, они будут автоматически удалены, если пакеты исходного подмножества, в зависимости от них, будут удалены вручную. Интересно, делает ли инструмент установки только список пакетов, которые будут считаться вручную установленными, и автоматически устанавливает их зависимости?

Ответ на первые два вопроса: после установки основных утилит Debian, установщик Debian, похоже, вызывает tasksel для выполнения «задач» установки. Среди типичных задач – «стандартная» задача и «ноутбук». На странице tasksel :

«стандартная» задача

Стандартная задача – это специальная задача, используемая установщиком Debian. Фактически это зависит от приоритетов пакетов. В чем состоит задача «стандартной системы»?

tasksel --task-packages standard

которая представляет собой строку поиска aptitude, которая приравнивается к

aptitude search ~pstandard ~prequired ~pimportant -F%p

Поэтому tasksel устанавливает standard , required и important пакеты.

задача «ноутбук»

Задача ноутбука – специальная задача, используемая установщиком Debian, чтобы вытащить пакеты, полезные на ноутбуке:

  • Wireless-инструменты
  • ACPI-поддержка
  • cpufrequtils
  • ACPI
  • wpasupplicant
  • PowerTOP
  • ACPID
  • APMD
  • pcmciautils
  • вечера-Utils
  • Anacron
  • Avahi-autoipd
  • блютуз

рабочий стол

См. Https://wiki.debian.org/DebianDesktop/Tasks

base system описана в политике Debian как все пакеты с required или important приоритетом.

Вы можете найти пакеты, к которым прилагаются required и important приоритеты, с помощью утилиты aptitude .

 aptitude search ~prequired -F"%p" aptitude search ~pimportant -F"%p" 

debootstrap устанавливает эти пакеты во время процесса установки.
tasksel затем устанавливает любые другие роли, которые вы выбираете сверху, обычно используется стандартный выбор по умолчанию.

В дополнение к тому, что указано в базовой системе, вы получите

  • Ядро (к счастью)
  • Пакеты ввода / локали / словаря.
  • Аппаратные пакеты. (ACPI, USB, PCI, виртуальные гостевые дополнения на vm's)
  • Затем некоторые зависимые библиотеки поддерживают вышеуказанное.

Это составляет около 60 пакетов на моей виртуальной виртуальной машине (без гостевых дополнений VBox, которые занимают много зависимостей).

Запустите Expert Install (выберите «Дополнительные параметры> Эксперт»), если у вас есть шанс. Это дает вам более полное представление о пошаговом процессе установки и когда apt запускается за пределами базовой установки.

Также, что относительно автоматически установленного статуса для этих пакетов? Они не всегда получают этот флаг, верно?

Все пакеты, которые установлены только потому, что на них установлен другой пакет, должны иметь этот флаг. Менеджер пакетов использует этот флаг для поиска неиспользуемых / потерянных пакетов, то есть пакетов, которые установлены, хотя больше нет установленного пакета, который зависит от этих пакетов. Такие осиротевшие пакеты будут автоматически удалены.

Например, скажем, вы устанавливаете пакет exim4-daemon-light . Этот пакет зависит от exim4-base , поэтому менеджер пакетов должен установить оба этих пакета в вашей системе. Затем флаги устанавливаются так:

  • exim4-daemon-light : не устанавливается автоматически, потому что вы явно сказали диспетчеру пакета установить его
  • exim4-base : автоматически устанавливается; вы явно не сказали диспетчеру пакета установить его, но он должен был установить этот пакет автоматически, потому что exim4-daemon-light зависит от него

Когда вы теперь сообщаете диспетчеру пакета удалить exim4-daemon-light , он использует флаг «автоматически установлен» exim4-base чтобы определить, что этот пакет также можно удалить. Он просматривает список установленных пакетов, которые зависят от exim4-base , и если их нет, он удалит exim4-base .

Этот механизм существенно гарантирует, что ваша система не будет содержать ненужные пакеты.

Вы можете изменить флаг с помощью команд aptitude markauto и unmarkauto . Это будет иметь следующие эффекты:

  • aptitude markauto : как только пакеты больше не установлены, которые зависят от этого пакета, он будет автоматически удален. Если в настоящее время нет установленных пакетов, зависящих от этого пакета, они будут немедленно удалены.
  • aptitude unmarkauto : пакет никогда не будет удален автоматически, даже если на нем не установлены пакеты, которые зависят от него.

Какие пакеты установлены по умолчанию в Debian?

В зависимости от установленной вами среды (Cinnamon, GNOME, KDE, LXDE, MATE, Standard или XFCE) для нее имеется соответствующий файл iso.packages, который содержит список пакетов, которые будут установлены с этим iso.

Есть ли термин для этого набора?

Стандарт Debian

Почему некоторые из этих пакетов «автоматически установлены», а некоторые нет?

Стандартные пакеты, которые автоматически устанавливаются, позволяют создавать среду рабочего стола с выбранными вами пакетами. Например, если вы устанавливаете среду GNOME, будет много пакетов (например, игр, утилит и т. Д.), Которые вы можете не захотеть и не можете удалить с помощью разрывов (удаление «gnome-nibbles», удаление gnome- рабочий стол).

Например, вы можете создать среду gnome с набором требуемых пакетов (помимо стандарта), что я недавно сделал.