Установка

Установка aptitude: Установка aptitude в Ubuntu / Linux Mint / Debian

Содержание

Как использовать Aptitude package tool на Debian, Ubuntu и Mint Linux » Tapen.ru

Как использовать Aptitude package tool на Debian, Ubuntu и Mint Linux

Aptitude является  front-end к Advanced Packaging Tool ( APT ) . Он отображает список пакетов программного обеспечения и позволяет пользователю интерактивно выбрать пакеты для установки или удаления. Утилита имеет особенно мощную поисковую систему с использованием гибких схем поиска. Программа изначально была создана для Debian , но появился в RPM Package Manager (RPM) на основе распределения (например, Conectiva) .

Основана на NCurses библиотеке компьютерного терминала с которым она предоставляет интерфейс, который включает некоторые элементы, наблюдаемые при графических пользовательских интерфейсов (GUI) .

В дополнение к интерфейсу NCurses, способности предоставляет широкий интерфейс командной строки (CLI ). Способности также эмулирует аргументы командной строки наиболее удачным чем GET, что позволяет ему выступать в качестве полноценной заменой  apt-get . В прошлом было рекомендовано способности и  apt-get будет не взаимозаменяемы.

Aptitude имеет ряд полезных функций , в том числе :

 Синтаксис mutt подходит как для подходящих пакетов на гибкой основе.
Пометить пакет, «автоматически устанавливается» или «установить вручную», так что пакеты могут быть автоматически удалены при необходимости.
Dselect, как сохранение действия пользователя.
Способность получать и отображать Debian изменений большинства пакетов в changelog.
AptCLI-как (= apt-get + apt-cache) режим командной строки («способность установить Foo»)
Утилита умеет распознавать зависимость , а у apt-get такого нет.

Базовое использование Aptitude

Прежде чем мы перейдем к учебной части, убедитесь, что Aptitude установлен в вашей системе. Если это не так, вы можете выполнить следующую команду, чтобы установить Aptitude на вашу ОС:

# sudo apt-get install aptitude

Aptitude может быть использована как в режиме CLI или в графическом режиме (GUI). В обоих режимах, вы должны иметь привилегии суперпользователя, для Aptitude.

Запустите Aptitude в графическом режиме (GUI)

Для запуска Aptitude в графическом режиме введите следующую команду в терминале без параметров:

# sudo aptitude

Aptitude GUI mode

Чтобы войти в меню, вам необходимо нажать Ctrl + T и для того, чтобы перемещаться по меню, использовать клавиши со стрелками.

Aptitude menu

Установка пакетов

Для установки пакетов, вы можете просматривать пакеты. После того как вы нашли пакет, выберите его и нажмите «кнопку +». Нажмите  кнопку ‘g’, чтобы просмотреть сводку пакетов. Чтобы снова совершить установку нажмите кнопку ‘g’  для установки.

Aptitude GUI mode installation package

Aptitude выбор для установки

Вы можете увидеть состояние пакетов на левом именем пакетов. Вот список состояний для пакетов:

i: Установленный пакет
c: Пакет не установлен, но конфигурация остается в системе
p: Удален из системы
v: Виртуальный пакет
B: Broken пакет
u: Файлы распакованы, но файлы еще не настроены
C: Half-configured — Конфигурация не удалось, и требуют исправления
H: Half-installed — Удаление не удалось, и требуют исправления

Удаление пакета

Для удаления пакета просто выбрать пакет затем нажмите «кнопку -«. Нажмите кнопку’g’, чтобы просмотреть сводку деятельности. Снова нажмите кнопку g чтобы совершить удаление пакета.

Aptitude GUI mode удаление пакета

Обновление пакетов (Updating)

Для обновления индекса пакетов, просто нажмите «кнопку u».

Aptitude GUI mode обновление пакетов

Обновление пакетов (Upgrading)

Для обновления пакетов, нажмите «кнопку U». Это будет означать что вы хотите обновить все обновляемые пакеты. Затем нажмите » кнопку g», чтобы просмотреть сводку пакетов. Нажмите «кнопку g»  чтобы совершить процесс обновления.

Aptitude GUI mode upgrade пакетов

Aptitude из командной строки

Обновление aptitude

# sudo aptitude update

Установить пакет с помощью aptitude

# sudo aptitude install gimp

Удалить пакет с помощью aptitude

# sudo aptitude remove gimp

 Безопасное обновление с aptitude

Самый безопасный способ обновить является использование действия «безопасный обновлением», как ранее использовавшейся «модернизации» или upgrade:

# sudo aptitude safe-upgrade

Если вы хотите в любом случае, чтобы сделать «полный апгрейд» можно использовать команду:

# sudo aptitude full-upgrade

С помощью этой команды, aptitude будет совершать обновление до последней версии пакета, даже если это необходимо, чтобы добавить или удалить зависимости.

Статья «Как использовать Aptitude package tool на Debian, Ubuntu и Mint Linux» завершена.

aptitude vs apt. 5 причин, почему я использую aptitude / Хабр

Пять параметров, по которым aptitude превосходит (по четвертому параметру не уступает) apt:

1. Логичность синтаксиса. И единство управления.

2. Гибкость поиска.

3. Проставление меток пакетов.

4. Разрешение зависимостей.

5. Интерфейс.

1. Логичность синтаксиса. И единство управления

Сравните:

Установка:
sudo aptitude install karma-tools

sudo apt-get install karma-tools


Просмотр информации о пакете:
aptitude show karma-tools

apt-cache show karma-tools


Метка пакета:
sudo aptitude markauto karma-tools

sudo apt-mark markauto karma-tools

Таким образом, aptitude заменяет кучу инструментов. Что вам проще: запомнить кучу разных инструментов, или только один инструмент? При условии, что кроме названия, надо помнить ещё и команды?

Мне кажется, что логичнее, проще и удобнее, в этом случае aptitude.

2. Гибкость поиска

aptitude очень часто ругают: «неправильно ищет». Сравните сами:

aptitude по умолчанию ищет только заданное слово только в именах пакетов, не трогая описание.

А не по умолчанию вот так:

В aptitude используются поисковые запросы. Это дает простор для фантазии: например, что там у нас kde-шного установлено?

aptitude search ‘~i~skde’

Самые популярные поисковые запросы:

~nимя — искать в имени пакета

~dтекст — искать в описании пакета

~i — отбирает только уже установленные пакеты

~U — отбирает пакеты, которые можно обновить

В качестве любого из шаблонов может выступать регулярное выражение. Например, ~n^wget выберет пакеты, имена которых начинаются с wget. Шаблоны можно группировать логическими операндами, например ~i~skde (и установленные, и из секции KDE). При указании нескольких шаблонов поиска к ним применяется логическое И, если шаблоны разделить «|», то логическое или. Отрицание — «!», группирование в скобках.

И, вообще, в документации всё лучше описано.

Сможете вы так же гибко осуществить поиск используя apt-cache?

3. Проставление меток пакетов

sudo aptitude install --add-user-tag keyword-tag more different packageы.

sudo aptitude purge '?user-tag(keyword-tag)'


Сможете сделать так, используя apt-get?

4. Разрешение зависимостей

Пожалуй, самый спорный момент.

И теперь самое интересное:

Может быть, aptitude пометил пакеты «под снос», а удалит их когда-нибудь потом?

Нет. Ладно, удалим по user-tag, не зря же мы его добавляли.


Количество установленных и удаленных пакетов совпадает.

Теперь, то-же самое с apt:


Почему-то я ожидал этого.

Вы можете сказать, что kubuntu-desktop — плохой виртуальный пакет, и всё из-за этого. Я проверил на wmaker и на apache2. Зависимости решаются одинаково.

5. Интерфейс

Сравните:


aptitude: всё выровнено, аккуратненько показано, какие пакеты установлены, какие можно установить, какие помечены к удалению. Пакеты отсортированы по алфавиту.

apt: вывалено кучей текста. Кому надо, разберется.

Запуская aptitude без параметров, попадаешь в псевдографический интерфейс, и, пока пакеты качаются, можно поиграть в сапера.

По моему, это и есть, забота о пользователе.

Интерактивный режим aptitude

В первой части статьи рассказывалось об управлении пакетами с помощью aptitude в режиме командной строки. Теперь рассмотрим интерактивный режим этой программы. Управление программой производится с клавиатуры. Для входа в интерактивный режим запускаем aptitude без параметров с правами обычного пользователя:

$ aptitude

При запуске программы произойдёт обновление кэша пакетов, о чём мы будем уведомлены соответствующим сообщением. Выход из программы осуществляется клавишей «q». Продолжим работать в aptitude с правами обычного пользователя. Конечно же, для обновления, установки, удаления пакетов потребуются права суперпользователя, о чём программа не применёт нам напомнить. Попробуем выполнить обновление пакетов, нажав клавишу «u».

И сразу же получим сообщение о необходимости наличия прав суперпользователя для данного действия. Получаем права, введя правильный пароль, и продолжаем. Если есть новые обновления пакетов, то в списке групп пакетов появится новая группа, например: «Обновления, связанные с безопасностью», где в скобках будет указано количество пакетов, относящихся к этой группе.

Рассмотрим интерфейс программы подробнее. В верхней части, расположена область, выделенная синим цветом — это строка меню. В первой строке расположено главное меню, доступ к которому осуществляется клавишами «Ctrl+t». Если войти в любое меню, то в нижней строке окна программы (в строке состояния) будет отображаться подсказка или краткое описание для пункта меню на котором находится указатель (курсор). Выход из меню осуществляется клавишей «Esc». Ниже главного меню, во второй строке, расположена строка с ключами вызова часто используемых команд. В третьей строке отображается версия aptitude.

Ниже строки меню отображается область управления пакетами. Изначально в этой области отображается список групп пакетов. Такие группы как «Установленные пакеты», «Неустановленные пакеты», «Виртуальные пакеты» и «Задачи» постоянно отображаются в области управления пакетами. Но, как уже упоминалось выше, в этом списке могут появляться группы пакетов, которые можно обновить. С группами «Установленные пакеты» и «Неустановленные пакеты» всё и так ясно из названий, о виртуальных пакетах упоминается в первой части этой статьи, а вот о группе пакетов «Задачи» стоит поговорить отдельно. Эта группа содержит так называемые метапакеты, т. е. набор пакетов для выполнения какой либо определённой задачи. Так как нас интересуют серверы, то развернём группу «Задачи» и посмотрим, что там есть для настройки серверов. Развернём группу «Серверы» и увидим список из нескольких задач (метапакетов). Каждая задача содержит набор обычных пакетов, некоторые из них могут быть уже установленными в системе. Удобство работы с задачами состоит в том, что не нужно находить и отмечать отдельные пакеты, можно просто установить нужный метапакет для достижения цели!

Ниже области управления пакетами расположена область информации. Когда мы устанавливаем курсор на каком-либо пакете, в этой области отображается краткое описание пакета. Если при работе в aptitude область информации мешает, то её можно отключить клавишей «D» или отключить соответствующую опцию в настройках aptitude.

Вернёмся к группам пакетов. По умолчанию пакеты в группе разбиты на категории, соответствующие разделам репозитория, например: admin (Утилиты администрирования), devel (Утилиты и программы для разработки ПО), net (Программы для подключения и предоставления различных сервисов), text (Утилиты обработки текста) и т. д.

Внутри категорий пакеты группируются по секциям (компонентам). В зависимости от того как была настроена система репозиториев (см. «Настройка обновлений в Debian») могут присутствовать следующие секции: main, contrib, non-free, non-us.

Теперь ознакомимся с пунктами меню и часто применяемыми командами. Практически каждому пункту меню назначена «горячая клавиша», что весьма удобно. Ознакомиться со списком всех горячих клавиш можно вызвав «Помощь» из одноимённого меню или нажав клавишу «?». Для начала посмотрим, как найти нужный пакет. За это отвечает меню «Поиск». Поиск может производиться как вниз по списку пакетов (клавиша «/»), так и вверх (клавиша «\»). Повторить поиск можно соответственно клавишами «n» и «N». Процесс поиска по умолчанию инкрементный, т. е. осуществляется одновременно с набором символов, причём поиск строки производится в именах пакетов. Как же расширить возможности поиска? Так же как и в режиме командной строки можно расширить поиск с помощью шаблонов. О поисковых шаблонах рассказывается в первой части этой статьи. Но для того, чтобы они начали работать нужно в настройках aptitude отключить режим инкрементного поиска. В качестве примера используем шаблон из первой части статьи.

После выполнения получим аналогичный результат. Как видим, кавычки для обозначения поискового шаблона не обязательны. Теперь, когда пакет найден можно сразу получить по нему информацию. Когда курсор установлен на строке с именем пакета, в области информации отображается краткое описание пакета. Слева от имени пакета отображаются литеры, обозначающие состояние пакета, а справа расположена информация о версии пакета и о размере дискового пространства, занимаемого установленным пакетом. Для получения более полной информации о пакете, о его зависимостях и т. д. нажимаем клавишу «Enter», для возврата назад к списку пакетов нажимаем «q». В меню «Поиск» находится ещё одна полезная команда – «Найти неработоспособные», которая осуществляет поиск сломанных пакетов, помеченных литерой «B».

Для того чтобы в интерактивном режиме aptitude установить, удалить или обновить пакет, его нужно предварительно пометить. За это отвечают команды меню «Пакет» и назначенные им горячие клавиши:

Install – пометить пакет для установки или обновления («+»)

Remove – пометить пакет для удаления, но сохранить настроечные файлы («-»)

Purge – пометить пакет для удаления вместе с конфигурационными файлами («_»)

Keep – отменить любые действия над пакетом и установить запрет на текущее обновление («:»)

Hold – зафиксировать версию пакета, запретить его дальнейшее обновление («=»)

Отметить Auto – пометить пакет, как установленный автоматически («M»)

Отметить Manual – пометить пакет, как установленный вручную («m»)

Forbid версию – запретить установку текущей версии обновления пакета, последующие версии будут устанавливаться как обычно («F»)

Помеченные пакеты выделяются различными цветами для усиления визуального контроля, а для пакетов, помеченных на установку/удаление выводится информация о дисковом пространстве, которое будет занято/освобождено.

После того, как помечены нужные пакеты, над ними можно производить запланированные действия. Список этих действий содержится в меню «Действия». Чтобы установить/удалить пакет (это же относится и к помеченным для установки обновлениям) нажимаем клавишу «g». В области управления пакетами будет выведена контрольная информация об устанавливаемых/удаляемых пакетах и пакетах для удовлетворения зависимостей. На этом этапе ещё можно отменить действия над пакетами, нажав клавишу «q». Если же всё нормально, то ещё раз нажимаем «g», а по окончании установки/удаления нажимаем клавишу «Enter». Контрольную проверку перед применением действий над пакетами можно отменить в настройках aptitude («Параметры» -> «Предпочтения»), сняв отметку с пункта «Показывать, что будет сделано перед тем, как делать».

С командой «Обновить список пакетов» («u») мы познакомились в начале этой части статьи. Эта команда аналогична команде aptitude update. Следующая команда – «Пометить обновляемые» позволяет отметить обновляемые пакеты для установки. Команда «Отменить все незаконченные действия» очищает все сделанные пометки пакетов. Команда «Очистить кэш пакетов» соответствует команде aptitude clean, а «Очистить устаревшие файлы» команде aptitude autoclean. Если процесс скачивания и установки обновлений длительный, то можно развлечься, выбрав пункт меню «Играть в сапёра». Ниже этого пункта меню расположен пункт меню «Стать суперпользователем». Об этом уже упоминалось в начале статьи. Программа aptitude сама запрашивает права суперпользователя, когда они становятся нужны.

Пакеты предыдущие версии, которых сохранились в кэше, можно откатить назад в случае возникновения проблем с обновлённым версиями. Для этого нужно воспользоваться командой «Откат» из одноимённого меню.

Меню «Решатель» предназначено для разрешения проблем при установке/удалении пакетов. Например, если нужно разрешать зависимости вручную или имеется несколько вариантов для разрешения конфликтов.

Названия меню «Окна» и «Помощь» говорят сами за себя – первое отвечает за управление окнами программы, второе помогает получить справочную информацию.

С пунктом «Предпочтения» меню «Параметры» мы уже знакомы. Имеет смысл настроить программу «под себя», в первую очередь, обратив внимание на следующие параметры: «Автоматически устанавливать рекомендуемые пакеты», «Автоматическое удаление неиспользуемых пакетов».

В этой статье была рассмотрена работа с программой aptitude в двух режимах. Какой из них использовать или как их комбинировать решать читателю. Переходим к установке и настройке SSH.

Об авторе:

Меня зовут Андрей Золкин. Из более, чем пятнадцати лет работы в сфере информационных технологий, десять лет работаю с системами, базирующимися на открытом исходном коде. На страницах сайта Aitishnik.Ru веду блоги по CMC Joomla и Debian GNU/Linux.

 

Ещё статьи о Debian


    • SSH Подключение с использованием ключа хоста…

      Теперь попробуем подключиться к нашему серверу, который выполняет и функцию ssh сервера, с настройками по умолчанию. Позже мы изменим настройки согласно нашим нуждам и требованиям безопасности. Для подключения по SSH нам нужны учётные…


    • Настройка SSH в Debian

      Довольно часто, администрирование сервера на базе Linux происходит посредством удалённого доступа. А основным способом удалённого администрирования является администрирование с помощью SSH. Об этом и пойдёт речь в этой статье. Данная…


    • Linux HTML-редакторы

      Если задать подобный вопрос на каком-нибудь из форумов, то с высокой долей вероятности вы наткнётесь на две диаметрально противоположных рекомендации — «составлять» всё в чисто визуальном (то бишь WYSIWYG) редакторе типа DreamWeaver либо…


    • Насторйка OpenSSH

      Настройки sshd находятся в файле /etc/ssh/sshd_config. Открываем этот файл для редактирования и изменяем его содержимое для наших нужд, не забывая при этом о безопасности.
      Первый параметр – Port. По умолчанию используется 22 порт….


    • Настройка FTP сервера в Debian 5 (Lenny)

      В этой статье я опишу настройку FTP сервера на базе Debian 5 (Lenny). Будем использовать vsftpd. VSFTPD (Very Secure FTP Daemon) — как следует из названия, очень защищённый демон FTP, с хорошей производительностью, поддерживаются: IPv6,…


    • Как обновить Debian 4 Etch до Debian 5 (Lenny)

      Вот чем мне нравится Debian, так тем что можно обновить установленную систему на ходу, без какой либо переустановки. На момент написания этой статьи произошла смена стабильного дистрибутива Debian. Вместо Debian 4 Etch, ставшей теперь…

APTITUDE vs. APT-GET — Искусcтво администрирования

При работе с операционными системами, базирующимися на Debian и использующими apt (например, Ubuntu), вы познакомитесь с некоторыми инструментами управления:

apt-get: устанавливает и удаляет пакеты из системы, а также может обновлять список пакетов и установленное программное обеспечение.
apt-cache: поиск необходимого пакета по списку пакетов apt, находящегося на локальной машине.
dpkg — используется для различных административных задач, например, для переконфигурирования Xorg.

Если вы планируете администрировать свою систему и дальше, то должны знать ещё некоторые инструменты, которые рано или поздно пригодятся.

apt-listbugs: ищет ошибки в пакете программы ещё до установки самой программы.
apt-listchanges: то же самое, что и apt-listbugs, но для безошибочных изменений.
apt-rdepends: для показа дерева зависимости пакета.
deborphan — ищет обособленные зависимости в системе, оставленные после удаления родительских пакетов.
debfoster — помогает deborphan идентифицировать, в каких зависимостях пакета система больше не нуждается.
dselect — интерфейс для просмотра, выбора и поиска пакетов в вашей системе.

Ещё: apt-cdrom, apt-config, apt-extracttemplates, apt-ftparchive, apt-key, apt-mark and apt-sortpkgs.

Как вы заметили, это 16 различных инструментов, с которыми вы познакомитесь, когда приступите к изучению вашего дистрибутива.

Дальше — больше, apt-get имеет большую проблему с удалением пакетов. Сначала он определяет зависимости, которые должны быть установлены для выбранного пакета, но не определяет их, когда вы удаляете этот пакет. Если зависимости удовлетворены, ‘apt-get remove’ удалит выбранные пакеты, но оставит обособленные зависимости. Альтернатива? Aptitude.

Перед тем, как продолжить, хотелось бы сказать, что ‘apt-get autoremove’ уже в состоянии обращаться к обособленным зависимостям. Это, конечно, шаг в правильном направлении. Однако, apt-get удобен, если вам захочется изучить 16 дополнительных инструментов к нему. Aptitude, как будет показано, заменит их всех.

Aptitude — это превосходный способ для установки, удаления, обновления, иначе говоря, для управления вашей системой совместно с apt. Во-первых, aptitude может решить проблемы обособленных зависимостей. Во-вторых, у него блокирующий ошибки dselect интерфейс. Последнее, и самое важное, здесь используется один инструмент для выполнения многих функций. Давайте посмотрим:
aptitude: при запуске без аргументов появляется графический интерфейс (правда, в консоли, прям как mc) для поиска, установки, обновления и других административных действий над пакетами.

aptitude install: установка программного обеспечения, а также построение необходимых зависимостей.
aptitude remove: удаление пакетов, а также обособленных зависимостей.
aptitude purge: удаление пакетов и обособленных зависимостей, а также ненужных конфигурационных файлов.
aptitude search: поиск пакетов по локальному списку apt.
aptitude update: обновление локального списка пакетов.
aptitude upgrade: обновление уже установленных пакетов по обновленному списку пакетов.
aptitude clean: удаление установочных файлов.
aptitude dist-upgrade: обновление пакетов, даже если некоторые из них не будут использованы для установки.
aptitude show: подробная информация о пакете.
aptitude autoclean: удаление устаревших пакетов, но сохранение текущих.
aptitude hold: исправление ошибок в пакете текущей версии, но не его обновление.

Сразу видно, что используется одна команда с разными удобночитаемыми вариантами (нет флагов). И это только верхушка айсберга. Например, используем aptitude при поиске пакета, результат — сортировка найденного в алфавитном порядке и краткое описание каждого пакета. Эта команда даже скажет вам, какие пакеты уже установлены в системе, в отличии от apt-cache, который выводит список пакетов в случайном и неудобно читаемом порядке.

HELP по APTITUDE
install — Установить/обновить пакеты
remove — Удалить пакеты
purge — Удалить пакеты и их файлы конфигурации
hold — Зафиксировать пакеты
unhold — Отменить команду hold для пакета
markauto — Пометить пакет, что он был установлен автоматически
unmarkauto — Пометить пакет, что он был установлен вручную
forbid-version — Запретить aptitude обновлять определённую версию пакета.
update — Загрузить список новых/обновлённых пакетов
safe-upgrade — Perform a safe upgrade
full-upgrade — Perform an upgrade, possibly installing and removing packages
forget-new — Забыть, какие пакеты «новые»
search — Поиск пакета по имени и/или выражению
show — Показать подробную информацию о пакете
clean — Удалить загруженные файлы пакетов
autoclean — Удалить старые загруженные файлы пакетов
changelog — Посмотреть changelog пакета
download — Загрузить файл .deb для пакета
reinstall — Загрузить и (возможно) переустановить уже установленный пакет

Параметры:
-h Этот текст помощи
-s Имитировать действия, но не выполнять их на самом деле.
-d Только загрузить пакеты, ничего не устанавливать и не удалять.
-P Всегда спрашивать подтверждение или действия
-y Предполагать ответ ‘yes’ на простой вопрос yes/no
-F format Задать формат отображения результатов поиска; смотрите руководство
-O order Задать формат сортировки результатов поиска; смотрите руководство
-w width Задать ширину вывода результатов поиска
-f Принудительно исправлять неработоспособные пакеты.
-V Показывать версию устанавливаемых пакетов.
-D Показывать зависимости автоматически изменяемых пакетов.
-Z Показывать изменение размера установки каждого пакета.
-v Отображать дополнительную информацию. (может быть введено несколько раз)
-t [release] Задать выпуск, из которого должны быть установлены пакеты
-q Не выводить индикатор прогресса в режиме командной строки.
-o key=val Вручную установить значение параметра настройки с именем ‘key’
—with(out)-recommends Указать, будут ли рекомендуемые пакеты
трактоваться как строгие зависимости
-S fname Читать aptitude информацию о расширенном статусе из fname.
-u Загрузить список новых пакетов при запуске.
-i Запустить установку при запуске.

Aptitude превосходит apt-get: лучшая обработка зависимостей, удобный интерфейс, ОДИН инструмент и др.

взято отсюда

Tags: apt-get, aptitude


This entry was posted on Среда, 24 февраля, 2010 at 13:45 and is filed under Linux. You can follow any responses to this entry through the RSS 2.0 feed.

You can leave a response, or trackback from your own site.

Управление deb-пакетами в Debian и Ubuntu


Сегодня мне необходимо было откатиться на deb-пакет более старой версии, чем та, которую я установил. В процессе борьбы с непослушным deb-пакетом, а его невозможно было удалить ни одной программой (aptitude, apt-get, dpkg), я обнаружил что начинаю забывать опции работы с этими программами. Посему я решил написать себе краткую шпаргалку, которую я буду дописывать по мере надобности,  дабы пользоваться ей в дальнейшем. Далее я буду переходить от программ более высокого уровня к более низкому.


 



Aptitude.


Установить в новой системе ее можно набрав apt-get install aptitude.


Обновление пакетов: 


aptitude update // получить информацию о новых пакетах


aptitude upgrade // обновление пакетов 


aptitude safe-upgrade // обновление пакетов, которые можно обновить не удаляя существующие.


aptitude dist-upgrade // полное обновление дистрибутива


посмотреть какие пакеты будут обновлены без их установки можно набрав aptitude search ?upgradable


Установка пакетов:


aptitude install


Удаление пакетов:


aptitude remove // удаление пакета


aptitude purge // удаление пакета вместе с конфигами (полное)


aptitude purge ~c // удалить конфиги оставшиеся после удаленных пакетов


Переустановка пакета:


aptutude reinstall полное_название_пакета


Поиск пакетов:


aptitude search keyword (любое слово из названия пакета) // поиск пакета


aptitude search «^name$» // поиск пакета по точному названию


aptitude search «?description(«keyword»)» // поиск пакета по описанию


aptitude search ~i (i-install b-broken p-packet) // поиск пакетов по состоянию (можно искать, например, битые пакеты)


Информация:


aptitude changelog название пакета // узнать что изменилось в новом пакете


Очистка кеша пакетов:


aptitude autoclean // удаление пакетов  неактуальных версий


aptitude clean // очистка кеша пакетов

переустановка неработающего пакета или откат до более ранней версии

aptitude version package_name //Поиск версий пакета. Так можно найти предыдущую версию пакета

aptitude install package_name=version // установка пакета необходимой версии (установка предыдущей версии иногда помогает когда самый новый пакет не работает)


aptitude -f install //-f принудительно исправлять неработоспособные пакеты, данную команду можно использовать для проверки и исправления битых зависимостей пакетов.


Apt-get.


Обновление:


apt-get update // получить информацию о новых пакетах


apt-get upgrade // обновление пакетов


apt-get dist-upgrade // обновление дистрибутива


Установка:


apt-get install 


apt-get install —reinstall // переустановка пакета


Удаление:


apt-get remove


Просмотр списка файлов в пакете:


Установить apt-file (apt-get install apt-file)


Обновить apt-file update


Просмотр apt-file list название_пакета


Поиск пакета с определенным файлом apt-file search название_файла


apt-cache policy название_пакета — Посмотреть в каком репозитории находится пакет


Очистка кеша:


apt-get clean


Dpkg.


Установка:


dpkg -i /path/to/package.deb // установить, например, скачанный пакет 


Удаление:


dpkg -r name_package// удалить пакет (нужно название пакета без .deb)


Переконфигурация:


dpkg-reconfigure name_packet // переконфигурировать пакет, например, dpkg-reconfigure locales


Посмотреть список файлов в пакете если пакет установлен:


dpkg -L name_package


Посмотреть список файлов в пакете если пакет не установлен:


dpkg -c /path/to/name_package


посмотреть какому пакету принадлежит файл


dpkg -S название_файла



А теперь немного о структуре всего этого хозяйства.


Например, Вы подключили какой-нибудь репозиторий. В нем находились новые версии пакетов. Естественно система предложила Вам их обновить и Вы это сделали. После обновления начались сбои. И вот вам нужно откатить Ubuntu или Debian в состояние до обновления. Черт! Да там обновилось несколько десятков пакетов. И первое что придет на ум — переустановка системы. А вот я так не делаю. 


Как узнать какие пакеты обновились? Запросто. Посмотреть файл /var/log/apt/history.log. Приведу пример обновления:


Start-Date: 2016-02-18 21:35:16

Upgrade: libegl1-mesa:amd64 (10.3.0-0ubuntu2intel1, 11.0.4-1intel1), libegl1-mesa-drivers:amd64 (10.3.0-0ubuntu2intel1, 11.0.4-1intel1), libdrm-intel1:amd64 (2.4.64-1~ubuntu14.04.1, 2.4.65-3), libdrm-intel1:i386 (2.4.64-1~ubuntu14.04.1, 2.4.65-3), i965-va-driver:amd64 (1.4.0-0intel1, 1.6.2-1), libdrm-radeon1:amd64 (2.4.64-1~ubuntu14.04.1, 2.4.65-3), libdrm-radeon1:i386 (2.4.64-1~ubuntu14.04.1, 2.4.65-3), libglapi-mesa:amd64 (10.3.0-0ubuntu2intel1, 11.0.4-1intel1), libglapi-mesa:i386 (10.3.0-0ubuntu2intel1, 11.0.4-1intel1), libva1:amd64 (1.4.0-0intel1, 1.6.2-1), libcairo-gobject2:amd64 (1.13.0~20140204-0ubuntu1.1, 1.14.4-1), libcairo2:amd64 (1.13.0~20140204-0ubuntu1.1, 1.14.4-1), libgles2-mesa:amd64 (10.3.0-0ubuntu2intel1, 11.0.4-1intel1), libgl1-mesa-glx:amd64 (10.3.0-0ubuntu2intel1, 11.0.4-1intel1), libgl1-mesa-glx:i386 (10.3.0-0ubuntu2intel1, 11.0.4-1intel1), va-driver-all:amd64 (1.4.0-0intel1, 1.6.2-1), libdrm-nouveau2:amd64 (2.4.64-1~ubuntu14.04.1, 2.4.65-3), libdrm-nouveau2:i386 (2.4.64-1~ubuntu14.04.1, 2.4.65-3), libwayland-egl1-mesa:amd64 (10.3.0-0ubuntu2intel1, 11.0.4-1intel1), libgbm1:amd64 (10.3.0-0ubuntu2intel1, 11.0.4-1intel1), libva-x11-1:amd64 (1.4.0-0intel1, 1.6.2-1), libdrm2:amd64 (2.4.64-1~ubuntu14.04.1, 2.4.65-3), libdrm2:i386 (2.4.64-1~ubuntu14.04.1, 2.4.65-3)

End-Date: 2016-02-18 21:35:43


Тут абсолютно точно видно какие пакеты обновлялись, с каких и на какие версии.


Далее, первое что приходит на ум,  можно попробовать отключить тот злополучный репозиторий и попытаться переставить пакеты (aptitude reinstall). Не получится. Менеджер напишет что установлены самые новейшие версии. Тогда удалить только эти пакеты и потом заново установить. Не получится. Удаление пакетов паровозом потянет удаление связанных пакетов. Проще уж переустановить систему. Хотя можно удалить и пакеты с зависимостями а потом взять из этого лога список удаленных пакетов, убрать версии и вставить список в команду aptitude install. В данной ситуации есть еще один хирургический метод. Он довольно рискован, кропотлив и требует максимальной внимательности при работе. Каждый из этих пакетов придется удалить вручную.  


Переходим cd /var/lib/dpkg и видим там 4 файла: status, status-old, statoverride, statoverride-old. Нужно последовательно открыть редактором эти 4 файла и удалить записи, касающиеся пакетов. Например открываем файл status редактором nano, nano status. Жмем F6 и в строку поиска вводим, например, i965-va-driver и жмем enter.


Видим следующее:


Package: i965-va-driver

Status: install ok installed

Priority: optional

Section: libs

Installed-Size: 1531

Maintainer: Ubuntu Developers

Architecture: amd64

Multi-Arch: same

Source: intel-vaapi-driver

Version: 1.3.0-1ubuntu1

Replaces: libva-intel-vaapi-driver

Provides: libva-intel-vaapi-driver

Depends: libc6 (>= 2.14), libdrm-intel1 (>= 2.4.38), libdrm2 (>= 2.3.1)

Pre-Depends: multiarch-support

Breaks: libva-intel-vaapi-driver (<< br=»» /> Description: VAAPI driver for Intel G45 & HD Graphics family

The VA-API (Video Acceleration API) enables hardware accelerated video

decode/encode at various entry-points (VLD, IDCT, Motion Compensation

etc.) for the prevailing coding standards today (MPEG-2, MPEG-4

ASP/H.263, MPEG-4 AVC/H.264, and VC-1/VMW3). It provides an interface

to fully expose the video decode capabilities in today’s GPUs.

.

Platform definitions:

CTG: Cantiga, Intel GMA 4500MHD (GM45)

ILK: Ironlake, Intel HD Graphics for 2010 Intel Core processor family

SNB: Sandybridge, Intel HD Graphics for 2011 Intel Core processor family

IVB: Ivybridge

.

This package contains the video decode & encode driver backend for the

Intel G45 chipsets and Intel HD Graphics for Intel Core processor

family.

Homepage: http://www.freedesktop.org/wiki/Software/vaapi

Original-Maintainer: Debian Multimedia Maintainers pkg-multimedia-maintainers(at)lists.alioth.debian

ubuntu-devel-discuss(at)lists.ubuntu


Вот этот блок информации нужно удалить полностью из всех четырех файлов. И после этого заново установить пакет (aptitude install  i965-va-driver). А никто и не говорил что будет легко. Но все-же, как по мне, это проще чем переустанавливать систему и делать кучу настроек. Хотя все зависит от того что нужно переустанавливать. Таким образом можно переустановить битый и не удаляющийся пакет. Если нужно удалить пакет полностью и это не получается стандартными средствами, нужно получить список файлов пакета, удалить их, и потом удалить записи о пакете. Естественно это нужно делать с умом, учитывая зависимости других пакетов от данного.


Ну вот собственно и все. Буду дополнять по надобности. Это все-же шпаргалка.


Желаю Вам удачи.


Автор: Darkeye.  


Еще интересное в сети.

  


 

Похожие материалы


Перейти к ленте статей

Apt VS Aptitude В чем отличия? | Linuxsoid

Aptitude и Apt-get  это два самых популярных инструменты для управления пакетами. Оба позволяют делать все необходимые манипуляции (установка, удаление и обновление, разрешение зависимостей, поиск пакетов и многое другое). Но все таки между ими двумя есть различия, которые заставляют пользователей выбирать то или иное приложение. В этой статье мы и рассмотрим все отличия между этими инструментами.

В чем отличия между двумя самыми популярными менеджерами управления пакетами Aptitude и Apt-get, вы задумывались над этим? Ниже я рассмотрю отличия/плюсы и минусы.

Aptitude и Apt-get это два самых популярных инструменты для управления пакетами. Оба позволяют делать все необходимые манипуляции(установка, удаление и обновление, разрешение зависимостей, поиск пакетов и многое другое). Но все таки между ими двумя есть различия, которые заставляют пользователей выбирать то или иное приложение. В этой статье мы и рассмотрим все отличия между этими инструментами.

Что такое Apt

Apt или Advanced Packaging Tool — это свободная программа с открытым исходным кодом, которая позволяет устанавливать и удалять программное обеспечение. Изначально она была разработана в рамках проекта Debian для работы с .deb пакетами, но потом в нее добавили совместимость с пакетами rpm.

Apt — всего навсего лишь утилита командной строки. Каждый запуск программы для установки пакета приводит к анализу сохраненного списка источников пакетов, который находится в /etc/apt/sources.list. Программа скачивает и устанавливает сам пакет вместе со всеми его зависимостями. Вся работа выполняется автоматически, пользователю достаточно только ввести имя пакета.

Программа очень гибкая, можно очень легко изменить все нужные настройки, например добавить новый источник для поиска пакетов, отключить обновления нужных пакетов, таким образом чтобы текущая версия пакета в системе считалась всегда самой новой. Также можно устанавливать только наиболее важные обновления, оставив все остальные как есть.

Что такое Aptitude

Aptitude — это оболочка для APT, которая добавляет пользовательский интерфейс, и много дополнительной функциональности, например поиска пакета в интерактивном режиме, а также моментальная его установка или удаление.

Хотя утилита разработана для Debian, она может существенно расширить возможности менеджеров пакетов RPM дистрибутивов.

Пользовательский интерфейс основан на библиотеке Ncurses, которая реализует многие компоненты, которые вы привыкли видеть в обычном графическом интерфейсе. Одно из ее преимуществ, то что она может эмулировать большинство консольных команд и опций apt-get.

В целом Aptitude менеджер пакетов более высокого уровня. Он упрощает многие детали низкого уровня и может работать в интерактивном пользовательском интерфейсе или в режиме командной строки

В чем разница между APT и Aptitude

  • Помимо основных отличий в том что Aptitude это менеджер пакетов высокого уровня, а APT — более низкого, и может быть использован с другими пакетными менеджерами высокого уровня. Но есть и другие моменты, разделяющие эти два менеджеры пакетов.
  • Aptitude имеет более обширный функционал чем apt-get и к тому же интегрирует возможности apt-get, apt-mark и apt-cache. apt-get обрабатывает установку, обновление пакетов, расширение зависимостей, а Aptitude реализует все возможности интерфейса пользователя, а также функции поиска и маркировки пакетов.
  • Apt-get не хватает пользовательского интерфейса, в то время. Aptitude имеет только текстовый и интерактивный пользовательский интерфейс.
  • Возможности Apt-get ограничены возможностями командной строки, в то время как Aptitude — инструмент более высокого уровня, с текстовым интерактивном интерфейсом, а а также возможностью работы через командную строку.
  • Aptitude позволяет лучшее управлять пакетами чем в apt-get.
  • Во многих ситуациях связанных с установкой, удалением и разрешением конфликтов. Aptitude заслуженно используется многими пользователями, в место apt-get в таких ситуациях:
  • При удалении любого установленного пакета. Aptitude автоматически удаляет неиспользуемые пакеты и все их зависимости. Apt-get удаляет только то что было указанно в команде. Для полного удаления всех зависимостей нужно  указать опцию —autoremove или использовать команду apt-get autoremove
  • Aptitude может показать вам почему зачем установлен тот или иной пакет с помощью команд why и why-not. Передав Aptitude команду why и имя пакета, вы можете узнать почему установлен этот пакет, какие пакеты зависят от него и от каких пакетов зависит он сам:
$ aptitude why yaws-wiki
i   doc-base  Suggests   dhelp | dwww | doc-central | yelp | khelpcenter4
p   dwww      Depends    apache2 | httpd-cgi
p   yaws      Provides   httpd-cgi
p   yaws      Suggests   yaws-wiki
  • В этом примере мы посмотрели почему установлен пакет yaws-wiki. От него зависит yaws, которому также нужен httpd-cgi, зависящий от dwww, есть один рекомендованный пакет doc-base. Эта функция отсутствует в apt-get.
  • Для решения конфликтов при установке и удалении пакетов. Aptitude предоставляет возможные решения при возникновении конфликтов во время установки пакетов.
  • Aptitude обеспечивает мощный поиск, с помощью которого можно найти любой нужный пакет не только в системе, но и по репозиториях. В Apt-get есть свой вариант поиска с помощью утилиты apt-cache, но в aptitude все делается намного проще.

Сравнение поиска в Apt-get и Aptitude

$ aptitude search '~npython2.7 ~d2.7'
p   idle-python2.7                   - IDE for Python (v2.7) using Tkinter       
i   libpython2.7                     - Shared Python runtime library (version 2.7
p   libpython2.7:i386                - Shared Python runtime library (version 2.7
p   libpython2.7-dbg                 - Debug Build of the Python Interpreter (ver
p   libpython2.7-dbg:i386            - Debug Build of the Python Interpreter (ver
i A libpython2.7-dev                 - Header files and a static library for Pyth
p   libpython2.7-dev:i386            - Header files and a static library for Pyth

Опция -n задает поиск по имени пакета, а -d — по описанию. Вот общий синтаксис этой команды:

$ aptitude search '?name(python2.7) ?description(2.7)'

Также можно использовать другие опции:

  • -i или ?installed() — поиск только установленных пакетов
  • -U или ?Upgradable — отобразить пакеты нуждающиеся в обновлении
  • -E или ?Essential() — установленные или не установленные но важные пакеты
  • ?provides() — пакеты реализующие определенную функцию

Например найдем все пакеты реализующие smtp:

$ aptitude search '?provides(smtp)'
p   libghc-smtpclient-dev            - Simple Haskell SMTP client library        
p   libghc-smtpclient-dev:i386       - Simple Haskell SMTP client library        
p   libghc-smtpclient-prof           - Simple Haskell SMTP client library; profil
p   libghc-smtpclient-prof:i386      - Simple Haskell SMTP client library; profil
p   syslog-ng-mod-smtp               - Enhanced system logging daemon (SMTP plugi
p   syslog-ng-mod-smtp:i386          - Enhanced system logging daemon (SMTP plugi

Выводы

Таким образом, в большинстве случаев Aptitude сохраняет почти такой же синтаксис как и в Apt-get, поэтому новым пользователям будет намного проще перейти на этот инструмент. К тому же в Aptitude интегрированы много очень полезных и мощных функций, что и делает ему такую популярность. Так что первым делом, когда завершится установка Ubuntu 16.04 не забудьте установить Aptitude. Если вы нашли другие различия, не упомянутые в этой статье, напишите о них в комментариях.

15 примеров команд aptitude для управления пакетами в Linux

Для систем на основе Debian, таких как Ubuntu, вы можете использовать команду aptitude для управления пакетами из командной строки.

В этой статье объясняется несколько примеров команд aptitude, включая следующие:

  • Установить конкретную версию пакета
  • Установить несколько пакетов с использованием шаблона
  • Поиск пакета по шаблону
  • Получить пакеты по разделу
  • Не обновлять определенный пакет (с удержанием и удержанием)
  • Отметить пакет с определенным типом установки
  • Выполнить обновление системы
  • Выполните безопасное обновление

1.Установка базового пакета

Aptitude install используется для установки пакетов вместе с их зависимостями. Например, установка пакета vim-gtk также автоматически установит все зависимые пакеты.

 # aptitude install vim-gtk
Будут установлены следующие НОВЫЕ пакеты:
libruby1.9.1 {a} libyaml-0-2 {a} tcl8.5 {a} tcl8.5-lib {a} vim-gtk vim-gui-common {a}
0 пакетов обновлено, 6 вновь установлено, 0 удалено и 317 не обновлено.
Необходимо получить 6360 КБ архивов.После распаковки будет использовано 19,0 МБ.
Вы хотите продолжить? [Y / n /?] Y 

В приведенных выше выходных данных aptitude отобразит следующее:

  • Список всех зависимых пакетов, которые будут установлены.
  • Общий размер всех пакетов, которые будут загружены. Полезно знать, сколько данных будет загружено из репозитория.
  • Общий размер диска, необходимый после распаковки пакетов.
  • На этом этапе, если вы хотите продолжить установку, нажмите «y»

Обратите внимание, что вы также можете использовать команду apt-get для управления пакетами, как мы обсуждали ранее.

2. Установите определенную версию или несколько пакетов

Также можно установить определенную версию пакета, как показано ниже. Укажите номер версии после знака «=».

 # aptitude install "perl = 5.10.1" 

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

 # установка ~ nxvnc 

3. Просмотр информации о пакете

Получите информацию о конкретном пакете, как показано ниже.

 # aptitude show vim-gtk
Пакет: vim-gtk
Состояние: не установлен
Версия: 2: 7.3.547-6ubuntu5
Приоритет: экстра
Раздел: вселенная / редакторы
Сопровождение: Разработчики Ubuntu
Архитектура: amd64
Размер без сжатия: 2,442 тыс.
Зависит от: vim-gui-common (= 2: 7.3.547-6ubuntu5), vim-common (=
         2: 7.3.547-6ubuntu5), vim-runtime (= 2: 7.3.547-6ubuntu5), libacl1 (> =
         2.2.51-8), libc6 (> = 2.15), libgdk-pixbuf2.0-0 (> = 2.22.0),
         libglib2.0-0 (> = 2.12.0), libgpm2 (> = 1.20.4), libgtk2.0-0 (> = 2.24.0),
         libice6 (> = 1: 1.0.0), liblua5.1-0, libpango1.0-0 (> = 1.14.0),
         libperl5.14 (> = 5.14.2), libpython2.7 (> = 2.7), libruby1.9.1 (> =
         1.9.2.0), libselinux1 (> = 1.32), libsm6, libtinfo5, libx11-6, libxt6,
         tcl8.5 (> = 8.5.0)
Предлагает: cscope, vim-doc, ttf-dejavu, gnome-icon-theme
Конфликты: vim-gtk
Предоставляет: редактор, gvim, vim, vim-lua, vim-perl, vim-python, vim-ruby, vim-tcl
Описание: Vi IMproved - улучшенный редактор vi - с графическим интерфейсом GTK2
 Vim - это почти совместимая версия редактора Vi для UNIX... 

4. Поиск пакета по шаблону

Чтобы узнать список пакетов, доступных в настроенном репозитории, используйте параметр поиска aptitude вместе со строковым шаблоном имени пакета.

Ниже будут показаны все пакеты, в имени которых есть «xvnc».

 # aptitude search xvnc
p linuxvnc - VNC-сервер для удаленного доступа к tty
p linuxvnc: i386 - VNC-сервер для удаленного доступа к tty
p xvnc4viewer - Клиентское программное обеспечение виртуальных сетевых вычислений для X
p xvnc4viewer: i386 - Клиентское программное обеспечение виртуальных сетевых вычислений для X 

5.Показать все установленные пакеты

Чтобы вывести список всех установленных пакетов, используйте опцию поиска, как показано ниже:

 # поиск по способностям '~ i' | голова
i account-plugin-aim - Плагин аккаунта обмена сообщениями для AIM
i account-plugin-facebook - плагин учетной записи Центра управления GNOME для si
i account-plugin-flickr - плагин учетной записи Центра управления GNOME для si
i account-plugin-generic-oauth - плагин учетной записи Центра управления GNOME для si
i account-plugin-google - плагин учетной записи Центра управления GNOME для si
i account-plugin-jabber - Плагин учетной записи обмена сообщениями для Jabber / XMPP
i account-plugin-salut - Плагин учетной записи обмена сообщениями для локального XMPP (S
i account-plugin-twitter - плагин учетной записи Центра управления GNOME для si
i account-plugin-windows-live - плагин учетной записи Центра управления GNOME для si
i account-plugin-yahoo - Плагин учетной записи обмена сообщениями для Yahoo! 

6.Расширенный поиск пакетов

Чтобы отобразить в системе только поврежденные пакеты, выполните следующие действия. Это указывает на то, что в этой системе нет битых пакетов.

 # поиск по способностям '~ b' | голова 

Чтобы найти частично удаленные пакеты, выполните следующие действия:

 # поиск по способностям '~ c'
c yelp - Справка браузера для GNOME 

Чтобы отобразить удерживаемые пакеты, выполните следующие действия:

 # aptitude search '~ ahold'
ih python3 - интерактивный объектно-ориентированный язык высокого уровня (версия python3 по умолчанию) 

Для поиска заданного ключевого слова в описании выполните следующие действия.В этом примере выполняется поиск данного текста «vim» в описаниях пакетов.

 # aptitude search '~ dvim' 

7. Пакеты по разделу

Чтобы перечислить пакеты в определенном разделе, выполните следующие действия. Как видно ниже, в группе пакетов gnome доступно 968 пакетов.

 # поиск по способностям '~ sgnome' | wc -l
968 

Чтобы отобразить установленный пакет в разделе, выполните следующие действия:

 # поиск по способностям '~ i ~ sgnome' | wc -l
142 

Как видно выше, установлено 142 пакета, принадлежащих группе пакетов gnome.Вы также можете увидеть неустановленные пакеты из-за наличия их файлов конфигурации.

8. Удаление пакета

Чтобы удалить установленный пакет из системы, а также потерянные зависимости, используйте параметр удаления вместе с точным именем установленного пакета, как показано ниже:

 # aptitude remove vim-gtk
Следующие пакеты будут УДАЛЕНЫ:
  vim-gtk
0 пакетов обновлено, 0 установлено вновь, 1 удалено и 317 не обновлено.
Необходимо получить 0 млрд архивов.После распаковки будет освобождено 2442 КБ.
(Чтение базы данных ... Сейчас установлено 160189 файлов и каталогов.)
Удаление vim-gtk ...
альтернативы обновления: использование /usr/bin/vim.basic для предоставления / usr / bin / vi (vi) в автоматическом режиме
альтернативы обновления: использование /usr/bin/vim.basic для предоставления / usr / bin / view (просмотра) в автоматическом режиме
альтернативы обновления: использование /usr/bin/vim.basic для предоставления / usr / bin / ex (ex) в автоматическом режиме
альтернативы обновления: использование / bin / nano для предоставления / usr / bin / editor (editor) в автоматическом режиме
альтернативы обновления: используя / usr / bin / vim.базовый для предоставления / usr / bin / rvim (rvim) в автоматическом режиме
альтернативы обновления: использование /usr/bin/vim.basic для предоставления / usr / bin / rview (rview) в автоматическом режиме
альтернативы обновления: использование /usr/bin/vim.basic для предоставления / usr / bin / vimdiff (vimdiff) в автоматическом режиме
альтернативы обновления: использование /usr/bin/vim.basic для предоставления / usr / bin / vim (vim) в автоматическом режиме 

9. Полное удаление упаковки

Используйте опцию очистки для полного удаления. Это приведет к удалению пакета, а также потерянных зависимостей вместе с его файлами конфигурации

Далее будет удален пакет postgresql вместе с его файлами конфигурации.

 # aptitude purge postgresql 

10. Не обновляйте пакет — держите его

Чтобы сохранить текущую версию пакета, сделайте следующее:

 # способность удерживать python3 

Как видно выше, к пакету python3 применено удержание. Он отменяет любые будущие установки, удаление и обновление этого пакета. Для этого пакета невозможно выполнить aptitude safe-upgrade или aptitude full-upgrade.

Ниже приведен способ сохранения пакета вместе с установкой.Добавьте «:» в конце пакета.

 # aptitude install perl: 

Используйте unhold, чтобы отменить удержание, примененное к пакету.

11. Не обновляйте пакет — оставьте его

Чтобы сохранить только текущую версию при наличии запланированных обновлений для пакетов, выполните следующие действия:

 # aptitude keep perl 

Параметр

keep-all должен применяться одинаково для всех установленных пакетов.

12. Отметьте пакет установкой типа

Существует возможность пометить сразу после установки пакетов либо как автоматическую, либо как ручную с помощью спецификатора переопределения, как описано ниже.

Чтобы установить автоматическую отметку, выполните следующие действия.

 # пакет установки aptitude + M

(или)

# aptitude install package & M 

Чтобы установить отметку как ручную, сделайте следующее. Это вариант по умолчанию.

 # пакет установки aptitude & m 

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

 # поиск по способностям '~ M ~ i' | wc -l
130 

Ниже показано общее количество установленных вручную пакетов.

 # aptitude search '! ~ M ~ i' | wc -l
1556 

13. Обновить список доступных пакетов

Чтобы обновить список доступных пакетов из репозиториев, выполните следующие действия:

 # aptitude update 

14. Обновите все пакеты — безопасное и полное обновление

safe-upgrade: чтобы обновить установленные пакеты до последней версии и установить новые пакеты для устранения зависимостей, выполните следующие действия:

 # aptitude safe-upgrade 

Чтобы предотвратить установку новых пакетов, используйте –no-new-installs, как показано ниже:

 # aptitude safe-upgrade --no-new-installs 

full-upgrade: Чтобы выполнить полное обновление всех пакетов, а также установить пакеты, которые невозможно выполнить с помощью safe-upgrade, выполните следующие действия:

 # aptitude full-upgrade 

15.Чистый кэш aptitude

Чтобы удалить загруженные пакеты из каталога кэша, сделайте следующее. По умолчанию каталог кеша / var / apt / apt / archive

.

 # aptitude clean 

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

 # aptitude autoclean 

Если вам понравилась эта статья, возможно, вам также понравится ..

.

Ubuntu — Подробная информация о возможностях пакета в xenial

Ссылки для aptitude

Ресурсы Ubuntu:

Скачать исходный пакет aptitude:

Сопровождающий:

Пожалуйста, подумайте о том, чтобы зарегистрировать ошибку или задать вопрос через Launchpad, прежде чем связываться с сопровождающим напрямую.

Первоначальные сопровождающие (обычно из Debian):

  • Команда разработчиков Aptitude
    (Почтовый архив)
  • Мануэль А. Фернандес Монтесело
  • Аксель Бекерт

Обычно пользователям не требуется связываться с первоначальным сопровождающим.

Внешние ресурсы:

Подобные пакеты:

диспетчер пакетов на базе терминала

Другие пакеты, относящиеся к aptitude

  • деп .:
    общие способности
    (= 0.7.4-2ubuntu2)
    архитектурно-независимые файлы для менеджера пакетов aptitude
  • деп .:
    libapt-pkg5.0
    (> = 1,1)
    библиотека времени выполнения для управления пакетами
  • деп .:
    libboost-iostreams1.58.0

    Библиотека Boost.Iostreams
  • деп .:
    libc6
    (> = 2,14)
    [amd64]
    Библиотека GNU C: Общие библиотеки
    также виртуальный пакет, предоставляемый

    libc6-udeb

    деп .:
    libc6
    (> = 2.17)
    [arm64, ppc64el]
    деп .:
    libc6
    (> = 2,4)
    [не amd64, arm64, ppc64el]
  • деп .:
    libcwidget3v5

    библиотека высокоуровневого интерфейса терминала для C ++ (файлы времени выполнения)
  • деп .:
    libgcc1
    (> = 1: 3,0)
    [не armhf, i386, powerpc]
    Библиотека поддержки GCC
    деп .:
    libgcc1
    (> = 1: 3.5)
    [armhf]
    деп .:
    libgcc1
    (> = 1: 4,2)
    [i386, powerpc]
  • деп .:
    libncursesw5
    (> = 6)
    разделяемые библиотеки для работы с терминалами (поддержка широких символов)
  • деп .:
    libsigc ++ — 2.0-0v5
    (> = 2.6.1)
    типобезопасная платформа сигналов для C ++ — среда выполнения
  • деп .:
    libsqlite3-0
    (> = 3.6.5)
    Общая библиотека SQLite 3
  • деп .:
    libstdc ++ 6
    (> = 5,2)
    Стандартная библиотека GNU C ++ v3
  • деп .:
    libtinfo5
    (> = 6)
    разделяемая низкоуровневая библиотека terminfo для работы с терминалами
  • деп .:
    libxapian22v5

    Библиотека поисковой системы

Скачать aptitude

Загрузить для всех доступных архитектур
Архитектура Размер упаковки Установленный размер Файлы
драм 64 1,275.2 кБ 4,106,0 кБ

[список файлов]

рука64 1,128,9 кБ 3,894,0 кБ

[список файлов]

армхф 1,128,6 кБ 2,592,0 кБ

[список файлов]

i386 1,322,5 кБ 4,068,0 кБ

[список файлов]

powerpc 1,148,0 КБ 4,289.0 кБ

[список файлов]

ppc64el 1,185,4 кБ 4,674,0 кБ

[список файлов]

s390x 1,146,3 кБ 4,298,0 кБ

[список файлов]

.

6.2. Команды aptitude, apt-get и apt

6.2. aptitude , apt-get и apt Команды

APT — обширный проект, в первоначальные планы которого входил графический интерфейс. Он основан на библиотеке, содержащей основное приложение, а apt-get — это первый интерфейс, основанный на командной строке, который был разработан в рамках проекта. apt — это второй интерфейс на основе командной строки, предоставляемый APT, который устраняет некоторые ошибки проектирования apt-get .

Оба инструмента построены на основе одной и той же библиотеки и поэтому очень близки, но поведение по умолчанию apt было улучшено для интерактивного использования и на самом деле делать то, что ожидает большинство пользователей. Разработчики APT оставляют за собой право вносить изменения в публичный интерфейс этого инструмента для его дальнейшего улучшения. Напротив, открытый интерфейс apt-get хорошо определен и не будет изменяться каким-либо образом обратно несовместимым образом. Таким образом, это инструмент, который вы хотите использовать, когда вам нужно создать скрипт для запросов на установку пакета.

Затем многие другие графические интерфейсы появились как внешние проекты: synaptic , aptitude (который включает как текстовый, так и графический интерфейс — даже если он еще не завершен), wajig и т. Д. Наиболее рекомендуемый интерфейс, apt , это тот, который мы будем использовать в примерах, приведенных в этом разделе. Однако обратите внимание, что apt-get и aptitude имеют очень похожий синтаксис командной строки. Если между этими тремя командами есть существенные различия, они будут подробно описаны.

Для любой работы с APT необходимо обновлять список доступных пакетов; это можно сделать просто с помощью apt update . В зависимости от скорости вашего подключения и конфигурации операция может занять некоторое время, поскольку она включает в себя загрузку определенного количества (обычно сжатых) файлов ( пакетов , источников , Translation- language-code ), которые постепенно становились все больше и больше по мере развития Debian (не менее 10 МБ данных для основного раздела ).Конечно, установка с набора CD-ROM / DVD не требует загрузки — в этом случае операция выполняется очень быстро.

6.2.2. Установка и снятие

С помощью APT пакеты могут быть добавлены или удалены из системы, соответственно, с помощью apt install package и apt remove package . В обоих случаях APT автоматически установит необходимые зависимости или удалит пакеты, которые зависят от удаляемого пакета.Команда apt purge package предполагает полное удаление путем удаления файлов конфигурации.

Если в файле sources.list упоминается несколько дистрибутивов, можно указать версию пакета для установки. Конкретный номер версии может быть запрошен с apt install package = version , но с указанием его исходного распределения (стабильный, тестируемый или нестабильный) — с apt install package / дистрибутив — обычно предпочтительнее .С помощью этой команды можно вернуться к более старой версии пакета (если, например, вы знаете, что она работает хорошо), при условии, что она все еще доступна в одном из источников, на которые ссылается sources. Список файл. В противном случае на помощь может прийти архив snapshot.debian.org (см. Врезку ИДУТ ДАЛЬШЕ Старые версии пакета: snapshot.debian.org ).

Пример 6.4. Установка нестабильной версии spamassassin

  #    apt install spamassassin / unstable   

Если пакет для установки был предоставлен вам в виде простого файла .deb без связанного репозитория пакетов, все еще можно использовать APT для его установки вместе с его зависимостями (при условии, что зависимости доступны в настроенных репозиториях) с помощью простой команды: apt install ./ path-to- the-package.deb . Начальный ./ важен, чтобы прояснить, что мы имеем в виду имя файла, а не имя пакета, доступного в одном из репозиториев.

Рекомендуются регулярные обновления, поскольку они включают в себя последние обновления безопасности.Для обновления используйте apt upgrade , apt-get upgrade или aptitude safe-upgrade (конечно, после apt update ). Эта команда ищет установленные пакеты, которые можно обновить без удаления каких-либо пакетов. Другими словами, цель состоит в том, чтобы обеспечить минимально возможное обновление. apt-get немного более требователен, чем aptitude или apt , потому что он откажется устанавливать пакеты, которые не были установлены заранее.

apt обычно выбирает номер самой последней версии (за исключением пакетов из Experimental и stable-backports, которые по умолчанию игнорируются независимо от их номера версии). Если вы указали Testing или Unstable в вашем sources.list , apt upgrade переключит большую часть вашей стабильной системы на Testing или Unstable, что может быть не тем, что вы планировали.

Чтобы указать apt использовать определенный дистрибутив при поиске обновленных пакетов, вам необходимо использовать параметр -t или --target-release , за которым следует имя нужного вам дистрибутива (например, apt -t стабильное обновление ).Чтобы не указывать эту опцию каждый раз, когда вы используете apt , вы можете добавить APT :: Default-Release "stable"; в файле /etc/apt/apt.conf.d/local .

Для более важных обновлений, таких как переход с одной основной версии Debian на другую, вам необходимо использовать apt full-upgrade . С помощью этой инструкции apt завершит обновление, даже если ему придется удалить некоторые устаревшие пакеты или установить новые зависимости. Эту команду также используют пользователи, которые ежедневно работают с выпуском Debian Unstable и изо дня в день следят за его развитием.Это настолько просто, что не требует объяснений: репутация APT основана на этой замечательной функциональности.

В отличие от apt и aptitude , apt-get не знает команду full-upgrade . Вместо этого вам следует использовать apt-get dist-upgrade («обновление дистрибутива»), историческую и хорошо известную команду, которую apt и aptitude также принимают для удобства пользователей, которые к ней привыкли.

Результаты этих операций записываются в / var / log / apt / history.log и /var/log/apt/term.log , тогда как dpkg хранит свой журнал в файле с именем /var/log/dpkg.log .

6.2.4. Варианты конфигурации

Помимо уже упомянутых элементов конфигурации, можно настроить определенные аспекты APT, добавив директивы в файл каталога /etc/apt/apt.conf.d/ или /etc/apt/apt.conf в самом . Помните, например, что APT может указать dpkg игнорировать ошибки конфликта файлов, указав DPkg :: options {"--force-overwrite"; } .

Если доступ в Интернет возможен только через прокси-сервер, добавьте строку типа Acquire :: http :: proxy "http: // yourproxy : 3128" . Для FTP-прокси напишите Acquire :: ftp :: proxy "ftp: // yourproxy " . Чтобы узнать о дополнительных параметрах конфигурации, прочтите страницу руководства apt.conf (5) с помощью команды man apt.conf (подробности о страницах руководства см. В Разделе 7.1.1, «Страницы руководства»).

6.2.5. Управление приоритетами пакетов

Одним из наиболее важных аспектов конфигурации APT является управление приоритетами, связанными с каждым источником пакета.Например, вы можете захотеть расширить один дистрибутив одним или двумя более новыми пакетами из Testing, Unstable или Experimental. Можно назначить приоритет каждому доступному пакету (один и тот же пакет может иметь несколько приоритетов в зависимости от его версии или дистрибутива, который его предоставляет). Эти приоритеты будут влиять на поведение APT: для каждого пакета он всегда будет выбирать версию с наивысшим приоритетом (кроме случаев, когда эта версия старше установленной и ее приоритет меньше 1000).

APT определяет несколько приоритетов по умолчанию. Каждая установленная версия пакета имеет приоритет 100. Неустановленная версия имеет приоритет 500 по умолчанию, но он может перейти к 990, если она является частью целевого выпуска (определяется параметром командной строки -t или директива конфигурации APT :: Default-Release ).

Вы можете изменить приоритеты, добавив записи в файл /etc/apt/preferences.d/ или / etc / apt / preferences с именами затронутых пакетов, их версией, их происхождением и их новым приоритет.

APT никогда не будет устанавливать более старую версию пакета (то есть пакет, номер версии которого ниже, чем у установленного в данный момент пакета), за исключением случаев, когда его приоритет выше 1000 (или он явно запрашивается пользователем, см. Раздел 6.2.2, «Установка и удаление»). APT всегда будет устанавливать пакет с наивысшим приоритетом, который соответствует этому ограничению. Если два пакета имеют одинаковый приоритет, APT устанавливает самый новый (номер версии которого самый высокий). Если два пакета одной и той же версии имеют одинаковый приоритет, но различаются по своему содержанию, APT устанавливает версию, которая не установлена ​​(это правило было создано, чтобы охватить случай обновления пакета без увеличения номера версии, что обычно требуется ).

Говоря более конкретно, пакет с приоритетом

<0

никогда не будет установлен,

1..99

будет установлен только в том случае, если не установлена ​​другая версия пакета,

100..499

будет установлен только в том случае, если нет другой более новой версии, установленной или доступной в другом дистрибутиве,

500 …. 989

будет установлен только в том случае, если в целевом дистрибутиве не установлена ​​или не доступна более новая версия,

990..1000

будет установлен, кроме случаев, когда установленная версия новее,

> 1000

будет всегда устанавливаться, даже если это вынуждает APT перейти на более старую версию.

Когда APT проверяет / etc / apt / preferences и /etc/apt/preferences.d/ , он сначала принимает во внимание наиболее конкретные записи (часто те, которые определяют соответствующий пакет), а затем более общие (включая, например, все пакеты дистрибутива).Если существует несколько общих записей, используется первое совпадение. Доступные критерии выбора включают имя пакета и источник, который его предоставил. Каждый источник пакета идентифицируется по информации, содержащейся в файле Release , который APT загружает вместе с файлами Packages . Он указывает источник (обычно «Debian» для пакетов официальных зеркал, но также может быть именем человека или организации для сторонних репозиториев). Он также дает название дистрибутива (обычно стабильный, тестируемый, нестабильный или экспериментальный для стандартных дистрибутивов, предоставляемых Debian) вместе с его версией (например, 10 для Debian Buster).Давайте посмотрим на его синтаксис на некоторых реальных примерах этого механизма.

Предположим, вы хотите использовать пакеты только из стабильной версии Debian. Те, которые предоставлены в других версиях, не должны устанавливаться, за исключением случаев явного запроса. Вы можете записать следующие записи в файл / etc / apt / preferences :

 Пакет: *
Пин: выпуск a = стабильный
Pin-Priority: 900

Пакет: *
Пин: выпуск o = Debian
Pin-Priority: -10
 

a = стабильный определяет имя выбранного дистрибутива. o = Debian ограничивает область действия пакетами, источником которых является «Debian».

Предположим теперь, что у вас есть сервер с несколькими локальными программами, зависящими от версии Perl 5.24, и вы хотите убедиться, что обновления не устанавливают другую его версию. Вы можете использовать эту запись:

 Пакет: perl
Пин: версия 5.24 *
Pin-Priority: 1001
 

Чтобы лучше понять механизмы приоритета и распределения или свойств репозитория для закрепления, не стесняйтесь выполнить политику apt-cache policy , чтобы отобразить приоритет по умолчанию, связанный с каждым источником пакета, или политику apt-cache package to отображать приоритет по умолчанию для каждой доступной версии и источника пакета, как описано в TIP Политика apt-cache .

Справочная документация для файлов / etc / apt / preferences и /etc/apt/preferences.d/ доступна на странице руководства apt_preferences (5), которую вы можете отобразить с помощью man apt_preferences .

6.2.6. Работа с несколькими дистрибутивами

apt — такой замечательный инструмент, что соблазнительно выбрать пакеты из других дистрибутивов. Например, после установки стабильной системы вы можете захотеть опробовать программный пакет, доступный в тестировании или нестабильном состоянии, не слишком сильно отклоняясь от исходного состояния системы.

Даже если вы иногда будете сталкиваться с проблемами при смешивании пакетов из разных дистрибутивов, apt очень хорошо справляется с таким сосуществованием и очень эффективно ограничивает риски. Лучший способ продолжить — перечислить все дистрибутивы, используемые в /etc/apt/sources.list (некоторые люди всегда помещают три дистрибутива, но помните, что Unstable зарезервирован для опытных пользователей) и определить эталонный дистрибутив с помощью Параметр APT :: Default-Release (см. Раздел 6.2.3, «Обновление системы»).

Предположим, что ваш эталонный дистрибутив является стабильным, но тестируемый и нестабильный также перечислены в вашем файле sources.list . В этом случае вы можете использовать apt install package / testing для установки пакета из Testing. Если установка завершается неудачно из-за некоторых невыполнимых зависимостей, позвольте ей решить эти зависимости в рамках тестирования, добавив параметр -t testing . То же, очевидно, относится и к Unstable.

В этой ситуации обновления ( обновление и полное обновление ) выполняются в стабильной версии, за исключением пакетов, уже обновленных до другого дистрибутива: они будут следовать за обновлениями, доступными в других дистрибутивах. Мы объясним это поведение с помощью приоритетов по умолчанию, установленных APT ниже. Не стесняйтесь использовать apt-cache policy (см. Врезку TIP apt-cache policy ) для проверки заданных приоритетов.

Все сосредоточено вокруг того факта, что APT рассматривает только пакеты более высокой или равной версии, чем установленная (при условии, что / etc / apt / preferences не использовался для принудительного приоритета выше 1000 для некоторых пакетов).

Предположим, что вы установили версию 1 первого пакета из Stable, а версии 2 и 3 доступны соответственно в Testing и Unstable. Установленная версия имеет приоритет 100, но версия, доступная в Stable (та же самая), имеет приоритет 990 (поскольку она является частью целевого выпуска). Пакеты в Testing и Unstable имеют приоритет 500 (приоритет по умолчанию для неустановленной версии). Таким образом, победителем становится версия 1 с приоритетом 990. Пакет «остается в стабильном».

Возьмем в качестве примера другой пакет, версия 2 которого была установлена ​​из Testing. Версия 1 доступна в стабильной версии, а версия 3 — в нестабильной. Версия 1 (с приоритетом 990 — таким образом, ниже 1000) отбрасывается, поскольку она ниже установленной версии. Остается только версия 2 и 3, обе с приоритетом 500. Столкнувшись с этой альтернативой, APT выбирает самую новую версию, версию из Unstable. Если вы не хотите, чтобы пакет, установленный из Testing, переходил в Unstable, вы должны назначить приоритет ниже 500 (например, 490) пакетам, поступающим из Unstable.Вы можете изменить / etc / apt / preferences для этого:

 Пакет: *
Пин: релиз a = нестабильный
Приоритет PIN-кода: 490
 

6.2.7. Отслеживание автоматически установленных пакетов

Одной из основных функций apt является отслеживание пакетов, установленных только через зависимости. Эти пакеты называются «автоматическими» и часто включают библиотеки.

С помощью этой информации, когда пакеты удаляются, менеджеры пакетов могут вычислить список автоматических пакетов, которые больше не нужны (потому что в зависимости от них нет пакетов, «установленных вручную»). apt-get autoremove или apt autoremove избавится от этих пакетов. aptitude не имеет этой команды, потому что она удаляет их автоматически, как только они обнаруживаются. Во всех случаях инструменты отображают четкое сообщение со списком затронутых пакетов.

Это хорошая привычка отмечать как автоматические любые пакеты, которые вам не нужны напрямую, чтобы они автоматически удалялись, когда они больше не нужны. apt-mark auto package отметит данный пакет как автоматический, тогда как apt-mark manual package сделает наоборот. aptitude markauto и aptitude unmarkauto работают одинаково, хотя они предлагают больше возможностей для одновременной маркировки нескольких пакетов (см. Раздел 6.5.1, « aptitude »). Интерактивный интерфейс на основе консоли aptitude также позволяет легко просматривать «автоматический флажок» на многих пакетах.

Люди могут захотеть узнать, почему в системе присутствует автоматически установленный пакет. Чтобы получить эту информацию из командной строки, вы можете использовать aptitude, почему package ( apt и apt-get не имеют аналогичной функции):

  $    aptitude почему python-debian
    i aptitude Предлагает apt-xapian-index
p apt-xapian-index Зависит от python-debian (> = 0.1.14)
  

.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *