Linux Mint и его Cinnamon. Очерки применителя
Шрифт:
$ 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
Выбор ранее не выбранного
(Чтение базы данных … на данный момент установлен 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 пакетов не обновлено.
После
Хотите продолжить? [Д/н]
Список удаляемых пакетов нужно читать очень внимательно, чтобы случайно не удалить что-нибудь жизненно необходимое.
Пакеты, от которых зависит удаляемый, автоматически не удаляются ни 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/.
Обновление системы
Сказанное выше касалось единичных пакетов или их серий — любая из перечисленных субкоманд принимает любое количество аргументов. Однако в утилите apt предусмотрены и внутренние команды для общего обновления пакетов, а также для тотального системы. Однако, прежде чем выполнить любую из них, необходимо провести обновление локального кеша пакетов, то есть получить списки новых и обновлённых пакетов. Делается это внутренней командой update: