Product SiteDocumentation Site

6.4. Графические оболочки: aptitude, synaptic

APT это программа, написанная на C++, исходные коды которой расположены главным образом в разделяемой (общей) библиотеке libapt-pkg. Использование разделяемой библиотеки облегчается создание пользовательского интерфейса (front-ends), притом коды, содержащиеся в библиотеке, можно быстро использовать повторно. Исторически, apt-get была создана первоначально для тестирования пользовательского интерфейса для libapt-pkg. Однако успех ее использования превзошел ожидаемый результат и этим затеняется тот факт, что цель для которой была создана программа - другая.

6.4.1. программа aptitude

aptitude - это интерактивная программа, она также может быть использована в псевдо-графической моде а консоле. Вы можете посмотреть перечень установленных и доступных пакетов, прочитать всю доступную о них информацию, и выбрать пакеты для установки или удаления. Программа была создана специально - для использования администраторами. Поведение этой программы по умолчанию намного более понятливо чем apt-get's, а пользовательский интерфейс - проще к пониманию.
The aptitude менеджер пакетов

Рисунок 6.1. The aptitude менеджер пакетов

Сразу после старта программа aptitude показывает перечень пакетов, отсортированных по их состоянию (установленные, не установленные, или установленные, но не доступные на зеркалах (на одной части экрана). На другой части экрана (в другой секции) отображаются задачи, виртуальные пакеты, и новые пакеты, что появились недавно на зеркалах). Для облегчения тематического просмотра есть возможность представить информацию на экране в другом виде. Во всех случаях aptitude отображает перечень скомбинированных категорий и пакетов на экране. Категории (подразделы, ветви) организованы в древовидную структуру. Для просмотра категорий можно соответственно раскрыть или закрыть их с клавишами Enter, [ и ]. Клавиши + используется для пометки пакета к установке, - помечает его к удалению и _ - начисто удалить пакет (удалить не только пакет, но и конфигурационные и др. изменяемые файлы). Запомни, что эти клавиши можно также использовать для категорий. В этом случае действие помеченной категории будет распростаняться на все пакеты, что расположены внутри. Например - если помечен подраздел к удалению, то он будет удален весь - удалятся все файлы, расположенные внутри него (будьте осторожны!). u - обновит перечень доступных пакетов (с зеркал) и Shift+u подготавливает к глобальному обновлению системы. g переключается в режим показа запрошенных изменений (нажав повторно клавишу g вы дадите программе разрешение на установку-замену и т.д., что вы ей задали). q - выход из настоящего просмотра (и из программы). Если после первого нажатия клавиши "g" и показа вам - что программа намерена установить-удалить - вы решите, что не согласны и хотите что-то изменить- нажмите тоже клавишу "q" и вы выйдете в предыдущий экран и можете поправить то, что вы хотели. Когда вы находитесь в первоначальном экране просмотра (как при старте) - с помощью клавиши "q" вы выйдете из программы aptitude .
Для поиска пакета нажмите / и, в открывшемся окошке, введите пример (шаблон). Этот шаблон программа будет искать в именах пакетов. Можно также искать в других секциях пакета. Для этого в окошке для поиска надо ввести вначале дополнительное сочетание клавиш, а потом само слово для поиска: ~d - для поиска в описании пакета ~s - для поиска в разделе. Есть и другие характеристики, которые подробно описаны в документации. Похожие шаблоны могут фильтровать перечень показываемых пакетов. Для этого нажмите клавишу l и далее введите имя шаблона (как в limit). Будут видны только пакеты, в названии которых упоминается шаблон.
Управление "автоматическим флагом" (“automatic flag”) в пакетах Debian-а (смотри Раздел 6.2.7, «Трассирование автоматически устнавливаемых пакетов (наблюдение)») легче с aptitude. Можно при просмотре списка установленных пакетов пометить пакет с "автоматическим флагом" (“automatic flag”) - комбинацией клавиш Shift+m. Удалить эти пометки - с клавишей m. Пакеты, с установленным "автоматическим флагом" (“Automatic packages”) показаны с отметкой “A” слева на экране напротив имени пакета. А эта функция предлагает простой путь отчетливо представить себе перечень пакетов, использованных на вашем компьютере, чтобы вы действительно не беспокоились о библиотеках и зависимостях. Соответствующий шаблон может быть использован с l (чтобы активировать режим фильтрации) и ~i!~M. А эта функция позволит вам посмотреть установленные пакеты (~i), а те что не промаркированы как автоматически поставленные смотрим так (!~M).

6.4.1.1. Управление Рекомендациями, Предложениями и Задачами

Другой интересной особеностью программы aptitude является то обстоятельство, что она принимает во внимание рекомендации между пакетами, но в то же время дает возможность пользователям не устанавливать их в базовой компоновке (то есть в том объеме, что программа прелагает первоначально). Для примера, пакет gnome рекомендует программу gdebi (один из нескольких рекомендованных пакетов). Когда вы выбираете предшествующий (чуть выше упомянутый) пакет для установки, последний (то есть рекомендованный) пакет будет также выбран (и маркироваться как "автоматически установленный", если ранее он не был установлен в системе). Нажав клавишу g станет очевидно: пакет gdebi появился на экране в списке отложенных действий, при этом данный пакет помечен программой как "автоматически установленный" - для удовлетворения зависимостей (памятка - выйти из этого предварительно просмотра надо клавишей "q"). Однако, ты можешь решить не устанавливать этот (второй) пакет (и отметить это через "-" - то есть снять метку "+") до подтверждения операции (до повторного нажатия клавиши "g").
Запомни, что эта рекомендованная трассирующая (отслеживающая) возможность не применяется к обновлениям (upgrade). Для примера, если новая версия gnome рекомендует пакет, что ранее не рекомендовала, пакет не будет отмечен к установке. Однако это будет показано на предварительном просмотре на экране при обновлении и администратор сможет сам отметить данный пакет к установке (если в нем есть необходимость).
Предложения между пакетами также учитываются, но с учетом их особенного положения. Для примера, программа gnome предлагает dia-gnome, последний будет показан на экране в итоговом предварительном просмотре планируемых действий программы (в разделе, где пакеты предлагают другие пакеты). Этот вывод на экран просматривает администратор и решает - надо ли брать предложение в расчет или нет. Это есть только предложение, а не зависимость и рекомендация, пакет не будет выбираться автоматически — этот выбор нуждается в ручном вмешательстве пользователя (таким образом, пакет не будет маркирован как "автоматически установленный").
В том же духе, вспомните aptitude делает умное использование общего представления задачи. Как только задача отображается как категории на экране в перечне пакетов, ты можешь выбрать из двух вариантов: согласиться на полный вариант предложенного для установки или удаления, или просмотреть перечень пакетов, включенных в задачу, чтобы выбрать более мелкие под-задачи (и откорректировать при необходимости. Например отказаться от рекомендованных и предложенных пакетов).

6.4.1.2. Улучшенные алгоритмы решения

Завершая этот раздел, хотелось бы напомнить, что программа aptitude имеет более продуманные алгоритмы в сравнении с apt-get в случаях, когда приходится разрешать затруднительные ситуации. После определения пользователем что он хочет установить или удалить (отметил соответствующим образом в программе нужные пакеты) программа просчитывает возможные комбинации. В частности - может ли данные действия привести к разбалансировке системы. aptitude вычисляет несколько возможных сценариев и представляет их в порядке уменьшения рекомендуемого ею (релевантности). Однако те алгоритмы не являются безотказными. К счастью в таких случаях всегда есть возможность вручную выбрать желаемое действие. Когда выбранные действия приведут к противоречиям, верхняя часть экрана покажет количество обрываемых (“broken”) пакетов (и вы можете непосредственно перейти к тем пакетам через нажатие клавишы b). Затем можно вручную откорректировать нужный пакет (согласиться на установку, отменить ее или другое). В частности, вы можете получить доступ к различным доступным версиям пакетов просто выбрав нужный пакет нажатием клавиши Enter. Если, из предложенного, вы выбрали какой-то вариант и он решает возникшую проблему, то программа напишет - что препятствия устранены. Не стесняйтесь использовать данную функцию. Когда количество оборванных пакетов понизится до 0, вы можете без опаски перейти к предварительному просмотру на экране суммарной информации предлагаемых (отложенных) программой действий для последней проверки, прежде чем применять их.

6.4.2. Программа synaptic

Программа synaptic - это графический менеджер для Debian-а, который имеет опрятный и эффективный графический интерфейс базирующийся на GTK+/GNOME. Он имеет много готовых к использованию фильтров. Они дают возможность быстро получить доступ к новым годным пакетам, установленным пакетам, обновляемым пакетам, устарелым пакетам и так далее. При просмотре перечня пакетов вы можете выбрать операции, которые будут сделаны с пакетами (установка, обновление, удаленые, полная очистка вместе с удалением). Эти выбранные операции не будут выполнены немедленно, а только поставлены в перечень планирумых задач (отложенные действия). Одиночное нажатие клавиши мыши запустит процесс выполнения заданного (планируемого). При этом программа сначала проверит правильность операции (имеется в виду нет ли конфликтов с другими пакетами, имеются ли неудовлетворенные зависимости, имеются ли рекомендованные и предлагаемые пакеты и так далее) и затем выполнит их на одном дыхании.
synaptic менеджер пакетов

Рисунок 6.2. synaptic менеджер пакетов