[ назад ] [ Содержание ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ] [ 10 ] [ 11 ] [ 12 ] [ 13 ] [ 14 ] [ 15 ] [ 16 ] [ вперед ]
В 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 указанного пакета (см. Зачем нужны сценарии preinst, postinst, prerm и postrm?, раздел 7.6).
Настроить пакет, который был распакован ранее: dpkg --configure foo. Кроме всего прочего, эта команда запускает сценарий postinst указанного пакета (см. Зачем нужны сценарии preinst, postinst, prerm и postrm?, раздел 7.6). Она также обновляет файлы, перечисленные в 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
предоставляет простой способ
загрузки и установки пакетов из нескольких
источников, используя командную строку. В
отличии от dpkg
, apt-get
не
понимает файлы .deb, а работает с
собственными именами пакетов и может
устанавливать архивы .deb из источников,
указанных в файле /etc/apt/sources.list
.
apt-get
напрямую вызывает dpkg
после загрузки архивов .deb[5].
Часто используемые команды 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
,
освоятся быстро, так как синтаксис
регулярных выражений был навеян этой
программой;
можно использовать для установки заранее сформированных наборов для определённых задач. Подробности см. в tasksel, раздел 8.1.5;
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.
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)
.
Ядро (файловая система) в системах Debian GNU/Linux поддерживает замену файлов, даже когда они используются.
Мы также предоставляем программу
start-stop-daemon
, которая используется для
запуска служб при загрузке компьютера или
их останова при изменении уровня
выполнения (например, при переключении из
многопользовательского в
однопользовательский или для выключения
компьютера). Эта же программа используется
сценариями установки при установке нового
пакета со службой, для остановки
работающей службы и её перезапуска при
необходимости.
Чтобы получить список всех установленных пакетов, выполните команду
dpkg --list
Эта команда выведет для каждого пакета однострочную сводку, включающую два символа состояния (объясняемые в заголовке), имя пакета, установленную версию и краткое описание.
To learn the status of packages whose names match any pattern beginning with "foo", run the command:
dpkg --list 'foo*'
Чтобы получить более подробный отчёт о состоянии определённого пакета, выполните команду:
dpkg --status имя_пакета
Чтобы вывести список файлов установленного пакета foo, выполните команду
dpkg --listfiles foo
Учтите, что файлы, созданные сценариями установки, не отображаются.
Чтобы определить, в каком пакете содержится файл с именем foo, выполните одну из следующих команд:
dpkg --search foo
Эта команда ищет foo в установленных пакетах. (В настоящий момент это эквивалентно поиску всех файлов с расширением .list в каталоге /var/lib/dpkg/info/ и выводу имён всех пакетов, которые содержат заданное имя файла, и отклонений.)
Более быстрая альтернатива этому —
программа dlocate
.
dlocate -S foo
zgrep foo Contents-ARCH.gz
Эта команда ищет файлы, содержащие в своих полных именах путей подстроку foo. Файлы Contents-ARCH.gz (где ARCH представляет нужную архитектуру) расположены в основных каталогах пакетов (main, non-free, contrib) на FTP-сайте Debian (то есть, в /debian/dists/stretch). Файл Contents относится только к тем пакетам, что расположены в структуре подкаталогов того же каталога, где находится и он сам. Поэтому, чтобы найти пакет, содержащий файл foo, пользователю нужно искать более чем в одном файле Contents.
Преимущество этого метода над dpkg --search состоит в том, что будут найдены файлы в тех пакетах, которые могут быть не установлены в вашей системе.
apt-file search foo
If you install the apt-file
package, similar to the above, it
searches files which contain the substring or regular expression
foo in their full path names. The advantage over the example
above is that there is no need to retrieve the Contents-ARCH.gz
files as it will do this automatically for all the sources defined in
/etc/apt/sources.list
when you run (as root) apt-file
update.
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 APT, раздел 8.1.2) or aptitude
(see aptitude, раздел 8.1.3) 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.
[ назад ] [ Содержание ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ] [ 10 ] [ 11 ] [ 12 ] [ 13 ] [ 14 ] [ 15 ] [ 16 ] [ вперед ]
Часто задаваемые вопросы о Debian GNU/Linux
версия 9.0 от 17 November 2018