Как установить пакет debian: Установка пакетов Debian | Losst
Установка пакетов Debian | Losst
Установка программ — одна из самых частых задач при администрировании системы и настройке ее под себя. В мире существует огромное количество различного программного обеспечения, но мы не устанавливаем его все одновременно, в системе собирается только то, что нам нужно на данный момент. В дистрибутивах Linux, установка новых программ выполняется из репозиториев с помощью специальных пакетов.
Установка пакетов Debian выполняется, как и в Ubuntu, с помощью пакетного менеджера apt и утилиты dpkg. Мы рассматривали их подробно в статье про установку пакетов Ubuntu. В этой же статье мы более детально остановимся на особенностях Debian.
Содержание статьи:
Установка программ с помощью apt
Перед тем как говорить непосредственно про Debian, нужно рассмотреть apt. Этот пакетный менеджер был специально разработан для Debian и потом стал использоваться в других основанных на нем дистрибутивах. Синтаксис для работы с утилитой такой:
$ sudo apt опции команда имя_пакета
Вот основные команды apt, которые вы можете использовать для управления пакетами:
- download — скачать пакет, но не устанавливать;
- update — используется для обновления информации о списках пакетов в репозиториях;
- upgrade — обновление системы без удаления пакетов;
- full-upgrade — полное обновление системы с удалением конфликтующих зависимостей;
- install — установка пакета;
- remove — удаление пакета без удаления конфигурационных файлов;
- purge — полное удаление пакета;
- autoremove — автоматическое ненужных удаление пакетов;
- search — поиск пакета в локальной базе данных;
- show — посмотреть информацию о пакете.
Кроме того, утилите можно передать некоторые опции, основные:
- -c — сторонний конфигурационный файл;
- -o — строка конфигурации;
- -t — версия релиза для которой устанавливать пакет;
- -f — выполнить операцию принудительно.
Таким образом, для установки пакета из репозиториев достаточно набрать:
sudo apt install имя_пакета
$ sudo apt install vlc
А для удаления пакета наберите:
sudo apt purge vlc
Вы можете искать пакеты с помощью команды search:
sudo apt search vlc
Но куда более интересны политики управления репозиториями и установка отдельных пакетов из определенных хранилищ. Особенно это актуально для Debian, чтобы не добавлять нестабильный репозиторий полностью, а устанавливать из него только отдельные пакеты. Для решения таких задач существует настройка политики управления репозиториями.
С помощью политик вы можете настроить из каких репозиториев будет выполняться установка deb пакетов в debian в первую очередь. Мы рассматривали репозитории Debian и как их добавлять в отдельной статье. Допустим, вы добавили backports, testing и unstable. Теперь, чтобы настроить для них приоритеты откройте конфигурационный файл /etc/apt/preferences и добавьте в него строки:
sudo vi /etc/apt/preferences
Package: *
Pin: release a=stable
Pin-Priority: 700
Package: *
Pin: release a=stretch-backports
Pin-Priority: 650
Package: *
Pin: release a=testing
Pin-Priority: 600
Package: *
Pin: release a=unstable
Pin-Priority: 100
Чем выше значение Priority, тем выше приоритет. Сначала мы указываем с помощью инструкции Package имя пакета, а затем репозиторий и его приоритет. В нашем примере самый высокий приоритет имеет репозиторий stable, если там пакета нет, он будет установлен из backports, и только потом из testing и из unstable. Теперь добавление нестабильных репозиториев не будет ломать систему. А если вы захотите установить пакет из нестабильного репозитория, то просто укажите его с помощью опции -t. Например, для testing:
sudo apt -t testing install firefox
Очень удобно и не ломает систему.
Установка программ с помощью tasksel
Инструмент tasksel разработан специально для Debian. Он позволяет устанавливать пакеты группами. Разработчики сгруппировали пакеты в зависимости от их предназначения и вы можете установить одну из нужных групп. Именно эта утилита используется в установщике Debian.
Чтобы посмотреть список доступных групп наберите:
tasksel --list-tasks
Также вы можете посмотреть какие пакеты находятся в группе:
tasksel --task-packages web-server
Или описание группы пакетов:
tasksel --task-desc web-server
Чтобы установить группу пакетов, например, веб-сервера, выполните:
tasksel install web-server
А для удаления группы:
tasksel remove web-server
Установка программ Debian таким способом достаточно проста, но здесь есть не так много пакетов.
Установка пакетов Aptitude
Aptitude — это более продвинутая программа для управления пакетами. Она поддерживает больше функций чем apt. Но для использования ее нужно установить:
sudo apt install aptitude
Кроме консольных команд, утилита имеет псевдографический интерфейс, с помощью которого намного удобнее управлять пакетами. Возможно, установка пакетов Debian здесь не так удобна, зато удалить лишние пакеты и посмотреть уже установленные самое оно. Для запуска утилиты выполните:
aptitude
Пакеты разделены на удобные категории чтобы их можно было просто найти:
Чтобы посмотреть информацию о пакете нажмите «Enter», чтобы отметить пакет для установки, нажмите «+», а для удаления пакета — «-«:
Далее чтобы установить или удалить отмеченные пакеты нажмите кнопку «g». Затем еще раз «g» для подтверждения:
Конечно, вам необязательно использовать интерфейс curses, если хотите, можете применять привычные консольные команды, утилита их тоже поддерживает. Синтаксис выполнения такой же, как и у apt, но команд намного больше:
- install — установить пакет, поддерживает регулярные выражения;
- remove — удалить пакет;
- purge — удалить пакет вместе с его конфигурацией;
- reinstall — переустановить пакет;
- build-depens — отобразить зависимости пакета;
- markauto — пометить пакет, как установленный автоматически в виде зависимости;
- hold — не обновлять этот пакет;
- keep — если для пакета намечено какое-либо действие — отменяет его;
- forget-new — удаляет всю информацию о пакете;
- update — обновление системы;
- safe-update — обновление системы без удаления конфликтующих пакетов, такие пакеты не будут обновлены;
- full-update — полное обновление системы;
- search — поиск пакетов;
- show — посмотреть информацию о пакете;
- source — скачать исходный код пакета;
- vesrsions — отобразить доступные версии пакета;
- why — отображает причину, почему пакет не может быть установлен;
- clean — удаляет лишние deb файлы;
- autoclean — удаляет все пакеты из кэша;
- download — скачать пакет, но не устанавливать.
Установка deb пакетов в debian с помощью aptitude будет выглядеть аналогично apt:
sudo aptitude install vlc
Опция -t здесь тоже актуальна:
sudo aptitude -t unstable install vlc
Установка программ Debian в synaptic
Для полноты статьи давайте еще рассмотрим как выполняется установка приложений через графический интерфейс. Для этого будем использовать программу synaptic. Она уже поставляется вместе с дистрибутивом, можно найти в главном меню:
Для поиска нужного пакета нажмите кнопку поиск, потом введите его имя:
Далее, найденные пакеты будут отображены на панели:
Кликните по нужному пакету правой кнопкой и выберите «Отметить для установки»:
Утилита покажет какие еще пакеты будут установлены как зависимости:
Чтобы установить выбранные пакеты, нажмите кнопку «Применить».
Вам нужно будет подтвердить операцию и дождаться завершения установки. Но установка deb пакетов из консоли debian все равно проще.
Выводы
В этой статье мы рассмотрели различные способы как установить программу в Debian. Как видите, существует множество способов и вы можете выбрать тот, который лучше подходит для вас. Мне всегда нравилось работать в терминале. Это дает максимальный контроль над ситуацией и если что-то пойдет не так вы сразу же получите все сообщения об ошибках и тут же сможете их решить. Надеюсь, эта информация была полезной для вас.
Оцените статью:
Загрузка…
Установка DEB-пакетов в Debian
DEB-пакеты — установочные файлы программ, которые инсталлируются при помощи специализированных утилит. Дистрибутив Debian и основанные на нем сборки поддерживают инсталляцию файлов формата DEB по умолчанию, то есть для этого не придется загружать дополнительные средства или осуществлять конвертирование. Пользователь может задействовать разные способы, позволяющие распаковать файлы и перейти к непосредственному взаимодействию с ПО. Сегодня мы хотим рассказать обо всех методах инсталляции таких пакетов в операционной системе Debian.
Устанавливаем DEB-пакеты в Debian
В большинстве случаев программы загружаются и устанавливаются через специальные консольные команды, а все файлы в это время скачиваются из официальных или пользовательских репозиториев. Однако у таких методов есть определенные ограничения и нюансы, которые иногда просто заставляют юзеров заранее получать DEB-пакет и инсталлировать его другими вариантами. Именно в таких случаях и следует воспользоваться одной из приведенных далее инструкций, подобрав для себя оптимальный вариант.
Способ 1: Запуск инсталляции через браузер
Первый способ заключается в применении стандартного менеджера пакетов сразу в браузере при загрузке DEB-файлов. Мы предлагаем задействовать этот вариант в тех случаях, когда вам предстоит сначала загрузить пакет через веб-обозреватель, чтобы затем установить его. Так вы просто ускорите процесс. Давайте рассмотрим порядок действий, взяв за пример стандартный браузер Mozilla Firefox.
- Для начала на сайте программы выберите подходящую для своей сборки версию пакета, а затем начните ее скачивание.
- На экране отобразится форма с возможностью выбора. В данном случае отметьте галочкой «Открыть в» и убедитесь в том, что в качестве инструмента выбран вариант «Установка приложений (по умолчанию)».
- По завершении загрузки сразу же откроется новое окно пакетного менеджера. Здесь вам следует кликнуть на соответствующую кнопку для начала процедуры.
- Подобные процессы в операционной системе осуществляются исключительно от имени суперпользователя, поэтому потребуется ввести его пароль, чтобы продолжить.
- Ожидайте окончания, а затем запустите полученный софт, например, через меню приложений или путем ввода команды запуска в консоли.
Кардинальное отличие этого варианта от всех остальных заключается в том, что пакет после успешной инсталляции сразу же удаляется, а не хранится в папке с загрузками. Это не только избавит вас от необходимости удалять файлы самостоятельно, но и позволит сэкономить свободное место на накопителе.
Способ 2: Стандартный установщик ПО
Как вы могли заметить, в первом методе мы использовали стандартный пакетный менеджер для установки приложения через браузер. В этом способе мы тоже поговорим о данном средстве, однако сейчас веб-обозреватель не будет задействован никаким образом. Следующие действия рекомендуется реализовывать, если вы уже получили DEB-пакет или вставили съемный носитель, где находится необходимый объект.
- Перейдите в расположение, где хранится требуемое программное обеспечение, и нажмите по пакету правой кнопкой мыши.
- В появившемся контекстном меню вас интересует первая же строка под названием «Открыть в Установка приложений».
- Осталось только кликнуть по кнопке «Установить» и дождаться окончания процесса.
- Если во время процедуры возникли какие-то ошибки, повторно вызовите контекстное меню пакета и перейдите в «Свойства».
- Здесь на вкладке «Права» отметьте галочкой пункт «Разрешить выполнение файла как программы». Это позволит исправить ошибки кодирования, которые возникли при создании пакетов. После внесения изменений стоит повторно запустить инсталляцию, чтобы она прошла корректно.
Иногда случаются ситуации, когда это средство установки отказывается работать исправно или же юзера попросту не устраивает его функциональность. Тогда ничего не мешает использовать стороннее решение, но для этого придется выполнить дополнительные действия.
Способ 3: Утилита GDebi
Утилита под названием GDebi — самый популярный инструмент от сторонних разработчиков, который предназначен для инсталляции пакетов DEB, о чем уже понятно из его названия. Мы советуем использовать его в качестве альтернативы стандартному пакетному менеджеру. Для начала потребуется его добавить в систему, что происходит так:
- Откройте меню приложений и запустите «Терминал».
- Здесь потребуется вставить команду
sudo apt install gdebi
. Для ее активации нажмите на Enter. - Как вы уже знаете, инсталляция происходит от имени суперпользователя. Подтвердите подлинность учетной записи, введя пароль. Учитывайте, что символы, вводимые таким способом, не отображаются.
- Вы будете уведомлены о том, что установка прошла успешно. После этого переходите к расположению DEB-пакета, нажмите по нему ПКМ и в контекстном меню выберите вариант «Открыть в другом приложении».
- В списке выберите «Программа установки пакетов GDebi», дважды щелкнув по строке ЛКМ.
- Запустится стандартное окно софта. Здесь вы можете узнать состояние версии пакета, ознакомиться с описанием и входящими туда файлами. При готовности нажмите на «Установить» и ждите завершения процесса.
Как видите, ничего сложного в применении сторонних инструментов для добавления пакетов нет. Если вас не устраивает GDebi, поищите доступный аналог, ознакомившись с его официальной документацией, чтобы понять, стоит ли задействовать это решение в качестве средства установки пакетов.
Способ 4: Команда dpkg
В качестве последнего примера инсталляции файлов типа DEB в Debian рассмотрим стандартную терминальную команду. Для этого типа установки вам потребуется изучить простой синтаксис команды и знать расположение файла, поэтому никаких трудностей возникнуть не должно.
- Для начала давайте разберемся с определением точного пути к файлу. Для этого отыщите его через файловый менеджер, вызовите контекстное меню и перейдите в «Свойства».
- Здесь запомните или скопируйте путь «Родительская папка». Именно он и является точным расположением.
- После этого откройте консоль любым удобным методом, например, через панель «Избранное».
- Введите команду
sudo dpkg -i /home/user/Программы/name.deb
. Здесь замените путь на свой, а также укажите название программы с учетом расширения. - Подтвердите действие вводом пароля суперпользователя.
- Начнется чтение базы данных и распаковка архивов.
- По завершении отобразится новая строка ввода, а сверху вы сможете осмотреть всю последовательность инсталляции и узнать, завершилась ли она успешно.
Если нет желания вводить полный путь, например, при необходимости установить несколько приложений подряд, можете заранее переместиться к этому расположению через cd.
В этой статье были разобраны доступные методы инсталляции DEB-пакетов в Debian. Если вы начинающий пользователь, изучите каждый вариант, чтобы в итоге подобрать оптимальный для себя метод. К тому же выполнение консольных команд всегда кажется сложнее управления через графическую оболочку, однако стоит лишь несколько раз ввести их, чтобы освоиться и перейти на постоянное взаимодействие с «Терминалом».
Мы рады, что смогли помочь Вам в решении проблемы.
Опишите, что у вас не получилось.
Наши специалисты постараются ответить максимально быстро.
Помогла ли вам эта статья?
ДА НЕТ
Как установить deb-пакет в Ubuntu | Debian | Linux Mint
deb — расширение имён файлов «бинарных» пакетов для
распространения и установки программного обеспечения в ОС проекта
Debian, и других, использующих систему управления пакетами dpkg. И
сегодня мы посмотрим три инструмента командной строки, чтобы помочь вам
установить локальный Debian пакет.
Если вы спрашиваете себя: “Как я могу установить Deb пакет в Ubuntu или Debian?”, То вы пришли в нужное место.
Вы можете щелкнуть правой кнопкой мыши на загруженном DEB пакете и
выбрать установку из контекстного меню, но с помощью графического
инсталлятора это будет очень медленно по сравнению с терминальными
командами. Вот 3 различных инструмента командной строки, чтобы помочь
вам установить Deb-пакеты. Они же Dpkg, Gdebi и APT.
Dpkg
dpkg — это программное обеспечение, являющееся основой системы
управления пакетами в Debian и ряде других операционных систем,
основанных на Debian, например Ubuntu. dpkg используется для установки,
удаления, и получения информации о .deb пакетах.
Используйте dpkg для установки локального Debian пакета, как показано ниже.
sudo dpkg -i версия_пакета.deb
Dpkg сам по себе не может решить проблему зависимостей, потому что он
не понимает репозиториев. Но вы можете использовать следующую команду,
чтобы решить эту проблему.
sudo apt install -f
Установочный пакет Gdebi
Gdebi — программа для установки .deb пакетов, разработанная корпорацией Canonical специально для Ubuntu.
Gdebi не устанавливается по умолчанию в Ubuntu, так что вам нужно ее в
первую очередь установить, для этого открываем терминал и пишем
следующую строку.
sudo apt install gdebi
Для установки локального deb-пакета используйте
sudo gdebi версия_пакета.deb
Если есть проблема зависимостей, Gdebi автоматически установит их для
вас, если конечно эти пакеты зависимостей доступны из репозитория
программного обеспечения.
Apt
apt (advanced packaging tool) — программа для
установки, обновления и удаления программных пакетов в операционных
системах Debian и основанных на них (Ubuntu, Linux Mint и т. п.), иногда
также используется в дистрибутивах, основанных на Mandrake, например
Mandriva, ALTLinux и PCLinuxOS. Способна автоматически устанавливать и
настраивать программы для UNIX-подобных операционных систем как из
предварительно откомпилированных пакетов, так и из исходных кодов.
Обычно вы будете использовать APT для установки пакетов из интернет-хранилищ программного обеспечения, как в этом примере:
sudo apt install Firefox
Знаете ли вы, что он также может быть использован для установки
локальных Deb пакетов? Это еще одна причина, почему вы должны
использовать apt вместо apt-get, который не имеет такой возможности. Вам
нужно просто перейти в каталог, где хранится deb-пакет и установите
его, как показано на примере ниже.
cd/путь/к/файлу/deb-пакеты/
sudo apt install ./версия_пакета.deb
Например, чтобы установить TeamViewer 12 в Ubuntu 16.04/16.10, сначала загрузите пакет TeamViewer.deb в текущий каталог
wget https://downloadus1.teamviewer.com/download/version_12x/teamviewer_12.0.69753_i386.deb
Затем установите его с помощью:
sudo apt install ./teamviewer_12.0.69753_i386.deb
Он автоматически устанавливает зависимости, если эти зависимости доступны из репозитория программного обеспечения.
Используя apt для установки локальных deb пакетов, вам просто нужно
добавить ./, который представляет текущий рабочий каталог, перед именем
пакета, так чтобы apt смог спокойно найти deb пакет.
Вот и все!
Если есть вопросы, то пишем в комментариях.
Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.
Глава 8. Инструменты управления пакетами Debian
8.1. Какие программы для управления пакетами имеются в Debian?
В Debian для управления пакетами имеется множество средств, от программ с
графическими или текстовыми интерфейсами, до низкоуровневых утилит установки
пакетов. Корректная работа всех доступных инструментов зависит от
низкоуровневых утилит, и все они представлены здесь в порядке уменьшения
уровня сложности.
Важно понимать, что высокоуровневые инструменты управления пакетами, такие
как aptitude или synaptic, для
управления пакетами используют apt, который, в свою
очередь, использует dpkg для управления пакетами системы.
See Chapter
2. Debian package management of the Debian reference for more information
about the Debian package management utilities. This document is available
in various languages and formats, see the Debian
Reference entry in the DDP Users’ Manuals overview.
Это основная программа управления пакетами. dpkg может
вызываться с многими параметрами. Наиболее часто используемые из них:
Показать список всех параметров:
dpkg --help
Показать управляющий файл (и другую информацию) для указанного пакета:
dpkg --info foo_VVV-RRR.deb
Установить пакет на жёсткий диск (т. е. распаковать и настроить):
dpkg --install foo_VVV-RRR.deb
Распаковать архив Debian на жёсткий диск (но не настраивать):
dpkg
. Учтите, что в результате данной операции
--unpack foo_VVV-RRR.deb
пакет не обязан быть в рабочем состоянии; для
правильной работы может потребоваться внесение изменений в некоторые
файлы. Данная команда удаляет любую ранее установленную версию программы и
запускает сценарий preinst указанного пакета (см. Раздел 7.6, «Зачем нужны сценарии preinst, postinst, prerm и postrm?»).Настроить пакет, который был распакован ранее:
dpkg --configure
. Кроме всего прочего, эта команда запускает сценарий postinst
foo
указанного пакета (см. Раздел 7.6, «Зачем нужны сценарии preinst, postinst, prerm и postrm?»). Она также обновляет
файлы, перечисленные вconffiles
. Обратите внимание, что
в качестве аргумента для параметра configure указывается имя пакета
(т. е. foo), а не имя файла-архива Debian
(т. е. foo_VVV-RRR.deb).Распаковать файл с именем «blurf» (или группу файлов с именем «blurf*») из
архива Debian:dpkg --fsys-tarfile foo_VVV-RRR.deb | tar -xf -
'blurf*'Удалить пакет (но не его файлы настроек):
dpkg --remove
fooУдалить пакет (вместе с файлами настроек):
dpkg --purge
fooВывести состояние установки пакетов, содержащих в имени строку (или
регулярное выражение) «foo*»:dpkg --list 'foo*'
APT is the Advanced Package Tool, an advanced interface
to the Debian packaging system which provides the apt-get
program. It provides commandline tools for searching and managing packages,
and for querying information about them, as well as low-level access to all
features of the libapt-pkg library. For more information, see the User’s
Guide in /usr/share/doc/apt-doc/guide.html/index.html
(you will have to install the apt-doc
package).
Starting with Debian Jessie, some frequently used apt-get
and apt-cache commands have an equivalent via the new
apt binary. This means some popular commands like
apt-get update, apt-get install,
apt-get remove, apt-cache search, or
apt-cache show now can also be called simply via
apt, say apt update, apt
install, apt remove, apt
search, or apt show. The following is an
overview of the old and new commands:
apt-get update -> apt update apt-get upgrade -> apt upgrade apt-get dist-upgrade -> apt full-upgrade apt-get install package -> apt install package apt-get remove package -> apt remove package apt-get autoremove -> apt autoremove apt-cache search string -> apt search string apt-cache policy package -> apt list -a package apt-cache show package -> apt show package apt-cache showpkg package -> apt show -a package
Инструмент apt совмещает функциональность apt-get и
apt-cache, а также по умолчанию использует красивый цветной формат вывода,
что очень удобно. Для использования в сценариях или для продвинутого
использования предпочтительнее использовать apt-get (а иногда он просто
необходим).
apt-get provides a simple way to retrieve and install
packages from multiple sources using the command line. Unlike
dpkg, apt-get does not understand .deb
files, it works with the packages proper name and can only install .deb
archives from a source specified in
/etc/apt/sources.list
. apt-get will
call dpkg directly after downloading the .deb
archives from the configured sources.
Часто используемые команды apt-get:
To update the list of packages known by your system, you can run:
apt update
(вы должны регулярно запускать эту команду для обновления списка пакетов)
Установить пакет
foo
и все его зависимости:apt install foo
Удалить пакет из системы:
apt remove foo
Удалить из системы пакет и все его файлы настроек:
apt source имя_пакета
To list all packages for which newer versions are available, run:
apt dist-upgrade
Обновить все пакеты в системе (без установки дополнительных пакетов или
удаления пакетов):apt upgrade
Обновить все установленные в системе пакеты с установкой или удалением
дополнительных пакетов, если это потребуется для обновления какого-то
пакета:apt full-upgrade
(Команда
upgrade
оставит старую установленную версию
пакета, если для разрешения новых зависимостей при обновлении потребуется
установка дополнительных пакетов. Командаfull-upgrade
менее консервативна.)
Note that you must be logged in as root to perform any commands that modify
packages.
Note that apt-get now also installs recommended packages
as default, and thanks to its robustness it’s the preferred program for
package management from console to perform system installation and major
system upgrades.
В комплект инструментов apt входит также программа для обработки запросов по
списку пакетов apt-cache. Её можно использовать для
поиска пакетов, имеющих определённую функциональность, с помощью простых
текстовых запросов или регулярных выражений, а также для получения списка
зависимостей из системы управления пакетами. Часто используемые команды
apt-cache:
Найти пакеты, содержащие в своём описании
слово
:apt search
слово
Показать подробную информацию о пакете:
apt show
пакет
Показать зависимости пакета:
apt-cache depends
пакет
To print detailed information on the versions available for a package and
the packages that reverse-depends on it:apt-cache showpkg
пакет
For more information, install the apt
package and read
apt(8),
apt-get(8),
sources.list(5)
and install the apt-doc
package and
read /usr/share/doc/apt-doc/guide.html/index.html
.
aptitude — это менеджер пакетов для систем
Debian GNU/Linux, он предоставляет интерфейс к инфраструктуре управления пакетами
apt. aptitude представляет собой текстовый интерфейс на
основе библиотеки curses. Действия можно выполнять как из визуального
интерфейса, так и из командной строки.
aptitude может использоваться для лёгкого и быстрого
выполнения задач по управлению пакетами. Она позволяет пользователю
просматривать список пакетов и выполнять такие задачи по управлению пакетами
как установка, обновление и удаление.
Помимо функциональности apt-get,
aptitude имеет много других дополнительных возможностей:
обеспечивает лёгкий доступ ко всем версиям пакета;
позволяет легко отслеживать устаревшее ПО, занося его в «список устаревших
пакетов и пакетов, созданных локально»;включает достаточно мощную систему поиска и ограничения отображаемых
пакетов. Пользователи, знакомые с mutt, освоятся быстро,
так как синтаксис регулярных выражений был навеян этой программой;можно использовать для установки заранее сформированных наборов для
определённых задач. Подробности см. в Раздел 8.1.5, «tasksel»;aptitude in full screen mode has su
functionality embedded and can be run by a normal user. It will call
su (and ask for the root password, if any) when you
really need administrative privileges.
С aptitude можно работать, используя визуальный интерфейс
(просто запустить aptitude
), или непосредственно из
командной строки. Используемый синтаксис командной строки очень похож на
синтаксис apt-get. Например, для установки пакета
foo
, можно выполнить aptitude install
.
foo
Note that aptitude is the preferred program for daily
package management from the console.
For more information, read the manual page
aptitude(8)
and install the aptitude-doc
package.
synaptic is a graphical package manager. It enables you
to install, upgrade and remove software packages in a user friendly way.
Along with most of the features offered by aptitude, it also has a feature
for editing the list of used repositories, and supports browsing all
available documentation related to a package. See the Synaptic Website for more
information.
Иногда бывает трудно найти подходящий комплект пакетов для выполнения
определённой задачи. Разработчики Debian определили
задачи
, представляющие собой наборы из нескольких пакетов
Debian, предназначенных для определённой деятельности. Задачи можно
устанавливать с помощью программы tasksel или
aptitude.
Typically, the Debian installer will automatically install the task
associated with a standard system and a desktop environment. The specific
desktop environment installed will depend on the CD/DVD media used, most
commonly it will be the GNOME desktop (gnome-desktop
task). Also, depending on your selections throughout the installation
process, tasks might be automatically installed in your system. For
example, if you selected a language other than English, the task associated
with it will be installed automatically too and if the installer recognises
you are installing on a laptop system the laptop
task
will also be installed.
8.1.6. Другие инструменты управления пакетами
This program manipulates Debian archive (.deb
) files.
Some common uses are:
Вывести список допустимых параметров:
dpkg-deb --help
Определить, какие файлы содержатся в файле-архиве Debian:
dpkg-deb
)
--contents foo_VVV-RRR.debИзвлечь файлы из указанного архива Debian в определённый пользователем
каталог:dpkg-deb --extract foo_VVV-RRR.deb tmp
извлечёт
все файлы изfoo_VVV-RRR.deb
в каталог
tmp/
. Это удобно для просмотра содержимого пакета в
отдельном каталоге без его установки в основное дерево каталогов.Извлечь из пакета файлы с управляющей информацией:
dpkg-deb
.
--control foo_VVV-RRR.deb tmp
Учтите, что любые пакеты, просто распакованные командой dpkg-deb
, будут установлены некорректно, для установки следует
--extract
использовать dpkg --install
.
More information is given in the manual page
dpkg-deb(1).
8.3. Как узнать, какие пакеты установлены в системе Debian?
Чтобы получить список всех установленных пакетов, выполните команду
dpkg --list
Эта команда выведет для каждого пакета однострочную сводку, включающую два
символа состояния (объясняемые в заголовке), имя пакета,
установленную версию и краткое описание.
To learn the status of packages whose names match any pattern beginning with
«foo», run the command:
dpkg --list 'foo*'
Чтобы получить более подробный отчёт о состоянии определённого пакета,
выполните команду:
dpkg --status имя_пакета
8.6. Why is `foo-data’ not removed when I uninstall `foo’? How do I make sure old
unused library-packages get purged?
Some packages are split in program (`foo’) and data (`foo-data’) (or in
`foo’ and `foo-doc’). This is true for many games, multimedia applications
and dictionaries in Debian and has been introduced since some users might
want to access the raw data without installing the program or because the
program can be run without the data itself, making `foo-data’ optional.
Подобное относится и к библиотекам: обычно они устанавливаются, так как
пакеты приложений зависят от них. Когда пакет приложения вычищается, пакет
библиотеки может остаться в системе. Или когда пакет приложения больше не
зависит, скажем, от libdb4.2, а зависит от libdb4.3, то пакет libdb4.2 может
остаться в системе при обновлении пакета приложения.
In these cases, `foo-data’ doesn’t depend on `foo’, so when you remove the
`foo’ package it will not get automatically removed by most package
management tools. The same holds true for the library packages. This is
necessary to avoid circular dependencies. However, if you use
apt-get (see Раздел 8.1.2, «APT») or
aptitude (see Раздел 8.1.3, «aptitude») as your package
management tool, they will track automatically installed packages and give
the possibility to remove them, when no packages making use of them remain
in your system.
Установка пакетов в Debian
В Debian установка пакетов выполняется двумя способами. Первый вариант — из подключенных репозиториев. Второй — установка deb-пакета с локального раздела диска. В зависимости от типа установки, используется программы APT или DPKG.
Установка пакетов в Debian с помощью APT
Команда apt-get
использует базу пакетов, автоматически определяет и устанавливает все необходимые зависимости. Для установленных через apt-get
пакетов, существует механизм автоматического отслеживания и установки обновлений. Поэтому, в большинстве случаев рекомендуется установка пакетов в Debian с помощью команды apt-get
.
В Debian установка пакетов из репозитория начинается с обновления локального кэша APT:
apt-get update
В результате работы, команда обновит информацию о всех пакетах, которые содержатся в репозиториях. Далее, по своему усмотрению мы можем использовать одну из команд ниже.
APT: установка пакетов
В Debian установка пакетов выполняется с помощью команды:
apt-get install mysql-server
APT: поиск пакетов
C помощью простых текстовых запросов можно использовать APT для поиска пакетов в репозитории:
apt-cache search mysq-server
APT: список зависимостей
Вывести перечень необходимых для установки пакета программ или библиотек:
apt-cache depends mysq-server
Установка deb-пакета с помощью DPKG
Если по какой-либо причине, необходимого нам пакета нет в репозиториях, в таком случае, можно установить deb-пакет используя команду dpkg
.
Самостоятельно DPKG не умеет загружать необходимые для работы пакета зависимости. Также, отсутствует механизм для обновления пакетов. Как правило, команду dpkg
используют в тех редких случаях, когда необходима установка deb-пакета с локального диска.
DPKG: установка deb-пакета
dpkg -i /tmp/mysql-server-5.5.deb apt-get -f install
Последняя команда используется для автоматической загрузки и установки всех необходимых для работы пакета зависимостей.
Шпаргалка начинающего Debian/Ubuntu администратора по управлению пакетами / Хабр
Долгое время меня глодало незнание того, как сделать некоторые элементарные вещи в дебиановских менеджерах пакетов, но, как часто бывает, спросить рядом было не у кого, а до написания куда-либо руки не доходили. И вот наконец вопросы вызрели и я написал свой вопрос в дебиановскую рассылку. Естественно оказалось что пропустил что-то очевидное, но и узнал много неочевидных полезностей, посему решил набросать шпаргалку, авось кому пригодится.
Краткая справка Debian администратора
Основное и общеизвестное
Получение информации о новых/обновлённых пакетах
sudo aptitude update
Обновление
sudo aptitude safe-upgrade
Поиск пакета по именам пакетов
aptitude search key_word
Поиск пакета по точному названию
aptitude search "^name$"
Поиск по описанию
aptitude search "?description("key_word")"
Информация о пакете
aptitude show package_name
Установка
sudo aptitude install package_name
Удаление
sudo aptitude remove package_name
Полное удаление (вместе с конфигами)
sudo aptitude purge package_name
Очистить кэш загруженных пакетов (освободить место)
aptitude autoclean # удалятся только пакеты неактуальных версий
aptitude clean # очистится весь кэш
Установка отдельно скачанного/созданного пакета (для создания пакета из сторонних исходников нужно использовать утилиту checkinstall с флагом -D)
sudo dpkg -i /path/to/package.deb
Для получения доп информации
man aptitude
sudo aptitude install aptitude-doc-en
и смотрим документацию (/usr/share/doc/aptitude/html/en/index.html), кому быструю справку по поисковым шаблонам, тому сюда — /usr/share/doc/aptitude/html/en/ch02s04.html. Если лень ставить доку, то в сети она есть.
Вводная на Debian Wiki: wiki.debian.org/Aptitude
А теперь то что не очевидно или требует полного прочтения документации
1. Как после update посмотреть какие пакеты будут обновлены?
aptitude search ?upgradable
также можно юзать (если поставить)
sudo daptup
но после его установки точно также будет себя вести и обычный update
2. Как узнать что изменилось в пакетах которые будут обновлены?
Можно пробовать
sudo aptitude changelog package_name
для каждого пакета.
Но лучше поставить apt-listchanges, тогда перед любой установкой обновлений будет показан список изменений, по умолчанию настройки не очень удобные, поэтому лучше перенастроить под себя, например, выбрать формат вывода (пока использую текст, при больших обновлениях наверно pager лучше), не слать писем, спрашивать подтверждения, выводить всю информацию. Для этого нужно запустить
sudo dpkg-reconfigure apt-listchanges
3. Что делать если обновление что-то поломало и нужно откатиться?
Отката нет, можно попробовать найти предыдущую версию пакета
sudo aptitude version package_name
и установить её
sudo aptitude install package_name=version
4. Как найти все пакеты установленные вручную?
есть вариант команды (aptitude search ‘~i!~M’), но к сожалению он не даёт желаемого результата, так что вопрос остаётся открытым, есть куча способов основанных на анализе логов
/var/log/aptitude (+ ротированные куски)
/var/log/installer/initial-status.gz
/var/log/dpkg.log (+ ротированные куски)
но простого и готового решения нет, да информация теоретически может быть потеряна при ротациях, нужно конфигурить
5. Как посмотреть список файлов в пакете?
если пакет установлен
dpkg -L package_name
для любых пакетов поставить apt-file и
apt-file list package_name
6. Как посмотреть какому пакету принадлежит файл?
dpkg -S file_name
7. Как удалить все пакеты, где есть key в названии пакета?
sudo aptitude purge ~ikey
8. Как удалить оставшиеся конфиги от удалённых пакетов?
sudo aptitude purge ~c
9. Как найти пакет пакет, в котором содержится файл lib.so:
apt-file search lib.so
10. Как сконвертировать rpm пакет в deb?
alien --to-deb /path/to/file.rpm
11. Как найти список установленных ядер?
dpkg --list linux-* | grep ii
12. Как установить пакет из testing или experimental?
На эту тему нужно писать отдельно (например так), но если кратко, то команды для этого есть
sudo aptitude -t testing package_name
или
sudo aptitude package_name/testing
13. Как удалить метапакет, но оставить одну из зависимостей?
придётся почитать документацию про ключ unmarkauto или глянуть сюда.
14. Как узнать что попало в файловую систему мимо системы управления пакетами?
Есть утилита cruft, хотя вопрос интерпретации результатов (файла report) пока открыт
sudo cruft -d / -r report --ignore /home --ignore /var --ignore /tmp
15. Какие есть дополнительные репозитории?
Debian — wiki.debian.org/UnofficialRepositories
Ubuntu — множество всяких PPA
16. Что есть ещё?
apt-cdrom
apt-spy
auto-apt. заметка на хабре
apt-key
apt-add-repository
Некоторые вещи умеет только apt-get
Есть альтернативные утилиты для управления пакетами, например wajig, который пытается вобрать в себя функционал всех остальных утилит.
17. Как найти пакеты зависящие от данного
apt-cache rdepends package_name
также может пригодится
aptitude why package_name
Благодарю всех кто помог своими советами в рассылке, жж (JackYF) и хабре ( run4way, sledopit, nazarpc, AgaFonOff, amarao, traaance, adrianopol, Karamax). Замечания и дополнения приветствуются.
Установка программ Ubuntu/Debian через APT, Dpkg, install.sh
Одна из самых сложных задач, возникающих в процессе установки Unix-программ — отслеживание зависимостей.
Любая более-менее сложная программа в своей работе использует возможности, предоставляемые другими модулями, системными библиотеками и т.д. Таким образом, появляется зависимость — если мы хотим установить программу «А», которая при работе использует библиотеки программы «Б», сначала необходимо установить программу «Б» (у которой, в свою очередь, могут быть свои зависимости). Таким образом, чем больше программ и зависимостей появляется на сервере, тем сложнее их отслеживать и управлять ими. Хорошая новость в том, что это можно делать с помощью пакетного менеджера APT (Advanced Packaging Tool).
Облачные VPS/VDSСоздайте сервер всего за 1 минуту!от8 руб/месяцПопробовать
Установка с помощью пакетного менеджера
Эволюция методов установки и управления программными пакетами со временем дошла до использования пакетных менеджеров, плотно интегрированных с репозиториями. В репозиториях содержатся упакованные файлы программ с данными об их зависимостях. После установки к операционной системе уже подключены системные репозитории: с их помощью можно обновлять ОС и устанавливать программные пакеты, которые были адаптированы и оптимизированы для работы с этой версией операционной системы.
Перед началом установки пакетов рекомендуется обновить данные о версиях и зависимостях в репозитории следующей командой:
sudo apt-get update
Если необходимо уточнить название пакета, который требуется установить — ищем в локальном кэше менеджер по ключевым словам, например, web server:
sudo apt-cache search web server
В результате получим большой перечень пакетов, где данное ключевое слово присутствует в описании:
Выбираем нужный нам пакет — в данном случае это apache2, и устанавливаем его:
sudo apt-get install apache2
Пакетный менеджер проверяет зависимости, версии, сравнивает их с уже установленными через apt-get пакетами, после чего выдает список необходимых для установки компонентов и запрашивает разрешение на продолжение операции:
Нажимаем y и дожидаемся окончания установки.
Часто используемые команды пакетного менеджера:
- apt-get update — обновление информации о пакетах и зависимостях в подключенных репозиториях;
- apt-get upgrade — обновление всех установленных пакетов до актуальной версии, имеющейся в репозитории;
- apt-get install имя_пакета — установка пакета;
- apt-get remove имя_пакета — удаление пакета;
- apt-get download имя_пакета — скачать deb-пакет в локальную папку;
- apt-cache search ключевые слова — поиск пакета по ключевым словам;
- apt-cache show имя_пакета — показать информацию о пакете;
- apt-cache depends имя_пакета — показать от каких компонентов зависит данный пакет;
- apt-cache rdepends имя_пакета — показать какие компоненты зависят от пакета;
- apt-mark hold имя_пакета — зафиксировать текущую версию пакета, прекратить обновление пакета;
- apt-mark unhold имя_пакета — разрешить обновление пакета.
Установка через Debian package
Программные пакеты могут распространяться и не через репозитории. Например, они могут быть доступны на сайтах разработчиков. В таком случае, пакет можно скачать и воспользоваться утилитой dpkg (debian package) для установки. При использовании dpkg не происходит автоматическое отслеживание зависимостей и скачивание дополнительных пакетов. В случае нехватки каких-либо программ или библиотек установка завершится ошибкой с указанием списка отсутствующих пакетов. Их придется установить отдельно, например, через apt—get, если они присутствуют в подключенных репозиториях, либо скачивать с сайтов разработчиков и устанавливать в нужном порядке через dpkg.
Для примера скачаем из системного репозитория установочный пакет веб-сервера Nginx командой:
sudo apt-get download nginx
и попробуем установить через dpkg –i имя_файла.deb:
sudo dpkg –i ./nginx_1.14.0-0ubuntu1.6_all.deb
В результате система выдает ошибку с перечнем отсутствующих пакетов:
Основные опции dpkg:
- dpkg –i имя_файла.deb — установка пакета; в качестве параметра указывается полное имя файла;
- dpkg –r имя_пакета — удаление ранее установленного пакета;
- dpkg –l — выведение списка установленных в системе пакетов.
Установка через файлы сценариев
Установка программы представляет собой распаковку архива, копирование файлов программы в системные директории и, при необходимости, внесение изменений в системные конфигурационные файлы. Все эти действия могут быть внесены в исполняемый файл сценария и выполнены при его запуске. Сейчас достаточно редко встречается подобный метод установки программы, но, тем не менее, некоторые разработчики его используют. Если возникла необходимость в установке такого пакета, необходимо скачать архив (обычно это файл с расширением .tgz или .tar.gz), распаковать его в отдельную директорию на сервере, изучить распакованные файлы, а также прочитать файл readme, если он имеется. Установка программы запускается, обычно, сценарием install.sh, поэтому нужно включить атрибут исполняемого файла командой:
sudo chmod +x ./install.sh
после чего запустить непосредственно сценарий:
sudo ./install.sh
Средняя оценка: 5.0
Оценили: 1
220140
Минск
ул. Домбровская, д. 9
+375 (173) 88-72-49
700
300
ООО «ИТГЛОБАЛКОМ БЕЛ»
220140
Минск
ул. Домбровская, д. 9
+375 (173) 88-72-49
700
300
ООО «ИТГЛОБАЛКОМ БЕЛ»
700
300
Как установить пакеты программного обеспечения в Debian-Ubuntu: apt-get
Список установленных пакетов программного обеспечения
Для визуализации списка установленных пакетов мы используем следующую команду
~ # dpkg-query -W
Чтобы визуализировать установленный пакет с именем scilab , например, мы используем предыдущую команду и перенаправление (или конвейер) к команде ‘grep’. Практически у нас:
~ # dpkg-query -W | grep -i scilab
scilab 4.0-2
scilab-bin 4.0-2
scilab-doc 4.0-2
Описание установленных программных пакетов
Описание набора установленных пакетов получается с помощью команды
~ # dpkg -l
Список доступных пакетов программного обеспечения
Список доступных пакетов получается следующим образом:
~ # apt-cache имена пакетов
Мы ясно видим, что список не в алфавитном порядке.Чтобы решить эту проблему, мы перенаправляем и сортируем вывод:
~ # apt-cache имена пакетов | sort
Поиск программного пакета: apt-cache search
Для поиска программного комплекса действуем следующим образом:
~ # apt-cache search flashplayer
flashplayer-mozilla - Macromedia Flash Player
Эта команда отображает программные пакеты, содержащие выражение
flashplayer .
Свойства и информация о ПО: apt-cache show
Чтобы отобразить информацию, относящуюся к пакету, например, пакет
flashplayer-mozilla , мы действуем следующим образом:
~ # apt-cache показать flashplayer-mozilla
Пакет: flashplayer-mozilla
Приоритет: необязательно
Раздел: multiverse / web
Установленный размер: 1528
Сопровождающий: Christian Marillat
Архитектура: i386
Источник: install-flash-player
Версия: 6.0.79-0.2
Зависит от: libc6 (> = 2.4-1), libx11-6, libxext6, libxt6, zlib1g (> = 1: 1.2.1), браузер mozilla | www-браузер
Конфликты: flashplugin
Имя файла: pool / multiverse / i / install-flash-player / flashplayer-mozilla_6.0.79-0.2_i386.deb
Размер: 702000
MD5сумма: bfc6eba2b01041876f30c87b930f8d0d
SHA1: f1fa7ab3e931bc411a3713bdaf17c8976dbc24aa
SHA256: 3bd0597a5fc491aa7c2cf2694dd4737f5f1af2e8e9175268062204a6e79db13b
Описание: Macromedia Flash Player
Flash Player позволяет вам испытать анимацию и развлечения на вашем
Веб-браузер Mozilla.
Ошибки: mailto: [email protected]
Происхождение: Ubuntu
Обратите внимание, что необходимо ввести точное имя пакета! Например,
~ # apt-cache show flash
W: пакет flash не найден
E: Пакет не найден
не дает никакого результата, так как flash — это не имя пакета.
Установка программного обеспечения: apt-get install
Предположим, мы хотим установить firefox .Набираем:
~ # apt-get install firefox
Удаление программного обеспечения: apt-get remove
Чтобы удалить пакет, мы можем действовать двумя способами. Либо 1) мы удаляем только программное обеспечение, либо 2) программное обеспечение и его файлы конфигурации. В первом случае, предполагая, что мы хотим удалить программу mplayer , мы набираем:
~ # apt-get remove mplayer
Во втором случае, если мы хотим удалить и mplayer, и его файлы конфигурации, мы набираем:
~ # apt-get remove --purge mplayer
Обновление списка программного обеспечения: apt-get update
Обновление списка программного обеспечения — это не то же самое, что обновление программного обеспечения как такового .Фактически обновляется только список:
~ # apt-get update
Обновление программного обеспечения: apt-get upgrade
Команда upgrade устанавливает самые последние версии всех пакетов в системе.
~ # apt-get upgrade
Чтобы смоделировать установку обновления, то есть увидеть, какое программное обеспечение будет обновлено, мы набираем:
~ # apt-get -s upgrade
Интеллектуальное обновление программного обеспечения: apt-get dist-upgrade
Команда dist-upgrade имеет тот же эффект, что и «обновление», за исключением того, что при изменении зависимостей в новых версиях используется интеллектуальное управление: например, разрешение конфликтов и удаление менее важных пакетов для более важных.
~ # apt-get dist-upgrade
.
Учебное пособие по пакету Debian (dpkg / .deb) | DevDungeon
Введение
Debian Package tool dpkg
используется в Debian, Ubuntu, Kali, Linux Mint,
и другие дистрибутивы Linux на основе Debian.
В этом руководстве рассматриваются основы создания пользовательских пакетов .deb
.
и управлять ими с помощью dpkg
и apt
.
Мы рассмотрим процесс создания вашего собственного файла deb
для распространения
ваш пакет легко.
Он предназначен для людей, заинтересованных в изучении основ
создание и управление пакетами в дистрибутивах на основе Debian.Узнать больше о
Формат файла .deb
Файл .deb
— это пакет Debian, но на самом деле это просто стандартный
Файл архива Unix ( .ar
).
Инструмент dpkg
— это менеджер пакетов Debian, а apt
— более высокий уровень.
инструмент для управления пакетами, который использует dpkg
под капотом.
Список установленных пакетов
Список пакетов с dpkg
или apt
:
dpkg -l # Вывести список установленных пакетов
dpkg -s mypkg # Получить статус определенного пакета
apt list --installed # Список установленных пакетов
apt list # Список * всех * пакетов в доступных репозиториях
Создать пакет
Вы можете создавать и распространять свои собственные .deb
очень легко.
Чтобы начать все заново, создайте новый каталог, названный в честь вашего пакета.
Например, mypkg
.
В этом каталоге будут храниться метаданные пакета и его содержимое.
Внутри каталога проекта должен быть один специальный
каталог ( DEBIAN
) с одним специальным файлом внутри ( control
).
Подробнее о
Поля управляющего файла Debian.
# Минимальная необходимая структура для пакета
mypkg-1.0.0 / # Каталог
└── ДЕБИАН / # Директория
└── control # Файл
Более практичный пример со сценарием после установки:
mypkg / # Каталог
├── ДЕБИАН / # Директория
│ └── control # Контрольный файл
│ └── postinst # Скрипт после установки
├── и т. Д. / Мой.ini # При желании любые другие файлы, которые вам нужно включить
└── opt / mylib / # в целевой системе во время установки
Это минимальный пример файла DEBIAN / control
:
Пакет: mypkg
Версия: 1.0.0
Сопровождающий: Ваше имя
Описание: Мой тестовый пакет, пожалуйста, не обращайте внимания
Домашняя страница: https://github.com/username/projectname
Архитектура: все
Зависит от: git, python3 (> = 3.5), openjdk-8-jre-headless | openjdk-8-jre | openjdk-8-jdk-headless | openjdk-8-jdk
Линия Depends
не является обязательной, но часто требуется.В приведенном выше примере показано, как добавить несколько зависимостей,
как указать минимальную версию с python3,
и как добавить зависимость, удовлетворяемую одним из многих вариантов.
В списке много версий java, и любая из них удовлетворяет требованиям.
Если ни один из них не установлен, он запустится с первого
один в списке и попробуйте его установить.
Таким образом, он будет работать, если у пользователя установлена версия 8 JDK или JRE в полном или автономном варианте.
Если ни один из них не установлен, будет установлена самая маленькая версия (безголовый jre).
Скомпилируйте пакет, запустив dpkg -b
в каталоге проекта следующим образом:
# Создать каталог mypkg в пакете .deb
dpkg -b ./mypkg ./mypkg_1.0.0-0_amd64.deb
# Формат именования: <имя> _ <версия> - <выпуск> _ .deb
# Версия - это номер версии упаковываемого приложения.
# Номер версии - это номер версии самой * упаковки *.
# Номер выпуска может увеличиваться, если сопровождающий пакета
# обновил упаковку, а номер версии приложения
# в упаковке не изменилось.# Проверять такую информацию, как размер, версия, зависимости
dpkg -I mypkg.deb
# Пример вывода `dpkg -i mypkg.deb`
новый пакет debian, версия 2.0.
размер 666 байт: контрольный архив = 301 байт.
238 байт, 6 строк управления
Пакет: mypkg
Версия: 1.0.0
Сопровождающий: Ваше имя
Описание: Мой тестовый пакет, пожалуйста, не обращайте внимания
Архитектура: все
Зависит от: git, python3 (> = 3.5), openjdk-8-jre-headless | openjdk-8-jre | openjdk-8-jdk-headless | openjdk-8-jdk
Это особенный маленький пакет, но без файлов одиноко.
установить.Обычно в пакете есть такое содержимое, как общая библиотека, справочные страницы,
документация, исполняемая программа или служебные файлы systemd.
Следующее, что нам нужно сделать, это добавить файлы в пакет.
Вот несколько примеров того, что вы можете указать:
- исполняемый файл или средство запуска сценария оболочки в
/ usr / local / bin /
- страниц руководства в
/ usr / share / man
- конфигурационных файлов в
/ etc /
- библиотеки в
/ usr / local / lib
- заголовочные файлы в
/ usr / local / включают
В этом примере мы добавим сценарий запуска оболочки для файла Java JAR:
/ usr / bin / mylauncher
#! / Bin / bash
# Запустить скрипт для запуска Java JAR (/ usr / bin / mylauncher)
java -jar / usr / share / java / myapp.банка "$ @"
Обязательно chmod + x
скрипт и поместите его в
Каталог mypkg / usr / local / bin /
.
Файлы конфигурации
Список файлов конфигурации в DEBIAN / conffiles
Это позволит файлам конфигурации по желанию оставаться, когда
удаление (удаление или очистка).
Это также предотвращает перезапись файлов конфигурации обновлениями.
Пример DEBIAN / conffiles
:
/etc/myapp.conf
/ etc / some / other / conf.ini
Сценарии до и после установки
Примеры:
ДЕБИАН / преинст
ДЕБИАН / postinst
Пример Скрипт DEBIAN / postinst
:
#! / Bin / bash
# Этот сценарий `DEBIAN / postinst` запускается после установки
mkdir / каталог / необходимо / для / пакета
Взаимосвязь пакетов
Есть и другие переменные, которые вы можете указать в файле управления
:
-
Зависит от
-
Рекомендует
-
Предлагает
-
Перерывы
-
Конфликты
-
Обеспечивает
-
Заменяет
-
Улучшает
Они могут быть полезны для предупреждения людей, если ваш пакет конфликтует с другим
пакет, который уже установлен.Вы также можете заменить или улучшить существующие пакеты.
Если другие пакеты улучшат работу вашего пакета,
вы можете рекомендовать и предлагать другие пакеты, когда пользователь устанавливает ваш
пакет.
Подробнее о полях взаимосвязи пакетов.
Распечатать информацию о пакете
Вы можете использовать dpkg
и apt-cache
, чтобы получить некоторую информацию о
пакеты.
# Распечатать подробную информацию о файле пакета (размер, версия, зависимости)
dpkg -I mypkg.деб
# Распечатать статус (он установлен?)
dpkg -s <имя_пакета>
# Показать информацию о пакете (даже удаленных из репозиториев)
apt-cache show <имя_пакета>
Распечатать содержимое упаковки
Если вы хотите просмотреть содержимое пакета .deb
перед установкой
его можно распечатать с помощью флага -c
.
dpkg -c mypkg-1.0.0-0_amd64.deb
Экстракт содержимого упаковки
Если вы хотите извлечь содержимое файла .файл deb
,
используйте флаг -X
для подробного извлечения,
или -x
для бесшумной экстракции.
dpkg -X mypkg-1.0.0-0_amd64.deb / где / в / exctact /
Установить пакет
Обычно для установки пакетов .deb доступны два варианта.
Один — dpkg
, а другой — apt
, построенный на основе dpkg
.
Если у вас не установлены зависимости, вам придется их установить
самостоятельно, если вы используете dpkg -i
.В качестве альтернативы вы можете использовать apt
.
Я рекомендую использовать apt
, потому что он по-прежнему использует dpkg
под капотом,
но он обрабатывает зависимости и более удобен для пользователя.
# Установить пакет вместе со всеми необходимыми зависимостями
sudo apt install ./mypkg.deb
# Установить пакет, игнорировать и предупреждать о неудовлетворенных зависимостях
sudo dpkg -i mypkg.deb
# Если вам нужно установить зависимости, которых не было
# установлен, потому что вы использовали `dpkg -i` вместо` apt install`
sudo apt --fix-broken install
# Получить статус пакета
dpkg -s mypkg
Поиск пакетов в репозиториях apt
Вы можете использовать apt-cache
для поиска пакетов
в ваших репозиториях apt
.Это должно быть
установлен с apt install
, но не dpkg
.
Искать так:
apt-cache search инопланетянин
Удалить пакет
Вы можете удалить пакет, используя remove
, но он оставит
файлы конфигурации.
Чтобы также удалить файлы конфигурации, используйте purge
.
dpkg --remove package_name # Оставляет файлы конфигурации
dpkg --purge package_name # Также удаляет файлы конфигурации
# Или с apt
apt удалить package_name
apt purge имя_пакета
Файлы списка, принадлежащие пакету
Это может быть полезно при попытке выяснить, что
имена исполняемых файлов находятся в / usr / bin или при попытке
найти местную документацию.
# Вывести список всех файлов, входящих в пакет `ruby`
dpkg -L рубин
dpkg -L ruby2.5-doc
Найдите, в каком пакете находится файл
Если в вашей системе есть файл, и вы хотите узнать, принадлежит ли он
пакет, вы можете использовать dpkg -S
, чтобы узнать, какой пакет владеет им.
Вы также можете использовать apt-file search
, чтобы увидеть, какие пакеты
в репозиториях есть файл с таким именем.
Например, «Какой пакет создал этот / etc / qwerty.conf? «или
«Какому пакету принадлежит этот исполняемый файл?» Или
«Какие пакеты мне нужно установить, чтобы получить gl.h
?» можно ответить так:
# Выяснить, какому пакету принадлежит конкретный файл
dpkg -S /etc/qwerty.conf
dpkg -S / usr / bin / python3
# Искать в репозиториях APT пакеты, содержащие файл
# Найдите любой пакет, который включает `gl.h`
поиск apt-файла "gl.h"
Замечания по безопасности
Только Используйте доверенные пакеты и репозитории только .Вы устанавливаете пакеты с правами суперпользователя и даете
полное господство на вашей машине с пакетом. Не запускайте никаких пакетов
вы не на 100% уверены, что это из надежного источника.
Подписание
GPG — хороший способ гарантировать целостность и подлинность, то есть
он не был изменен, и пакет пришел от ожидаемого автора.
Вы можете узнать больше о том, как подписывать файлы с помощью GPG в моем
Учебник по основам GPG.
GPG — отличный инструмент для криптографии, с которым стоит ознакомиться.
время научиться этому.Вы также можете использовать его для шифрования электронной почты, поэтому только
предполагаемый получатель может прочитать его, зашифровав архивы или PDF-файлы,
проверка подписей от других, и многие другие практические применения.
Преобразование .deb
в .rpm
и другие форматы
Если вам нужен файл RedHat .rpm
для установки в CentOS, RedHat или Fedora,
вы можете использовать инструмент alien
для преобразования пакетов.
http://joeyh.name/code/alien/
sudo apt install alien
чужой - помощь
чужой --to-rpm my_pkg.деб
Некоторые другие варианты:
-d, --to-deb Создать пакет Debian deb (по умолчанию).
-r, --to-rpm Создать rpm-пакет Red Hat.
--to-slp Создать пакет Slp Stampede.
-l, --to-lsb Создать пакет LSB.
-t, --to-tgz Создать tgz-пакет Slackware.
Инструмент Debhelper
У меня нет большого опыта работы с этим инструментом, но о нем стоит упомянуть.
Инструмент debhelper предоставляет некоторые служебные функции и функции генерации кода.Вот как вы можете установить его и узнать больше.
sudo apt install debhelper
мужчина dh
# Посмотрите, какие инструменты доступны, введя
dh_ # Получить параметры автозаполнения
# Создать новый шаблон пакета Debian
sudo apt install dh-make
# Изнутри каталога с именем вроде: mypkg-1.0.0
dh_make --createorig
Заключение
Теперь вы должны чувствовать себя комфортно, работая и создавая
ваши собственные пакеты Debian, как получить информацию о пакете,
как найти, к какому пакету принадлежит файл, и другие общие задачи.
.
Как установить из пакетов в linux ubuntu
Переполнение стека
- Около
Продукты
- Для команд
Переполнение стека
Общественные вопросы и ответыПереполнение стека для команд
Где разработчики и технологи делятся частными знаниями с коллегамиВакансии
Программирование и связанные с ним технические возможности карьерного ростаТалант
Нанимайте технических специалистов и создавайте свой бренд работодателяРеклама
Обратитесь к разработчикам и технологам со всего мира
.