Zypper

Z openSUSE wiki

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.

Grafika:Uwaga.png Uwaga: Poniższy opis został sprawdzony na wersji 11.2. Użycie zyppera w poprzednich wersjach openSUSE może być inne.

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, o ile to możliwe, wersji

Lub w skrócie (te same polecenia jak powyżej):

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

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 repozytorim możemy dodać taką nazwę jaka dla nas będzie czytelna.

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łądowa 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 jest ono oznaczone.

Przykładowa sesja

Odszukujemy repozytorium, które chcemu usunąć:

m51gm:/home/stefan # zypper lr
#  | Alias                               | Nazwa                            | Włączono | Odśwież
---+-------------------------------------+----------------------------------+----------+--------
4  | OpenOffice112-stabilny              | OpenOffice112-stabilny           | Tak      | Nie    

i usuwamy je:

m51gm:/home/stefan # zypper rr 4
Usuwanie repozytorium 'OpenOffice112-stabilny' [zrobione]
Usunięto repozytorium 'OpenOffice112-stabilny'.

lub:

m51gm:/home/stefan # zypper rr OpenOffice112-stabilny
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

Exportowanie i importowanie listy repozytoriów

zypper repos --export 

lub

zypper lr -e

Repoztoria można zapisać w postaci pliku, który można w dowolnej chwili wykorzystać lub przenieść na inną maszynę. Zapisujemy je (eksportujemy) np. do pliku moje_repozytoria.repo:

# zypper lr --export moje_repozytoria.repo

A wczytujemy ponownie (importujemy):

# zypper ar moje_repozytoria.repo

Więcej informacji