Как да използвате Zypper от Opensuse и Suse

Продължаваме с мениджърите на пакети на най -важните дистрибуции в сървърния сектор, този път ще говорим за Zypper което работи с RPM и е създаден от SuSE за вашите частни и публични дистрибуции такива, каквито са SLE и Opensuse.
По личен начин Zypper Мисля, че той е един от най -добрите мениджъри, които съществуват днес. Suse е положил много усилия в Yast и Zypper, предлагайки 2 много стабилни и лесни за използване продукта, вярно е, че в миналото Zypper е имал много проблеми със зависимостите, но това свърши и дава изключителна производителност.
1 Как да използвате Zypper.
Ще започнем с най -основното, ако стартираме командата без никакъв аргумент, тя ще ни предложи основен резюме за това как да я използваме и списък с всички глобални опции не се плашете с количеството опции, които ще се погрижа да обясня най -полезните.
 jcarrillo @ linux-bp4q: ~> zypper Използване: zypper [--global-options] [--command-options] [аргументи] Глобални опции: --help, -h Помощ. --version, -V Извеждане на номера на версията. --promptids Извеждане на списък с потребителски подкани на zypper. --config, -c Използвайте зададен конфигурационен файл вместо стандартния. --userdata Потребителски идентификатор на транзакция, използван в историята и приставките. --quiet, -q Потиска нормалния изход, отпечатва само съобщения за грешки. --verbose, -v Увеличете многословието. - [no-] color Дали да се използват цветове в изхода, ако tty го поддържа. --no-shorv, -A Не съкращавайте текста в таблици. -стил на таблица, -s Таблица на стил (цяло число). --non-interactive, -n Не питайте нищо, използвайте отговорите по подразбиране автоматично. --non-interactive-include-reboot-patches Не третирайте кръпките като интерактивни, които имат зададен флаг rebootSuggest-flag. --xmlout, -x Превключване към XML изход. --ignore-unknown, -i Игнориране на неизвестни пакети. --reposd-dir, -D Използвайте алтернативна директория на файл с дефиниция на хранилище. --cache-dir, -C Използвайте алтернативна директория за всички кешове. --raw-cache-dir Използвайте алтернативна директория за кеш на необработени метаданни. --solv-cache-dir Използвайте алтернативна директория за кеширане на файлове на solv. --pkg-cache-dir Използвайте алтернативна директория за кеш на пакети.
Ако искаме помощ за аргумент, например инсталация, използваме.
 jcarrillo @ linux-bp4q: ~> zypper помощ при инсталиране (в) [опции] … Инсталирайте пакети с определени възможности или RPM файлове с определено местоположение. Възможността е NAME [.ARCH] [OP], където OP е една от <, =,>. Опции за команда: -от Избор на пакети от посоченото хранилище. -r, --repo Заредете само посоченото хранилище. -t, --type Тип пакет (пакет, кръпка, модел, продукт, srcpackage). По подразбиране: пакет. -n, --name Изберете пакети с обикновено име, а не по възможности. -C, --capability Изберете пакети по възможности. -f, --force Инсталиране, дори ако елементът вече е инсталиран (преинсталиране), понижен или променен доставчик или архитектура. --oldpackage Позволява да се замени по-нов елемент с по-стар. Удобен, ако правите откат. За разлика от --force, той няма да наложи преинсталиране. --replacefiles Инсталирайте пакетите, дори ако те заменят файлове от други, вече инсталирани пакети. По подразбиране е да се третират файловите конфликти като грешка. -сваляне при необходимост деактивира конфликта на файлове … 
За да търсим пакет, използваме опцията se или търсене, ще използваме примера Firefox.
 jcarrillo @ linux-bp4q: ~> zypper се firefox Зареждане на данни от хранилището … Четене на инсталирани пакети … S | Име | Резюме | Тип- + ------------------------------------ + ---------- --------------------------------------------- + ---- -------- i | Firefox | Уеб браузър | приложение | MozillaFirefox | Уеб браузър Mozilla Firefox | srcpackage i | MozillaFirefox | Уеб браузър Mozilla Firefox | пакет | MozillaFirefox-брандиране-openSUSE | брандиране на openSUSE на MozillaFirefox | srcpackage i | MozillaFirefox-брандиране-openSUSE | брандиране на openSUSE на MozillaFirefox | пакет | MozillaFirefox-брандиране-нагоре | Брандиране нагоре по веригата за Firefox | пакет | MozillaFirefox-сборни символи | Брейкпад изграждане на символи за Firefox | пакет | MozillaFirefox-devel | Devel пакет за Firefox | пакет | MozillaFirefox-преводи-често срещани | Общи преводи за Firefox | пакет | MozillaFirefox-преводи-други | Допълнителни преводи за Firefox | пакет | mhtml-firefox | Предоставя на Firefox съвместимост с MHTML уеб архив | srcpackage | mhtml-firefox | Предоставя на Firefox съвместимост с MHTML уеб архив | пакет
Можем да видим, че търси в списъка с хранилища и след това предлага всички пакети, които съдържат думата firefox, тъй като вече имам инсталиран firefox, изглежда "i", за да се разграничи.
Можем да търсим шаблони или групи пакети, например можем да инсталираме шаблона на лампата, който включва php, apache и mariadb, виждаме, че той включва много полезно описание за автоматизиране на инсталациите.
 zypper info -t pattern lamp_server Зареждане на данни в хранилището … Четене на инсталирани пакети … Информация за pattern lamp_server: ------------------------------- ----- Хранилище: openSUSE-13.2-Име на актуализация: lamp_server Версия: 20141007-5.1 Арка: x86_64 Доставчик: openSUSE Инсталиран: Не Видим за потребителя: Да Резюме: Web и LAMP сървър Описание: Софтуер за настройка на уеб сървър, който може да обслужва статично, динамично и интерактивно съдържание (като уеб магазин). Това включва Apache HTTP сървър, системата за управление на бази данни MySQL и скриптови езици като PHP, Python, Ruby on Rails или Perl. Съдържание: S | Име | Тип | Зависимост- + ------------------------------- + --------- + ----- ------ | apache2-mod_php5 | пакет | | php5-iconv | пакет | i | модели-openSUSE-база | пакет | i | apache2-prefork | пакет | | php5-dom | пакет | | php5-mysql | пакет | i | apache2 | пакет | | apache2-example-pages | пакет | | mariadb | пакет | | apache2-mod_perl | пакет | | php5-ctype | пакет | | apache2-doc | пакет | | yast2-http-сървър | пакет | | шаблони-openSUSE-лампа_сървър | пакет | 

1.1 Използвайте Zypper Shell


Подобно на yum можем да хвърлим a черупка от ципър ако ще работим дълго с него.
 # zypper shell ИЛИ # zypper sh zypper> помощ Използване: zypper [--global-options]
2 Управление на хранилища с Zypper
Можем да добавяме, премахваме, актуализираме и променяме официалните и външните системни хранилища, използвайки Zypper.

2.1 Хранилища за листинг


Можем да изброим хранилищата, като използваме аргумента repos или lr се показва списък, филтриран по активирано и ако са актуализирани.
 # zypper repos ИЛИ # zypper lr jcarrillo @ linux-bp4q: ~> zypper lr # | Псевдоним | Име | Активирано | Проверка на GPG | Опресняване --- + ----------------------------- + --------------- ---------------------- + --------- + ----------- + ----- --- 1 | download.opensuse.org-4.4 | openSUSE BuildService - LibreOffice | Да | г) Да | Да 2 | download.opensuse.org-Apps | openSUSE BuildService - GNOME: Приложения | Да | г) Да | Да 3 | download.opensuse.org-Extra | openSUSE BuildService - KDE: Екстра | Да | г) Да | Да 4 | download.opensuse.org-игри | openSUSE BuildService - Игри | Да | г) Да | Да 5 | download.opensuse.org-oss | Основно хранилище (източници) | Да | г) Да | Да 6 | ftp.gwdg.de-suse | Хранилище на Packman | Да | г) Да | Да 7 | игри: инструменти | игри: инструменти | Да | г) Да | Да 8 | geeko.ioda.net-amd-fglrx | AMD / ATI графични драйвери | Да | г) Да | Да 9 | google-chrome | google-chrome | Да | г) Да | Да 10 | хранилище на libdvdcss | хранилище на libdvdcss | Да | г) Да | Да 11 | openSUSE-13.2-0 | openSUSE-13.2-0 | Не ---- | Да 12 | репо-отстраняване на грешки | openSUSE-13.2-отстраняване на грешки | Не ---- | Да 13 | repo-debug-update | openSUSE-13.2-Update-Debug | Не ---- | Да 14 | repo-debug-update-non-oss | openSUSE-13.2-Update-Debug-Non-Oss | Не ---- | Да 15 | repo-non-oss | openSUSE-13.2-Non-Oss | Да | п) Да | Да 16 | репо-ос | openSUSE-13.2-Oss | Да | п) Да | Да 17 | репо-източник | openSUSE-13.2-Източник | Не ---- | Да 18 | репо-актуализация | openSUSE-13.2-Update | Да | г) Да | Да 19 | repo-update-non-oss | openSUSE-13.2-Update-Non-Oss | Да | п) Да | И това е
Ако е необходимо, можем да изброим по идеален URI, ако имаме локални хранилища и искаме да архивираме или актуализираме.
 # zypper lr -u # | Псевдоним | Име | Активирано | Опресняване | URI- + --------------------------- + ------------------- ----------------- + --------- + --------- + ------------ --------------------------------------------------- - 1 | openSUSE-13.2-0 | openSUSE-13.2-0 | Да | Не cd: ///? devices = / dev / disk / by-id / ata-VBOX_CD-ROM_VB2-01700376 2 | репо-отстраняване на грешки | openSUSE-13.2-отстраняване на грешки | Да | Да | http://download.opensuse.org/debug/distribution/13.2/repo/oss/ 3 | repo-debug-update | openSUSE-13.2-Update-Debug | Не Да | http://download.opensuse.org/debug/update/13.2/ 4 | repo-debug-update-non-oss | openSUSE-13.2-Update-Debug-Non-Oss | Не Да | http://download.opensuse.org/debug/update/13.2-non-oss/ 5 | repo-non-oss | openSUSE-13.2-Non-Oss | Да | Да | http://download.opensuse.org/distribution/13.2/repo/non-oss/ 6 | репо-ос | openSUSE-13.2-Oss | Да | Да | http://download.opensuse.org/distribution/13.2/repo/oss/ 7 | репо-източник | openSUSE-13.2-Източник | Не Да | http://download.opensuse.org/source/distribution/13.2/repo/oss/ 8 | репо-актуализация | openSUSE-13.2-Update | Да | Да | http://download.opensuse.org/update/13.2/ 9 | repo-update-non-oss | openSUSE-13.2-Update-Non-Oss | Да | Да | http://download.opensuse.org/update/13.2-non-oss/ 
Те трябва да знаят, че хранилищата се управляват по приоритет, например имаме пакета mysql в местния и официалния REPO, за да спестим честотна лента, добра практика е да предлагаме по -висок приоритет на местните REPO. Можем да изброим REPO по приоритет с -P
 # zypper lr -P # | Псевдоним | Име | Активирано | Опресняване | Приоритет- + --------------------------- + ------------------- ----------------- + --------- + --------- + --------- 1 | openSUSE-13.2-0 | openSUSE-13.2-0 | Да | Не 99 2 | репо-отстраняване на грешки | openSUSE-13.2-отстраняване на грешки | Да | Да | 99 3 | repo-debug-update | openSUSE-13.2-Update-Debug | Не Да | 99 4 | repo-debug-update-non-oss | openSUSE-13.2-Update-Debug-Non-Oss | Не Да | 99 5 | repo-non-oss | openSUSE-13.2-Non-Oss | Да | Да | 85 6 | репо-ос | openSUSE-13.2-Oss | Да | Да | 99 7 | репо-източник | openSUSE-13.2-Източник | Не Да | 99 8 | репо-актуализация | openSUSE-13.2-Update | Да | Да | 99 9 | repo-update-non-oss | openSUSE-13.2-Update-Non-Oss | Да | Да | 99 

2.2 Обновяване на хранилища


Имаме глобална команда за опресняване на всички едновременно или опция за конкретна
В случай на опресняване всички използваме ref или refresh
 # zypper refresh ИЛИ # zypper ref Хранилището „openSUSE-13.2-0“ е актуално. Хранилището „openSUSE-13.2-Debug“ е актуално. Хранилището „openSUSE-13.2-Non-Oss“ е актуално. Хранилището „openSUSE-13.2-Oss“ е актуално. Хранилището „openSUSE-13.2-Update“ е актуално. Хранилището „openSUSE-13.2-Update-Non-Oss“ е актуално. Всички хранилища са обновени. В случай на опресняване на конкретен, например Non-oss # zypper refresh repo-non-oss Хранилище „openSUSE-13.2-Non-Oss“ е актуално. Посочените хранилища са опреснени.
Понякога zypper не позволява опресняване чрез сертификати за сигурност, които в този случай можем да принудим с -f
 # zypper ref -f repo-non-oss Принуждаване на сурово опресняване на метаданни Извличане на хранилище „openSUSE-13.2-Non-Oss“ метаданни… [направено] Принудително изграждане на кеш на хранилище Изграждане на хранилище „openSUSE-13.2-Non-Oss“ кеш… [направено] Посочените хранилища са опреснени. 

2.3 Промяна на хранилищата


Когато говорим за промяна, имам предвид активиране или деактивиране на REPO или промяна на неговия приоритет, преди да променяме всяко REPO, трябва да знаем, че в Zypper всяко хранилище има уникален идентификатор, който се използва за активиране на REPO, можем да изброим неговия номер с zypper lr .
 # zypper lr # | Псевдоним | Име | Активирано | Опресняване- + --------------------------- + ------------------- ----------------- + --------- + -------- 1 | openSUSE-13.2-0 | openSUSE-13.2-0 | Да | № 2 | репо-отстраняване на грешки | openSUSE-13.2-отстраняване на грешки | Да | Да 3 | repo-debug-update | openSUSE-13.2-Update-Debug | Не Да 4 | repo-debug-update-non-oss | openSUSE-13.2-Update-Debug-Non-Oss | Не Да 5 | repo-non-oss | openSUSE-13.2-Non-Oss | Да | Да 6 | репо-ос | openSUSE-13.2-Oss | Не Да 7 | репо-източник | openSUSE-13.2-Източник | Не Да 8 | репо-актуализация | openSUSE-13.2-Update | Да | Да 9 | repo-update-non-oss | openSUSE-13.2-Update-Non-Oss | Да | И това е
В случай на деактивиране на ID 6, който би бил Oss, използваме
 # zypper mr -d 6 Хранилището 'repo -oss' е успешно деактивирано.
За да го активираме отново, използваме -e пример
 # zypper mr -e 6 Хранилището 'repo -oss' е успешно активирано. 
Отиваме до по-разширени опции, например активираме автоматичното опресняване и поставяме приоритет 85 на репото без oss.
 # zypper mr -rk -p 85 repo-non-oss Приоритетът на хранилището "repo-non-oss" е оставен непроменен (85) Няма нищо за промяна за хранилището "repo-non-oss".
Или можем да ограничим кеширането на всички репо в случай, че имаме недостиг на място.
 # zypper mr -Ka Кеширането на RPM файлове е деактивирано за хранилище „openSUSE-13.2-0“. Кеширането на RPM файлове е деактивирано за хранилището „repo-debug“. Кеширането на RPM файлове е деактивирано за хранилището „repo-debug-update“. Кеширането на RPM файлове е деактивирано за хранилище „repo-debug-update-non-oss“. Кеширането на RPM файлове е деактивирано за хранилище „repo-non-oss“. Кеширането на RPM файлове е деактивирано за хранилището „repo-oss“. Кеширането на RPM файлове е деактивирано за хранилището „repo-source“. Кеширането на RPM файлове е деактивирано за „repo-update“ на хранилището. Кеширането на RPM файлове е деактивирано за хранилището „repo-update-non-oss“.
В случай, че искаме да ги активираме отново, използваме.
 # zypper mr -ka Кеширането на RPM файлове е активирано за хранилище „openSUSE-13.2-0“. Кеширането на RPM файлове е активирано за хранилище „repo-debug“. Кеширането на RPM файлове е активирано за хранилището „repo-debug-update“. Кеширането на RPM файлове е активирано за хранилище „repo-debug-update-non-oss“. Кеширането на RPM файлове е активирано за хранилище „repo-non-oss“. Кеширането на RPM файлове е активирано за хранилище „repo-oss“. Кеширането на RPM файлове е активирано за хранилище „repo-source“. Кеширането на RPM файлове е активирано за „repo-update“ на хранилището. Кеширането на RPM файлове е активирано за хранилище „repo-update-non-oss“.
Но дори можем да филтрираме между локално и отдалечено репо и е възможно да деактивираме кеширането само на отдалечено репо.
 # zypper mr -Kt Кеширането на RPM файлове е активирано за хранилище 'repo -debug'. Кеширането на RPM файлове е активирано за хранилището „repo-debug-update“. Кеширането на RPM файлове е активирано за хранилище „repo-debug-update-non-oss“. Кеширането на RPM файлове е активирано за хранилище „repo-non-oss“. Кеширането на RPM файлове е активирано за хранилището „repo-oss“. Кеширането на RPM файлове е активирано за хранилище „repo-source“. Кеширането на RPM файлове е активирано за „repo-update“ на хранилището. Кеширането на RPM файлове е активирано за хранилище „repo-update-non-oss“.
За да ги разрешим отново, използваме почти същия аргумент, но с K в малки букви.
 # zypper mr -kt Кеширането на RPM файлове е активирано за хранилище 'repo -debug'. Кеширането на RPM файлове е активирано за хранилището „repo-debug-update“. Кеширането на RPM файлове е активирано за хранилище „repo-debug-update-non-oss“. Кеширането на RPM файлове е активирано за хранилище „repo-non-oss“. Кеширането на RPM файлове е активирано за хранилището „repo-oss“. Кеширането на RPM файлове е активирано за хранилище „repo-source“. Кеширането на RPM файлове е активирано за „repo-update“ на хранилището. Кеширането на RPM файлове е активирано за хранилище „repo-update-non-oss“.

2.4 Добавяне на REPO с Zypper


Ще добавим хранилища, не бъркайте с активиране, препоръчително е да добавите REPO с текущата проверка на GPG, за да избегнете жертви на атаки.
Нека започнем, като добавим официално REPO, но от старата версия на Opensuse.
 # zypper ar http://download.opensuse.org/update/11.1/ update Добавяне на хранилище „update“…. [готово] „Update“ на хранилището успешно добавено Разрешено: Да Autorefresh: Не GPG проверка: Да URI: http: // download.opensuse.org/update/11.1/
Обърнете внимание, че Zypper ни дава обобщение на REPO, след като опцията GPG е добавена важно.
В случай, че се заплетете с подобни имена на REPO, можем да променим неговия псевдоним, за да го идентифицираме по -добре, да речем, че искаме да променим името на репо 10 на upd8, първо трябва да знаем неговия идентификатор в моя случай е 10 и след това стартираме
 # zypper nr 10 upd8 „Актуализация“ на хранилището, преименувано на „upd8“.

2.5 Премахване на хранилища


За премахване използваме rr или removerepo, след изтриване на REPO няма да можем да го възстановим, без да знаем адреса на източника му, бъдете внимателни тук.
 # zypper rr upd8 # Премахване на хранилище „upd8“… [направено] Хранилището „upd8“ е премахнато. 
3 Управление на пакети с Zypper
С Zypper можем да улесним много от функциите на RPM, ще говорим за цялото му управление на пакети.

3.1 Инсталирайте пакет с Zypper


За да инсталираме нов пакет, който използваме или инсталираме, ще направим примера с браузъра firefox.
 # zypper в MozillaFirefox Зареждане на данни в хранилището … Четене на инсталирани пакети … Разрешаване на зависимости от пакети … Следните 128 НОВИ пакета ще бъдат инсталирани: adwaita-icon-theme at-spi2-atk-common at-spi2-atk-gtk2 at-spi2- core cantarell-fonts cup-libs desktop-file-utils fontconfig gdk-pixbuf-query-loaders gstreamer gstreamer-fluendo-mp3 gstreamer-plugins-base gtk2-branding-openSUSE gtk2-data gtk2-immodule-amharic gtk2-imutut immodule-thai gtk2-immodule-vietnamese gtk2-metatheme-adwaita gtk2-theming-engine-adwaita gtk2-tools gtk3-data gtk3-metatheme-adwaita gtk3-tools hicolor-icon-theme hicolor-icon-theme-branding-openSUSE2 1_0-0 libatk-мост-2_0-0 libatspi0 libcairo2 libcairo-gobject2 libcanberra0 libcanberra-gtk0 libcanberra-gtk2-модул libcanberra-gtk3-0 libcanberra-gtk3-модул libcanberra-gtk-модул-librec-модул libcanberra-gtk3-0 libcanberra-gtk3-module libcanberra-gtk-module-commonautel0cddacol_interface1 libdrrano_drum_ordrano02_db_interface libFLAC8 libfreebl3 libgbm1 lib gdk_pixbuf-2_0-0 libgraphite2-3 libgstapp-1_0-0 libgstaudio-1_0-0 libgstpbutils-1_0-0 libgstreamer-1_0-0 libgstriff-1_0-0 libgsttag-1_0-0 libgstvideo-1-00 liggstvideo-1-0 2_0-0 libgtreamer 2_0-0 libgtk-3-0 libharfbuzz0 libjasper1 libjbig2 libjpeg.webp8 libjson-с2 liblcms2-2 libLLVM libltdl7 libnsssharedhelper0 libogg0 liborc-0_4-0 libpackagekit-glib2-18 libpango-1_0pix3-0 libpciasccess0 libfpulto1_0pix1-0 libpciasccess0 libilepulto1_0pix1-0 libpciasccess0 libfpulto1_0pix1-0 libpciasccess0 libfpulto libstartup-известяване и 1-0 libtheoradec1 libtheoraenc1 libtiff5 libvisual libvorbis0 libvorbisenc2 libvorbisfile3 libwayland-client0 libwayland-cursor0 libwayland-server0 libX11-xcb1 libxcb-dri2-0 libxcb-dri3-0 libxcb-glbx0 libcx present0 libxcb-glbx0 libcx направи sync1 libxcb-util1 libxcb-xfixes0 libXcomposite1 libXcursor1 libXdamage1 libXevie1 libXfixes3 libXft2 libXi6 libXinerama1 libxkbcommon-0_4_3 libXrandr2 libXrender1 libxshmfence1 libXtst6 tablefXvm libthemetaxGL0 Tablewamex-GL86 обща tablewa-GL0M Mesapiillax1-MesagGL086 libitamex-GLM0 Mesa irefox MozillaFirefox-branding-openSUSE mozilla-nss mozilla-nss-certs PackageKit-gstreamer-plugin pango-tools sound-theme-freedesktop Следните 10 препоръчани пакета бяха избрани автоматично: gstreamer-fluendo-mp3 gtk2-branding-openSUSE gtk2-data gtk2 -immodule-amharic gtk2-immodule-inuktitut gtk2-immodule-thai gtk2-immodule-vietnamese libcanberra0 libpulse0 PackageKit-gstreamer-plugin 128 нови пакета за инсталиране. Общ размер за изтегляне: 77.2 MiB. Вече кеширано: 0 B След операцията ще бъдат използвани допълнителни 200,0 MiB. Продължи? [г / н /? показва всички опции] (y): y Извличане на пакет cantarell-fonts-0.0.16-1.1.noarch (1/128), 74.1 KiB (115.6 KiB разопакован) Извличане: cantarell-fonts-0.0.16-1.1.noarch.rpm …. [Готово (63.4 KiB / s)] Извличане на пакет hicolor-icon-theme-0.13-2.1.2.noarch (2/128), 40.1 KiB (50.5 KiB разопакован) Извличане: hicolor-icon-theme-0.13-2.1 .2.noarch.rpm… [направено] Извличане на пакет sound-theme-freedesktop-0.8-7.1.2.noarch (3/128), 372.6 KiB (460.3 KiB разопакован)
Можем дори да инсталираме версия на конкретен пакет.
 # zypper в 'gcc <5.1' Зареждане на данни от хранилището … Четене на инсталирани пакети … Разрешаване на зависимости от пакети … Следните 13 НОВИ пакета ще бъдат инсталирани: cpp cpp48 gcc gcc48 libasan0 libatomic1-gcc49 libcloog-isl4 libgomp1-gcc49 libisl10 libitm1-gcc49 libmp.webpc libmp.webpfr4 libtsan0-gcc49 13 нови пакета за инсталиране. Общ размер за изтегляне: 14,5 MiB. Вече кеширано: 0 B След операцията ще бъдат използвани допълнителни 49,4 MiB. Продължи? [г / н /? показва всички опции] (y): y 
Тъй като знаем, че пакетите са предварително компилирани за различни архитектури, можем да инсталираме конкретна версия, може да бъде полезно, ако имаме 64 бита, но софтуерът работи само под 32 бита, най-добре е да направите PATH за 32 бита и след това да инсталирате пакета.
 # zypper в gcc.i586 Зареждане на данни в хранилището … Четене на инсталирани пакети … Разрешаване на зависимостите на пакетите … Следните 13 НОВИ пакета ще бъдат инсталирани: cpp cpp48 gcc gcc48 libasan0 libatomic1-gcc49 libcloog-isl4 libgomp1-gcc49 libisl10 libitm1-gcc49 libmp.webpc libmc3 -gcc49 libmp.webpc3 libmp.webpfr4 -gcc49 13 нови пакета за инсталиране. Общ размер за изтегляне: 14,5 MiB. Вече кеширано: 0 B След операцията ще бъдат използвани допълнителни 49,4 MiB. Продължи? [г / н /? показва всички опции] (y): y Извличане на пакет libasan0-4.8.3 + r212056-2.2.4.x86_64 (1/13), 74.2 KiB (166.9 KiB разопакован) Извличане: libasan0-4.8.3 + r212056-2.2.4 .x86_64.rpm… [направено (79.2 KiB / s)] Извличане на пакет libatomic1-gcc49-4.9.0 + r211729-2.1.7.x86_64 (2/13), 14.3 KiB (26.1 KiB разопакован) Извличане: libatomic1-gcc49- 4.9.0 + r211729-2.1.7.x86_64.rpm… [направено (55.3 KiB / s)]
За да инсталираме версия и архитектура, която използваме.
 # zypper в 'gcc.i586 <5.1' Зареждане на данни в хранилището … Четене на инсталирани пакети … Разрешаване на зависимости от пакети ……..
Възможно е да инсталирате пакет от конкретно REPO. Пример Ще потърся пакета libxinel от amarok REPO за по -добра съвместимост.
 # zypper в amarok upd: libxine1 Зареждане на данни в хранилището … Четене на инсталирани пакети … Разрешаване на зависимости от пакети … Следните 202 НОВИ пакета ще бъдат инсталирани: amarok bundle-lang-kde-en clamz cup-libs enscript fontconfig gdk-pixbuf-query- зареждащи устройства ghostscript-fonts-std gptfdisk gstreamer gstreamer-plugins-base hicolor-icon-theme hicolor-icon-theme-branding-openSUSE htdig hunspell hunspell-tools icoutils ispell ispell-американски kde4-файлова система kdebase4-runtime kDE -kdelibs4 kdelibs4-branding-openSUSE kdelibs4-core kdialog libakonadi4 l… 
Възможно е да се използват заместващи символи за търсене
 # zypper в php5 * Зареждане на данни в хранилището … Четене на инсталирани пакети … Разрешаване на зависимости от пакети … Проблем: php5-5.6.1-18.1.x86_64 изисква smtp_daemon, но това изискване не може да бъде предоставено на деинсталиращи се доставчици: exim-4.83-3.1.8.x86_64 [ openSUSE-13.2-0] postfix-2.11.0-5.2.2.x86_64 [openSUSE-13.2-0] sendmail-8.14.9-2.2.2.x86_64 [openSUSE-13.2-0] exim-4.83-3.1.8. i586 [repo-oss] msmtp-mta-1.4.32-2.1.3.i586 [repo-oss] postfix-2.11.0-5.2.2.i586 [repo-oss] sendmail-8.14.9-2.2.2. i586 [repo-oss] exim-4.83-3.1.8.x86_64 [repo-oss] msmtp-mta-1.4.32-2.1.3.x86_64 [repo-oss] postfix-2.11.0-5.2.2.x86_64 [ repo-oss] sendmail-8.14.9-2.2.2.x86_64 [repo-oss] postfix-2.11.3-5.5.1.i586 [repo-update] postfix-2.11.3-5.5.1.x86_64 [repo- актуализация] Решение 1: Ще бъдат направени следните действия: не инсталирайте php5-5.6.1-18.1.x86_64 не инсталирайте php5-pear-Auth_SASL-1.0.6-7.1.3.noarch не инсталирайте php5-pear-Horde_Http- 2.0.1-6.1.3.noarch не инсталирайте php5-pear-Horde_Image-2.0.1-6.1.3.noarch не инсталирайте php5-pear-Hor de_Kolab_Format-2.0.1-6.1.3.noarch не инсталирайте php5-pear-Horde_Ldap-2.0.1-6.1.3.noarch не инсталирайте php5-pear-Horde_Memcache-2.0.1-7.1.3.noarch не инсталирайте php5-pear-Horde_Mime-2.0.2-6.1.3.noarch не инсталирайте php5-pear-Horde_Oauth-2.0.0-6.1.3.noarch не инсталирайте php5-pear-Horde_Pdf-2.0.1-6.1.3. ноарх ….
Както споменах по-рано, възможно е да се използват групи например за инсталиране на целия стек от сървър за лампи
 # zypper в -t модел lamp_server, добавящ данни от хранилището … Четене на инсталирани пакети … Разрешаване на зависимости от пакети … Следните 29 НОВИ пакета ще бъдат инсталирани: apache2 apache2-doc apache2-пример-страници apache2-mod_perl apache2-prefork модели-openSUSE-lamp_server perl-Data-Dump perl-Encode-Locale perl-File-Listing perl-HTML-Parser perl-HTML-Tagset perl-HTTP-Cookies perl-HTTP-Daemon perl-HTTP-Date perl-HTTP-Съобщение perl-HTTP-Договаряне perl-IO-HTML perl-IO-Socket-SSL perl-libwww-perl perl-Linux-Pid perl-LWP-MediaTypes perl-LWP-Protocol-https perl-Net-HTTP perl-Net-SSLeay perl-Tie-IxHash perl -TimeDate perl-URI perl-WWW-RobotRules yast2-http-server Следният НОВ модел ще бъде инсталиран: lamp_server Следните 10 препоръчани пакета бяха избрани автоматично: apache2 apache2-doc apache2-example-pages apache2-mod_perl apache2-prefork perl-Data-Dump perl-IO-Socket-SSL perl-LWP-Protocol-https perl-TimeDate yast2-http-server 29 нови пакета за инсталиране. Общ размер за изтегляне: 7.2 MiB. Вече кеширано: 1.2 MiB След операцията ще бъдат използвани допълнителни 34.7 MiB. Продължи? [г / н /? показва всички опции] (и):
Една възможна и полезна опция е да инсталирате нов пакет и да премахнете алтернативата му, например инсталирайте nano и премахнете vi.
 # zypper в nano -vi Зареждане на данни в хранилището … Четене на инсталирани пакети … '-vi' не е намерено в имената на пакетите. Изпробвайте възможностите. Разрешаване на зависимости от пакети … Следните 2 НОВИ пакета ще бъдат инсталирани: nano nano-lang Следният пакет ще бъде ИЗВЪРНЕН: vim Следният препоръчителен пакет беше автоматично избран: nano-lang 2 нови пакета за инсталиране, 1 за премахване. Общ размер за изтегляне: 550.0 KiB. Вече кеширано: 0 B След операцията, 463,3 KiB ще бъдат освободени. Продължи? [г / н /? показва всички опции] (и):… 
Ако сме изтеглили RPM пакет отвън и искаме да инсталираме с zypper, за да разрешим неговите зависимости (препоръчително), стартираме
 zypper в teamviewer. 32bit libICE6-32bit libjpeg.webp62-32bit libpng12-0-32bit libpng16-16-32bit libSM6-32bit libuuid1-32bit libX11-6-32bit libXau6-32bit libxcb1-32bit libXdamage1-32bit libXeX632323232323232323232323232323232323232323232323232323232323232323232323232-32bit libXtst6-32bit libz1-32bit teamviewer Следният препоръчан пакет беше автоматично избран: alsa-oss-32bit 24 нови пакета за инсталиране. Общ размер за изтегляне: 41.2 MiB. Вече кеширано: 0 B След операцията ще бъдат използвани допълнителни 119,7 MiB. Продължи? [г / н /? показва всички опции] (и):… 

3.2 Премахнете пакетите със Zypper


За да премахнем пакети, можем да използваме zypper remove или просто rm например, ще премахнем пакета apache2.
 # zypper премахване на apache2 или # zypper rm apache2 Зареждане на данни в хранилището … Четене на инсталирани пакети … Разрешаване на зависимости от пакети … Следните 2 пакета ще бъдат ИЗТРЕЩЕНИ: apache2 apache2-prefork 2 пакета за премахване. След операцията 4,2 MiB ще бъдат освободени. Продължи? [г / н /? показва всички опции] (y): y (1/2) Премахване на apache2-2.4.10-19.1… [направено] (2/2) Премахване на apache2-prefork-2.4.10-19.1…. [направено] 

3.3 Актуализиране на пакети с помощта на Zypper


Можем да използваме универсалната команда zypper up, за да актуализираме всичко.
 # zypper up ИЛИ # zypper актуализация Зареждане на данни в хранилището … Четене на инсталирани пакети … Няма какво да се прави.
Или надстройте само определен пакет, идеален в контролирана производствена среда.
 # zypper up apache2 openssh Зареждане на данни в хранилището … Четене на инсталирани пакети … Няма кандидат за актуализация за 'apache2-2.4.10-19.1.x86_64'. Най -високата налична версия вече е инсталирана. Няма кандидат за актуализация за „openssh-6.6p1-5.1.3.x86_64“. Най -високата налична версия вече е инсталирана. Разрешаване на зависимостите на пакетите … Няма какво да се прави.
Всеки път, когато стартираме zypper, той проверява дали пакетът е инсталиран, ако е инсталиран, той проверява дали е актуализиран.
 # zypper в mariadb Зареждане на данни в хранилището … Четене на инсталирани пакети … 'mariadb' вече е инсталиран. Няма кандидат за актуализация за „mariadb-10.0.13-2.6.1.x86_64“. Най -високата налична версия вече е инсталирана. Разрешаване на зависимостите на пакетите … Няма какво да се прави.
АКО имаме проблеми, когато инсталираме пакет, който е много рядък, можем да се опитаме да инсталираме директно от източника в най -чистия стил на Linux. Използваме zypper source-install или zypper si.
 # zypper si mariadb Четене на инсталирани пакети … Зареждане на данни в хранилището … Разрешаване на зависимости от пакети … Следните 36 НОВИ пакета ще бъдат инсталирани: autoconf automake bison cmake cpp cpp48 gcc gcc48 gcc48-c ++ gcc-c ++ libaio-devel libarchive13 libasan0 libatomic1-gcc49 libcloog -isl4 libedit-devel libevent-devel libgomp1-gcc49 libisl10 libitm1-gcc49 libltdl7 libmp.webpc3 libmp.webpfr4 libopenssl-devel libstdc ++ 48-devel libtool-libtsan4 devel zcib config tavel-devel zcib сайт config-devel-devel-devel-devel -devel Следният пакет източник ще бъде инсталиран: mariadb 36 нови пакета за инсталиране, 1 пакет източник. Общ размер за изтегляне: 71,5 MiB. Вече кеширано: 129,5 KiB След операцията ще бъдат използвани допълнителни 183,9 MiB. Продължи? [г / н /? показва всички опции] (y): y
4 Използвайте Zypper в автоматизирани скриптове.
Всички предишни команди се нуждаят от взаимодействие с потребителя и няма да можем да ги добавим към скриптове, но не се притеснявайте, че ще говорим какви опции имаме на разположение.

4.1 Инсталирайте пакет за скриптове.


Използваме опцията --non-interactive и ще продължим с примера mariadb.
 # zypper --non-interactive в mariadb Зареждане на данни в хранилището … Четене на инсталирани пакети … 'mariadb' вече е инсталиран. Няма кандидат за актуализация за „mariadb-10.0.13-2.6.1.x86_64“. Най -високата налична версия вече е инсталирана. Разрешаване на зависимости от пакети … Няма какво да се прави.

4.2 Премахване на пакет за скриптове.


Използваме същата опция, но с rm.
 # zypper --non-interactive rm mariadb Зареждане на данни в хранилището … Четене на инсталирани пакети … Разрешаване на зависимости от пакети … Следният пакет ще бъде ИЗВЪРНЕН: пакет mariadb 1 за премахване. След операцията 71,8 MiB ще бъдат освободени. Продължи? [г / н /? показва всички опции] (y): y (1/1) Премахване на mariadb-10.0.13-2.6.1… [готово] 
5 Изчистете кеша с Zypper
По подразбиране zypper има квота за кеша, когато тази квота достигне върха, новият кеш замества стария, но ако имаме проблеми с инсталирането на пакет, той може да е повреден по време на изтеглянето и е препоръчително да почистите кеша.

5.1 Изчистване на REPO кеша


Тук изтриваме само кеша, изтеглен от REPO.
 # zypper clean Всички хранилища са почистени.

5.2 Изчистете метаданните и кеша


Почистването на метаданните може да реши някои проблеми.
 # zypper clean -a Всички хранилища са почистени. 
6 Актуализирайте Distro с помощта на Zypper
И накрая, възможно е да се актуализира до нова версия на SuSE, например имаме OpenSuSE 12.3 и искаме да мигрираме към 13.2, който стартирахме.
 # zypper dist-upgrade На път сте да извършите надстройка за разпространение с всички активирани хранилища. Уверете се, че тези хранилища са съвместими, преди да продължите. Вижте „man zypper“ за повече информация относно тази команда. Изграждане на хранилище „openSUSE-13.2-0“ кеш… [направено] Извличане на хранилище „openSUSE-13.2-Отстраняване на грешки“ метаданни… [направено] Изграждане на хранилище „openSUSE-13.2-Отстраняване на грешки“ кеш … [направено] Извличане на хранилище „openSUSE-13.2-Non -Ос 'метаданни … [Готово] Изграждане на хранилище' openSUSE-13.2-Non-Oss 'кеш … [направено] 
Хареса ли ви и помогнахте на този урок?Можете да възнаградите автора, като натиснете този бутон, за да му дадете положителна точка

Така ще помогнете за развитието на сайта, сподели с приятелите си

wave wave wave wave wave