Zypper-pakethanterarens användarhandbok för openSUSE-användare
Lär dig hur du använder Zypper, openSUSE:s paketchef, genom praktiska exempel för att enkelt installera, uppdatera och hantera programvara och arkiv.
Zypper är en pakethanterare för kommandoraden (liknande APT för DEB-baserade system eller DNF för RPM-baserade system) som används i openSUSE, SUSE Linux Enterprise och deras derivat. Den ger användare ett snabbt och flexibelt sätt att installera, uppdatera, ta bort och hantera mjukvarupaket och arkiv, vilket ger dig full kontroll över systemets mjukvarumiljö.
Under huven arbetar Zypper med RPM-paket—samma paketformat som används i många Linux-distributioner baserade på RPM. Det förlitar sig på libzypp, ett bakgrundsbibliotek som löser beroenden, hanterar arkiv och hanterar transaktioner på ett säkert och effektivt sätt.
I den här guiden kommer jag att visa dig, genom praktiska Zypper-kommandon och exempel från verkligheten, hur du installerar nya applikationer, håller ditt system uppdaterat, söker efter paket, hanterar arkiv och mer. I slutet hoppas jag att du ska känna dig tillräckligt säker för att kunna hantera ditt openSUSE-system effektivt från terminalen.
Du kan också använda exemplen nedan som en snabb referens om du redan är bekant med Zypper och bara vill friska upp ditt minne om ett specifikt kommando eller alternativ.
Zypper-kommandot Snabbreferens: Kort och Lång Version
Zypper erbjuder två sätt att utföra nästan alla sina operationer — ett kort format för snabbhet och bekvämlighet, och ett långt format för läsbarhet och tydlighet. De korta formaten används ofta i praktiken eftersom de är bekväma för snabba kommandon, medan de långa formaten är tydligare och ofta används i skript eller dokumentation.
Vilken du väljer är helt upp till dig — resultatet blir detsamma. För enkelhetens skull, och eftersom det är det vanliga sättet att göra det på, kommer jag att använda den korta formen i exemplen nedan. Men innan vi går in på den praktiska delen, här är en tabell som visar både den korta och långa formen av de mest använda Zypper-kommandona.
| Kort | Lång | Beskrivning |
|---|---|---|
| i | installera | Installera paket |
| rm | ta bort | Ta bort (avinstallera) paket |
| upp | uppdatera | Uppdatera installerade paket |
| dupa | dist-uppgradering | Utför en distributionsuppgradering (smart lösare) |
| lu | lista-uppdateringar | Lista tillgängliga uppdateringar |
| ve | verifiera | Verifiera och fixa paketberoenden |
| se | sök | Sök efter paket |
| om | information | Visa detaljerad paketinformation |
| på | paket | Lista alla tillgängliga eller installerade paket |
| lr | förvar | Lista alla arkiv |
| ar | läggtillrepo | Lägg till ett arkiv |
| rr | ta bort repo | Ta bort ett arkiv |
| ref | uppdatera | Uppdatera lagringsplatsmetadata |
| ren | ren | Rensa cache och metadata |
Uppdatera paketbas
Vi börjar med ett av de Zypper-kommandon du kommer att använda mest: zypper ref (eller zypper refresh), som uppdaterar paketbasen. När du kör det kontaktar Zypper varje arkivserver och laddar ner den senaste metadata—paketlistor, versioner, beroenden och uppdateringsinformation.
sudo zypper refTänk på att uppdatering inte installerar något. Det säkerställer helt enkelt att ditt system har den senaste paketinformationen innan du letar efter eller tillämpar uppdateringar.
I de flesta arbetsflöden är detta det första steget innan man kör kommandon som zypper lu, zypper up eller zypper dup, eftersom dessa operationer är beroende av uppdaterad metadata.
Kontrollera tillgängliga paketuppdateringar
zypper lu (eller zypper list-updates) uppdaterar automatiskt repositoriets metadata när det är gammalt och listar alla paket på ditt system som har nyare versioner. Det installerar ingenting—syftet är enbart informativt.
sudo zypper luVarje rad markerad med v indikerar ett paket med en nyare version tillgänglig, visad tillsammans med dess arkiv, aktuell version, tillgänglig version och arkitektur.
Som du förmodligen redan har gissat behöver du inte köra zypper ref innan zypper lu, eftersom zypper lu faktiskt uppdaterar repository-metadata när de är föråldrade.
Installera paketuppdateringar
zypper up (eller zypper update) är ett av de mest använda Zypper-kommandona, som installerar alla tillgängliga vanliga paketuppdateringar på ditt system. Det är beroende av aktuell metadata från arkiven, så om det behövs uppdaterar Zypper arkiven automatiskt innan det fortsätter.
sudo zypper upFullständig systemuppgradering
zypper dup (eller zypper dist-upgrade) kan användas som ersättning för zypper up eftersom det också installerar alla tillgängliga uppdateringar. Det går dock längre när det behövs: det kan byta paketleverantörer, installera omdöpta paket och ta bort gamla eller föråldrade paket för att hålla systemet i linje med de aktiverade arkiven.
sudo zypper dupDe flesta uppdateringar ser likadana ut under båda kommandona, men när ett paket kräver att äldre komponenter tas bort eller flyttas till ett annat arkiv, kan endast zypper dup utföra dessa ändringar. Det är därför det används för distributionuppgraderingar och varför det ibland kan ta bort paket som inte längre tillhandahålls av något arkiv.
Sök paket
Använd zypper se (eller zypper search) för att hitta paket efter namn eller beskrivning. Detta kommando söker igenom alla aktiva förråd och visar matchande resultat, inklusive installerade och tillgängliga paket. Till exempel:
zypper se firefoxKolumnen S visar paketstatus (till exempel i för installerad), följt av kolumnen Name med det exakta paketnamnet, kolumnen Summary med en kort beskrivning, och kolumnen Type som anger om det är ett vanligt paket, ett mönster eller en annan typ av paket.
Om du bara vill söka bland installerade paket, lägg till -i-alternativet:
zypper se -i firefox
Detta filtrerar resultaten så att endast installerade paket som matchar namnet visas. Om inget returneras är paketet inte installerat.
Installera paket
Använd zypper in (eller zypper install) för att lägga till nya paket på ditt system från de aktiverade programkällorna. Kommandot hanterar beroenden automatiskt och installerar allt som krävs för att det valda paketet ska kunna köras. Till exempel:
sudo zypper in chromiumFör att installera flera paket samtidigt, lista paketnamnen efter varandra, separerade med mellanslag.
sudo zypper in chromium htop vlcTa bort paket
Använd zypper rm (eller zypper remove) för att avinstallera paket från ditt system. Kommandot tar också bort beroenden som inte längre behövs, såvida inte andra installerade paket kräver dem. Till exempel:
sudo zypper rm chromiumPå samma sätt som med kommandot install, för att avinstallera flera paket från ditt openSUSE-system, skriv deras namn efter varandra, separerade med ett mellanrum.
sudo zypper rm chromium htop vlcVisa paketinformation
Använd zypper if (eller zypper info) för att visa detaljerad information om ett paket. Detta inkluderar dess version, leverantör, repository, installationsstatus, sammanfattning, beskrivning och beroenden. Till exempel:
zypper info chromiumDetta är det snabbaste sättet att kontrollera i openSUSE vilken version av ett paket som är installerad och vilket repository som tillhandahåller det.
Verifiera installerade paket
Använd zypper ve (eller zypper verify) för att kontrollera om alla installerade paket har sina nödvändiga beroenden uppfyllda. Om något saknas eller är skadat—ofta efter manuell borttagning av filer, avbrutna uppdateringar eller blandning av olika förråd—identifierar det här kommandot problemen och föreslår lösningar.
sudo zypper veZypper kommer att skanna systemet, rapportera eventuella beroendeproblem och, om det behövs, föreslå att installera eller ta bort paket för att återställa konsistensen.
Rensa cachelagrad data
Använd zypper clean för att ta bort cachad repository-data, som nedladdade paketfiler och metadata. Detta hjälper till att frigöra diskutrymme och tvingar zypper att hämta ny metadata nästa gång den får åtkomst till ett repository.
sudo zypper cleanHantera mjukvaruförråd
Zypper ger full kontroll över de mjukvaruförråd som ditt openSUSE-system använder för att installera och uppdatera paket. Med några enkla kommandon kan du lista, lägga till, ta bort, aktivera, inaktivera eller justera förrådsinställningar direkt från kommandoraden, vilket ger dig exakt kontroll över hur ditt system hämtar mjukvara.
Lista arkiv
Använd zypper lr (eller zypper repos) för att lista alla konfigurerade arkiv på ditt system. Utdata visar varje arkivs alias, namn, aktiverad/inaktiverad status, inställning för automatisk uppdatering, prioritet och URL.
zypper lrLägg till ett förråd
Om du vill lägga till ett arkiv till ditt openSUSE-system, använd zypper ar (eller zypper addrepo) för att lägga till ett nytt mjukvaruarkiv till ditt system. Du kan ange arkivets URL och ge det ett alias som senare kommer att visas i zypper repos. Till exempel:
sudo zypper addrepo -f https://download.opensuse.org/repositories/network/openSUSE_Leap_16.0/ networkEfter att ha lagt till ett arkiv kommer zypper att inkludera det när du installerar eller uppdaterar paket. Du kan också aktivera automatisk uppdatering eller tilldela en prioritet med ytterligare alternativ vid behov.
I exemplet ovan aktiverar alternativet -f automatisk uppdatering. Om lagret redan är tillagt kan du dock slå på automatisk uppdatering med:
sudo zypper modifyrepo -f netwrokHär är ‘network’ arkivets alias.
Ta bort ett arkiv
Använd zypper rr (eller zypper removerepo) för att ta bort ett arkiv från ditt system. Du kan ta bort det genom att ange dess alias eller dess numeriska ID, som visas i zypper lr.
sudo zypper rr networkAktivera/Avaktivera ett arkiv
Zypper låter dig inte bara lägga till eller ta bort arkiv, utan gör det också möjligt att aktivera eller inaktivera de du redan har. Använd zypper mr -d (eller zypper modifyrepo -d) för att inaktivera ett arkiv. Du kan referera till det med dess alias eller med det numeriska ID som visas i zypper lr.
sudo zypper modifyrepo -d networkPå samma sätt, för att aktivera det, använd zypper md -e (eller zypper modifyrepo -e):
sudo zypper modifyrepo -e networkMönster
Slutligen ska jag visa dig hur man använder ett praktiskt koncept som andra distributioner ofta kallar meta-paket, medan openSUSE kallar dem för mönster. Så, vad är de egentligen?
Kort sagt, mönster är fördefinierade grupper av paket som openSUSE använder för att installera kompletta funktionella miljöer eller roller. Istället för att installera paket ett i taget, samlar ett mönster allt som behövs för en specifik uppgift—som en skrivbordsmiljö, utvecklingsverktyg eller servertjänster.
Den största fördelen? Genom att installera ett mönster får du alla nödvändiga komponenter, rekommenderade tillägg och stödjande bibliotek i ett steg, vilket gör det enkelt att lägga till viktiga systemfunktioner utan att manuellt hålla reda på enskilda paket.
Listmönster
Använd zypper pt (eller zypper patterns) för att lista alla tillgängliga patterns på systemet. Kommandots utdata visar varje patterns namn, om det är installerat, och en kort beskrivning av vad det erbjuder.
zypper ptInstallationsmönster
Låt oss säga att du vill installera Cinnamon-skrivbordsmiljön med ett enda kommando. Mönsternamnet är, som du kan förvänta dig, cinnamon. Använd zypper in -t pattern, följt av mönstrets namn, för att installera alla paket som tillhör den gruppen.
sudo zypper in -t pattern cinnamonSom du kan se installerar detta hela Cinnamon-skrivbordsmiljön (mönster), inklusive dess nödvändiga och rekommenderade komponenter.
Det finns dock en särskild sak som du bör vara medveten om. Att ta bort ett mönster avinstallerar inte, som du kanske förväntar dig, de paket som det ursprungligen installerade. Istället förblir de enskilda paketen installerade om du inte tar bort dem manuellt eller om de inte blir överblivna på grund av andra beroendeförändringar. Så, om du kör:
sudo zypper rm -t pattern cinnamonEndast själva mönstret kommer att tas bort, men inte de paket som det innehåller. Med andra ord, att ta bort mönstret tar bara bort den metadata, inte de hundratals riktiga Cinnamon-paket som installerades tidigare. För att ta bort dem måste du göra det manuellt för varje paket.
Slutsats
I den här guiden visade jag de viktigaste Zypper-kommandona för att effektivt hantera programvara på openSUSE. Nu vet du hur du installerar, uppdaterar, söker efter och tar bort paket, arbetar med mönster och hanterar repositories från kommandoraden.
Ja, YaST är ett utmärkt grafiskt verktyg som kan hantera allt detta, men att känna till Zypper ger dig den djupare förståelsen du behöver så att du inte bara är beroende av grafiska verktyg. Och även om YaST täcker allt i en skrivbordsmiljö, är det avgörande att behärska Zypper i kommandoraden för att kunna hantera mjukvara på servern.
Självklart erbjuder paketchefen Zypper många fler alternativ. Jag rekommenderar starkt att du bekantar dig med dem i den officiella openSUSE-dokumentationen eller på SUSE:s webbplats.
Tack för din tid. Som alltid är dina kommentarer mycket välkomna.


















