Dpkg configure a что это
Dpkg configure a что это
ВНИМАНИЕ ВНИМАНИЕ ВНИМАНИЕ
Данное руководство было составлено неаккуратно, а теперь еще и устарело.
не нужно использовать для тех пакетов, где люди их устанавливающие хотят понимать как dpkg будет устанавливать их пакеты.
ОПИСАНИЕ
Установка состоит из следующих шагов:
Настройка состоит из следующих шагов:
1. Распаковка конфигурационных файлов и в это же время сохранение старых кофигурационных файлов, так что мы можем восстановить их, если что-то пойдет не так. 2. Запуск сценария postinst, если он есть в данном пакете.
Ищет пакеты выбранные к установке, но которые по каким-либо причинам не были установлены.
Показывает файлы установленные в вашей системе из пакета c названием имя пакета. Однако заметим, что файлы созданные специальными сценариями данного пакета показаны не будут.
Ищет пакеты, что были установлены только частично. dpkg посоветует что делать с ними, чтобы заставить их работать.
Выводит состояние заданного пакета. Это действие показывает информацию об установленном пакете из базы состояний пакетов.
Показвает небольшую подсказку.
Показывает лицензию на dpkg.
Показыает информацию о версии.
Смотрите dpkg-deb(8)
для более подробной информации об этих действиях.
Если пакет удаляется, то возможно, что другой установленный пакет зависит от удаляемого пакета. Задание этой опции приведет к автоматической денастройке пакета, который зависит от удаляемого пакета.
Выдает помощь о опциях отладки
Основная полезная информация по ходу выполнения
Вызов и состояния сценариев обслуживания
Вывод по каждому файлу в ходе работы 100 Подробный вывод по каждому файлу в ходе работы
Вывод по каждому конфигурационному файлу
Подробный вывод по каждому конфигурационному файлу
Зависимости и конфликты
Подробное освещение зависимостей и конфликтов
Подробная ерунда о всяких dpkg/info каталогах
Установить пакет, даже если уже установлена его более новая версия.
Настроить также распакованные, но не настроенные пакеты, что зависят от текущего пакета.
Удалить пакет, даже если он побит и отмечен требованием к переустановке. Это может, например, привести к тому, что части пакета остануться в системе, а затем dpkg о них забудет.
hold: Не беспокоится, если пакет в состоянии hold или нет.
Удалить даже если пакет важен. Важные пакеты содержат базовые команды unix и все такое прочее. Удаление такого пакета может привести к останову работы системы, так что используйте данную опцию с осторожностью.
Установит, даже если пакет конфликтует с другими. Это опасно, так как обычно приводит к перезаписи некоторых файлов.
Удалить, даже если другой пакет зависит от этого. Это обычно приводит к побитости другого пакета.
Не беспокоится о версиях, когда проверяются зависимости. Это обычно приводит к побитости другого пакета.
Модификаторы помеченные (*) включены по умолчанию.
эти опции рекомендуется использовать только экспертам. Их использование без полного понимания их эффекта может разрушить вашу систему.
Игнорировать проверку зависимостей для заданных пакетов (тем не менее, проверка выполняется, но выдаются только предупреждения о конфликтах и ничего в других случаях).
Говорит dpkg чтобы он сохранял память или использовал ее как понадобится.
Выбирает новый или старый формат пакета. Это опция dpkg-deb(8)
Не читать или проверять содержимое файла управления пока строится пакет. Это опция dpkg-deb(8)
Делать все, что необходимо, но не записывать любые изменения. Это используется для просмотра, выполнения заданных действий без модифицирования чего-либо.
Не устанавливать пакет, если новая версия такого же пакета уже установлена.
Работать только с пакетами, что выбраны к установке. Данная пометка делается с помощью dse lect или dpkg, когда он управляет пакетами. Когда, например пакет удаляется, он будет помечен к инсталляции и т.д.
Не устанавливать пакет, если таже версия этого пакетв уже установлена.
ИНФОРМАЦИЯ О ПАКЕТАХ
dpkg обслуживает некоторую полезную информацию о доступных пакетах. Эта информация делится на три класса: состояния, состояния выборки и флаги. Эти величины могут быть изменены с помощью dselect.
Пакет распакован и успешно настроен.
Установка пакета была запущена, но не закончена по какой-либо причине.
Пакет не установлен в вашей системе.
Пакет распакован, но не настроен.
Пакет распакован и настройка была запущена, но пока не завершена по какой-либо причине.
Только конфигурационные файлы пакета существуют в системе.
СОСТОЯНИЕ ВЫБОРКИ ПАКЕТА
Пакет выбран к установке.
Пакет выбран к деустановке (т.е. вы хотите удалить все файлы, исключая конфигурационные)
purge Пакет выбран к очистке (т.е. вы хотите удалить все, даже конфигурационные файлы)
Список доступных пакетов.
Состояния доступных пакетов. Этот файл содержит информацию о пакетах, помеченных к удалению или нет, установленных или нет и т.д. См. секцию ИНФОРМАЦИЯ О ПАКЕТАХ.
См. deb(5)
для информации о этом файле.
dpkg. См. deb(5)
для информации о этом файле.
См. deb(5)
для информации о этом файле.
См. deb(5)
для информации о этом файле.
prerm См. deb(5)
для информации о этом файле.
postrm См. deb(5)
для информации о этом файле.
DPKG_NO_TSTP Определяется для чего-то, если вы предпочитаете, dpkg запускается с новым shell скорее чем приостанавливается dpkg, который в это время выходит из shell.
SHELL Программа dpkg будет запущена в то время как запускается новый shell.
Dpkg configure a что это
Это руководство не следует использовать сопровождающим пакетов, которые хотят понять, как dpkg будет устанавливать их пакеты. Описание того, что делает dpkg при установке и удалении пакетов особенно не полно.
ОПИСАНИЕ
dpkg can be also be used as a front-end to dpkg-deb (1). The following are dpkg-deb actions, and if they are encountered, dpkg just runs dpkg-deb with the parameters given to it: Все эти действия описаны в dpkg-deb (1).
ИНФОРМАЦИЯ О ПАКЕТАХ
СОСТОЯНИЯ ПАКЕТА
ВЫБРАННЫЕ СОСТОЯНИЯ ПАКЕТА
ФЛАГИ ПАКЕТА
ДЕЙСТВИЯ
Установка состоит из следующих шагов:
1. Извлечение управляющих файлов нового пакета.
2. Если другая версия этого пакета была установлена ранее, то запускается сценарий prerm из старого пакета.
4. Распаковываются новые файлы, в тоже самое время сохраняя старые, чтобы если что-то пойдет не так, можно было их восстановить.
5. Если ранее была установлена другая версия этого пакета, то запускается сценарий postrm для старого пакета. Заметим, что этот сценарий запускается после сценария preinst нового пакета, потому что новые файлы записываются в то же самое время, когда удаляются старые.
Настройка состоит из следующих шагов:
1. Распаковка конфигурационных файлов, в то же самое время сохраняя старые конфигурационные файлы, чтобы можно было восстановить их, если что-то пойдет не так.
Удаление пакета состоит из следующих шагов:
1. Запуск сценария prerm
2. Удаление установленных фалов
dpkg-query actions Смотрите dpkg-query (1) для более подробной информации о нижеследующих действиях.
ПАРАМЕТРЫ
Предупреждение: Эти параметры предназначены только для использования экспертами. Использование без полного понимания их действия может нарушить работоспособность всей системы.
all : Turns on (or off) all force options.
downgrade (*): Установить пакет, даже если уже установлена его более новая версия.
Предупреждение: На данный момент dpkg не выполняет проверку зависимостей при переходе на более старую версию и поэтому не предупредит если это поломает зависимости с остальными пакетами. Это может иметь серьёзные последствия: замена на более старую версию системных компонентов первой необходимости может привести к полной неработоспособности системы. Использовать осторожно.
configure-any : Настроить также все распакованные, но ненастроенные пакеты, от которых зависит текущий пакет.
hold : Обрабатывать даже пакеты, помеченные как «зафиксированные».
remove-reinstreq : Удалить пакет, даже если он сломан и отмечен как требующий переустановки. Это может, например, привести к тому, что части пакета останутся в системе, а dpkg про них забудет.
remove-essential : Удалить, даже если это пакет первой необходимости (имеет приоритет «Essential»). Эти пакеты в основном содержат базовые команды Unix. Удаление такого пакета может привести к потере работоспособности системы, так что используйте данный параметр осторожно.
depends : Превратить проблемы с зависимостями в предупреждения.
depends-version : Не обращать внимание на версии при проверке зависимостей.
conflicts : Установить, даже если пакет конфликтует с другим пакетом. Это опасно, так как обычно приводит к перезаписи некоторых файлов.
confmiss : Всегда устанавливать пропущенный конфигурационный файл. Это опасно, так как не будут сохранены изменения (удаление) файла.
overwrite : Перезаписать файл из одного пакета файлом из другого пакета.
overwrite-dir : Перезаписать каталог из одного пакета файлом из другого.
overwrite-diverted : Перезаписать файл с изменённым расположением(diverted) его неизменённой версией.
architecture : Обрабатывать даже пакеты с неправильной архитектурой.
bad-path : В PATH отсутствуют важные программы, поэтому могут возникнуть проблемы.
not-root : Попытаться установить или удалить пакет, даже если не нет прав суперпользователя.
bad-verify : Устанавливать пакет, даже если он не прошёл проверку подлинности.
‘. Errors are reported as `status:
‘ for status change updates; `YYYY-MM-DD HH:MM:SS
ФАЙЛЫ
ПЕРЕМЕННЫЕ ОКРУЖЕНИЯ
ПРИМЕРЫ
To list packages related to the editor vi (1):
To see the entries in /var/lib/dpkg/available of two packages:
Вручную просмотреть список пакетов:
Удалить установленный пакет elvis:
Чтобы установить пакет, сначала нужно найти его в архиве или на CDROM. Файл «available» показывает, что пакет vim находится в секции «editors» («редакторы»):
Получить локальную копию состояний выбранных пакетов:
Вы можете перенести этот файл на другой компьютер и установить его там с помощью:
Заметим, что при этом ничего не будет ни установлено, ни удалено, просто будут заданы состояния запрошенных пакетов. Для того, чтобы на самом деле скачать и установить запрошенные пакеты, вам понадобится другая программа. Например, запустите dselect и выберите «Установить».
Обычно dselect (8) предоставляет более удобный способ изменить состояния выбранных пакетов.
Использование менеджера пакетов dpkg в Debian/Ubuntu
Dpkg-это менеджер пакетов в Debian linux. Это утилита для установки, сборки, удаления и менеджмента пакетов Debian. Основной и наиболее дружественный «оболочкой» для dpkg является dselect. dpkg полностью контролируется через параметры командной строки, которые содержат ровно одно действие и несколько(или ни одной)опций. Параметры-действия говорят dpkg что надо сделать, а опции контролируют поведение действий в разных случаях.
Сейчас мы увидим все доступные команды dpkg с примерами
Установка пакета
Синтаксис
Установка всех пакетов из директории рекурсивно
Синтаксис
Распаковать пакеты, но не конфигурировать их
Синтаксис
Переконфигурация всех распакованных пакетов
Синтаксис
Удаление установленных пакетов, оставляя конфигурационные файлы
Синтаксис
Удаление установленных пакетов вместе с конфигурационными файлами
Синтаксис
Замена информации о доступных пакетах
Синтаксис
С этой опцией старая информация заменяется новой в Packages-file
Добавление информации из пакетах
Синтаксис
С этой опцией старая информация соединяется с информацией из Packages-file.
Packages-file, поставляемые с Debian-это просто названия пакетов. dpkg хранит о доступных пакетах в файле /var/lib/dpkg/available
Обновление по информации из Package_file
Синтаксис
Забудьте об удаленных недоступных пакетах
Синтаксис
Стереть существующую информацию о доступных пакетах
Синтаксис
Поиск пакетов, которые были установлены в систему только частично
Синтаксис
Сравнение версий пакетов
Синтаксис
Показать краткую помощь
Синтаксис
Показать лицензию dpkg
Синтаксис
Показать информацию о версии dpkg
Синтаксис
Собрать deb пакет
Синтаксис
Показать содержимое deb пакета
Синтаксис
Показать информацию о пакете
Синтаксис
Показать пакеты, подходящие по заданному шаблону
Синтаксис
Показать все установленные пакеты с номером версии и коротким описанием
Синтаксис
Показать статус определенных пакетов
Синтаксис
Показать список файлов, установленных в систему из пакета
Синтаксис
Поиск по имени файла в установленных пакетах
Синтаксис
Показать детальную информацию о пакете
Синтаксис
Если вы хотите получить больше информации о dpkg и его опциях, то смотрите man
Если вам нужен GUI для dpkg, то обратите внимание на dselect
Глава 8. Инструменты управления пакетами Debian
Содержание
8.1. Какие программы для управления пакетами имеются в Debian?
В Debian для управления пакетами имеется множество средств, от программ с графическими или текстовыми интерфейсами, до низкоуровневых утилит установки пакетов. Корректная работа всех доступных инструментов зависит от низкоуровневых утилит, и все они представлены здесь в порядке уменьшения уровня сложности.
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.
8.1.1. dpkg
Это основная программа управления пакетами. dpkg может вызываться с многими параметрами. Наиболее часто используемые из них:
8.1.2. APT
Инструмент apt совмещает функциональность apt-get и apt-cache, а также по умолчанию использует красивый цветной формат вывода, что очень удобно. Для использования в сценариях или для продвинутого использования предпочтительнее использовать apt-get (а иногда он просто необходим).
Часто используемые команды apt-get :
To update the list of packages known by your system, you can run:
(вы должны регулярно запускать эту команду для обновления списка пакетов)
Установить пакет foo и все его зависимости:
Удалить пакет из системы:
Удалить из системы пакет и все его файлы настроек:
To list all packages for which newer versions are available, run:
Обновить все пакеты в системе (без установки дополнительных пакетов или удаления пакетов):
Обновить все установленные в системе пакеты с установкой или удалением дополнительных пакетов, если это потребуется для обновления какого-то пакета:
(Команда 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.
Найти пакеты, содержащие в своём описании слово :
Показать подробную информацию о пакете:
Показать зависимости пакета:
To print detailed information on the versions available for a package and the packages that reverse-depends on it:
8.1.3. aptitude
aptitude — это менеджер пакетов для систем Debian GNU/Linux, он предоставляет интерфейс к инфраструктуре управления пакетами apt. aptitude представляет собой текстовый интерфейс на основе библиотеки curses. Действия можно выполнять как из визуального интерфейса, так и из командной строки.
aptitude может использоваться для лёгкого и быстрого выполнения задач по управлению пакетами. Она позволяет пользователю просматривать список пакетов и выполнять такие задачи по управлению пакетами как установка, обновление и удаление.
обеспечивает лёгкий доступ ко всем версиям пакета;
позволяет легко отслеживать устаревшее ПО, занося его в «список устаревших пакетов и пакетов, созданных локально»;
можно использовать для установки заранее сформированных наборов для определённых задач. Подробности см. в Раздел 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.
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.
8.1.4. synaptic
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.
8.1.5. tasksel
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. Другие инструменты управления пакетами
8.1.6.1. dpkg-deb
8.2. Говорят, что Debian способен обновить работающую программу; как это делается?
Ядро (файловая система) в системах Debian GNU/Linux поддерживает замену файлов, даже когда они используются.
8.3. Как узнать, какие пакеты установлены в системе Debian?
Чтобы получить список всех установленных пакетов, выполните команду
Эта команда выведет для каждого пакета однострочную сводку, включающую два символа состояния (объясняемые в заголовке), имя пакета, установленную версию и краткое описание.
To learn the status of packages whose names match any pattern beginning with «foo», run the command:
Чтобы получить более подробный отчёт о состоянии определённого пакета, выполните команду:
8.4. How do I display the files of an installed package?
Учтите, что файлы, созданные сценариями установки, не отображаются.
8.5. Как определить пакет, которому принадлежит определённый файл?
zgrep foo Contents-ARCH.gz
apt-file search foo
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.
[5] Notice that there are ports that make this tool available with other package management systems, like Red Hat package manager, also known as rpm
What Does dpkg Configure Do?
Before we get into Linux jargon and troubleshooting, let’s look at what exactly dpkg is. So, in simple words – dpkg is a package manager for Debian-based Linux distribution. If you are still confused, don’t worry; we will explain it from scratch. In this article, we will explain what does dpkg configure do and the usage of this command.
What is dpkg Command?
Let’s start with the basics, assuming you are using Debian, as dpkg configure is used in Debian-based systems. That’s why you are here to learn about this command. As said above, it is a package manager used for Debian.
So, what is a package manager? If you use Linux-based operating systems, you will often hear the term “package manager” term.
The package manager is used to manage these packages. For the Debian system, we can use the dpkg command as a package manager for Installing, removing, and upgrading packages in Debian and Debian-based systems.
How to Use dpkg Configure
We use the dpkg command to manage packages on a Linux system, so let’s discuss how we can use dpkg configure easily.
Installing Program Using Dpkg Command
Here is the command to install a program by using dpkg:
For example, we are installing Google Chrome using dpkg command:
This way, you can install multiple applications using this command.
Removing a Program
You can list down the installed packages on your system by using the following command:
Let’s say we have to remove the chrome package:
Configuring a Package
Dpkg –configure one of the popular commands used to configure unpacked programs or packages.
Configuration command is used to unpack and configure the package. You can unpack packages with the following command:
Now, you can configure the package you have recently unpacked above. To configure it, use the following command:
Troubleshooting: Dpkg was Interrupted
This error often appears when we are installing a new program or upgrading an old one. This might happen because you might not configure some of your packages properly, or background processes might be using the same file.
Method 1
A program Installation goes through the following steps in Debian systems.
Sometimes, if the program doesn’t get properly executed, it throws the error mentioned above, and it will create issues while installing or updating programs. Now execute the following command for fixing this error:
Now, start the installation or update process again to check if it is working or not. If it persists, you can try the following solutions.
Method 2
Run the following command to remove the updates first:
$ cd / var / lib / dpkg / updates
Now, try to install or update the app again. For that, we will use the following command:
If the system still throws errors, then it is because the system or other programs are using the file to update applications or the system, resulting in the locking of dpkg files.
When two processes simultaneously use the same file, the system locks the file, preventing unknown errors. You can check if the system is locking the dpkg file. Enter this command to check further:
After running the above command, if you see the result like usr/lib/apt/apt.systemd.daily lock_is_held update, this means the file is being used in another process run in the background.
It would help if you either waited to finish the background process or manually check and remove the locked files using the following command.
To check all the locked dpkg files, we will use the lsof command. lsof command list all the services running in the system. Therefore, we have used the following command one by one to get processes holding the dpkg file.
$ sudo lsof / var / lib / dpkg / lock
$ sudo lsof / var / lib / apt / lists / lock
$ sudo lsof / var / cache / apt / archives / lock
You will see that the command you have just entered above throws the one or more processes with the ID that you can terminate using the force kill command.
Also, you can remove the lock files with these commands:
$ sudo rm / var / lib / apt / lists / lock
$ sudo rm / var / cache / apt / archives / lock
Finally, run this command to initiate the update process.
Method 3
As you know, the “dpkg was interrupted” error occurs when two processes run to the same program. We will terminate the service or process locking the dpkg file using the following command on the command line terminal with this method.
Run this command to get services using the dpkg file in the background.
The command mentioned above will show you services running along with a unique ID as following:
In the above example, 1234 is our ID, so you will see the different IDs in the output. We will use these IDs to kill the running processes. To kill or terminate the particular process, enter the following command:
Now, rerun the following command to check if the process is still running.
If the process still appears on the system, you have to force kill it using the following command:
Another command you can use to terminate all the services using the dpkg file is:
Conclusion
We have a long list of Dpkg commands used for various operations on a particular file or package. Still, we have focused only on the dpkg –configure command in this write-up. We have explained the purpose of dpkg –configure while covering the use of dpkg commands on Debian-based systems.
Frequently, users end up getting configuration problems when installing a new program or updating an application. We also have described the reasons that cause such errors. Therefore, we have provided all the possible solutions to overcome this problem.
We hope you have found this article helpful and informative. If you still have any queries on suggestions, please let us know in the comment section.
About the author
Prateek Jangid
A passionate Linux user for personal and professional reasons, always exploring what is new in the world of Linux and sharing with my readers.