50 самых полезных команд Zypper для пользователей SUSE Linux
Если вы, как и я, опытный пользователь Linux, скорее всего, вы встречали термин SUSE Linux. Это один из самых мощных и готовых к использованию дистрибутивов Linux, который используется множеством компаний по всему миру. Фактически, SUSE был первым дистрибутивом Linux, предназначенным для бизнеса. У SUSE есть два варианта — бесплатная версия с открытым исходным кодом под названием openSUSE и коммерческое решение под названием SUSE Linux Enterprise. Утилита командной строки zypper фактически является решением для управления пакетами для обоих этих вариантов. В этом руководстве мы предоставим несколько практических инструкций по использованию этого инструмента.
Команды Zypper для OpenSUSE и SUSE Enterprise
Мы выбрали в общей сложности 50 команд Zypper, которые могут быть полезны всем, кто использует вариант SUSE. Если вы абсолютный новичок, это руководство предоставит практическое введение в управление пакетами в SUSE. Те из вас, кто более опытен, могут добавить это в закладки для дальнейшего использования.
1. Установка пакета
Если вы хотите установить новые приложения в SUSE, вам, вероятно, потребуется установить пакеты из репозиториев, в которых они есть. Следующую единственную команду можно использовать для установки нового нового пакета.
$ sudo zypper install git
Zypper выполнит поиск указанного пакета в своих репозиториях и продолжит установку. Это решит любые проблемы с зависимостями, поскольку необходимые пакеты также доступны в ваших репозиториях. Вы также можете использовать короткую форму вместо install.
$ sudo zypper in git
Загруженные пакеты хранятся в каталоге /var/cache/zypper/source-download.
2. Установка локальных пакетов
И OpenSUSE, и SUSE Linux используют систему rpm в качестве системы управления пакетами. Допустим, вы загрузили пакет RPM с помощью команды Linux wget.
$ wget https://64.34.161.181/download/3.5.0/Linux/nxclient-3.5.0-7.x86_64.rpm
Вы можете установить загруженный пакет с помощью команды установки zypper. Убедитесь, что вы указали правильный путь к файлу.
$ sudo zypper install nxclient-3.5.0-7.x86_64.rpm
$ sudo zypper in nxclient-3.5.0-7.x86_64.rpm
3. Загрузка пакетов в Zypper
Иногда вам может потребоваться загрузить пакет, не приступая к его установке. Команда загрузки Zypper позволяет легко загружать удаленные пакеты на локальный компьютер.
$ sudo zypper download nmap
Когда вы введете эту команду, пакет Nmap загрузится на ваш компьютер, но не будет установлен. По умолчанию zypper помещает локально загруженные пакеты в каталог /var/cache/zypp/packages/
4. Отображение доступных репозиториев
Как уже говорилось, пакеты находятся в репозиториях, и когда вы осуществляете загрузку, инструмент управления пакетами извлекает приложения оттуда. Вы можете просмотреть информацию о репозитории SUSE Linux, используя одну из следующих команд zypper.
$ sudo zypper lr
$ sudo zypper repos
Вывод содержит такую информацию, как фактическое имя репо, псевдонимы, включенный статус и т. д. Вы можете получить подробную информацию о репозиториях, используя флаг -d.
$ sudo zypper lr -d
$ sudo zypper repos -d
Используйте параметр -p, чтобы включить приоритеты репозитория и выполнить сортировку по ним.
$ sudo zypper lr -p
$ sudo zypper repos -p
5. Добавление репозитория
Вы можете добавить дополнительные репозитории для вашего компьютера SUSE, используя следующий простой синтаксис.
zypper addrepo <options> <URI> <alias>
URI — это путь к репозиторию, а псевдоним — это имя. Краткий вариант addrepo — ar. Ознакомьтесь со следующими командами, чтобы узнать, как добавить репозиторий в OpenSUSE и SUSE Enterprise.
$ sudo zypper ar https://download.opensuse.org/update/11.1/ update
$ sudo zypper addrepo https://download.opensuse.org/update/11.1/ update
6. Создание локальных репозиториев
С помощью zypper очень легко создавать локальные репозитории. Просто поместите все ваши локальные файлы rpm в каталог и следуйте приведенному ниже синтаксису.
zypper addrepo <Path-to-Dir> <Name-of-Repository>
Следующие команды zypper создадут локальный репозиторий с именем test-repo.
$ sudo zypper ar ~/repos-dir test-repo
$ sudo zypper addrepo ~/repos-dir test-repo
7. Обновление репозиториев в SUSE
Вам следует обновить список репозиториев после добавления новых репозиториев. Это можно сделать очень легко с помощью команды обновления zypper.
$ sudo zypper ref
$ sudo zypper refresh
Указание имени репозитория обновит только этот конкретный репозиторий.
$ sudo zypper refresh repo-oss
Вы можете просто перечислить все репозитории, чтобы получить названия доступных репозиториев. Используйте параметр -s или -services, чтобы обновить службы, а также репозитории. По умолчанию он отключен.
$ sudo zypper refresh -s
$ sudo zypper refresh --services
8. Изменение репозиториев в SUSE
Zypper позволяет пользователям изменять репозитории на ходу. Ознакомьтесь со следующими примерами, чтобы узнать, как можно использовать командуmodifyrepo для таких задач.
$ sudo zypper modifyrepo --disable 6
$ sudo zypper mr -d 6
Эти команды отключат репозиторий номер 6. Вы можете видеть, что для этих параметров доступны как короткие, так и длинные псевдонимы.
$ sudo zypper mr -Ka
Эта команда отключит кэширование файлов rpm для всех репозиториев — как удаленных, так и локальных. Вы можете узнать список всех вариантов модификации, используя приведенные ниже команды.
$ sudo zypper modifyrepo --help
$ sudo zypper mr --help
9. Переименование репозиториев в SUSE
Переименовать репозитории также очень легко с помощью zypper. Следующие команды показывают, как использовать для этого команду zypper namerepo.
$ sudo zypper namerepo 6 primary
$ sudo zypper nr 6 primary
Обе эти команды изменяют имя шестого репозитория на основное. Мы можем указать репозиторий, используя его номер, имя или URL-адрес. Однако операция переименования работает только с псевдонимами.
10. Удаление репозиториев в SUSE
Удалить репозиторий с вашего компьютера OpenSUSE так же просто, как его переименовать. Для этого просто используйте команду Removerepo утилиты zypper. Следующие простые команды показывают, как удалить репозиторий с именем test.
$ sudo zypper removerepo main
$ sudo zypper rr main
Используйте команду ниже, если вы хотите удалить только локальные репозитории.
$ sudo zypper removerepo --local
$ sudo zypper rr -l
Чтобы удалить все удаленные репозитории, используйте следующие команды zypper.
$ sudo zypper removerepo --remote
$ sudo zypper rr -t
11. Поиск пакета
Если вы хотите найти пакет перед его установкой, вы можете использовать команду поиска zypper. Приведенные ниже команды покажут, как найти пакет Nmap с помощью этого метода.
$ sudo zypper search nmap
$ sudo zypper se nmap
Когда вы запустите одну из этих команд, она отобразит список всех доступных пакетов Nmap вместе с их действующим именем, типом и краткой информацией. Используйте команду ниже, если хотите найти уже установленный пакет.
$ sudo zypper search --installed-only sed
$ sudo zypper se -i sed
Существует множество других опций, поддерживаемых поиском Zipper. Вы можете просмотреть их, используя следующую команду.
$ sudo zypper se --help
12. Просмотр информации о пакете
Вы можете просмотреть всю доступную информацию для конкретного пакета Linux, используя подкоманду info zypper. Краткая форма замены информации — if.
$ sudo zypper info nmap
$ sudo zypper if nmap
Эта команда выведет информацию о команде Linux nmap на дисплей вашего терминала. Вам следует просмотреть такую информацию, как имя репозитория, исходный пакет, информацию о версии, статус и описание пакета. Пользователи также могут искать информацию о пакете, не зная точного имени пакета.
$ sudo zypper info --match-substrings nma
$ sudo zypper if -s nma
13. Установка пакетов по версии
Zypper упрощает установку пакетов SUSE Linux по их версии. Это позволяет администраторам устанавливать стабильные версии программных пакетов, которые вряд ли будут мешать работе пользователя. В приведенном ниже примере показано, как установить пакеты Zypper, используя определенную версию.
$ sudo zypper in 'gcc<5.1'
$ sudo zypper install 'gcc<5.1'
Приведенные выше команды zypper установят предыдущую версию GCC 5.1. Если вы знаете точную версию пакета, вы можете установить его, используя эту информацию.
$ sudo zypper in gcc48-4.8.3+r212056-2.2.4
$ sudo zypper install gcc48-4.8.3+r212056-2.2.4
14. Установка пакетов по архитектуре
Большинство персональных компьютеров сегодня работают на архитектуре amd64 или i386. Если вы используете 64-битную операционную систему, то у вас amd64. 32-битные системы используют дизайн i386. Следующая команда установит GCC для архитектуры i386.
$ sudo zypper in gcc.i386
$ sudo zypper install gcc.i386
Приведенная ниже команда показывает, как мы можем загрузить определенную версию программы для требуемой архитектуры.
$ sudo zypper in 'gcc.i386<5.1'
$ sudo zypper install 'gcc.i386<5.1'
15. Установка пакета по шаблону
Zypper позволяет администраторам SUSE искать и устанавливать пакеты по определенному шаблону. Прежде всего, мы всегда можем указать имя пакета с помощью регулярных выражений. Они должны быть знакомы пользователям, которые использовали команду grep или утилиту sed в Linux.
$ sudo zypper in nfs*
$ sudo zypper install nfs*
Эта команда установит все пакеты, связанные с NFS и содержащие подстановочный знак в своем имени. Чтобы загрузить и установить пакеты с использованием шаблона установки zypper, следуйте приведенному ниже примеру.
$ sudo zypper in -t pattern file_server
$ sudo zypper install -t pattern file_server
Эта команда установит все пакеты, необходимые для настройки системы файлового сервера в SUSE.
16. Установка пакетов из определенных репозиториев
По умолчанию zypper найдет нужный пакет в любом репозитории, в котором он доступен. Однако, если мы хотим, мы можем явно указать имя репозитория. Приведенные ниже команды zypper показывают это в действии.
$ sudo zypper in amarok upd:libxine1
$ sudo zypper install amarok upd:libxine1
Это может быть полезно пользователям, которые хотят установить пакеты из определенного репозитория. Обратите внимание, что мы используем псевдоним репозитория для указания репозитория. Следующий пример устанавливает сканер портов Nmap из основного репозитория.
$ sudo zypper in nmap main
$ sudo zypper install nmap main
17. Одновременная установка и удаление пакетов
SUSE Linux позволяет администраторам устанавливать и удалять пакеты с помощью одной комбинации команд. Ознакомьтесь со следующими командами zypper, чтобы увидеть, как они работают на практике.
$ sudo zypper in nano -vi
$ sudo zypper install nano -vi
Если вы скопируете и запустите одну из приведенных выше команд в эмуляторе терминала Linux, сначала будет установлен редактор nano, а затем будет удален текстовый редактор vi для Linux. Убедитесь, что у вас есть необходимые разрешения, необходимые для удаления пакета.
18. Удаление пакетов в SUSE
Если вы хотите удалить приложения, которые больше не нужны, вы можете удалить их с вашего компьютера SUSE с помощью команды удаления zypper. В приведенном ниже примере пакет apache2 удаляется с помощью утилиты zypper.
$ sudo zypper rm apache2
$ sudo zypper remove apache2
Вы также можете использовать шаблоны для выбора пакетов. Следующая простая команда удалит все пакеты, образующие файловый сервер.
$ sudo zypper rm -t pattern file_server
$ sudo zypper remove -t pattern file_server
19. Удаление пакетов вместе с зависимостями
Приложения Linux используют комбинацию пакетов для обеспечения своих функций. Таким образом, ваша система часто будет содержать пакеты, используемые неустановленным пакетом и больше не нужные. Эту проблему можно обойти, удалив зависимости во время удаления пакета.
$ sudo zypper rm -u apache2
$ sudo zypper remove --clean-deps apache2
Таким образом, вы можете использовать опцию -u или -clean-deps команды удаления для удаления зависимостей пакетов в OpenSUSE или SUSE Enterprise.
20. Обновление системы с помощью Zypper
Следующие команды zypper покажут, как мы можем обновить все пакеты, установленные в нашем дистрибутиве SUSE. Для выполнения этой задачи нам понадобится использовать команду zypper update или up.
$ sudo zypper up
$ sudo zypper update
Когда вы запустите одну из приведенных выше команд, zypper обновит все ваши системные пакеты, если обновления доступны. Вы можете использовать эту команду в crontab Linux для автоматизации общесистемных обновлений. Если вы еще не знаете, как работает Cron, посмотрите наше руководство по командам crontab в Linux.
21. Установка зависимостей исходного кода и сборки
Если вы хотите создать приложение из исходного кода, вы можете использовать для этого zypper. Команда zypper source-install позволяет администраторам устанавливать исходный код, а также его зависимости для пакетов SUSE. Следующая команда показывает, как это сделать.
$ sudo zypper si mariadb
$ sudo zypper source-install mariadb
Приведенные выше команды загрузят все пакеты, необходимые для компиляции системы управления базами данных MariaDB для Linux. По умолчанию zypper установит исходные пакеты в папку /usr/src/packages/ вашей файловой системы.
22. Установка только исходного кода для пакетов
Если вы когда-нибудь окажетесь в ситуации, когда захотите загрузить только исходный код пакета, а не зависимости, используйте следующие простые команды.
$ sudo zypper in -D mariadb
$ sudo zypper install -D mariadb
Эти команды загрузят только исходные файлы для MariaDB.
23. Установка только зависимостей сборки
Аналогичным образом вы можете загрузить зависимости сборки для пакета, не устанавливая приложение сразу. Для этой задачи мы воспользуемся опцией -d программы zypper source-install. Посмотрите примеры ниже, чтобы понять, что мы имеем в виду.
$ sudo zypper si -d mariadb
$ sudo zypper source-install --build-deps-only mariadb
Эти команды также упрощают администраторам проверку того, какие пакеты необходимы для конкретного приложения. Это помогает настроить производительность системы и помогает в аудите.
24. Установка пакетов в тихом режиме
Тихий режим zypper позволяет администраторам подавлять вывод длинного текста на экран терминала. Это очень полезно, когда вы работаете на удаленных машинах или контейнерах Linux. Внимательно посмотрите на приведенный ниже пример, чтобы понять, как это работает на практике.
$ sudo zypper --quiet in mariadb
$ sudo zypper --quiet install mariadb
Когда вы запустите одну из приведенных выше команд, zypper загрузит и установит пакет MariaDB. Однако он не покажет никакой информации о пакете, а только запросит подтверждение.
25. Удаление пакетов в тихом режиме
Тихий режим работает так же для удаления программного обеспечения. Следующая простая команда удалит пакет apache2 с компьютера SUSE. Он не будет отображать никакой дополнительной информации о пакете и его зависимостях.
$sudo zypper -quiet rm apache2
$sudo zypper -quiet удалить apache2
Если вы также хотите пропустить этап подтверждения, используйте параметр -y или -no-confirm команды rm. Следующие команды zypper показывают это для пакета MariaDB.
$ sudo zypper --quiet rm -y mariadb
$ sudo zypper --quiet remove --no-confirm mariadb
26. Установка пользовательских приоритетов для репозиториев
Ранее мы показали, как отображать активные репозитории вашего компьютера SUSE в зависимости от их приоритетов. Теперь мы покажем вам, как установить собственные приоритеты для репозитория SUSE. Посмотрите пример ниже, чтобы узнать, как мы это делаем.
$ sudo zypper mr -p 100 repo-oss
$ sudo zypper modifyrepo --priority 100 repo-oss
Вы можете проверить эффект этой команды, выполнив приведенную ниже команду до и после выполнения приведенного выше примера.
$ sudo zypper lr -p
$ sudo zypper repos --priority
27. Включение кэширования файлов RPM в SUSE
Если вы хотите включить кэширование файлов rpm для своих репозиториев SUSE, используйте параметр -k или -keep-packages команды zyppermodifyrepo. Следующий пример включит кэширование RPM для всех активных репозиториев вашего компьютера с SUSE.
$ sudo zypper mr -ka
$ sudo zypper modifyrepo --keep-packages --all
Вы можете включить кэширование оборотов только для определенных репозиториев. Для этого укажите имя репо, используя его псевдоним, номер или URI.
$ sudo zypper mr -ka repo-non-oss
$ sudo zypper modifyrepo --keep-packages 6
28. Включение кэширования RPM только для удаленных репозиториев
Администраторы Suse могут включить кэширование файлов rpm только для удаленных репозиториев. Это довольно просто сделать, как показано в следующем примере команды.
$ sudo zypper mr -kt
$ sudo zypper mr --keep-packages --remote
Следующая команда включит кэширование rpm и автоматическое обновление для всех удаленных репозиториев SUSE.
$ sudo zypper mr -ktf
$ sudo zypper mr --keep-packages --remote --refresh
29. Установка LAMP Server в SUSE
Сервер LAMP представляет собой внутренний стек, состоящий из Linux(L), Apache(A), MySQL(M) и PHP(P). Вам не нужно устанавливать базу данных и серверные приложения по отдельности. Следующая простая команда позаботится об этом за вас.
$ sudo zypper in -t pattern lamp_server
$ sudo zypper install --type pattern lamp_server
Вы можете использовать одну из приведенных выше команд zypper для установки необходимых пакетов для вашего сервера LAMP. Это экономит время и усилия по настройке.
30. Переход на более раннюю версию пакетов в SUSE
Если вы хотите вернуться к более ранней версии пакета zypper, вы можете использовать опцию -oldpackage команды установки zypper. Внимательно посмотрите на приведенные ниже примеры, чтобы понять, как это работает.
$ sudo zypper in --oldpackage flash-player-gnome=11.2.202.233-15.1
$ sudo zypper install --oldpackage flash-player-gnome=11.2.202.233-15.1
Вы также можете использовать опцию -f или -force. Это заставит Zypper переустановить определенную версию.
$ sudo zypper in -f flash-player-gnome=11.2.202.233-15.1
$ sudo zypper install --force flash-player-gnome=11.2.202.233-15.1
31. Просмотр доступных обновлений
Администраторам необходимо тщательно управлять своими пакетами, чтобы поддерживать работоспособность машины. Команда zypper list-updates позволяет легко узнать, какие обновления доступны для вашего компьютера. Затем вы можете установить необходимые обновления в соответствии с вашими требованиями.
$ sudo zypper lu
$ sudo zypper list-updates
Однако приведенные выше команды zypper покажут только те обновления, которые можно легко установить, то есть пакеты, у которых нет проблем с зависимостями. Вы можете использовать параметр -all, чтобы отобразить все доступные обновления.
$ sudo zypper lu -a
$ sudo zypper list-updates --all
Используйте приведенные ниже команды для отображения обновлений пакетов, поступающих из определенного репозитория.
$ sudo zypper lu -r repo-oss
$ sudo zypper list-updates --repo repo-oss
32. Просмотр доступных исправлений
Вы можете использовать одну из следующих команд, чтобы просмотреть список всех доступных исправлений для вашего компьютера SUSE. Они будут отображать исправления, которые можно легко применить к вашей системе.
$ sudo zypper lp
$ sudo zypper list-patches
Если вы хотите просмотреть все доступные исправления, добавьте в свою команду параметр -a или -all.
$ sudo zypper lp -a
$ sudo zypper list-patches --all
Следующие команды zypper показывают, как получить список всех доступных исправлений по проблемам Bugzilla и номерам CVE.
$ sudo zypper list-patches --bugzilla=972197
$ sudo zypper list-patches --bugzilla=CVE-2016-2315
33. Установка патчей в SUSE
После просмотра исправлений, доступных для загрузки, вы можете установить их, введя следующую команду. При этом будут установлены все исправления, необходимые для вашего компьютера с OpenSUSE или SUSE Enterprise.
$ sudo zypper patch
Вы можете использовать опцию -auto-agree-with-licenses для установки исправлений без предварительного подтверждения.
$ sudo zypper patch --auto-agree-with-licenses
Добавьте флаг -D или -dry-run, чтобы увидеть, что будет делать Zypper без непосредственного применения изменений.
$ sudo zypper patch -D
$ sudo zypper patch -dry-run
34. Добавление пользовательских данных в журналы
Параметр global -userdata позволяет администраторам указать строку, которая записывается в файл журнала zypper. Это поможет вам отмечать и идентифицировать транзакции ZYpper в журнале и использовать их плагинами ZYpp.
$ sudo zypper --userdata security-patch patch
Приведенная выше команда добавит текст «security-patch» в файл журнала zypper для этой конкретной транзакции. Это поможет отслеживать рабочий процесс Zipper и документировать, почему были использованы определенные команды.
35. Использование Zypper в скриптах
Если вы хотите использовать zypper в сценариях оболочки Linux, используйте глобальную опцию -non-interactive перед подкомандой. Это подавляет любые запросы на подтверждение и, таким образом, работает плавно даже изнутри скриптов.
$ sudo zypper --non-interactive in nmap
$ sudo zypper --non-interactive install nmap
Кроме того, многие команды zypper предоставляют эту функцию с помощью опции -y или -no-confirm. Вы также можете использовать их при использовании zypper внутри сценариев оболочки.
$ sudo zypper install -y nmap
$ sudo zypper remove --no-confirm vim
36. Проверка зависимостей пакета с помощью Zypper
Вы можете использовать команду zypperverify, чтобы проверить, соблюдены ли все зависимости для установленных пакетов. В выводе также будет указано, следует ли устанавливать или удалять определенные пакеты для поддержания зависимостей.
$ sudo zypper ve
$ sudo zypper verify
Добавьте флаг -details к приведенным выше командам zypper, если вы хотите просмотреть дополнительную информацию о ваших зависимостях.
$ sudo zypper ve --details
$ sudo zypper verify --details
37. Установка патчей для Zypper
Параметр -updatestack-only команды zypper patch позволяет администраторам устанавливать исправления только для инструмента управления пакетами zypper. Это полезно, если ваша система управления пакетами не работает или отсутствуют важные пакеты.
$ sudo zypper patch --updatestack-only
Однако когда вы используете приведенную выше команду, она удаляет другие параметры команды, которые обычно обновляют любые другие репозитории Zypper.
38. Просмотр потерянных пакетов
Когда вы удаляете приложение, не удаляя пакеты, оно от них зависело, и эти зависимости становятся потерянными пакетами. Они не только занимают место на диске, но и могут вызвать другие проблемы. Вы можете просмотреть список всех таких пакетов SUSE, используя следующую простую команду.
$ sudo zypper packages --orphaned
Вывод этой команды может помочь пользователям определить, нужны ли им определенные пакеты или следует их вообще удалить.
39. Просмотр процессов, использующих удаленные файлы
Во время обновления или удаления пакетов zypper может удалить определенные файлы, которые все еще используются некоторыми другими процессами. Вы можете использовать команду zypper ps для получения списка таких процессов.
$ sudo zypper ps
Появится список процессов, использующих удаленные файлы, и имена файлов. Затем вы можете просто перезапустить процессы. Он будет использовать новые файлы после перезапуска. Используйте команду ниже, чтобы показать только системные процессы, использующие удаленные файлы.
$ sudo zypper ps-ss
40. Поиск пакетов по возможностям
Zypper упрощает поиск пакетов, предлагающих определенные функции. Просто используйте глобальную опцию What-provides, чтобы узнать, какой пакет предоставляет конкретный модуль.
$ sudo zypper what-provides 'perl(SVN::Core)'
Эта команда отобразит имя пакета, который предлагает модуль Perl «SVN::Core». Он очень похож на rpm -q -whatprovides. Однако, в отличие от команды rpm, версия zypper может показать, какие удаленные пакеты предоставляют желаемые возможности.
41. Просмотр необходимых/рекомендуемых модулей
Пользователи могут использовать команду zypper info, чтобы просмотреть, какие модули необходимы или рекомендуются для пакета SUSE. В следующем примере показаны необходимые модули для пакета MozillaFirefox.
$ sudo zypper if --requires MozillaFirefox
$ sudo zypper info --requires MozillaFirefox
Вам нужно будет использовать флаг -recommends для просмотра рекомендуемых модулей для MozillaFirefox. Команда ниже иллюстрирует это.
$ sudo zypper if --recommends MozillaFirefox
$ sudo zypper info --recommends MozillaFirefox
42. Использование оболочки Zypper
Оболочка zypper — это интерактивный интерфейс для менеджера пакетов ZYpp. Он позволяет администраторам управлять пакетами SUSE и настраивать их с помощью интуитивно понятного сеанса оболочки. Вы можете открыть оболочку Zypper с помощью следующей простой команды.
$ sudo zypper sh
$ sudo zypper shell
Здесь вы можете использовать стандартные команды Zypper для управления вашими приложениями. Просто введите help в этой интерактивной оболочке, если хотите просмотреть все доступные параметры и их функциональные возможности.
43. Генерация вывода XML для Zypper
Глобальная опция -x или -xmlout позволяет администраторам распечатывать выходные данные команд Zypper в формате XML. Это очень полезно для графических интерфейсов, использующих Zypper, или для целей документирования.
$ sudo zypper -x
$ sudo zypper --xmlout
Приведенные выше команды отобразят выходные данные в формате XML. Вы можете легко перенаправить вывод, сгенерированный приведенной выше командой, в файл для хранения.
$ sudo zypper --xmlout > output
44. Очистка кешей Zypper
Команда zypper clean помогает пользователям очистить локальный кеш для всех или выбранных репозиториев. Однако по умолчанию он будет очищать только кеши загруженных пакетов.
$ sudo zypper cc
$ sudo zypper clean
Следующая команда очистит как метаданные репозитория, так и кеш пакетов для репозитория repo-oss.
$ sudo zypper clean --all repo-oss
45. Обновление SUSE с помощью Zypper
Если вы хотите обновить дистрибутив OpenSUSE или SUSE Enterprise до новой версии, просто используйте подкоманду dist-upgrade программы zypper.
$ sudo zypper dup
$ sudo zypper dist-upgrade
Приведенная выше команда применяет состояние всех активных репозиториев и устанавливает, обновляет или понижает пакеты в зависимости от целевой версии вашего дистрибутива.
46. Импорт и экспорт репозиториев
Вы можете импортировать и экспортировать репозитории Zypper в файл и из него. Приведенные ниже команды показывают, как экспортировать все определенные репозитории в файл с именем backups/repos/foo.repo.
$ sudo zypper --export backups/repos/foo.repo
$ sudo zypper lr --export backups/repos/foo.repo
Затем вы можете импортировать репозитории с помощью команды zypper addrepo. Следующая команда показывает пользователям, как импортировать репозитории из файла, в который мы экспортировали.
$ sudo zypper ar backups/repos/foo.repo
$ sudo zypper addrepo backups/repos/foo.repo
47. Просмотр заблокированных пакетов
Zypper позволяет администраторам блокировать пакеты на своих машинах с SUSE. Это не позволяет никому удалять или обновлять эти пакеты до тех пор, пока не будут сняты блокировки. Вы можете использовать следующую команду zypper для отображения списка всех заблокированных пакетов.
$ sudo zypper ll
$ sudo zypper locks
Когда пользователь Linux попытается установить, обновить или удалить эти заблокированные пакеты, он получит диалоговое окно с указанием зависимости, решающей проблему. Таким образом, блокировки пакетов могут помочь пользователям поддерживать определенную версию пакетов для своей системы.
48. Добавление и удаление блокировок пакетов
Вы можете добавить новую блокировку пакета, используя команду zypper addlock. В следующем примере показано, как заблокировать основной репозиторий с помощью этого метода.
$ sudo zypper al MozillaFirefox
$ sudo zypper addlock MozillaFirefox
Чтобы снять блокировку с пакета, используйте команду Removelock. Также требуется номер блокировки, который можно получить, выполнив команду zypper locks.
$ sudo zypper rl MozillaFirefox
$ sudo zypper rl MozillaFirefox
49. Просмотр страницы справки
Страница справки команд терминала Linux предоставляет отличный способ поиска команды. Содержит обобщенную информацию обо всех возможных вариантах и их особенностях. Раздел справки в zypper можно вызвать, просто запустив команду zypper.
$ sudo zypper
В нем будут перечислены все доступные глобальные параметры и команды, предоставляемые менеджером пакетов. Вы можете получить справочную информацию для конкретных команд zypper, используя следующее.
$ sudo zypper help install
$ sudo zypper update --help
50. Просмотр справочной страницы
Страница руководства или руководство содержит подробную информацию о программах Linux. Отсюда вы можете узнать все, что вам нужно знать о команде. Справочную страницу zypper можно вызвать, используя следующее.
$ sudo man zypper
Будет распечатано руководство, показывающее доступные параметры командной строки и способы их использования.
Завершение мыслей
В этом руководстве мы рассмотрели множество полезных команд Zypper. Этого должно быть более чем достаточно для любого, кто впервые в жизни пробует SUSE. Более того, если вы профессиональный системный администратор, работающий с различными дистрибутивами Linux, это может сэкономить огромное количество времени. Поэтому обязательно добавьте это руководство в закладки на будущее и сообщите нам свои мысли об общем руководстве в разделе комментариев. Надеемся, что приведенные выше команды сделают ваш переход с другой системы на SUSE более плавным.