Работа с бинарными пакетами

Работа с бинарными пакетами

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

$ apt install geany

которая сначала запросит пароль пользователя с административным типом аккаунта:

[sudo] password for alv:

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

Чтение списков пакетов… Готово

Построение дерева зависимостей

Чтение информации о состоянии… Готово

Будут установлены следующие дополнительные пакеты:

  geany-common

НОВЫЕ пакеты, которые будут установлены:

  geany geany-common

обновлено 0, установлено 2 новых пакетов, для удаления отмечено 0 пакетов, и 37 пакетов не обновлено.

Необходимо скачать 3808 kБ архивов.

После данной операции, объём занятого дискового пространства возрастёт на 9872 kB.

Хотите продолжить? [Д/н]

Согласие предполагается по умолчанию, так что тут достаточно нажать Enter. После чего начинается скачивание пакетов из содержащего их репозитория, распаковка и инкорпорация компонентов в файловую иерархию, а также регистрация в базе данных и включение, если требуется, исполняемого файла в главное меню (для Geany — в секцимю Прграммирование, так как эта программа позиционируется её авторами как IDE — Integrated Development Environment, то есть интегрированная среда разработки). Основной статус пакета geany изменится на «установленный»:

$ apt search geany | head -n 1

i   geany           - Небольшая и быстрая IDE

А пакет geany-common приобретёт ещё и статус автоматически установленного:

$ apt search geany-common

i A geany-common    - Небольшая и быстрая IDE — общие файлы

Если в системе уже был установлен данный пакет более старой версии — он будет обновлён. А вот переустановить пакет той же версии (например, если он был безнадёжно испорчен в ходе экспериментов) команда install откажется, сообщив, что

Уже установлена самая новая версия geany.

обновлено 0, установлено 0 новых пакетов, для удаления отмечено 0 пакетов, и 37 пакетов не обновлено.

Однако на этот предмет существует специальная команда reinstall, аргументом которой указывается установленный пакет, нуждающийся в исправлении.

Локально отдельные пакеты могут быть установлены с помощью внутренней команды deb, аргументом которой должно быть полное имя файла пакета, если нужно, с указанием пути. Например, команда

$ apt deb sublime-text_3065_amd64.deb

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

Поскольку внутренняя команда deb — полный эквивалент конструкции sudo dpkg -i, она не занимается разрешением зависимостей, а только сообщает об их нарушении. Например, попытка установить в окружении Cinnamon файловый менджер Caja из среды MATE вызовет следующие сообщения:

$ apt deb caja_1.8.2-0+rebecca_amd64.deb

Выбор ранее не выбранного пакета caja.

(Чтение базы данных … на данный момент установлен 188621 файл и каталог.)

Preparing to unpack caja_1.8.2-0+rebecca_amd64.deb ...

Unpacking caja (1.8.2-0+rebecca) ...

dpkg: зависимости пакетов не позволяют настроить пакет caja:

 caja зависит от libcaja-extension1 (= 1.8.2-0+rebecca), однако:

  Пакет libcaja-extension1 не установлен.

 caja зависит от libmate-desktop-2-17, однако:

  Пакет libmate-desktop-2-17 не установлен.

 caja зависит от mate-desktop, однако:

  Пакет mate-desktop не установлен.

 caja зависит от caja-common (= 1.8.2-0+rebecca), однако:

  Пакет caja-common не установлен.

 

dpkg: error processing package caja (--install):

 проблемы зависимостей — оставляем не настроенным

Processing triggers for man-db (2.6.7.1-1ubuntu1) ...

Processing triggers for mime-support (3.54ubuntu1.1) ...

Processing triggers for gnome-menus (3.10.1-0ubuntu2) ...

Processing triggers for desktop-file-utils (0.22-1ubuntu1) ...

Processing triggers for ubuntu-system-adjustments (2014.11.19) ...

При обработке следующих пакетов произошли ошибки:

 caja

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

Установленные пакеты иногда требуется и удалять. Этой цели в apt для Mint служат две внутренние команды — remove и purge, аргументами которых служат, очевидно, имена удаляемых пакетов. Первая удаляет файлы пакета, но сохраняет его общесистемные конфиги, вторая — удаляет также и их. Различие между ними отражается в основном статусе удалённого пакета — в первом случае его значение будет c, во втором — p, как и у пакетов, которые никогда не устанавливались.

И remove, и purge автоматически удаляют все зависимые пакеты, список их выводится после ввода пользовательского пароля:

$ apt purge libreoffice-impress

[sudo] password for alv:

Чтение списков пакетов… Готово

Построение дерева зависимостей

Чтение информации о состоянии… Готово

Пакеты, которые будут УДАЛЕНЫ:

  libreoffice-impress* libreoffice-ogltrans*

  libreoffice-presentation-minimizer*

обновлено 0, установлено 0 новых пакетов, для удаления отмечено 3 пакетов, и 5 пакетов не обновлено.

После данной операции, объём занятого дискового пространства уменьшится на 6031 kB.

Хотите продолжить? [Д/н]

Список удаляемых пакетов нужно читать очень внимательно, чтобы случайно не удалить что-нибудь жизненно необходимое.

Пакеты, от которых зависит удаляемый, автоматически не удаляются ни remove, ни purge. В этом случае apt предлагает воспользоваться внутренней командой autoremove для очистки системы от «осиротелых» зависимостей:

$ apt purge geany

Чтение списков пакетов… Готово

Построение дерева зависимостей

Чтение информации о состоянии… Готово

Следующий пакет устанавливался автоматически и больше не требуется:

  geany-common

Для его удаления используйте «apt-get autoremove».

Пакеты, которые будут УДАЛЕНЫ:

  geany*

обновлено 0, установлено 0 новых пакетов, для удаления отмечено 1 пакетов, и 5 пакетов не обновлено.

После данной операции, объём занятого дискового пространства уменьшится на 2671 kB.

Хотите продолжить? [Д/н]

Разумеется, в нашем случае мы обращаемся не к команде apt-get, всё в той же утилите apt для Mint:

$ apt autoremove

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

apt check

[~] Что при хорошем раскладе после ввода пароля должно дать такой результата:

Чтение списков пакетов… Готово

Построение дерева зависимостей

Чтение информации о состоянии… Готово

А при плохом... плохого у меня до сих пор не было.

Перед установкой пакетов из репозитория они предварительно скачиваются и помещаются в каталог /var/cache/apt/archives/. Со временем файлов пакетов накапливается много, а нужны они бывают только в исключительных случаях. Для избавления от них существуют в apt для Mint предусмотрены команды autoclean и clean. Первая удаляет из кеша только пакеты устаревших версий, сохраняя те, версии которых установлены в системе. Вторая же полностью очищает каталог /var/cache/apt/archives/.

Поделитесь на страничке

Следующая глава >

Похожие главы из других книг:

Работа с бинарными данными

Из книги автора

Работа с бинарными данными packПакетирование данных в двоичную строку.Синтаксис:string pack(string format [,mixed $args, ...]);Функция pack() упаковывает заданные аргументы в бинарную строку, которая затем и возвращается. Формат параметров, а также их количество, задается при помощи строки $format,


Обмен пакетами

Из книги автора

Обмен пакетами На рис. 2.5 представлен реальный обмен пакетами, происходящий во время соединения TCP: установление соединения, передача данных и завершение соединения. Мы также показываем состояния TCP, через которые проходит каждый узел. Рис. 2.5. Обмен пакетами для


Обмен пакетами

Из книги автора

Обмен пакетами На рис. 2.9 показан реальный обмен пакетами для ассоциации SCRIPT. Рисунок включает установление ассоциации, передачу данных и завершение ассоциации. Мы также показываем состояния SCRIPT, через которые проходит каждый из узлов. Рис. 2.9. Обмен пакетами для


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

Из книги автора

Управление пакетами Работа с пакетами предполагает следующие действия — их установку с занесением в локальную базу данных, отслеживание зависимостей (и иногда их разрешение) обновление, удаление, получение информации о пакетах, иногда конфигурирование. Для понимания


Работа с пакетами исходных текстов

Из книги автора

Работа с пакетами исходных текстов Всё сказанное выше относилось к бинарным пакетам. Однако в утилите apt предусмотрены и средства для работы с пакетами исходных текстов. Так, с помощью внтуренней команды source можно просто скачать пакет, указанный в качестве её аргумента —


Управление пакетами: Synaptic

Из книги автора

Управление пакетами: Synaptic Система управления пакетами Synaptic — графический фронт-энд для утилит семейства APT, обычно используемыми для работы с пакетами deb-формата, а в некоторых дистрибутивах — и с пакетами


Опции для работы с пакетами и гнездами

Из книги автора

Опции для работы с пакетами и гнездами Низкоуровневые сетевые средства Linux позволяют программам передавать и принимать фрагменты данных, называемые пакетами, посредством специальных структур, которые называются гнездами (socket). В большинстве случаев обмен данными через


3.6.5. Документация, поставляемая с дистрибутивом и пакетами ПО

Из книги автора

3.6.5. Документация, поставляемая с дистрибутивом и пакетами ПО Если в процессе установки системы вы не отказались от установки документации, то после завершения процедур инсталляции в каталоге /usr/doc/ (или /usr/share/doc) вы найдете подкаталоги HOWTO, FAQ, HTML и LDP, содержащие


17.3 Программы управления пакетами

Из книги автора

17.3 Программы управления пакетами В Ubuntu существуют две основные графические утилиты управления программами: «Центр приложений Ubuntu» и «Менеджер пакетов Synaptic». Кроме того, все действия можно легко совершать и через консоль. Каждому из этих инструментов посвящена одна из


Глава 20 Консольные инструменты управления пакетами

Из книги автора

Глава 20 Консольные инструменты управления пакетами Считается, и вполне оправданно, что набрать одну команду в терминале сильно проще, чем кликать мышкой по GUI инструментам. Кроме того, основой Linux всё-таки является терминал. Поэтому я никак не могу обойти описание работы с


9.2. Программа dpkg: управление DEB-пакетами

Из книги автора

9.2. Программа dpkg: управление DEB-пакетами Программа dpkg используется для установки, удаления и управления пакетами Debian/Ubuntu. Программа dpkg вызывается из командной строки. Формат вызова ее следующий: dpkg [ключи] действие Примечание Для запуска dpkg нужно обладать полномочиями root,


Практическая работа 19. Поиск в Интернете. Работа с папками Избранное и Журнал

Из книги автора

Практическая работа 19. Поиск в Интернете. Работа с папками Избранное и Журнал Задание 1. Научиться выполнять поиск в Интернете, настраивать параметры поиска, работать с папками Избранное и Журнал.Последовательность выполнения1. Запустите Internet Explorer.2. Щелкните кнопкой мыши


Практическая работа 53. Запуск Access. Работа с объектами базы данных

Из книги автора

Практическая работа 53. Запуск Access. Работа с объектами базы данных Задание. Ознакомиться с окном программы Access. Запустить и рассмотреть учебную базу данных. ВНИМАНИЕ При выполнении задания помните, что все внесенные в базу данных изменения записываются немедленно и их