Zypper

Skocz do: nawigacja, szukaj
32px-Icon-obsolete.png Informacje zawarte w tym artykule lub sekcji dotyczą wersji '11.2' i są już nieaktualne!
Zajrzyj na stronę dyskusji tego artykułu aby uzyskać więcej informacji.

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.

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

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

Więcej informacji