Zypper
Zypper to konsolowy menedżer pakietów. Po raz pierwszy pojawił się w openSUSE 10.2. W 10.3 przejął rolę ruga, konsolowego klienta ZMD. Jednak ze względu na dość ograniczoną funkcjonalność oraz kłopoty z rozwiązywaniem zależności, nie zdobył dużej popularności pośród zaawansowanych użytkowników. W 11.0 te niedogodności naprawiono, dzięki czemu zaawansowani użytkownicy już nie muszą instalować np. smarta do wygodnego zarządzania pakietami. Obecnie wielu użytkowników openSUSE nie wyobraża sobie zarządzania pakietami w systemie bez tego narzędzia.
Spis treści
Zypper na szybko
Najczęściej wykorzystywane komendy zyppepra:
zypper # wyświetli wszystkie informacje o użyciu zyppera zypper help search # wyświetli pomoc związaną z "search", czyli wyszukiwaniem zypper list-patches # wyświetli informację o poprawkach zypper patch # nałoży poprawki (czyli zpaczuje system) zypper search sqlite # wyszuka pakiety, których nazwa zawiera "sqlite" zypper remove sqlite2 # usunie sqlite2 zypper install sqlite3 # zainstaluje sqlite3 zypper install yast* # zainstaluje wszystkie pakiety, których nazwa zawiera 'yast*' zypper update # aktualizuje pakiety do ich najnowszych wersji - o ile to możliwe
lub krótko:
zypper zypper help search zypper lp zypper patch zypper se sqlite zypper rm sqlite2 zypper in sqlite3 zypper in yast* zypper up
Repozytoria
Wyświetlenie listy repozytoriów
zypper repos
lub krótko:
zypper lr
Można użyć także:
zypper lr -u # wyświetli informacje o położeniu (URI) repozytorium zypper lr -d # wyświetli dodatkowe informacje o repozytoriach zypper lr -P # wyświetli priorytet repozytoriów i posortuje je według niego zypper lr -e moja_lista # zapisze (wyeksportuje) repozytoria do pliku 'moja_lista.repo'
Dodawanie repozytoriów
Dodawanie repozytorium nie jest trudne, a dodawanym repozytoriom można dodać nazwę odpowiednią dla osobistych preferencji:
zypper addrepo położenie_repozytorium nazwa
lub krótko:
zypper ar położenie_repozytorium nazwa
Po dodaniu repozytoriów należy odświeżyć informację o nich za pomocą:
zypper refresh
lub krótko:
zypper ref
Przykładowa sesja
Poniżej dodano repozytorium zawierające stabilną wersję pakietu OpenOffice.org dla openSUSE 11.2.
m51gm:/home/stefan # zypper ar http://download.opensuse.org/repositories/OpenOffice.org:/STABLE/openSUSE_11.2/ OpenOffice112-stabilny Dodawanie repozytorium "OpenOffice112-stabilny" [zrobione] Repozytorium "OpenOffice112-stabilny" zostało dodane z powodzeniem Włączono: Tak Autoodświeżanie: Nie URI: http://download.opensuse.org/repositories/OpenOffice.org:/STABLE/openSUSE_11.2/
Informację o repozytoriach:
Klucze
Po dodaniu repozytoriów należy odświeżyć informację o dostępnych pakietach za pomocą:
zypper ref
Może też być konieczne zaakceptowanie klucza, którym zostało ono podpisane. Przykładowa sesja może wyglądać tak:
m51gm:/home/stefan # zypper ref Pobieranie metadanych repozytorium 'GNOME:Factory_112' [zrobione] Budowanie pamięci podręcznej repozytorium "GNOME:Factory_112" [zrobione] Otrzymano klucz podpisu dla nowego repozytorium lub pakietu: ID klucza: 58D8FF412E1EFA87 Nazwa klucza: KDE OBS Project <KDE@build.opensuse.org> Odcisk klucza: 0C4A3732F7B890502C66BE8458D8FF412E1EFA87 Repozytorium: KDE4:Factory_112
Czy (o)drzucić klucz, zaakceptować go (c)zasowo, czy zaakceptować (t)rwale? [o/c/t/?] (o): t Pobieranie metadanych repozytorium 'KDE4:Factory_112' [zrobione] Budowanie pamięci podręcznej repozytorium "KDE4:Factory_112" [zrobione]
Usuwanie repozytoriów
zypper removerepo
lub krótko:
zypper rr
Usuwać repozytoria można przy pomocy aliasu lub numeru, którym są one oznaczone.
Przykładowa sesja
Należy odszukać repozytoria do usunięcia:
m51gm:/home/stefan # zypper lr # | Alias | Nazwa | Włączono | Odśwież ---+-------------------------------------+----------------------------------+----------+-------- 4 | OpenOffice112-stabilny | OpenOffice112-stabilny | Tak | Nie
i usunąć je:
m51gm:/home/stefan # zypper rr OpenOffice112-stabilny Usuwanie repozytorium 'OpenOffice112-stabilny' [zrobione] Usunięto repozytorium 'OpenOffice112-stabilny'.
lub:
m51gm:/home/stefan # zypper rr 4 Usuwanie repozytorium 'OpenOffice112-stabilny' [zrobione] Usunięto repozytorium 'OpenOffice112-stabilny'.
Aktualizacja do nowszej wersji systemu zypperem
Polecenie to rozwiązuje zależności w przypadku pakietów w róznych wersjach, porzuconych, itp. Jest idealnym rozwiązaniem podczas zmiany wersji dystrybucji. W przypadku konfliktów zależności użytkownik zostanie zapytany, jak program powinien postąpić. Typowe użycie:
zypper ref # odświeży informacje o dostępnych pakietach zypper dup # pobierze i zainstaluje pakiety - UWAGA! zalecany, gdy trzeba zmienić dostawców pakietów
Temat jest szerzej opisany w artykule "aktualizacja systemu do nowszej wersji".
Exportowanie i importowanie listy repozytoriów
zypper repos --export
lub krótko:
zypper lr -e
Repoztoria można zapisać w postaci pliku, który można w dowolnej chwili wykorzystać lub przenieść na inną maszynę. Zapisuję się je (eksportuje) tak: (np. do pliku moje_repozytoria.repo)
# zypper lr --export moje_repozytoria.repo
A wczytuje ponownie (importuje):
# zypper ar moje_repozytoria.repo