Pacman


pacman står for pakkehåndteringsværktøj (pacman). pacman er et kommandolinjeværktøj til at installere, bygge, fjerne og styre Arch Linux-pakker. pacman bruger libalpm (ark Linux Package Management (ALPM) bibliotek) som en back-end for at udføre alle handlinger. Nogle andre pakkehåndteringsværktøjer, der bruges bredt i Linux er yum, dnf, apt-get, dpkg, rpm, zypper, urpmi osv.

Nu vil jeg i det følgende forklare de mest brugte pacman kommandoer med eksempler. Hvis du vil vide mere, kan du læse den fulde dokumentatiom på engelsk her

Hvis du kommer fra Red Hat/Fedora, Debian/Ubuntu, SLES/openSUSE eller Gentoo. Så læs Pacman Rosetta Den side viser en tabel over pakkehåndteringskommandoer blandt nogle af de mest populære Linux-distributioner.

Fælles syntaks/fil placering for pacman


[General syntax for pacman]

pacman [options] [targets]

[pacman config fil placering]

/etc/pacman.conf

[pacman cachelagret filplacering]

/var/cache/pacman/pkg/

[pacman databaser fil placering]

/var/lib/pacman/sync

[pacman historie fil placering]

/var/log/pacman.log

Oplistnig af krævede pakker for installation af en pakke


Oplist alle pakker, der er nødvendige for den givne pakke, vis også afhængigheder. Så du har overblik hvad der bliver installeret, og valgfrie pakker du kan vælge imellem.

$ pacman -Sqi k3b

Arkiv : extra

Navn : k3b

Version : 1:17.12.3-1

Beskrivelse : Feature-rich and easy to handle CD burning application

Arkitektur : x86_64

URL : https://userbase.kde.org/K3b

Licenser : GPL

Grupper : kde-applications kdemultimedia

Tilbyder : Ingen

Afhænger af : libkcddb kcmutils knotifyconfig libmad kfilemetadata knewstuff

                       libmpcdec  libdvdread  libburn  qt5-webkit

Valgfrie afhængigheder : cdrtools: for CD burning with cdrecord

                       dvd+rw-tools: for DVD burning support
                       vcdimager: for VCD burning support
                       emovix: for bootable multimedia CD/DVD support
                       cdrdao: for disk-at-once (DAO) mode support
                       cdparanoia: for CD ripping support
                       transcode: for DVD ripping support

I konflikt med : Ingen

Erstatter : Ingen

Overførselsstørrelse : 10,59 MiB

Installeret størrelse : 32,18 MiB

Pakkevedligeholder : Antonio Rojas

Byggedato : tir 06 mar 2018 10:26:51 CET

Valideret af : MD5-sum SHA-256 Sum Signatur

Hvilke filer er der - lokalt og eksternt


Vis filer, der leveres lokalt.

$ pacman -Ql | more

a52dec /usr/

a52dec /usr/bin/

a52dec /usr/bin/a52dec

a52dec /usr/bin/extract_a52

a52dec /usr/include/

a52dec /usr/include/a52dec/

a52dec /usr/include/a52dec/a52.h

a52dec /usr/include/a52dec/a52_internal.h

a52dec /usr/include/a52dec/attributes.h

a52dec /usr/include/a52dec/audio_out.h

a52dec /usr/include/a52dec/mm_accel.h

a52dec /usr/lib/

a52dec /usr/lib/liba52.so

a52dec /usr/lib/liba52.so.0

a52dec /usr/lib/liba52.so.0.0.0

Vis filer, der leveres eksternt.

$ pacman -Fl | more

abiword-gtk2 usr/

abiword-gtk2 usr/bin/

abiword-gtk2 usr/bin/abiword

abiword-gtk2 usr/include/

abiword-gtk2 usr/include/abiword-3.0/

abiword-gtk2 usr/include/abiword-3.0/abiwidget.h

abiword-gtk2 usr/include/abiword-3.0/libabiword.h

abiword-gtk2 usr/include/abiword-3.0/xap_UnixTableWidget.h

abiword-gtk2 usr/lib/

abiword-gtk2 usr/lib/abiword-3.0/

abiword-gtk2 usr/lib/abiword-3.0/plugins/

abiword-gtk2 usr/lib/abiword-3.0/plugins/opendocument.so

abiword-gtk2 usr/lib/abiword-3.0/plugins/openxml.so

abiword-gtk2 usr/lib/libabiword-3.0.so

abiword-gtk2 usr/lib/pkgconfig/

abiword-gtk2 usr/lib/pkgconfig/abiword-3.0.pc

Installer en pakke eller pakker


Brug kommandoen til at installere pakker eller pakker på dit system. I dette tilfælde vil jeg installere kdenlive & frei0r-plugins .

[Installer en enkelt pakke]

$ pacman -S kdenlive

[Installer mere end en pakke]

$ sudo pacman -S kdenlive frei0r-plugins

[Gennemtving installation af en pakke]

$ sudo pacman -S –force kdenlive

[Download en pakke uden at installere den]

$ sudo pacman -Sw kdenlive

[Installer en lokal pakke]

$ sudo pacman -U /pakke_sti

Opdatere en pakke eller pakker


Brug kommandoen nedenfor til at opdatere enhver pakke eller pakker på dit system. I dette tilfælde vil jeg opdatere qt5ct & qt5-styleplugins til nyeste version. Hvis opdateringen er tilgængelig, vil den opgradere pakken til den nyeste version, eller geninstallere den nuværende.

[Opgrader en ekelt pakke]

$ sudo pacman -Syu qt5ct

$ sudo pacman -Syu community/qt5-styleplugins

:: Synkroniserer pakkedatabaser…

antergos er opdateret

core er opdateret

extra er opdateret

community er opdateret

multilib er opdateret

advarsel: qt5-styleplugins-5.0.0.20170311-5 er opdateret - springer over

:: Starter fuld systemopgradering…

løser afhængigheder…

kigger efter konflikter mellem pakker…

Pakker (1) qt5-styleplugins-5.0.0.20170311-5

Samlet installationsstørrelse: 1,17 MiB

Netto opgraderingsstørrelse: 0,00 MiB

:: Fortsæt med installation? [J/n] n

[Opgrader mere end en pakke]

$ sudo pacman pacman -Syu qt5ct qt5-styleplugins

Fjern en pakke eller pakker


Brug kommandoen til at fjerne / slette enhver pakke eller pakker på dit system. I dette tilfælde vil jeg fjerne bluefish & pdfshuffler.

[Fjern en enkelt pakke]

$ sudo pacman -R bluefish

[Fjern mere end en pakke]

$ sudo pacman -R bluefish pdfshuffler

[Fjern en pakke sammen med dens afhængigheder]

$ sudo pacman -Rs bluefish

[Fjerner mål, der ikke kræves af andre pakker, bruges når du fjerner en gruppe]

$ sudo pacman -Ru gnome

Advarsel: Denne operation er rekursiv og skal bruges med omhu, da den kan fjerne mange potentielt nødvendige pakker. Læs mere om emnet her

Sådan nedgrader du en pakke


I det her eksempel nedgraderes python2 fra 2.7.12 til 2.7.9

Arkivet kan findes her . Gem den hentede fil. f.eks. i dit hjemmebibliotek

Derefter skal pakken installeres

$ sudo pacman -U <sti-til-pakke>

I det her tilfælde

$ sudo pacman -U /home/carl/python2-2.7.9-1-x86_64.pkg.tar.xz

loading packages…

warning: python2-2.7.9-1 is up to date – reinstalling

resolving dependencies…

looking for conflicting packages…

Packages (1) python2-2.7.9-1

Total Installed Size: 70.03 MiB

Net Upgrade Size: 0.00 MiB

:: Proceed with installation? [Y/n]

Det var alt

Sådan oplistes pakker

Nedenstående kommando bruges til at vise alle de installerede pakker. Tegnet „| more“ bruges til at vise enkelte sider, hvorefter du kan bladre med „PgDn“ tasten. Hvis du kun indtastede „pacman -Q“ ville listen bare rulle dernead.

[For at hente en liste over den installerede pakker]

$ pacman -Q | more

a52dec 0.7.4-9

aalib 1.4rc5-12

accountsservice 0.6.45-1

acl 2.2.52-4

acpid 2.0.28-1

adwaita-icon-theme 3.26.1-1

adwaita-qt5 1.0-1

alembic 1.7.5-2

alsa-lib 1.1.5-1

alsa-plugins 1.1.5-1

alsa-utils 1.1.5-2

Hvis du vil have en liste over alle de installerede pakker ind i en tekstfil for at gennemse den, bruges følgende komando.

$ pacman -Q >pakker.txt

Filen pakker.txt er nu i dit hjemmebibliotek, hvor du så i fred og ro kan gennemse alle de pakker der er instaleret

Oplistning af pakke config filer


Hente en liste over de config filer, der er installeret af en bestemt pakke.

$ pacman -Ql cups

cups /etc/

cups /etc/cups/

cups /etc/cups/classes.conf

cups /etc/cups/cups-files.conf

cups /etc/cups/cups-files.conf.default

cups /etc/cups/cupsd.conf

cups /etc/cups/cupsd.conf.default

cups /etc/cups/ppd/

cups /etc/cups/printers.conf

cups /etc/cups/snmp.conf

cups /etc/cups/snmp.conf.default

cups /etc/cups/ssl/

cups /etc/cups/subscriptions.conf

cups /etc/dbus-1/

cups /etc/dbus-1/system.d/

cups /etc/dbus-1/system.d/cups.conf:-\

Vise pakker der har en opdatering tilgængelig


Opliste pakker som der kan opdateres.

$ pacman -Qu

bash-completion 2.7-2 → 2.8-1

gnome-keyring 1:3.28.0.1-1 → 1:3.28.0.2-1

lib32-atk 2.26.1-1 → 2.28.1-1

lib32-cairo 1.15.10-1 → 1.15.10+54+g1ed124ace-1

lib32-fontconfig 2.12.6+5+g665584a-1 → 2.13.0+10+g58f5285-1.1

lib32-gdk-pixbuf2 2.36.6-1 → 2.36.11+70+g00e03a272-1

lib32-glib2 2.54.3+2+g94b38beff-1 → 2.56.0+7+g66948ae23-1

lib32-pango 1.40.14-1 → 1.42.0-1

lib32-tdb 1.3.15-1 → 1.3.15-2

libmagick6 6.9.9.39-2 → 6.9.9.40-1

libwacom 0.28-2 → 0.29-1

luxrays 1.6-14 → 1.6-15

luxrender 1.6-11 → 1.6-12

peek 1.2.2-2 → 1.3.0-2

protobuf 3.5.1.1-1 → 3.5.2-1

vala 0.40.0-1 → 0.40.1-1

Tjek for opdateringer


Brug kommandoen til at kontrollere for tilgængelige pakkeopdateringer på dit system. Hvis der er noget tilgængeligt, vil det udføre opdateringen.

$ sudo pacman -Syup

:: Synkroniserer pakkedatabaser…

antergos er opdateret

core 130,1 KiB 10,6M/s 00:00 [##############################] 100%

extra 1597,8 KiB 19,5M/s 00:00 [##############################] 100%

community 4,2 MiB 37,2M/s 00:00 [##############################] 100%

multilib 169,2 KiB 18,4M/s 00:00 [##############################] 100%

:: Starter fuld systemopgradering…

Søg efter en pakke i databasen


hvis du ikke kender det nøjagtige pakkenavn, som du vil installere, skal du bruge søgefunktionen til at returnere matchende strenge. I dette tilfælde vil jeg søge på chrom.

[Søg efter en pakke fra databasen]

$ pacman -Ss chrom

antergos/chrome-gnome-shell 9-1

  Native integration of extensions.gnome.org with GNOME Shell for Chromium-based browsers.

antergos/chromium-widevine 1:1.4.8.1000-1

  A browser plugin designed for the viewing of premium video content

extra/chromaprint 1.4.3-1

  Library that implements a custom algorithm for extracting fingerprints from any audio
  source

extra/chrome-gnome-shell 10-2

  Native browser connector for integration with extensions.gnome.org

extra/chromium 65.0.3325.181-1

  A web browser built for speed, simplicity, and security

extra/qt5-webengine 5.10.1-1 (qt qt5)

  Provides support for web applications using the Chromium browser project

extra/ttf-croscore 20171025-2

  Chrome OS core fonts

Du kan søge på en allerede installeret pakke ved at tilføje „Q“.

$ pacman -Qs firefox

local/firefox 59.0.1-1

  Standalone web browser from mozilla.org
  

local/firefox-i18n-da 59.0.1-1

  Danish language pack for Firefox

[Hvis du søger en pakke som ikke er instaleret med Q indstilling, får du intet output]

$ pacman-Qs ardour

Kontroller pakkeoplysninger


Hvis du vil have detaljerede oplysninger om en pakke, før du installerer den. Så brug kommandoen nedenfor. Den giver fuld information om pakken, om pakkeversion, størrelse, repo navn osv.

[For at få specefik oplysninger om en pakke]

$ sudo pacman -Sii openshot

Arkiv : community

Navn : openshot

Version : 2.4.1-2

Beskrivelse : an open-source, non-linear video editor for Linux based on MLT framework

Arkitektur : any

URL : http://www.openshotvideo.com/

Licenser : GPL

Grupper : Ingen

Tilbyder : Ingen

Afhænger af : mlt-python-bindings sdl librsvg mplayer pyxdg python-pyqt5

                       python-httplib2  python-pillow  dvgrab  ladspa  sox  vid.stab
                       qt5-svg  sdl_image  libopenshot  python-pyzmq  qt5-webkit
                       python-setuptools  python-requests

Valgfrie afhængigheder : frei0r-plugins: effects

                       libquicktime
                       libavc1394
                       faac
                       jack

Krævet af : Ingen

Valgfri for : Ingen

I konflikt med : Ingen

Erstatter : Ingen

Overførselsstørrelse : 50,87 MiB

Installeret størrelse : 84,26 MiB

Pakkevedligeholder : Florian Pritz

Byggedato : tor 22 mar 2018 12:33:53 CET

MD5-sum : 9125318bcb2c15d48d0fefdeb72cac12

SHA-256 Sum : 9277c12b37dcc2102797beaaa391c0e803c9bca20a60665389976d09d8a6cbed

Signaturer : 6D1655C14CE1C13E

[Hvis du søger en pakke som ikke er instaleret med Q indstilling, får du intet output]

$ pacman -Qi ardour

Vis listen over sikkerhedskopieringsfiler og deres modifikationstilstande. Hvis du installerede Linux kernen 4.14.29 og senere opgaderede til 4.14.29-1, vil det vise modifikationstilstande.

$ pacman -Qii linux-lts

Navn : linux-lts

Version : 4.14.29-1

Beskrivelse : The Linux-lts kernel and modules

Arkitektur : x86_64

URL : https://www.kernel.org/

Licenser : GPL2

Grupper : Ingen

Tilbyder : Ingen

Afhænger af : coreutils linux-firmware kmod mkinitcpio>=0.7

Valgfrie afhængigheder : crda: to set the correct wireless channels of your country[installeret]

Krævet af : Ingen

Valgfri for : Ingen

I konflikt med : Ingen

Erstatter : Ingen

Installeret størrelse : 104,52 MiB

Pakkevedligeholder : Andreas Radke

Byggedato : ons 21 mar 2018 17:44:23 CET

Installerings dato : tor 22 mar 2018 11:46:10 CET

Installerings årsag : Direkte installeret

Installationsscript : Ja

Valideret af : Signatur

Sikkerhedskopier :

UNMODIFIED /etc/mkinitcpio.d/linux-lts.preset

Installer en pakke fra et bestemt arkiv


Brug kommandoen til at installere en pakke fra et bestemt arkiv. I dette tilfælde vil jeg installere alsaplayer fra ekstra arkivet.

$ sudo pacman -S extra/alsaplayer

Se pakkeafhængigheder


Brug kommandoen til at se pakkeafhængigheder.

$ pactree cups

eller

$ pactree -c cups

eller

$ pactree -sc cups

Opliste alle pakker der ikke længere kræves som afhængigheder.

$ pacman -Qdt

dtkwm 2.0.7-1

gendesk 0.7-1

vala 0.38.8-1

Opliste alle pakker eksplicit installeret og som ikke kræves som afhængigheder.

$ pacman -Qet

acpid 2.0.28-1

adwaita-qt5 1.0-1

alsa-utils 1.1.5-2

antergos-cinnamon-meta 1.0-1

antergos-common-meta 1.1-1

antergos-keyring 20170524-1

antergos-midnight-timers 1.0-3

antergos-mirrorlist 20170930-1

arch-wiki-docs 20180105-1

Synkroniser databasen


Brug kommandoen til at Synkronisere databasen. Gør dette før du fortsætter med fuld systemopgradering.

$ sudo pacman -Sy

:: Synkroniserer pakkedatabaser…

antergos er opdateret

core er opdateret

extra er opdateret

community 4,2 MiB 31,9M/s 00:00 [##############################] 100%

multilib er opdateret

Gennemtving synkronisering af databasen

$ sudo pacman -Syy

:: Synkroniserer pakkedatabaser…

antergos 182,2 KiB 3,18M/s 00:00 [##############################] 100%

core 130,1 KiB 11,6M/s 00:00 [##############################] 100%

extra 1598,1 KiB 20,5M/s 00:00 [##############################] 100%

community 4,2 MiB 37,5M/s 00:00 [##############################] 100%

multilib 168,4 KiB 18,3M/s 00:00 [##############################] 100%

Hvad gør "pacman -Syuu" og "pacman -Syy"?


sudo pacman -Syuu:

-S: Synkroniser pakker

-y: Opdater pakke databasen

-uu: sys opgradere alle pakker, gentagne 'u' flag gør det muligt at nedgradere (fra man side):

          Brug denne mulighed to gange for at aktivere pakke nedgraderinger; i dette tilfælde vil pacman
          vælge synkroniseringspakker, hvis versioner ikke stemmer overens med det lokale
          versioner. Dette kan være nyttigt, når brugeren skifter fra et testarkiv
          til et stabil arkiv.

sudo pacman -Syy:

-S: Synkroniser pakker

-yy: Gennemtvinger opdatering af pakkedatabasen, selvom lokal database vises opdateret

Installer opdateringer


[Opdater dit system]

$ sudo pacman -Su

:: Starter fuld systemopgradering…

der er intet at udføre

[Opdater dit system & synkroniser databasen]

$ sudo pacman -Syu

:: Synkroniserer pakkedatabaser…

antergos er opdateret

core er opdateret

extra er opdateret

community er opdateret

multilib er opdateret

:: Starter fuld systemopgradering…

der er intet at udføre

Sådan installeres en gruppepakke


Du kan installere en gruppepakke, som om du vil installere en gruppe software i ét skud. Når du installerer gruppe af pakker, vil pacman bede dig om at vælge pakkerne fra gruppen, og du har mulighed for at udelukke bestemte pakker eller pakker af pakker i listen.

$ sudo pacman -S gnome

:: Der er 52 medlemmer i gruppen gnome:

:: Arkiv extra

 1) adwaita-icon-theme  2) baobab  3) eog  4) epiphany  5) evince  6) gdm
 7) gnome-backgrounds  8) gnome-calculator  9) gnome-calendar  10) gnome-color-manager
 11) gnome-contacts  12) gnome-control-center  13) gnome-dictionary  14) gnome-disk-utility
 15) gnome-documents  16) gnome-font-viewer  17) gnome-keyring  18) gnome-logs
 19) gnome-screenshot  20) gnome-session  21) gnome-settings-daemon  22) gnome-shell
 23) gnome-shell-extensions  24) gnome-system-monitor  25) gnome-terminal
 26) gnome-themes-standard  27) gnome-user-docs  28) gnome-user-share  29) grilo-plugins
 30) gucharmap  31) gvfs  32) gvfs-afc  33) gvfs-goa  34) gvfs-google  35) gvfs-gphoto2
 36) gvfs-mtp  37) gvfs-nfs  38) gvfs-smb  39) mousetweaks  40) mutter  41) nautilus
 42) networkmanager  43) rygel  44) sushi  45) totem  46) tracker  47) tracker-miners
 48) vino  49) xdg-user-dirs-gtk  50) yelp

:: Arkiv community

 51) gnome-software  52) simple-scan

[Hvis du vil installere alle pakker i gruppen, skal du blot slå Enter]

Indtast et valg (standard=alle):

[Dette vil installere 1 til 20 & 36 fra gruppen]

Indtast et valg (standard=alle): 1-20 36

[Dette installerer alle pakker fra gruppen undtagen 15 til 20 & 31]

Indtast et valg (standard=alle): ^15-20 ^31

Du kan læse mere om emnet her

Komando for at se hvilke pakker der tilhører gruppen.

$ sudo pacman -Sg gnome

gnome adwaita-icon-theme

gnome baobab

gnome eog

gnome epiphany

gnome evince

gnome gdm

gnome gnome-backgrounds

gnome gnome-calculator

gnome gnome-calendar

gnome gnome-color-manager

gnome gnome-contacts

gnome gnome-control-center

Hvad der tilhører hvilket program


$ pacman -Qo /etc/cups/

/etc/cups/ er ejet af cups 2.2.6-4

/etc/cups/ er ejet af cups-filters 1.20.1-2

Rens pacman Cachen


Hvis du ønsker at rydde pacman pakke cache, kan det gøres ved at affyre følgende kommandoer.

[fjern alle de cachelagrede pakker, som ikke er installeret i øjeblikket]

$ sudo pacman -Sc

Pakker der skal beholdes:

Alle lokalt installerede pakker

Mappe for mellemlager: /var/cache/pacman/pkg/

:: Ønsker du at fjerne alle andre pakker fra mellemlager? [J/n] j

fjerner gamle pakker fra mellemlager…

Databasemappe: /var/lib/pacman/

:: Ønsker du at fjerne ubrugt arkiver? [J/n] j

fjerner ubrugte synkroniseringsarkiver…

Tøm cachelagrede pakker.

$ sudo pacman -Scc

Mappe for mellemlager: /var/cache/pacman/pkg/

:: Ønsker du at fjerne ALLE filer fra mellemlager? [j/N] j

fjerner alle filer fra mellemlager…

Databasemappe: /var/lib/pacman/

:: Ønsker du at fjerne ubrugt arkiver? [J/n] j

fjerner ubrugte synkroniseringsarkiver…

Advarsel, læs først denne vejledning inden du gør dette Rens pakkecache i Antergos Linux

Læs mere om pacman


Hvis du vil vide mere, kan du læse den fulde dokumentatiom på engelsk her Hvis du kommer fra Red Hat/Fedora, Debian/Ubuntu, SLES/openSUSE eller Gentoo. Så læs Pacman Rosetta Den side viser en tabel over pakkehåndteringskommandoer blandt nogle af de mest populære Linux-distributioner.

Eller brug nedenstående kommandoer til at lære mere om pacman.

$ pacman -help

eller

$ man pacman

  • pacman_kommandoer_til_at_administrere_pakker_pa_arch_linux-baserede_systemer.txt
  • Sidst ændret: 2019/06/28 08:11
  • (ekstern redigering)