GNU/Linux >> Znalost Linux >  >> Arch Linux

Jak používat Pacman na Arch Linuxu

Správce balíčků je klíčovým prvkem, který odlišuje různé distribuce operačního systému Linux. Pacman je jedním z nich. Slouží roli správy balíčků pod distribucí Arch Linux OS. Hlavní funkční cíl Pacmana je jednoduchý a přímočarý.

Pomáhá uživatelům Arch Linuxu spravovat balíčky OS bez zapojení příliš mnoha technických záležitostí. Tyto balíčky jsou buď umístěny ve vlastních sestaveních uživatelů nebo z oficiálních úložišť OS.

Uvedené zdroje balíčků Arch Linuxu mají konfiguraci seznamu balíčků synchronizovanou se sekundárním hlavním serverem. Na tento seznam balíčků odkazuje hlavní server, když uživatel Arch Linuxu zadá náhodný dotaz na aktualizaci systému. Stručně řečeno, uživatel je klient, který komunikuje s hlavním serverem, když je potřeba instalace nebo stažení balíčku.

Správce balíčků Pacman spouští jednoduché příkazy, které umožňují tyto instalace a stahování. Někdy však použité sekvence příkazů vyžadují, aby uživatelé Arch specifikovali další povinné závislosti balíčků. Je zajímavé, že programovací jazyk C poskytl hlavní zdrojový kód pro Pacman.

Použití Pacmana v Arch Linuxu

Tento článek se vám snaží poskytnout základní přehled a pochopení použití a implementace správce balíčků Pacman na OS Arch Linux. Abychom porozuměli použití a implementaci Pacmana, jeho související operace potřebují kategorickou prezentaci. Začneme proto základními operacemi Pacmana, které možná znáte, a pokročíme k mnohem složitějším operacím, které teprve prozkoumáte.

Instalace balíčků

Před instalací balíčku je potřeba porozumět základním atributům balíčku. Protože archiv zobecňuje balíček, měl by obsahovat následující:

  • Zkompilované soubory aplikace
  • Metadata aplikace. Může to být verze, název nebo dokonce závislosti aplikace.
  • Direktivy správce balíčků (Pacman) spolu s jeho instalačními soubory.
  • Volitelné zahrnutí dalších souborů, jako je start/stop skript. Tyto soubory značně usnadňují život uživatele Arch Linuxu.

Se správcem balíčků Pacman máte jako uživatel Arch Linuxu možnost instalovat, aktualizovat a odstraňovat různé balíčky operačního systému Linux z vašeho počítače. Balíčky jsou perfektní alternativou k samo-rekompilaci a samoinstalaci běžných programů OS. Při práci s balíčky OS namísto přímé instalace programů získáte následující výhody:

  • Balíčky lze snadno aktualizovat. Pokaždé, když spustíte aktualizaci systému, operační systém také aktualizuje balíčky za předpokladu, že instalace balíčku byla propojena s oficiálním úložištěm.
  • K dispozici jsou kontroly závislosti. S Pacmanem vaše instalace balíčků OS selžou kvůli poškozeným balíčkům. Pacman potřebuje pouze název cíleného programu a vyřeší jeho potřeby závislostí.
  • Čisté odebrání balíčku. Pacman přímo přistupuje ke všem vašim nainstalovaným balíčkům odkazem na seznam balíčků, který OS vytváří. Nebudete tedy čelit žádným problémům, když budete chtít balíček ze svého systému úplně odinstalovat.

Zacházení s konkrétními balíčky

Pod Arch Linuxem můžete nainstalovat konkrétní balíčky spolu s jejich závislostmi. Můžete dokonce nainstalovat více než jeden balíček. Následující příkaz Pacmana by měl trochu osvětlit postup instalace.

# pacman -S package_1 package_2

V tomto příkazu package_1 a package_2 symbolizují název balíčku, který zadáte pro zahájení instalace.

Můžete také použít regulární výraz k instalaci několika balíčků najednou.

# pacman -S $(pacman -Ssq package_regex)

Více o této implementaci se můžete dozvědět zde.

Při instalaci balíčků pod Arch Linuxem zjistíte, že některé balíčky existují ve více verzích kvůli různým úložištím. Může to být například testování úložiště nebo extra úložiště. Řekněme, že máme zájem o balíček pod testovacím úložištěm. Chcete-li jej nainstalovat, musíme nejprve zadat název tohoto úložiště před skutečný název balíčku. Zvažte následující implementaci tohoto pravidla.

# pacman -S testing/package_name

Pokud máte několik balíčků, které si přejete nainstalovat, a všechny mají podobný vzor názvu, shledáte použití rozšíření složenými závorkami jako ideální. Zvažte například následující implementaci případu použití.

# pacman -S plasma-{nm, desktop, mediacenter}

Použití těchto rozšíření složených závorek lze dále implementovat ve složitých instalačních rutinách balíčků, jak ukazuje následující případ použití.

# pacman -S plasma-{workspace{, -wallpapers}, pa}

Výše uvedený příklad ukazuje, jak můžete použít rozšíření složených závorek na mnoho úrovní při instalaci balíčků Arch Linuxu.

Zacházení s virtuálními balíčky

Cokoli virtuálního je závislé na existenci něčeho jiného. Je to stejný případ s virtuálními balíčky. Protože nejsou nezávislé, jejich existence je vázána na jiné balíčky. Vzhledem k tomu, že virtuální balíčky jsou svázány s těmito konkrétními balíčky, brání jim v tom, aby měly jiné závislosti na balíčcích.

Protože k instalaci těchto virtuálních balíčků nestačí název balíčku, potřebujete znát pouze název primárního balíčku spojeného s tímto virtuálním balíčkem. Když znáte název balíčku, který je hostitelem virtuálního balíčku, nainstalujete jej běžným příkazem pro instalaci balíčku Pacman.

# pacman -S primary_package_name

Instalace skupin balíčků

Pro zkušeného uživatele Arch Linuxu není práce s balíčky definovanými ve skupinách balíčků žádnou novinkou. Instalace těchto balíčků obvykle probíhá současně. Zvažte případ použití následujícího příkazu.

# pacman -S gnome

Vydání tohoto příkazu vyzve k výběru potřebných balíčků z aktivní skupiny gnome. Skupina balíčků může nebo nemusí obsahovat příliš mnoho balíčků. Pokud je balíčků příliš mnoho a potřebujete jich nainstalovat jen několik, je zapotřebí ideální syntaxe příkazu. Za normálních okolností můžete být nuceni zadat příliš mnoho čísel, abyste vyloučili instalaci konkrétních balíčků.

Pomocí následující syntaxe je snadné prostřednictvím rozsahů vyloučit balíčky, které nepotřebujete instalovat.

Enter a selection (default=all): 1-12 16

Odpověď na výše uvedenou syntaxi příkazu vybere balíčky 1 až 12 a 16 pro instalaci. Zbývající balíčky jsou ignorovány.

Výše uvedená syntaxe příkazu se řídí inkluzivním přístupem k instalaci skupin balíčků. Pokud však dáváte přednost přístupu k vyloučení, měli byste zvážit následující syntaxi.

Enter a selection (default=all): ^4-9 ^3

Ve výše uvedeném případě jsou k instalaci vybrány všechny balíčky kromě balíčků 4 až 9 a 3.

Vzhledem k tomu, že výše uvedený případ použití odkazuje na skupinu balíčků nazvanou „gnome“, možná budete chtít po úspěšné instalaci balíčků zobrazit náhled balíčků spojených s touto skupinou. V tomto případě použijete následující syntaxi příkazu:

# pacman -Sg gnome

Více o skupinách balíčků Arch Linuxu je k dispozici na tomto odkazu.

Jakmile vyzvete Pacmana k instalaci balíčku a balíček již ve vašem systému existuje, tento správce balíčků tento balíček přeinstaluje, i když je nainstalovaná verze aktuální. Na druhou stranu, použití „–needed“ jako dalšího argumentu v instalačním příkazu přehlédne reinstalaci daného balíčku.

Odinstalování balíčků

Pokud chcete odinstalovat nebo odstranit balíček ze systému Arch Linux, měli byste se odkázat na následující syntaxi příkazu.

# pacman -R name_of_package

Výše uvedená odinstalace pouze odstraní balíček z vašeho systému, ale ne s ním spojené závislosti. Pokud chcete eliminovat jak balíček, tak jeho přidružené závislosti, zvažte následující syntaxi příkazu.

# pacman -Rs name_of_package

Alternativa k výše uvedenému příkazu pomáhá zbavit se skupin balíčků, které bývají výzvou.

# pacman -Rsu name_of_package

Následující příkaz odstraňuje konkrétní balíček, jeho závislosti a každý další balíček v závislosti na tomto cílovém balíčku.

# pacman -Rsc name_of _package

Při používání tohoto příkazu buďte opatrní, abyste se nezbavili balíčku, který byste mohli později potřebovat.

Chcete-li se zbavit balíčku potřebného pro funkčnost jiného balíčku, aniž byste se zbavili balíčků, které na něm závisí, můžete se odkázat na následující syntaxi příkazu. Použití tohoto příkazu může rozbít váš systém Arch. Příkaz používejte pouze tehdy, když jste si jisti, co děláte.

# pacman -Rdd name_of_package

Když odeberete určité balíčky spojené s vašimi aplikacemi Arch, Pacman uloží důležité konfigurační soubory pod příponou „.pacsave“. Když však do příkazů pro odinstalaci zahrnete volbu -n, tyto záložní konfigurační soubory se nevytvoří. Zvažte například následující případ použití.

# pacman -Rn name_of_package

Výjimkou je, že pokud aplikace sama vytvoří konfigurace, Pacman se jich nezbaví.

Upgradování balíčků

Jediným příkazem Pacmana byste měli být schopni aktualizovat a upgradovat všechny balíčky na vašem systému Arch. V závislosti na tom, jak nedávno jste se snažili aktualizovat svůj systém, může proces aktualizace a upgradu nějakou dobu trvat. Proces upgradu bere v úvahu balíčky umístěné v nakonfigurovaných úložištích. V tomto případě jsou vyloučeny místní balíčky. Použijte následující příkaz:

# pacman -Syu

Dotaz na databáze balíčků

Pokud se chcete dotazovat na databázi balíčků systému Arch, zvažte použití následujících příkazů.

# pacman -Q --help

Výše uvedený příkaz se dotazuje na místní databázi balíčků systému.

# pacman -S --help

Výše uvedený příkaz se dotazuje na synchronizační databázi systému.

# pacman -F --help

Výše uvedený příkaz se dotazuje na systémovou databázi souborů.

Parametry -Q, -S a -F jsou kritické a nikdy byste je neměli vynechat.

Můžete také vyhledat existující balíčky v databázi systému dotazem na názvy a popisy balíčků.

# pacman -Ss string1 string2 …

Volba -s je spojena s vestavěným ERE (Extended Regular Expression). Jeho použití může vést k nežádoucím koncovým výstupům. Jeho funkční použití může být omezeno tak, že se soustředí pouze na název balíčku a ignoruje ostatní pole, jako je popis balíčku. Při dotazování na editor vim zvažte následující použití.

# pacman -Ss '^vim-'

Pokud máte zájem prohledávat balíčky již nainstalované ve vašem systému, použijte následující příkazový přístup.

# pacman -Qs string1 string2 …

Pokud chcete prohledávat nebo odkazovat na vzdálené balíčky pro konkrétní názvy souborů balíčků, použijte následující syntaxi příkazu.

# pacman -F string1 string2 …

Pokud potřebujete více informací o cílovém balíčku na základě jeho názvu, zvažte následující příkazový přístup.

# pacman -Si name_of_package

Pokud se chcete zeptat na nějaké informace o lokálně nainstalovaném balíčku na vašem systému Arch, zvažte následující syntaxi příkazu.

# pacman -Qi name_of_package

Místně nainstalovaný balíček je někdy spojen se záložními soubory. Chcete-li tyto soubory zobrazit spolu s jejich přidruženými stavy modifikace, použijte příznak -i navíc.

# pacman -Qii name_of_package

Někdy balíček, který nainstalujete, nainstaluje také další soubory. Chcete-li tyto soubory zobrazit, zvažte následující syntaxi příkazu Pacman.

# pacman -Ql name_of_package

Vzdálená instalace balíčků bude také iniciovat instalaci dalších souborů souvisejících s balíčky. Chcete-li zobrazit tyto vzdáleně nainstalované soubory, použijte následující syntaxi příkazu Pacman.

# pacman -Fl name_of_package

Někdy mohou soubory nainstalované v balíčku vyžadovat ověření, abyste si byli jisti jejich přítomností. Použijte následující syntaxi příkazu.

# pacman -Qk name_of_package

Pokud potřebujete důkladný ověřovací krok, předejte dvakrát příznak -k.

# pacman -Qkk name_of_package

Možná budete také muset přidružit nainstalovaný soubor k jeho instalačnímu programu na vašem systému Arch. Aby k tomu došlo, budete muset zadat cestu k tomuto souboru, jak ukazuje následující příkaz.

# pacman -Qo /path/to/name/of/file

Chcete-li přidružit nainstalovaný soubor ke vzdálenému instalačnímu programu balíčku, použijte následující syntaxi příkazu.

# pacman -F /path/to/name/of/file

Můžete mít také závislosti balíčků na vašem systému, které již nejsou vyžadovány. Tyto disociované závislosti se také označují jako sirotci. Jejich seznam naleznete v následující syntaxi příkazu.

# pacman -Qdt

Váš systém Arch mohl mít také nainstalované balíčky, které byly závislé na jiných balíčcích, ale již nebyly vyžadovány. Chcete-li je vypsat, použijte následující syntaxi příkazu.

# pacman -Qet

Pactree

Většina nainstalovaných balíčků je také spojena se stromem závislostí. Chcete-li zobrazit tento strom, použijte následující příkaz.

# pactree name_of_package

Struktura databáze

Systémová cesta Arch Linuxu „/var/lib/pacman/sync“ ukazuje na primární umístění databází Pacman. Také všechna úložiště Archu jsou specifikována v cestě, která vede k souboru „/etc/pacman.conf“. Pro každé zadané repo je také vytvořen odpovídající databázový soubor v zadaných cestách k souborům.

Čištění mezipaměti balíčků

Systémová cesta Archu „/var/cache/pacman/pkg/“ je úložiště stažených balíčků Pacmana. Staré nebo odinstalované verze balíčků nejsou systémem Arch automaticky odstraněny. Tato funkce systému nabízí několik výhod.

  • Je mnohem snazší přejít na nižší verzi nainstalovaného balíčku podle čísla verze.
  • Vzhledem k tomu, že tato složka mezipaměti systému obsahuje odinstalované balíčky, je flexibilně snazší tentýž balíček v případě potřeby znovu nainstalovat namísto jeho čerstvého stahování z aktivního úložiště.

Na druhou stranu, pokud tato složka mezipaměti zůstane nezaškrtnutá, může se neomezeně zvětšovat. Proto byste se měli snažit jej záměrně čistit. Následující příkaz účinně vyčistí mezipaměť systému od odinstalovaných a nainstalovaných verzí balíčků s výjimkou 3 nejnovějších položek balíčků systému Arch.

# paccache -r

Povolením a spuštěním „paccache.timer“ se vytvoří týdenní plán likvidace nepoužitých systémových balíčků.

Při ukládání těchto verzí balíčků z vašeho systému do mezipaměti můžete být konkrétní u těch, které chcete zachovat. Pokud například chcete ponechat jednu předchozí verzi, zvažte následující syntaxi příkazu.

# paccache -rk1

Chcete-li se zbavit odinstalovaných balíčků bez ohledu na jejich verze, použijte následující syntaxi příkazu.

# paccache -ruk0

Další možnosti použití paccache naleznete spuštěním následujícího příkazu na vašem terminálu.

# paccache -h

Chcete-li se zbavit nepoužívané synchronizační databáze a ještě nenainstalovaných balíčků uložených v mezipaměti, spusťte následující příkaz.

# pacman -Sc

Pokud chcete zcela vyčistit mezipaměť systému, možná budete potřebovat agresivnější příkaz. Například následující příkaz vyprázdní složku mezipaměti systému Arch.

# pacman -Scc

Další užitečné příkazy

Pokud si chcete stáhnout pouze balíček Arch Linux, aniž byste jej nejprve instalovali, použijte následující syntaxi příkazu.

# pacman -Sw name_of_package

Pokud místní balíček, který chcete nainstalovat, není umístěn ve vzdáleném úložišti, měli byste zvážit následující postup instalace balíčku.

# pacman -U /path/to/name/of/package-version.pkg.tar.zst

Možná budete chtít, aby se kopie místního balíčku nacházela v systémové mezipaměti Pacmana. Viz následující syntaxe příkazu.

# pacman -U file:///path/to/name/of/package-version.pkg.tar.zst

Instalace vzdáleného systémového balíčku nebo takového, který není umístěn v definovaném úložišti, je možná pomocí následující syntaxe příkazu.

# pacman -U http://www.example_link.com/repo/example.pkg.tar.zst

Než Pacman nainstaluje nebo vzdáleně nainstaluje cílený systémový balíček, nejprve požádá uživatele systému Arch o potvrzení jeho instalace nebo odinstalace.

Poznámka na závěr

Systémová cesta Arch k souboru „/etc/pacman.conf“ obsahuje primární nastavení Pacmana. Jako uživatel systému Arch můžete k tomuto souboru přistupovat a přizpůsobit výkon nainstalovaných programů konkrétním preferencím. Více o tomto nastavení naleznete v oficiální dokumentaci pacman.conf(5).

Stručně řečeno, správce balíčků Pacman má co nabídnout kromě instalace, aktualizace a odstranění balíčků Arch. Můžete jej použít k zobrazení protokolů změn, nainstalovaných aplikací, skupinových balíčků a explicitně nainstalovaných balíčků. Tento seznam pokračuje. Čím více budete Pacman na svém systému Arch používat a komunikovat s ním, tím více budete zkoumat a objevovat jeho neomezený potenciál.

Další provozní příklady a implementace správce balíčků Pacman jsou k dispozici na oficiálních stránkách Arch Linuxu.


Arch Linux
  1. Jak používat BusyBox na Linuxu

  2. Jak používám cron v Linuxu

  3. Jak používat Su Command v Linuxu

  1. Jak nainstalovat, odebrat a aktualizovat software na Arch Linux

  2. Jak najít zranitelné balíčky v Arch Linuxu

  3. Jak ignorovat balíček z upgradu v Arch Linuxu

  1. Jak používat pkgsrc na Linuxu

  2. Jak nainstalovat Arch Linux

  3. Linux – Jak odstranit staré balíčky nainstalované Pacmanem v Arch Linuxu?