3 способа установить deb файлы на Ubuntu Linux
В этой статье для начинающих объясняется, как устанавливать deb-пакеты в Ubuntu. Также показано, как впоследствии удалить эти пакеты deb.
Это еще одна статья в серии новичков Ubuntu. Если вы абсолютно новичок в Ubuntu, вы можете поинтересоваться, как устанавливать приложения. Самый простой способ — использовать Ubuntu Software Center. Найдите приложение по его имени и установите его оттуда.
Жизнь была бы слишком простой, если бы вы могли найти все приложения в Центре программного обеспечения. Но этого не происходит, к сожалению.
Вы можете найти эти пакеты DEB в разделе загрузки на сайте поставщика программного обеспечения. Например, если вы хотите установить Google Chrome в Ubuntu, вы можете загрузить пакет DEB для Chrome со своего веб-сайта.
Теперь возникает вопрос, как установить файлы deb? Существует несколько способов установки пакетов DEB в Ubuntu. Я покажу их вам один за другим в этом уроке.
Вы можете выбрать инструмент GUI или инструмент командной строки для установки пакета deb. Выбор за вами.
Давайте посмотрим, как установить deb файлы.
Способ 1: использование программного центра по умолчанию
Откроется центр программного обеспечения, и вы должны увидеть возможность установки программного обеспечения. Все, что вам нужно сделать, это нажать кнопку установки и ввести свой пароль для входа.
Способ 2. Использование приложения Gdebi для установки пакетов deb с зависимостями.
Опять же, жизнь была бы намного проще, если бы все прошло гладко. Но это не жизнь, как мы ее знаем.
Что происходит, так это то, что программа может зависеть от другого программного обеспечения (библиотек). Когда разработчик готовит пакет DEB для вас, он / она может предположить, что ваша система уже имеет эту часть программного обеспечения в вашей системе.
Но если это не так, и ваша система не имеет необходимых компонентов программного обеспечения, вы столкнетесь с печально известной «ошибкой зависимости».
Центр программного обеспечения не может самостоятельно обрабатывать такие ошибки, поэтому вам придется использовать другой инструмент под названием gdebi.
gdebi — это легкое приложение с графическим интерфейсом, единственная цель которого — установить пакеты deb.
Лично я предпочитаю gdebi центру программного обеспечения для установки файлов deb. Это легкое приложение, поэтому установка кажется быстрее. Вы можете прочитать подробно об использовании gDebi и сделать его по умолчанию для установки пакетов DEB.
Вы можете установить gdebi из центра программного обеспечения или используя команду ниже:
Способ 3: установить deb файлы в командной строке с помощью dpkg
Если вы хотите установить deb файлы в команде lime, вы можете использовать команду apt или dpkg. Команда Apt на самом деле использует команду dpkg, но apt более популярна и проста в использовании.
Если вы хотите использовать команду apt для файлов deb, используйте ее следующим образом, где /path/to/file.deb — путь до вашего deb-файла:
Если вы хотите использовать команду dpkg для установки пакетов deb, вот как это сделать:
Если при установке пакетов deb вы получили ошибку зависимости, вы можете использовать следующую команду для устранения проблем зависимости:
Как удалить пакеты deb
Удаление пакета deb не имеет большого значения. И нет, вам не нужен оригинальный файл deb, который вы использовали для установки программы.
Способ 1: удаление пакетов deb с помощью команд apt
Все, что вам нужно, это имя программы, которую вы установили, и затем вы можете использовать apt или dpkg, чтобы удалить эту программу. Для этого введите вот эту команду, где program_name название программы, которую вы хотите удалить.
Теперь возникает вопрос, как найти точное имя программы, которое нужно использовать в команде удаления? У команды apt есть решение и для этого.
Команда grep удалит из вывода все строки, в которых нет слова grid и мы получим только то, что нас интересует. То есть в данном случае вместо большого списка будет только та строка, которая интересует. Это намного проще, чем искать глазами, правда?
Как видите, установлена программа appgrid. Теперь вы можете использовать это имя программы с командой apt remove.
Способ 2: удалить пакеты deb с помощью команд dpkg
Вы также можете использовать dpkg, чтобы найти имя установленной программы:
Вывод выдаст все установленные пакеты, которые содержат слово grid:
ii в приведенной выше команде вывод означает, что пакет был правильно установлен.
Теперь, когда у вас есть имя программы, вы можете использовать команду dpkg, чтобы удалить ее:
Я надеюсь, что это руководство для начинающих помогло вам установить deb файлы в Ubuntu. Я добавил часть удаления, чтобы вы могли лучше контролировать установленные вами программы.
Более подробно о deb-пакетах вы можете почитать на официальном сайте Debian тут.
Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.
Типичный способ установки пакета из файла DEB:
С помощью этих команд устанавливаются пакеты из стандартных репозиториев — это самый надёжный способ в том плане, что для устанавливаемого пакету будут установлены зависимости и в будущем этот пакет будет обновляться вместе с другими программами в системе. То есть установка из стандартных репозиториев является приоритетной.
Установка без учёта зависимостей
Следующая команда установит пакет без проверки зависимостей:
При выполнении операции менеджером пакетов, например, обновление кэша:
может возникнуть сообщение об отсутствующих зависимостях, исправить это можно командой:
Установка DEB файла с помощью apt
Программа apt также умеет устанавливать пакеты из указанных файлов, при этом одновременно будут установлены необходимые зависимости для этого пакета:

Установка пакетов с помощью gdebi
Вы можете установить программу gdebi:
И затем устанавливать пакеты с помощью неё:
gdebi также установит необходимые зависимости. На самом деле, gdebi появилась когда apt-get не могла устанавливать локальные файлы (или эта возможность не была документирована), сейчас же вместо gdebi можно использовать apt, которая предустановлена в каждом дистрибутиве, основанном на Debian.
Еще раз о deb пакетах
Подготовка
Чтобы начать создавать deb пакеты, нужно установить несколько пакетов:
Подготовка папки с исходниками
Для того, чтобы dh_make и другие утилиты могли работать с папкой с исходниками, нужно привести ее в специфичный вид.
Папка должна называться имяпакета-версия. Т.е. если у меня есть папка Plugins с программой версии 0.1, то я создаю папку с именем plugins-0.1.
Теперь нужно создать архив с этой папкой. Архив должен содержать в имени *.orig.tar.gz, т.е.:
Последний подготовительный шаг, это создание в папке с исходниками папки debian со множеством служебных файлов. Чтобы это сделать, нужно выполнить команду:
В процессе выполнения этой команды будет задан вопрос о том, какой тип архива мы создаем, самый простой это single.
Настройка пакета
Вся настройка пакета происходит путем редактирования файлов в каталоге debian. Рассмотрим те файлы, которые будем использовать:
changelog
Данный файл содержит историю изменения пакета и текущую версию пакета. Посмотрим на его содержимое:
В начале идет название пакета — libvksplugins, затем его версия. Версия делиться на две части символом «-». Первая часть показывает версию программы в пакете, вторая «ревизию» пакета. Ревизия это версия пакета, т.е. если раньше такого пакета не было, то ревизия равна 1. Если же пакет с такой версией программы уже был, но в нем произошли изменения, то ревизия увеличивается.
Слово unstable показывает, что пакет является не стабильным, т.е. он не был протестирован должным образом на машинах пользователей.
Надпись urgency=low показывает срочность изменения. Т.к. срочности нет, то значение равно low. Если бы, мы делали пакет для исправления серьезной уязвимости или ошибки, то значение можно было бы установить в high.
После первой строки идет пустая строка, а за ней первая запись:
В Debian, changelog используется для автоматического закрытия ошибок в системах отслеживания ошибок в программных продуктах. Т.к. в данном случае, я не использую такую систему, то эта строка принимает вид:
Последняя строка является подписью человека, сделавшего запись. В ней содержится имя и адрес, а также дата изменения.
После установки deb пакета, файл changelog устанавливается в
control
Файл debian/control является главным конфигом, при создании deb пакета. Вот пример такого файла:
Видно, что файл разбит на секции при помощи пустых строк. Каждая секция описывает один пакет, создаваемый из папки с исходниками. Рассмотрим их по порядку:
Source Данная секция говорит о том, что нужно создать пакет исходных кодов. Параметром указано libvksplugins, это значит, что пакет исходных кодов будет называться libvksplugins.
Priority Эта секция устанавливает приоритет пакета. Т.к. система может прекрасно обойтись без нового пакета, то значение секции установлено в optional. Т.е. этот пакет не обязателен для установки. Подробнее о приоритетах написано здесь.
Maintainer Эта секция описывает контакты человека, создающего пакет. Ее формат довольно прост и дополнительного описание не требует.
Build-Depends Одна из самых важных секций, устанавливающая зависимости пакета. Зависимости, указанные в данной секции должны быть выполнены, чтобы можно было собрать пакет. Т.е. список зависимостей для сборки и установки могут отличаться.
Видно, что в зависимостях стоят debhelper (>= 9), cmake. Зависимость debhelper (>= 9) ставиться для всех пакетов по умолчанию. Она нужна для корректной работы программ вида dh_*.
Второй элемент cmake был добавлен потому, что папка с исходниками содержала файл CMakeLists.txt, т.е. для сборки используется система сборки CMake. Для того, чтобы узнать, какие зависимости есть у программы, можно почитать ее документацию. Кроме этого, можно воспользоваться командой dpkg-depcheck. Данная команда должна запускаться так:
Но, т.к. при использовании CMake нет скрипта конфигурирования, то я использую ее так:
Из примечательных тут можно отметить:
cmake
qt4-qmake
libqt4-dev
Остальные являются зависимостями данных. Причем, cmake уже есть в списке зависимостей сборки. В принципе, можно его оставить как есть или указать используемую версию:
При этом в CMakeLists.txt указана версия cmake, которую нужно использовать:
Я думаю, что разработчику виднее, и поэтому указываю версию из CMakeLists.txt. Для Qt 4 все понятно с номерами версий, но для очистки совести проверим и их версии:
Т.е. для Qt 4 указываем версию 4.8.6:
Standards-Version Версия стандарта, в соответствии с которым создан файл. Это значение не нужно менять.
Section. Секция для пакета, т.е. группа пакетов, выполняющая одну задачу. В Политике Debian разделе 2.4 этот вопрос описан более подробно.
Homepage Домашняя страница проекта. Т.к. данный код писал я и у него нет страницы, просто удаляю эту строку.
Vcs-* Ссылки на репозитории проекта. Их у меня тоже нет, поэтому удаляю эти строки.
Другие пакеты После секции файла, где описывается пакет с исходниками, идут секции, которые описывают другие пакеты, создаваемые из пакета с исходниками. Схема создания пакетов:
Из схемы видно, что из исходников программы, я хочу получить 4 пакета:
Мой персональный ответ на данный вопрос, заключается в том, что такое разбиение помогает структурировать программу по тому, как я хочу с ней работать. Для разработки я поставлю dev пакет, а для использования нет.
Кроме описанных выше пакетов, можно создать dbg пакет с отладочной сборкой программы. Это может пригодиться, если программа падает и у Вас есть под рукой отладчик. Однако, я так и не смог понять как это делать. Документация не дает ответа на этот вопрос. Если делать так как описано в ней, то я либо получаю пустой пакет либо получаю кучу ошибок при сборке.
Схема на рисунке выше показывает, что пакет с исходниками называется libvksplugins_source, однако, в файле control указано, что пакет с исходниками будет называться libvksplugins. На самом деле, он действительно будет называться libvksplugins, а пакет с бинарниками, будет называться libvksplugins… deb. Суть этой путаницы в том, что пакет с исходниками представляет собой tar архив и служебные файлы, тогда как пакет бинарников это архив с расширение deb.
Настройка пакета библиотеки Посмотрим внимательно на описание пакета библиотеки:
Для пакетов, содержащих скрипты или тексты, нужно указывать значение как all.
Третья строка, описывает зависимости создаваемого пакета. Вот как она описана в 4й главе Руководства начинающего разработчика Debian:
Т.е. эта строка говорит о том, что сборщик пакета сам определит зависимости.
Последний раздел данной секции это описание пакета. Первая строка содержит кратное описание, последующие строки содержат более подробное описание. Подробное описание, должно иметь определенный формат:
Настройка пакета документации Вместе с библиотекой поставляется документация, чтобы она была в отдельном пакете, добавляем его описание:
rules
Данный файл является аналогом Makefile для сборки пакетов. По умолчанию, он создается в таком виде:
Видно, что это bash скрипт с синтаксисом Makefile. Единственная интересная конструкция здесь это
Т.к. исходники используют систему сборки CMake, то нужно изменить эту запись следующим образом:
Содержимое пакетов
После того, как мы указали в debian/control какие пакеты мы хотим получить, нужно указать какие файлы в какой пакет помещать. Для этого, для каждого названия пакета из файла control, нужно создать в папке debian два файла. Первый должен называться пакет.dirs, а второй пакет.install. Суть файлов в том, что первый указывает, какие папки нужно создать для пакета, а второй, какие файлы включить в пакет.
Посмотрим на их содержимое:
Важный момент, отсутствие начальной дроби в путях и отсутствие дроби в конце пути к папке. Проверив, куда CMake устанавливает файлы библиотеки, можно сформировать такие файлы:
Завершение настройки
Т.к. исходники мои, то никаких дополнительных описаний и ограничений copyright у меня нет, поэтому я удаляю все лишние файлы из каталога debian.
Сборка пакетов
После настройки, сборка пакетов происходит довольно просто, нужно в папке проекта (которая включает подпапку debian) выполнить команду:
Заключение
Если вы дочитали до сюда — значит вы любите читать.
Этот текст является результатом моего опыта внедрения deb пакетов на работе. Опыт показал, что наличие сетевого репозитория (reprepro) и внимательное отслеживание версий, позволяют без проблем обновлять и тестировать различные версии ПО на парке из 30 машин с системами Astra Linux 1.3, 1.4 и Эльбрус ОС.
Три способа как установить deb файлы в Ubuntu и как удалить их потом
Это еще одна статья из нашего цикла для начинающих Ubuntu. Если вы полностью новичок в Ubuntu, вы можете узнать, как устанавливать приложения.
Жизнь была бы слишком простой, если бы вы могли найти все приложения в Центре программного обеспечения. К сожалению, это не так.
Вы можете найти эти deb-пакеты в разделе загрузки на сайте разработчиков программного обеспечения. Например, если вы хотите установить Google Chrome на Ubuntu, вы можете скачать пакет Chrome deb с его сайта.
Теперь возникает вопрос: как установить deb-файлы? Существует несколько способов установки deb-пакетов в Ubuntu. Я покажу их вам один за другим в этом руководстве.
Вы можете выбрать вариант с использованием графического интерфейса или командной строки для установки deb-пакета. Выбор за вами.
Давайте посмотрим, как устанавливаются deb-файлы.
Метод 1: Используя стандартный Центр программного обеспечения
Откроется центр программного обеспечения, где вы должны увидеть кнопку установки программного обеспечения. Все, что вам нужно сделать, это нажать кнопку установки и ввести пароль для входа в систему.
Проблемы: Двойным щелчком по deb-файлу программа не открывается в центре программного обеспечения в Ubuntu 20.04.
Двойной щелчок по deb-файлу в Ubuntu 20.04 открывает файл в менеджере архива вместо программного центра.
Это странно, но это легко исправить. Все, что вам нужно сделать, это щелкнуть правой кнопкой мыши на deb-файле и выбрать вверху Открыть с помощью. Здесь выберите Открыть с помощью Центра приложений.
Метод 2: Используя приложение Gdebi для установки deb-пакетов с зависимостями.
Опять же, жизнь была бы намного проще, если бы все всегда шло гладко. Но это не та жизнь, которую мы знаем.
Происходит то, что программа может зависеть от другого программного обеспечения (например, библиотек). Когда разработчик готовит для вас пакет deb, он может предположить, что в вашей системе уже есть этот пакет.
Но если это не так и в вашей системе нет тех необходимых программ, вы столкнетесь с печально известной «ошибкой зависимостей».
Центр программного обеспечения не может справиться с такими ошибками самостоятельно, поэтому вам придется использовать другой инструмент, так называемый gdebi.
Лично я предпочитаю gdebi, а не центр программного обеспечения для установки deb-файлов. Это легкое приложение, поэтому установка кажется более быстрой.
Вы можете установить gdebi из центра программного обеспечения или с помощью команды, приведенной ниже:
Если вы хотите установить deb-пакеты с помощью терминала, вы можете использовать либо команду apt, либо команду dpkg. Команда apt на самом деле использует команду dpkg под капотом, но apt более популярна и проста в использовании.
Если вы хотите использовать команду apt для deb файлов, используйте ее следующим образом:
Если вы хотите использовать команду dpkg для установки deb-пакетов, вот как это лучше сделать:
В обеих командах вы должны заменить path_to_deb_file на путь и имя загруженного deb-файла.
Если во время установки deb-пакетов вы получили ошибку зависимостей, вы можете использовать следующую команду для её исправления:
Метод 1: Удаление deb-пакетов с помощью команды apt
Все, что вам нужно, это имя программы, которую вы установили, а затем вы можете использовать apt или dpkg, чтобы удалить эту программу.
Теперь возникает вопрос, как найти точное имя программы, которое нужно использовать в команде удаления? У команды apt тоже есть решение для этого.
Вы можете найти список всех установленных файлов с помощью команды apt, но вручную просмотреть его будет неудобно. Поэтому вы можете использовать команду grep для поиска вашего пакета.
Например, я установил приложение AppGrid в предыдущем разделе, но если я хочу узнать точное имя программы, я могу использовать нечто подобное:
Эта команда покажет мне все пакеты, у которых в имени есть слово grid, и оттуда я смогу получить точное имя программы.
Как видите, программа под названием appgrid установлена. Теперь вы можете использовать это имя программы с командой apt remove.
Метод 2: Удаление deb пакетов с помощью команды dpkg
Вы можете использовать dpkg, чтобы найти имя установленной программы:
На выходе будут показаны все установленные пакеты, в именах которых есть слово grid.
Даный вывод означает, что пакет был правильно установлен.
Теперь, когда у вас есть имя программы, вы можете использовать команду dpkg для ее удаления:
Совет: Обновление deb пакетов
Некоторые deb-пакеты (например, Google Chrome) предоставляют обновления через обновления системы, но для большинства других программ вам придётся удалить существующую программу и установить более новую версию.
Я надеюсь, что это руководство для начинающих помогло вам понять, как установливаются deb-пакеты в Ubuntu. Я добавил информацию об их удалении, чтобы вы могли лучше контролировать установленные программы.
Записки IT специалиста
Технический блог специалистов ООО»Интерфейс»

Пакеты и репозитории
Несмотря на разные форматы, общие принципы построения и управления пакетами в различных Linux системах совпадают, поэтому если вы овладеете приемами работы с одним форматом пакетов, то переучиться на другой не составит особого труда.
Кроме того, при разработке свободного ПО широко используются наработки других проектов, действительно, зачем повторно изобретать велосипед, если нужные функции уже есть в библиотеке другого проекта. Достаточно просто указать нужный пакет в зависимостях, при этом скачивать весь сторонний проект также будет не нужно, достаточно только необходимых пакетов.
Кроме того, установка пакетов в обход репозитория может быть небезопасна и считается правилом дурного тона, хотя и применяется, в основном для коммерческого ПО. Наличие репозиториев также позволяет централизованно обновлять пакеты, достаточно сравнить текущие версии пакетов с версиями в репозитории и скачать нужные обновления. Это удобно, так как одновременно обновляется и система и все установленное в нее ПО.
Кроме того, собственные репозитории существуют и у разработчиков. Поэтому, если вы хотите получать самую свежую версию нужного вам продукта, не дожидаясь пока ее включат в дистрибутив, то можете подключить репозиторий разработчика и обновлять его оттуда.
Как правило типичный дистрибутив на базе Debian имеет четыре основных репозитория:
Каждый репозиторий состоит из нескольких разделов, в Debian это:
В Ubuntu разделы немного иные:
Список подключенных репозиториев хранится в /etc/apt/sources.list, ниже показано содержимое этих файлов в Debian 10 (слева) и Ubuntu 18.04 (справа).
В Debian все достаточно лаконично, подключен только раздел main трех репозиториев Base, Security updates и Stable updates, если вам нужны иные разделы, то их следует подключить самостоятельно, добавив через пробел в нужную строку.
В Ubuntu более развернутый список репозиториев, он полностью не уместился на скриншот, но для понимания структуры записей приведенного фрагмента хватает. Сверху вниз подключены Base и Security updates для поддерживаемых компанией разделов, затем они же вместе для свободного и несвободного ПО поддерживаемого сообществом, а вот Stable backports прописан для всех веток одновременно, еще ниже (за пределами экрана на скриншоте) подключены Security updates и специальный партнерский репозиторий для пакетов партнеров компании Canonical.
Типичная запись репозитория выглядит как строка со следующей структурой:
Адреса репозиториев сохраняются постоянными, отличаясь только именами выпуска, поэтому если вам нужно обновить выпуск, скажем с Debian 9 на Debian 10, то вам просто потребуется заменить везде stretch (имя девятого выпуска) на buster.
Также в Debian можно использовать вместо имен классы выпусков:
Но на практике это не используется, так как при выходе нового релиза вы получите его автоматическое обновление, что в большинстве случаев неприемлемо. Хотя если вы энтузиаст и хотите всегда быть на переднем крае прогресса, то можете везде прописать testing, получив аналог популярных ныне rolling release дистрибутивов, которые не имеют закрепленной версии и всегда предоставляют наиболее свежий срез пакетов, зачастую ценой стабильности.
Для добавления собственных источников пакетов предназначена директория /etc/apt/sources.list.d/ в которой следует располагать файлы с адресами источников и обязательным расширением .list. Хотя их можно прописать и в основной файл, но это считается дурным тоном.
Низкоуровневый менеджер пакетов Dpkg
Данная утилита обычно используется для установки пакетов, скачанных вручную, например, коммерческого ПО. Синтаксис ее довольно прост и легко запоминается. Прежде всего полезно получить информацию о пакете, чтобы узнать его зависимости и возможные конфликты, для этого выполните:
Для установки просто выполните:
Но помните, что dpkg не умеет разрешать зависимости и вы должны будете сделать это вручную, либо скачать все необходимые пакеты и установить их в нужном порядке, это можно поручить dpkg, запустив его с маской в имени пакетов:
Такая конструкция установит все находящиеся в данном расположении deb-пакеты, так что будьте внимательны, либо используйте более узкие маски.
Чтобы получить сведения о всех доступных и установленных пакетах используется ключ -l, но он выведет список всех пакетов, поэтому следует использовать его с маской, например, так:
Так как мы задали имя пакета без подстановочных символов, то информация будет выведена только при полном совпадении заданного имени с именем пакета. Если мы хотим получить больше информации, то можем сделать так:
Теперь мы видим больше пакетов, как установленных в системе, так и доступных в репозитории. Но это не все пакеты, относящиеся к gimp, так как наша маска предписывает искать пакеты, которые начинаются на gimp и игнорирует иные варианты. Поэтому, если вы не уверены, что правильно задали маску, можно пойти другим путем, отдав вывод dpkg команде grep, которая найдет все нужные вхождения.
В этом случае вы получите список только установленных, либо удаленных, но имеющих оставшиеся части (например, конфигурационные файлы) пакетов, но при этом будут найдены все вхождения указанной строки, даже в середине имени, в данном случае мы обнаружили ранее не найденную библиотеку libgimp2.0
Для удаления пакета используйте:
Обратите внимание, что здесь мы указываем не имя deb-файла, а имя установленного пакета, узнать его можно способом, представленным выше. Часто после удаления пакета от него остаются конфигурационные файлы и иные данные, полностью очистить их можно командой:
Но будьте внимательны, при этой операции могут быть удалены пользовательские данные, хранившиеся в стандартных расположениях. Это актуально для таких видов программ, как веб-сервера или СУБД.
На этом мы закончим знакомство с dpkg, ограничившись наиболее часто необходимыми в повседневной деятельности командами, а сами перейдем к более высокоуровневым инструментам.
Улучшенный инструмент для работы с пакетами APT и команды apt и apt-get
Настоящим пакетным менеджером в Debain является APT (Advanced Package Tool, Улучшенный инструмент для работы с пакетами), который умеет работать с репозиториями, разрешать зависимости и взаимодействовать с dpkg, которая, собственно, и занимается установкой пакетов.
APT имеет два интерфейса командной строки: apt-get и более новый apt. Их синтаксис и возможности во многом схожи, и мы будем практически всегда использовать последний, кроме отдельных случаев, когда требуемые возможности поддерживает только apt-get.
Списки пакетов представляют собой простые текстовые файлы с перечнем пакетов в репозитории, данными о пакете, его зависимостях и его расположении в структуре репозитория, один из таких списков открыт на скриншоте выше.
APT всегда работает с локальным кешем списков, поэтому перед любыми действиями с пакетным менеджером следует обновить списки в кеше. Это можно сделать командой, которая должна быть широко известна нашим читателям:
Команда проверяет версии списков в репозитории и при необходимости скачивает их новые версии, после чего анализирует список установленных пакетов и сообщает о доступных обновлениях, увидеть список пакетов, для которых доступны обновления можно командой:
Установить обновления можно командой:
Это безопасный способ обновления, при котором обновляются только установленные пакеты и не происходит установки новых пакетов, если они затрагивают текущие версии, также не удаляются убранные из репозитория пакеты. Если же вы хотите установить самые последние версии пакетов, то следует воспользоваться иной командой:
Следует понимать разницу в работе этих команд, потому что во многих случаях результат их работы оказывается одинаковым и кажется, что разницы между ними нет. Например, в ситуации, показанной на скриншоте выше обе команды отработают одинаково.
Обычные обновления следует выполнять командой upgrade, тогда как dist-upgrade следует использовать для обновления дистрибутива, в том числе и на минорные версии в составе текущего выпуска.
Для установки пакетов следует использовать команду:
Если нужно установить несколько пакетов, то их следует перечислить через пробел. Система проанализирует изменения и либо выполнит установку, либо попросит дополнительного подтверждения, особенно если нужно установить большое количество новых пакетов по зависимостям.
В целом APT хорошо знает свое дело, но мы все равно советуем обращать внимание на состав добавляемых и, особенно, удаляемых пакетов. Также не будет лишним изучить список предлагаемых пакетов, там вы можете найти много интересного и полезного, что позволит расширить возможности устанавливаемого ПО и о чем вы могли даже не догадываться.
Для удаления пакета используйте:
Это удалит сам пакет, но оставит его конфигурационные файлы (если они были изменены) и прочие данные. Для полного удаления пакета со всеми его данными используйте другую команду:
Но будьте внимательны, так как эта команда удалит все данные пакета, в том числе и добавленные пользователем в стандартные расположения, данные, находящиеся в домашних директориях пользователей при этом удалены не будут.
Дополнительно остановимся на таком виде пакетов, как пакеты установленные автоматически. Это пакеты, которые были установлены по зависимостям иных пакетов и после удаления или обновления последних могут более никем не использоваться. APT отслеживает такие пакеты и сообщает о них пользователю.
Удалить их можно командой:
Как можно заметить, APT достаточно дружелюбен к пользователю, постоянно подсказывая ему необходимые команды, что в очередной раз развеивает миф о сложности администрирования Linux, особенно в режиме командной строки.
Также иногда может потребоваться возможность очистить кеш скачанных пакетов, скажем при недостатке места на диске, это можно сделать, введя:
Эта команда полностью очистит кеш, также можно использовать более мягкую очистку с помощью apt-get, который дает возможность удалить из кеша только те пакеты, которые на текущий момент отсутствуют в репозитории (были заменены новыми версиями или удалены):
Затронем еще один интересный момент, допустим вы в своих экспериментах удалили или еще как-либо повредили входящие в состав пакета файлы, но система считает, что пакет установлен и отказывается устанавливать его повторно. Но можно всегда переустановить пакет:
Также иногда бывает нужно проверить что произойдет при установке пакета без его установки, особенно если у нас есть подозрения, что мы можем что-то сломать в системе. Для этого запустите команду установки с ключом -s:
Система смоделирует все необходимые действия и покажет вам результат, после чего вы сможете принять верное решение без опасных экспериментов над ней.
Если вы не знаете точного названия нужного вам пакета, то можно выполнить его поиск командой:
При этом поиск производится не только по имени пакета, но и по его описанию. Это удобно и позволяет быстро найти все связанные с указанной строкой поиска пакеты, даже если они имеют отличное наименование.
Для получения информации о пакете просто введите:
Чтобы отменить фиксацию выполните:
Объем данной статьи не позволяет рассмотреть все возможности apt, поэтому мы ограничились наиболее необходимыми в повседневной деятельности, ну и в завершение небольшая порция юмора. Если запустить команду apt без параметров, то вы увидите краткую справку в самом конце которой будет строка: В APT есть коровья СУПЕРСИЛА. Что это значит? Просто наберите:
И вы увидите старую пасхалку от разработчиков, которая была еще в apt-get, а затем ее заботливо перенесли в apt.
Графические оболочки Aptitude и Synaptic
Кроме родных для APT консольных интерфейсов apt-get и apt существуют и более высокоуровневые оболочки. Одна из них aptitude, которая может работать как в псевдографическом режиме, так и в режиме командной строки, имея синтаксис во многом повторяющий синтаксис apt. Благодаря этому многие воспринимают эту утилиту как еще один интерфейс к APT, хотя основной задачей разработчиков было именно создание псевдографической интерактивной оболочки.
В современных дистрибутивах Debian и Ubuntu aptitude отсутствует в основной поставке и вам потребуется установить этот пакет отдельно.
Если вы используете настольную версию Linux, то вам будет доступен графический менеджер пакетов Synaptic, он также отсутствует в основной поставке основных дистрибутивов и может быть установлен вручную. Данный пакет представляет собой опрятный и удобный графический интерфейс над APT, в тоже время дающий администратору все возможности по тонкой настройке процесса.
Однако не смотря на то, что Aptitude и Synaptic являются зрелыми и эффективными инструментами, мы бы не рекомендовали их использование по крайней мере до тех пор, пока вы не освоите работу с базовым интерфейсом apt.
Магазины приложений
Если мы говорим о настольных системах, то нельзя обойти вниманием магазины приложений. Это модный тренд, пришедший из мира мобильных устройств, но быстро завоевавший популярность и в настольной среде. Действительно, системой могут пользоваться разные люди, они могут являться хорошими специалистами в своей отрасли, но им совершенно не хочется разбираться в устройстве системы, а нужно просто включить компьютер в розетку и работать с ним.
Такой подход может вызвать возмущение у продвинутых пользователей и энтузиастов, но он имеет право на жизнь. Компьютер давно перестал быть уделом избранных и стал неотъемлемой частью нашей жизни. Проведем простую аналогию: сев за руль автомобиля многие из нас просто заводят его, нажимают педали, переключают рычаг коробки передач, не задумываясь о том, какие процессы происходят внутри, а в случае каких-либо неполадок отгоняют машину на сервис.
Ниже показан магазин для актуальной версии Debian
Заключение
Как видим, Debian и основанные на нем системы предоставляют широкий выбор инструментов для управления пакетами, начиная от утилит командной строки и заканчивая магазинами приложений. Каждый найдет инструмент себе по душе. Но для начинающих администраторов мы бы рекомендовали в обязательном порядке осваивать базовые инструменты, такие как dpkg и apt, потому что ситуации бывают разные, а базовые инструменты, в отличие от графической оболочки или псевдографических утилит, доступны всегда.
Дополнительные материалы:
Помогла статья? Поддержи автора и новые статьи будут выходить чаще:
Или подпишись на наш Телеграм-канал:












