I tilfælde af SUSE Linux (openSUSE, SUSE Enterprise og derivater) er zypper og YaST pakkehåndtering. Mens YaST (endnu et installationsværktøj) er til administration, opsætning og konfiguration af SUSE Linux, er zypper CLI-grænsefladen til ZYpp-pakkehåndtering. ZYpp er kernen i både zypper og YaST.
I denne artikel dykker vi dybt ned i brugen af zypper til alle mulige formål.
Bemærk: Da zypper-kommandoer udfører systemdækkende ændringer, skal disse kommandoer køres som root. Ellers mislykkes kommandoerne.
Uden yderligere ado, lad os komme i gang! Alle disse eksempler vises på openSUSE Tumbleweed. Disse kommandoer er dog universelle for zypper pakkehåndtering.
Zypper hjælp
Kørsel af zypper uden nogen kommando udskriver en liste med alle de tilgængelige kommandoer.
$ zypper
Det er en stor liste! Hvis du har brug for hjælp til en bestemt kommando, skal du køre følgende kommando.
$ zypper hjælp
Opdatering af Zypper-databasen
Dette er en af de mest almindelige funktioner i zypper for at holde sin lokale pakkedatabase opdateret med pakkeserveren.
$ sudo zypper opdatering
I stedet for at bruge "opdater" kan du også bruge forkortelsen "ref".
$ sudo zypper ref
Det er også muligt at tvinge zypper til at genopbygge sin lokale database. Dette kan være nyttigt i situationer, for eksempel hvis databasen er beskadiget.
$ sudo zypper opdatering -fdb
Opdater systempakker
For at hente og installere alle de nyeste pakkeopdateringer fra openSUSE skal du køre følgende kommando.
$ sudo zypper opdatering
Jeg anbefaler dog at bruge følgende struktur for maksimal fordel.
$ sudo zypper frisk && sudo zypper opdatering
Hvis du er interesseret i at tjekke de pakker, der har opdateringer tilgængelige, skal du køre følgende kommando. Zypper vil generere en liste over tilgængelige opdateringer til dig.
$ zypper listeopdateringer - alt
Installation af en pakke
Brug følgende kommando til installation af en pakke.
$ sudo zypper installere vlc
Der er nogle interessante forkortelser af zypper-kommandoer. I dette tilfælde er følgende kommando også gyldig og udfører det samme job.
$ sudo zypper i vlc
Hvis du skal installere flere pakker på samme tid, skal du blot medtage pakkenavnet efter hinanden adskilt af et mellemrum.
$ sudo zypper installation
Når du udfører en handling, beder zypper om bekræftelse. For at deaktivere den interaktive tilstand skal du tilføje “-non-interactive” eller “-n” flag.
$ sudo zypper - ikke-interaktiv i vlcsudo zypper -n i vlc
Wildcard-funktionen understøttes også af zypper. Lad os for eksempel prøve at installere alle de pakker, der starter med navnet
python.$ sudo zypper i 'python *'
Kilde installere en pakke
Bemærk: Glem ikke at kontrollere, om kildelageret er aktiveret, før du udfører følgende trin. Ellers vil kildeinstallationer ikke lykkes. Aktivér kildegenfald fra "YaST Software Repositories".
Hvis du har brug for at installere kildepakken til en bestemt pakke, skal du bruge “kilde-installation” -flagget.
$ sudo zypper kilde-installation vlc
Som standard beder denne kommando også om installation af alle buildafhængigheder. For at undgå build-afhængigheder skal du tilføje “-D” -flagget.
$ sudo zypper kilde-installation -D vlc
Hvis du bare vil installere buildafhængigheder, skal du bruge “-d” i stedet.
$ sudo zypper installer kilde-installation -d vlc
Søger efter en pakke
Der er tusindvis af pakker i openSUSE-arkivet. Brug følgende struktur til at udføre en søgning ved hjælp af zypper.
$ zypper søgningLad os f.eks. Søge efter alle pakkerne med ordet "python".
$ zypper søg python
Sådan søgning kan udskrive en LANG liste over pakker. I en sådan situation kan brug af "grep" eller eksport af resultatet og derefter udføre give en vis komfort.
Indstillingen "søg" har også en forkortelse "se".
$ zypper -n se
Bemærk, at vi til søgen ikke behøvede at bruge “sudo” i starten. Dette skyldes, at zypper ikke udfører nogen systemomfattende ændring.
Fjernelse af en pakke
Hvis du vil slippe af med en bestemt pakke, skal du bruge indstillingen "fjern".
$ sudo zypper fjernLad os for eksempel fjerne VLC fra systemet.
$ sudo zypper fjern vlc
I stedet for "fjern", lad os bruge "rm". Det er en forkortelse af udtrykket "fjern".
$ sudo zypper rm vlc
Hvis du vil springe over den interaktive tilstand, skal du bruge “-non-interactive” eller “-n” flag.
$ sudo zypper - ikke-interaktiv rm vlc$ sudo zypper -n rm vlc
Installation og fjernelse på samme tid
Det er et interessant træk ved zypper, der tillader installation og fjernelse af pakker på samme tid! Lad os tjekke det ud.
Lad os for eksempel installere VLC, mens du fjerner Python. I dette eksempel er zyppers hovedopgave at installere, ikke fjerne. Her bruges “-n” -fanen for nemheds skyld.
$ sudo zypper -n i vlc -python
Lappe
Dette er en interessant del af openSUSE-økosystemet. Mens begge dele lappe og opdatering fungerer på samme måde, begge er fundamentalt forskellige. Forvirret?
I tilfælde af "opdatering" vil openSUSE sigt opdatere pakken til den nyeste version tilgængelig fra repoen. I tilfælde af "patch" vil det dog kun installere pakkeopdateringer, der er beregnet til fejlrettelser og sikkerhedsrettelser.
Hvis du kun installerer pletter, det opdaterer måske eller måske ikke alle pakkerne. Imidlertid vil udførelse af opdateringer sikre, at alle de nyeste pakker er installeret.
Med det ude af vejen, lad os komme i gang!
Først installerer du patch. Den følgende kommando installerer alle de officielt frigivne programrettelser.
$ sudo zypper patch
I mit tilfælde er der intet at gøre. Hvis der er nogen nyeste programrettelse, installerer kommandoen den.
Brug denne til at se listen over tilgængelige programrettelser. Det kræver ikke rod tilladelse til at køre.
$ zypper-lapper
Zypper kan liste alle de rettelser, der ikke er installeret i øjeblikket. Kør følgende kommando.
$ zypper liste-programrettelser
"List-patches" er også tilgængelig i forkortet form af "lp".
$ zypper lp
Er interesseret i kun at liste de programrettelser, der er markeret som sikkerhedsrettelser?
$ zypper lp - kategorisikkerhedFor at kontrollere antallet af nødvendige programrettelser skal du køre denne kommando.
$ sudo zypper patch-check
Lagringsstyring
Zypper tilbyder sømløse metoder til styring af alle arkiver. Her er nogle af de kommandoer, der er rigtig nyttige i mange situationer.
Vi har allerede dækket, hvordan man opdaterer den lokale database over alle repos.
$ sudo zypper opdatering
Brug for en hurtig liste over alle arkiver?
$ zypper reposVi kan også bruge "lr", den forkortede form for "repos".
$ zypper lr
Brug for URI af repos? Bare tilføj “-u” flag efter “lr” eller “repos”.
$ zypper lr -u
Hvis du ikke vidste det, er arkiverne i openSUSE ordnet i et hierarki. For at liste opbevaringssteder ud fra deres prioritet skal du bruge “-p” -flagget.
$ zypper lr -p
Når du kører "opdater", opdaterer Zypper den lokale database for alle arkiver. For at opdatere et specifikt lager skal du køre følgende kommando.
$ sudo zypper opdatering
Repos kan aktiveres / deaktiveres uden at slette dem. For at deaktivere et bestemt lager skal du køre følgende kommando. Bemærk, at vi har brug for repo-nummeret fra lagerlisten.
$ sudo zypper mr -d
Behov for at aktivere en deaktiveret repo? Lad os køre følgende kommando.
$ sudo zypper mr -e
Tilføjelse af et nyt arkiv er også meget simpelt. I dette eksempel tilføjer jeg Packman. Det er et eksternt lager, der tilbyder yderligere openSUSE-pakker. Afhængigt af hvilken version af openSUSE du kører, ændres repo URI. Kommandostrukturen forbliver dog den samme. Lær mere om Packman
$ sudo zypper addrepoI tilfælde af openSUSE Tumbleweed vil kommandoen se sådan ud. Her er "ar" den forkortede form for "addrepo".
$ sudo zypper ar -cfp 90 http: // ftp.gwdg.de / pub / linux / misc / packman / suse / openSUSE_Tumbleweed /packman
For at fjerne en repo skal du have repo-aliaset. Tag repo-aliaset fra listen over repos, og brug følgende kommando.
$ sudo removerepoDu kan bytte "removerepo" med dens forkortede form "rr".
$ sudo rr
Cache-administration
Caching er en nyttig mekanisme, hvor zypper kan gemme en kopi af alle de RPM-pakker, den griber fra internettet på et bestemt sted. Hver gang du beder zypper om at installere den samme pakke, ser den først ind i cachen. Hvis det er i cachen, bruger zypper RPM-pakken fra cachen til at udføre installationen. På denne måde kan det fremskynde installationen og spare tid og båndbredde.
Cachen er gemt på følgende placering. Hver repo har sin egen dedikerede mappe under biblioteket.
$ træ / var / cache / zypp / pakker
For at rense cachen skal du køre følgende kommando.
$ sudo zypper ren
Dette renser alle de lagrede RPM-pakker fra cachen. Jeg anbefaler at aktivere caching, medmindre du på en eller anden måde er begrænset af lagringen. Den følgende kommando aktiverer caching for alle lagre i systemet.
$ sudo zypper mr -ka
Afsluttende tanker
Zypper indeholder masser af funktioner. Mens disse zypper-anvendelsesmetoder er mere end nok for almindelige brugere, er der masser af avancerede funktioner, der ikke blev vist her.
For den fulde zypper-dokumentation, se man-siden.
$ mand zypper
god fornøjelse!