НАИМЕНОВАНИЕ¶
pacman - утилита
менеджера
пакетов
СИНТАКСИС¶
pacman <operation> [options] [targets]
ОПИСАНИЕ¶
Pacman - это
утилита
для
управления
пакетами,
которая
отслеживает
установленные
пакеты в
системе Linux .
Она
поддерживает
зависимости,
группы
пакетов,
сценарии
установки
и удаления,
а также
возможность
синхронизации
вашего
локального
компьютера
с
удаленным
репозиторием
для
автоматического
обновления
пакетов .
Пакеты Pacman
представляют
собой
архивированный
файл в
формате tar.
Начиная с
версии 3.0.0, pacman
является
интерфейсом
для libalpm(3),
библиотеки
управления
пакетами Linux rq.
Эта
библиотека
позволяет
создавать
альтернативные
интерфейсы
(например,
графический
интерфейс).
Вызов pacman
предполагает
указание
операции с
любыми
возможными
опциями и
целями для
работы с.
Цель target
обычно
представляет
собой
название
пакета,
файла,
URL-адрес или
строку
поиска.
Цели могут
быть
указаны в
качестве
аргументов
командной
строки.
Кроме того,
если
стандартный
ввод не из
терминала
и в
качестве
аргумента
передается
один дефис
(-), целевые
значения
будут
считываться
из
стандартного
ввода.
ОПЕРАЦИИ¶
-D, --database
Выполнить
операцию с
базой
данных
пакетов.
Эта
операция
позволяет
изменять
определенные
атрибуты
установленных
пакетов в
pacmanu0431]аза
данных cqs. Она
также
позволяет
проверять
базы
данных на
внутреннею
согласованность.
Смотрите
опции базы
данных
ниже.
-Q, --query
Запросить
базу
данных
пакетов.
Эта
операция
позволяет
просматривать
установленные
пакеты и их
файлы, а
также
метаинформацию
об
отдельных
пакетах
(зависимости,
конфликты,
дата
установки,
дата
сборки,
размер). Эту
операцию
можно
запустить
из
локальной
базы
данных
пакетов
или
использовать
для
отдельных
файлов
пакетов. В
первом
случае,
если в
командной
строке не
указаны
названия
пакетов,
будут
запрошены
все
установленные
пакеты.
Кроме того,
к списку
пакетов
могут быть
применены
различные
фильтры.
Смотрите
опции
запроса
ниже.
-R, --remove
Удалить
пакет(ы) из
системы.
Также
можно
указать
группы для
удаления, в
этом
случае
будут
удалены
все пакеты
из этой
группы.
Файлы,
принадлежащие
указанному
пакету,
будут
удалены, а
база
данных
будет
обновлена.
Большинство
файлов
конфигурации
будут
сохранены
с
расширением
.pacsave, если не
используется
опция --nosave. См.
опции
удаления
ниже.
-S, --sync
Синхронизировать
пакеты.
Пакеты
устанавливаются
непосредственно
из
удаленных
репозиториев,
включая
все
зависимости,
необходимые
для их
работы.
Например,
команда pacman -S qt
загрузит и
установит
пакет qt и все
пакеты, от
которых он
зависит.
Если
название
пакета
присутствует
в
нескольких
репозиториях,
то можно
явно
указать
репозиторий,
чтобы было
понятно,
какой
пакет
нужно
установить:
-S testing/qt. Вы также
можете
указать
требования
к версии: pacman -S
"bash>=3.2".
Кавычки
обязательны,
иначе
оболочка
интерпретирует
">" как
перенаправление
в файл.
Помимо
пакетов,
можно
указывать
группы.
Например,
если gnome - это
определенная
группа
пакетов, то
команда pacman -S gnome
выдаст
запрос, в
котором вы
сможете
выбрать
пакеты для
установки
из
пронумерованного
списка.
Выбор
пакета
осуществляется
с помощью
списка
номеров
пакетов,
разделенных
пробелами
и/или
запятыми.
Последовательность
пакетов
можно
определить,
указав
первый и
последний
номера
пакетов,
разделенные
дефисом (-).
Чтобы
исключить
пакеты,
нужно
поставить
перед
номером
или
диапазоном
номеров
символ (^).
Пакеты,
предоставляющие
доступ к
другим
пакетам,
также
обрабатываются.
Например,
команда pacman -S foo
сначала
будет
искать
пакет foo.
Если пакет
foo не найден,
то будут
найдены
пакеты,
предоставляющие
те же
функции,
что и пакет
foo. Если
будет
найден
какой-либо
пакет, то он
будет
установлен.
Если
найдено
несколько
пакетов,
содержащих
foo, то будет
предложено
выбрать
один из
них.
Вы также
можете
использовать
команду pacman -Su
для
обновления
всех
устаревших
пакетов.
Смотрите
опции
синхронизации
ниже. При
обновлении
pacman
выполняет
сравнение
версий,
чтобы
определить,
какие
пакеты
нуждаются
в
обновлении.
Это
выполняется
следующим
образом:
Буквенно-цифровой:
1.0a < 1.0b < 1.0beta < 1.0p < 1.0pre < 1.0rc < 1.0 < 1.0.a < 1.0.1
Цифровой:
1 < 1.0 < 1.1 < 1.1.1 < 1.2 < 2.0 < 3.0.0
Кроме
того, в
строках
версии
может быть
указано
значение
epoch, которое
будет
иметь
приоритет
при
сравнении
версий,
если
только
значения
дат не
совпадают.
Это должно
быть
указано в
формате epoch:version-rel.
Например, 2:1.0-1
всегда
больше, чем
1:3.6-1.
-T, --deptest
Проверка
зависимостей.
Эта
операция
полезна в
таких
скриптах,
как makepkg, для
проверки
установленных
пакетов.
Эта
операция
проверяет
каждую
указанную
зависимость
и
возвращает
список
зависимостей,
которые в
данный
момент не
удовлетворены
в системе.
Эта
операция
не
поддерживает
другие
опции.
Пример
использования:
-T qt "bash>=3.2".
-U, --upgrade
Обновить
или
добавить
пакет(ы) в
систему и
установить
необходимые
зависимости
из
репозиториев.
Можно
указать
либо URL-адрес,
либо путь к
файлу. Это
процесс
"удалить,
затем
добавить" -
“remove-then-add”). См.
раздел
«Опции
обновления»
ниже. Также
см. раздел
«Работа с
файлами
конфигурации»,
где
объясняется,
как pacman
обрабатывает
файлы
конфигурации.
-F, --files
Запрос к
базе
данных
файлов. Эта
операция
позволяет
искать
пакеты,
содержащие
определенные
файлы, или
отображать
файлы,
принадлежащие
определенным
пакетам.
Поиск
осуществляется
только по
пакетам,
входящим в
ваши базы
данных. См.
раздел
«Опции
файла»
ниже.
-V, --version
Отобразить
версию и
выйти.
-h, --help
Отобразить
синтаксис
для
заданной
операции.
Если
операция
не указана,
отображается
общий
синтаксис.
ОПЦИИ¶
-b, --dbpath <path>
Определяет
альтернативное
расположение
базы
данных (по
умолчанию
используется
/var/lib/pacman). Это не
следует
использовать,
если вы не
знаете, что
делаете .
ПРИМЕЧАНИЕ:
Если
определён
путь , то это
должен
быть
абсолютный
путь,
символ в
начале
пути
автоматически
не
добавляется.
-r, --root <path>
Определяет
альтернативный
корень для
установки
(по
умолчанию
используется
символ "/").
Это не
должно
использоваться
для
установки
программного
обеспечения
в /usr/local вместо /usr.
ПРИМЕЧАНИЕ:
Если путь к
базе
данных или
файл
журнала не
определены
ни в
командной
строке, ни в
файле
pacman.conf(5),
то
местоположение
по
умолчанию
будет
находиться
внутри
корневого
пути.
ПРИМЕЧАНИЕ:
Эта опция
не
подходит
для
выполнения
операций в
подключенной
гостевой
системе.
Вместо
этого
смотрите
--sysroot.
-v, --verbose
Вывод
путей,
таких как
"корень",
"путь к
конфигурационному
файлу",
"путь к
базе
данных DB", "к
каталогов
кэша" и так
далее..
--arch <arch>
Определение
альтернативных
архитектур.
--cachedir <dir>
Определяет
альтернативное
расположение
кэша
пакета (по
умолчанию
используется
/var/cache/pacman/pkg). Можно
определить
несколько
каталогов
кэша, и они
будут
проверены
в порядке
их
передачи в
pacman.
ПРНИМЕЧАНИЕ:
Это должен
быть
абсолютный
путь. Если в
файле
pacman.conf(5)
определён
пользватель
DownloadUser, то
указанный
пользователь
должен
иметь
разрешение
на доступ к
каталогу
кэша.
--color <when>
Определяет
когда
следует
включить
цвет.
Допустимы
опции always, never
или auto. Опция
always включает
цвет; опция
never
выключает
цвет; опция
auto включает
цвет
автоматически
только при
выводе на tty.
--config <file>
Определяет
альтернативный
конфигурационный
файл.
--debug
Выводит
отладочные
сообщения.
При
сообщениях
об ошибках
рекомендуется
использовать
эту опцию.
--gpgdir <dir>
Определяет
каталог
файлов,
используемых
GnuPG для
проверки
подписей
пакетов (по
умолчанию
используется
/etc/pacman.d/gnupg). Этот
каталог
должен
содержать
два файла: pubring.gpg
и trustdb.gpg. Файл pubring.gpg
содержит
открытые
ключи всех
упаковщиков.
Файл trustdb.gpg
содержит
так
называемую
базу
данных
доверия,
которая
указывает,
что ключи
являются
подлинными
и
заслуживающими
доверия.
ПРИМЕЧАНИЕ:
Это должен
быть
абсолютный
путь.
--hookdir <dir>
Определяет
альтернативный
каталог,
содержащий
файлы-перехватчики
(по
умолчанию
используется
/etc/pacman.d/hooks). Можно
указать
несколько
каталогов-перехватчиков,
при этом
перехватчики
в более
поздних
каталогах
будут
иметь
приоритет
над
перехватчиками
в более
ранних
каталогах.
ПРИМЕЧАНИЕ:
Это должен
быть
абсолютный
путь.
--logfile <file>
Определяет
альтернативный
файл
журнала.
Это должен
быть
абсолютный
путь,
независимый
от
настройки
установки.
--noconfirm
Обходить
все без
исключения.
Это не
очень
хорошая
идея, если
только вы
не хотите
запускать
pacman из
скрипта.
--confirm
Отменяет
последствия
предыдущего
--noconfirm.
--disable-download-timeout
Отключает
настройки
по
умолчанию
для
ограничения
скорости и
времени
ожидания
при
загрузке .
Используйте
это, если у
вас
возникли
проблемы с
загрузкой
файлов с
помощью
прокси-сервера
и/или шлюза
безопасности.
--sysroot <dir>
Определяет
альтернативный
системный
корневой
каталог.
Этот путь
будет
добавлен
ко всем
другим
каталогам
конфигурации
и любым
серверам
репозитория,
начинающимся
с файла://.
Любые пути
или URL-адреса,
переданные
в качестве
целевых,
изменены
не будут.
Это
позволяет
правильно
управлять
установленными
гостевыми
системами
на .
--disable-sandbox
Полностью
отключает
"песочницу"
sandbox,
применяемую
к процессу
загрузки
файлов в
системах Linux.
Эквивалентно
совместному
указанию
--disable-sandbox-filesystem и --disable-sandbox-syscalls.
--disable-sandbox-filesystem
Отключить
ограничения
файловой
системы,
которые
являются
частью
"песочницы"
sandbox,
применяемой
к процессу
загрузки
файлов в
системах Linux.
Полезно,
если при
загрузке
файлов
возникают
сбои,
связанные
с
локальной
блокировкой,
при
запуске
ядра Linux,
которое не
поддерживает
эту
функцию.
--disable-sandbox-syscalls
Отключите
фильтрацию
системных
вызовов в
"песочнице"
sandbox ,
применяемой
к процессу
загрузки
файлов в
системах Linux.
Полезно,
если при
загрузке
файлов,
связанных
с seccomp,
возникают
сбои при
запуске
ядра Linux,
которое не
поддерживает
эту
функцию.
ОПЦИИ ТРАНЗАКЦИЙ (APPLY TO -S, -R и -U)¶
-d, --nodeps
Не
выполнять
проверку
зависимостей
версий.
Названия
пакетов
по-прежнему
проверяются.
Обычно pacman
всегда
проверяет
поля
зависимостей
пакета’s),
чтобы
убедиться,
что все
зависимости
установлены
и в системе
нет
конфликтов
пакетов.
Укажите
эту опцию
дважды,
чтобы
пропустить
все
проверки
зависимостей.
--assume-installed <package=version>
Добавляет
в
транзакцию
виртуальный
пакет "package" с
версией "version",
чтобы
удовлетворять
зависимостям.
Это
позволяет
отключить
определенные
проверки
зависимостей,
не
затрагивая
все
проверки
зависимостей.
Чтобы
отключить
все
проверки
зависимостей,
используйте
к опцию --nodeps.
--dbonly
Добавляет/удаляет
только
запись
базы
данных,
оставляя
все файлы
на месте.
--noprogressbar
Не
показывать
индикатор
выполнения
при
загрузке
файлов. Это
может быть
полезно
для
скриптов,
которые
вызывают pacman
и
записывают
выходные
данные.
--noscriptlet
Не
выполнять
скриптлет
установки,
когда он
существует.
Не
используйте
это, если не
знаете, что
делаете .
-p, --print
Вместо
выполнения
фактической
операции (sync, remove
или upgrade)
только
вывести
целевые
объекты.
Используйте
--print-format, чтобы
указать,
как
отображать
целевые
объекты.По
умолчанию
строка
имеет
формат: "%l",
который
отображает
URL-адреса с -S,
названия
файлов с -U и
pkgname-pkgver с -R.
--print-format <format>
Указать
формат,
подобный printf,
для
управления
выводом
операции
--print.
Возможными
атрибутами
являются:"%a"
для arch, "%b" для
builddate, "%d" для description, "%e"
для pkgbase, "%f" для
filename, "%g" для
PGP-сигнатуры
в
кодировке
base64, "%h" для sha256sum, "%m"
для md5sum, "%n" для
pkgname, "%p" дляr packager, "%v"
для pkgver, "%l" для
местоположения,
"%r" для
репозитория,
"%s" for size, "%C" для
проверки
зависимостей,
"%D" для
зависимостей,
"%G" для
групп, "%H"
для
конфликтов,
"%L" для
лицензий,
"%M" for makedepends, "%O" для
дополнительных
зависимостей,
"%P" для
обеспечения
и "%R" для
замены.
Подразумевает
использование
--print.
ОПЦИИ ОБНОВЛЕНИЯ (APPLY TO -S и -U)¶
-w, --downloadonly
Загрузить
все пакеты
с сервера,
но ничего
не
устанавливать
и не
обновлять.
--asdeps
Устанавливать
пакеты
неявно;
другими
словами,
подделайте
причину их
установки,
чтобы они
были
установлены
как будто
по
зависимости.
Это
полезно
для makepkg и
других
инструментов
для сборки
из
исходного
кода,
которым
необходимо
установить
зависимости
перед
сборкой
пакета.
--asexplicit
Устанавливать
пакеты
явно;
другими
словами,
подделать
причину их
установки,
чтобы они
были
установлены
явно. Это
полезно,
если вы
хотите
пометить
пакет как
явно
установленный,
чтобы он не
был удален
с помощью
операции
удаления
--recursive.
--ignore <package>
Указывает
pacman
игнорировать
обновления
пакета,
даже если
есть один
доступный
пакет.
Можно
указать
несколько
пакетов,
разделив
их
запятыми.
--ignoregroup <group>
Указывает
pacman
игнорировать
обновления
всех
пакетов в
группе group,
даже если
есть один
доступный.
Можно
указать
несколько
групп,
разделив
их
запятыми.
--needed
Не
переустанавливать
целевые
объекты,
которые
уже
являются
актуальными.
--overwrite <glob>
Обходить
проверки
на
конфликт
файлов и
перезаписывать
конфликтующие
файлы. Если
устанавливаемый
пакет
содержит
файлы,
которые
уже
установлены
и
соответствуют
объекту glob,
то эта
опция
приведет к
перезаписи
всех этих
файлов.
Использование
опции --overwrite не
позволит
перезаписать
каталог,
содержащий
файл или
установить
пакеты с
конфликтующими
файлами и
каталогами.
Можно
указать
несколько
шаблонов,
разделив
их
запятыми.
Может быть
указано
несколько
раз.
Шаблоны
можно
отменить,
чтобы
соответствующие
им файлы не
были
перезаписаны,
добавив к
ним
восклицательный
знак.
Последующие
совпадения
будут
переопределять
предыдущие
.
Восклицательный
знак или
обратная
косая
черта в
начале
строки
должны
быть
экранированы.
ОПЦИИ ЗАПРОСА (APPLY TO -Q)¶
-c, --changelog
Просмотреть
список
изменений
пакета,
если он
существует.
-d, --deps
Ограничить
или
отфильтровать
выходные
пакеты,
установленные
как
зависимые.
Эту опцию
можно
комбинировать
с -t для
вывода
списка
реальных
orphans-пакетов,
которые
были
установлены
как
зависимые,
но больше
не
требуются
ни для
одного
установленного
пакета.
-e, --explicit
Ограничить
или
отфильтровать
вывод
только
явно
установленными
пакетами.
Эту опцию
можно
комбинировать
с -t для
получения
списка
явно
установленных
пакетов,
которые не
требуются
ни для
одного
другого
пакета.
-g, --groups
Отобразить
все пакеты,
входящие в
названную
группу.
Если
название
группы не
указано, то
отобразить
список
всех
сгруппированных
пакетов.
-i, --info
Отобразить
информацию
о данном
пакете.
Опция -p
может
использоваться
при
запросе
файла
пакета
вместо
локальной
базы
данных. При
установке
двух
флажков --info
или -i также
отобразится
список
файлов
резервных
копий и
состояний
их
модификации.
-k, --check
Проверить,
что все
файлы,
принадлежащие
данному
пакету(ам),
присутствуют
в системе.
Если
пакеты не
указаны
или флажки
фильтрации
не указаны,
то
проверить
все
установленные
пакеты. При
повторном
указании
этой опции
будет
выполнена
более
подробная
проверка
файлов
(включая
разрешения,
размеры
файлов и
время
модификации)
для
пакетов,
содержащих
необходимый
файл mtree.
-l, --list
Вывести
список
всех
файлов,
принадлежащие
данному
пакету. В
командной
строке
можно
указать
несколько
пакетов.
-m, --foreign
Ограничить
или
отфильтровать
выходные
данные для
пакетов,
которые не
были
найдены в
синхронизированных
базах
данных.
Обычно это
пакеты,
которые
были
загружены
вручную и
установлены
с помощью
опции --upgrade.
-n, --native
Ограничить
или
отфильтровать
выходные
данные
пакетов,
которые
находятся
в
синхронизированной(ых)
базе(ах)
данных. Это
инверсный
фильтр для
--foreign.
-o, --owns <file>
Выполнить
поиск
пакетов,
которым
принадлежат
указанные
файлы. Путь
может быть
относительным
или
абсолютным,
и может
быть
указан
один или
несколько
файлов.
-p, --file
Означает,
что пакет,
указанный
в
командной
строке,
является
файлом, а не
записью в
базе
данных.
Файл будет
распакован
и запрошен.
Это
полезно в
сочетании
с --info и --list.
-q, --quiet
Показывать
меньше
информации
для
определенных
операций
запроса.
Это
полезно,
когда
выходные
данные pacman’s
обрабатываются
в скрипте.
Поиск
покажет
только
названия
пакетов, а
не
информацию
о версии,
группе и
описании; owns
покажет
только
названия
пакетов
вместо
сообщений
"файл
принадлежит
pkg"; group покажет
только
названия
пакетов и
опустит
названия
групп; list
покажет
только
файлы и
опустит
названия
пакетов; check
покажет
только
пары
названий
пакетов и
отсутствующие
файлы;
простой
запрос query
покажет
только
названия
пакетов, а
не
названия и
версии.
-s, --search <regexp>
Найти в
каждом
локально
установленном
пакете
названия
или
описания,
соответствующие
регулярному
выражению.
При
включении
нескольких
условий
поиска
возвращаются
только
пакеты с
описаниями,
соответствующими
всем этим
условиям.
-t, --unrequired
Ограничить
или
отфильтровать
выходные
данные,
чтобы
отобразить
только
пакеты,
которые не
требуются
ни для
одного из
установленных
в данный
момент
пакетов.
Укажите
эту опцию
дважды,
чтобы
включить
пакеты,
которые
необязательно,
но не
напрямую
требуются
для
другого
пакета.
-u, --upgrades
Ограничить
или
отфильтровать
выходные
данные для
пакетов,
которые
устарели в
локальной
системе.
Для поиска
устаревших
пакетов
используются
только
версии
пакетов;
флажок для
замены
здесь не
ставится.
Эта опция
лучше
всего
работает,
если база
данных
синхронизирована
и
обновляется
с помощью
-Sy.
ОПЦИИ УДАЛЕНИЯ (APPLY TO -R)¶
-c, --cascade
Удалить
все
целевые
пакеты, а
также все
пакеты,
зависящие
от одного
или
нескольких
целевых
пакетов.
Эта
операция
является
рекурсивной
и должна
выполняться
с
осторожностью,
поскольку
она может
привести к
удалению
многих
потенциально
необходимых
пакетов.
-n, --nosave
Обязывает
pacman
игнорировать
обозначения
резервных
копий
файлов.
Обычно,
когда файл
удаляется
из системы,
база
данных
проверяется
на предмет
того,
следует ли
переименовывать
файл с
расширением
.pacsave.
-s, --recursive
Удалить
все
указанные
целевые
пакеты,
включая
все их
зависимости,
при
условии,
что: 1) они не
требуются
для других
пакетов; 2)
они не были
явно
установлены
пользователем.
Эта
операция
является
рекурсивной
и
аналогична
обратной
операции
--sync, и она
помогает
поддерживать
чистоту
системы
без "сирот".
Если вы
хотите
опустить
условие 2), то
передайте
эту опцию
дважды.
-u, --unneeded
Удалить
целевые
объекты,
которые не
требуются
ни для
каких
других
пакетов. В
основном
это
полезно
при
удалении
группы без
использования
опции -c,
чтобы
избежать
нарушения
каких-либо
зависимостей.
ОПЦИИ СИНХРОНИЗАЦИИ (APPLY TO -S)¶
-c, --clean
Удалить
из кэша
пакеты,
которые
больше не
установлены,
а также
неиспользуемые
в
настоящее
время
синхронизируемые
базы
данных,
чтобы
освободить
место на
диске.
Когда pacman
загружает
пакеты, он
сохраняет
их в
каталоге
кэша. Кроме
того, базы
данных
сохраняются
для каждой
загружаемой
вами
синхронизируемой
базы
данных и не
удаляются,
даже если
они
удалены из
файла
конфигурации
pacman.conf(5).
Используйте
один
переключатель
--clean , чтобы
удалить
только те
пакеты,
которые
больше не
установлены;
используйте
два
переключателя,
чтобы
удалить
все файлы
из кэша. В
обоих
случаях у
вас будет
возможность
выбрать
"да" или
"нет" для
удаления
пакетов
и/или
неиспользуемых
загруженных
баз данных.
Если вы
используете
общий
сетевой
кэш,
ознакомьтесь
с опцией CleanMethod
в pacman.conf(5).
-g, --groups
Отобразить
всех
членов
каждой
указанной
группы
пакетов.
Если
названия
групп не
указаны, то
будут
перечислены
все группы;
установите
флажок
дважды,
чтобы
просмотреть
все группы
и их
участников.
-i, --info
Отображать
информацию
о данном
пакете
синхронизируемой
базы
данных. При
передаче
двух
флажков --info
или -i эти
пакеты
также
будут
отображаться
во всех
репозиториях,
которые
зависят от
этого
пакета.
-l, --list
Отобразить
все пакеты
в
указанных
репозиториях.
В
командной
строке
можно
указать
несколько
репозиториев.
-q, --quiet
Отображать
меньше
информации
для
определенных
операций
синхронизации.
Это
полезно,
когда
выходные
данные pacman’s)
обрабатываются
в скрипте.
Поиск
будет
показывать
только
названия
пакетов, а
не
информацию
о
репозитории,
версии,
группе и
описании;
список
будет
показывать
только
названия
пакетов и
опускать
базы
данных и
версии;
группа
будет
показывать
только
названия
пакетов и
опускать
названия
групп.
-s, --search <regexp>
Это
позволит
выполнить
поиск по
каждому
пакету в
синхронизируемых
базах
данных в
поисках
названий
или
описаний,
соответствующих
регулярному
выражению.
При
включении
нескольких
условий
поиска
будут
возвращены
только
пакеты с
описаниями,
соответствующими
всем этим
условиям.
-u, --sysupgrade
Обновить
все пакеты,
которые
устарели.
Каждый
установленный
в данный
момент
пакет
будет
проверен и
обновлен,
если
существует
более
новый
пакет.
Будет
представлен
отчет обо
всех
пакетах,
которые
необходимо
обновить,
но
операция
не будет
продолжена
без
подтверждения
пользователя.
Зависимости
автоматически
разрешаются
на этом
уровне и
пакеты при
необходимости
будут
установлены
или
обновлены.
Используйте
эту опцию
дважды,
чтобы
включить
понижение
статуса
пакетов; в
этом
случае pacman
выберет
пакеты для
синхронизации,
версии
которых не
совпадают
с
локальными
версиями.
Это может
быть
полезно,
когда
пользователь
переключается
с
тестируемого
репозитория
на
стабильный.
Дополнительные
целевые
объекты
также
можно
указать
вручную,
чтобы -Su foo
выполнил
обновление
системы и
установил/обновил
пакет "foo" в
той же
операции.
-y, --refresh
Загрузить
свежую
копию баз
данных
основного
пакета
(repo.db) с
сервера(ов),
определенных
в файле
pacman.conf(5).
Обычно это
следует
использовать
каждый раз,
когда вы
используете
--sysupgrade или
-u.
Передача
двух
флажков
--refresh
или
-y
приведет к
принудительному
обновлению
всех баз
данных
пакетов,
даже если
они
выглядят
обновленными.
ОПЦИИ БАЗЫ ДАННЫХ (APPLY TO -D)¶
--asdeps <package>
Пометить
пакет как
явно не
установленный;
другими
словами,
указать
причину
его
установки
в качестве
зависимости.
--asexplicit <package>
Пометить
пакет как
явно
установленный;
другими
словами,
указать
причину
его
установки
как явно
установленный.
Это
полезно,
если вы
хотите
сохранить
пакет
установленным,
даже если
он
изначально
был
установлен
по
зависимости
от другого
пакета.
-k, --check
Проверить
внутреннюю
согласованность
базы
данных
локальных
пакетов.
Это
позволит
убедиться
в наличии
всех
необходимых
файлов, а
также в том,
что
установленные
пакеты
имеют
требуемые
зависимости,
не
конфликтуют
и что
нескольким
пакетам не
принадлежит
один и тот
же файл. При
повторном
указании
этой опции
будет
выполнена
проверка
синхронизации
баз данных,
чтобы
убедиться
в наличии
всех
указанных
зависимостей.
-q, --quiet
Подавлять
сообщения
об
успешном
завершении
операций с
базой
данных.
ОПЦИИ ФАЙЛА (APPLY TO -F)¶
-y, --refresh
Загрузить
новые базы
данных
файлов
пакета (repo.files) с
сервера.
Используйте
это дважды
для
принудительного
обновления,
даже если
базы
данных
обновлены.
-l, --list
Перечислить
файлы,
принадлежащие
запрашиваемому
пакету.
-x, --regex
Интерпретировать
каждый
запрос как
регулярное
выражение.
-q, --quiet
Отображать
меньше
информации
для
определенных
файловых
операций.
Это
полезно,
когда
вывод pacman’s
обрабатывается
в скрипте,
однако вы
можете это
использовать
вместо
--machinereadable.
--machinereadable
Вывести
каждое
совпадение
в
машиночитаемом
выходном
формате.
Формат:
repository\0pkgname\0pkgver\0path\n, где \0
- символ NULL, а \n -
перевод
строки.
ОБРАБОТКА КОНФИГУРАЦИОННЫХ ФАЙЛОВ¶
Pacman
использует
ту же
логику, что
и rpm, для
определения
действий с
файлами,
которые
предназначены
для
резервного
копирования.
Во время
обновления
для
каждого
файла
резервной
копии
используются
три хэша MD5,
чтобы
определить
требуемое
действие:
один для
оригинального
установленного
файла, один
для нового
файла,
который
должен
быть
установлен,
и один для
фактического
файла,
существующего
в файловой
системе.
После
сравнения
этих трех
хэшей
могут
иметь
место
следующие
варианты:
original=X, current=X, new=X
Все три
файла
одинаковы,
поэтому
перезапись
не
является
проблемой .
Устанавливается
новый
файл.
original=X, current=X, new=Y
Текущий
файл такой
же, как и
оригинальный,
но новый
отличается.
Поскольку
пользователь
никогда не
изменял
файл, а
новый
может
содержать
улучшения
или
исправления
ошибок, то
устанавливается
новый
файл.
original=X, current=Y, new=X
Обе
версии
пакета
содержат
один и тот
же файл, но
файл в
файловой
системе
был
изменен.
Оставляется
текущий
файл на
месте.
original=X, current=Y, new=Y
Новый
файл
идентичен
текущему
файлу.
Устанавливается
новый
файл.
original=X, current=Y, new=Z
Все три
файла
отличаются
друг от
друга,
поэтому
устанавливается
новый файл
с
расширением
.pacnew и
предупреждается
об этом
пользователь.
Затем
пользователь
должен
вручную
внести все
необходимые
изменения
в
оригинальный
файл.
original=NULL, current=Y, new=Z
Пакет
ранее не
устанавливался,
а файл уже
существует
в файловой
системе.
Устанавливается
новый файл
с
расширением
.pacnew и
предупреждается
об этом
пользователь.
Затем
пользователь
должен
вручную
внести все
необходимые
изменения
в
оригинальный
файл.
ПРИМЕРЫ¶
pacman -Ss ne.hack
Поиск
регулярного
выражения
"ne.hack" в базе
данных
пакетов.
pacman -S gpm
Загрузить
и
установить
gpm, включая
зависимости.
pacman -U /home/user/ceofhack-0.6-1-x86_64.pkg.tar.gz
Установить
пакет ceofhack-0.6-1 из
локального
файла.
pacman -Syu
Обновить
список
пакетов, а
затем
обновить
все пакеты
.
pacman -Syu gpm
Обновить
список
пакетов,
обновить
все пакеты,
а затем
установить
gpm, если он
еще не был
установлен.
КОНФИГУРАЦИЯ¶
Смотрите
файл pacman.conf(5)
для
получения
более
подробной
информации
о
настройке
pacman с помощью
файла pacman.conf.
ПРОГРАММНЫЕ ОШИБКИ¶
Программные
ошибки? Вы,
должно
быть,
шутите; в
этом
программном
обеспечении
нет ошибок.
Но если мы
окажемся
неправы,
пожалуйста,
сообщите
об этом в
службу
отслеживания
проблем по
адресу
https://gitlab.archlinux.org/pacman/pacman/-/issues
указав
конкретную
информацию,
такую как
ваша
командная
строка,
характер
ошибки и
даже базу
данных
пакетов,
если это
возможно.
АВТОРЫ¶
Текущие
сопровождающие:
•Allan McRae <allan@archlinux.org>
•Andrew Gregory
<andrew.gregory.8@gmail.com>
•Morgan Adamiec
<morganamilo@archlinux.org>
Бывшие
основные
участники:
•Judd Vinet <jvinet@zeroflux.org>
•Aurelien Foret
<aurelien@archlinux.org>
•Aaron Griffin <aaron@archlinux.org>
•Dan McGee <dan@archlinux.org>
•Xavier Chantry <shiningxc@gmail.com>
•Nagy Gabor <ngaba@bibl.u-szeged.hu>
•Dave Reisner <dreisner@archlinux.org>
•Eli Schwartz
<eschwartz@archlinux.org>
Для
получения
сведений о
дополнительных
участниках
используйте
git shortlog -s on the pacman.git repository.
ПЕРЕВОД¶
Русский
перевод
этой
страницы
руководства
разработал(и)
Aleksandr Felda <afelda@rambler.ru>
Этот
перевод
является
свободной
программной
документацией;
он
распространяется
на
условиях
общедоступной
лицензии GNU (GNU
General Public License - GPL,
https://www.gnu.org/licenses/gpl-3.0.html
версии 3 или
более
поздней) в
отношении
авторского
права, но
БЕЗ
КАКИХ-ЛИБО
ГАРАНТИЙ.
Если вы
обнаружите
какие-либо
ошибки в
переводе
этой
страницы
руководства,
пожалуйста,
сообщите
об этом
разработчику(ам)
по его(их)
адресу(ам)
электронной
почты или
по адресу
списка
рассылки
русских
переводчиков.