pacman (Suomi)
Pacman-paketinhallintajärjestelmä on yksi tunnusosaisimmista ominaisuuksista Arch Linuxissa. Se yhdistää yksinkertaisen binääripakettiformaatin ja helppokäyttöisen koontijärjestelmän. Tavoitteena pacman paketinhallintajärjestelmällä on tehdä mahdolliseksi pakettien helppo hallinta, olivat ne sitten virallisista pakettivarastoista tai käyttäjän omista koonneista.
Pacman pitää järjestelmän ajan tasalla synkronisoimalla pakettilistoja isäntä palvelimen kanssa. Tämä palvelin/asiakasohjelma malli antaa myös mahdollisuuden käyttäjälle ladata/asentaa paketteja yksinkertaisella komennolla, jotka tulevat sitten kaikkien tarvittavien riippuvuuksien kanssa kokonaisuutena.
Pacman on kirjoitettu C-ohjelmointikielellä ja käyttää bsdtar(1) tar formaattia paketeissa.
pacman -Ql pacman pacman-contrib | grep -E 'bin/.+'
täydelle listalle.Käyttö
Seuraavat mallit ovat vain osa asioista, mitä pacman voi tehdä ja suorittaa. Enemmän esimerkkejä löytyy pacman(8) manuaalista.
Pakettien asennus
Paketti on arkisto, joka sisältää:
- kaikki (käännetyt) tiedostot sovelluksesta
- metadataa liittyen sovellukseen, kuten sovelluksen nimen, version, riippuvuudet, ...
- asennus tiedostot ja toimintaohjeet pacmanille
- (vaihtoehtoisesti) lisätiedostoja elämän helpottamiseksi, kuten käynnistys/pysäytys skriptit
Archin paketinhallintajärjestelmä pacman voi asentaa, päivittää, ja poistaa näitä paketteja. Pakettien käyttö ohjelmien kääntämisen ja asentamisen sijaan tuo paljon etuja:
- helposti päivitettävä: pacman päivittää olemassa olevat paketit niin pian, kuin päivityksiä on vain saatavilla
- riippuvuuksien tarkistelu: pacman käsittelee riippuvuudet käyttäjän puolesta, täytyy vain tarkentaa ohjelma ja pacman asentaa sen kaikkien muiden tarvittavien ohjelmien kanssa
- puhdas poistaminen: pacmanilla on lista jokaisesta tiedostosta paketissa; tällä ominaisuudella varmistetaan se, ettei yhtäkään tiedostoa jätetä järjestelmään, kun jokin ohjelma päätetään poistaa.
- Paketeilla on usein vaihtoehtoisia riippuvuuksia, jotka ovat paketteja tuomassa lisätoiminnallisuutta sovellukseen, mutta näitä ei varsinaisesti tarvita ohjelman toimimiseen. Kun pakettia asennetaan, pacman listaa paketin vaihtoehtoiset riippuvuudet, mutta ne eivät löydyt
pacman.log
tiedostosta. Käytä #Kysely pakettitietokannassa komentoja näyttääksesi vaihtoehtoisia riippuvuuksia paketista. - Kun asennetaan paketti, joka tarvitaan vain vaihtoehtoisena riippuvuutena johonkin muuhun pakettiin (eli toisin sanoen ei tarvita muutoin erityisesti), kehotetaan käyttämään
--asdeps
merkintää. Lisätiedolle, katso #Asennuksen syy kohta.
pacman -Sy paketin_nimi
pacman -Syu paketin_nimi
sijasta, koska tämä voi johtaa riippuvuus ongelmiin. Katso System maintenance#Partial upgrades are unsupported ja BBS#89328.Tiettyjen pakettien asentaminen
Yhden tai useamman paketin asentamiseen, mukaanlukien riippuvuudet, käytä seuraavaa komentoa:
# pacman -S paketin_nimi1 paketin_nimi2 ...
Useiden pakettien asentamiseen regexin avulla (katso tämä foorumi keskustelu):
# pacman -S $(pacman -Ssq paketti_regex)
Joskus paketista on olemassa useita versioita eri pakettivarastoissa (esim. extra ja testing). Paketin asentamiseen extra pakettivarastosta tässä esimerkissä, pakettivarasto täytyy määrittää paketin nimen edessä:
# pacman -S extra/paketin_nimi
Useiden pakettien asentamiseksi käyttäen samantapaisia nimiä voidaan käyttää aaltosulkeita. Esimerkiksi:
# pacman -S plasma-{desktop,mediacenter,nm}
Tämä voidaan laajentaa hyvinkin monelle tasolle:
# pacman -S plasma-{workspace{,-wallpapers},pa}
Virtuaaliset paketit
Virtuaali paketti erityinen paketti, joka ei ole olemassa yksisteen, vaan sen antaa yksi tai useampi toinen paketti. Virtuaali paketti ei salli paketteja nimeämään erityistä pakettia riippuvuutena, siinä tapauksessa kun ehdokkaita on useita. Virtuaali pakettia ei pystytä asentamaan sen nimellä, sen sijaan ne asennetaan järjestelmään, kun asennetaan paketti joka sitten antaa tämän virtuaalisen paketin.
Pakettiryhmien asentaminen
Jotkin paketit kuuluvat pakettiryhmään, jotka voidaan asentaa kaikki samanaikaisesti. Esimerkiksi, tällä komennolla:
# pacman -S gnome
ohjataan valitsemaan paketteja gnome ryhmästä, joita haluat asentaa.
Joskus pakettiryhmä sisältää paljon paketteja ja saattaa olla että vain muutama niistä halutaan asentaa. Numeroiden erikseen kirjoittamisen sijaan voi joskus olla kätevämpää valita tai erotella paketit tai valikoima paketteja seuraavalla syntaksilla:
Enter a selection (default=all): 1-10 15
joka valitsee paketit 1 - 10 ja 15 asennusta varten, tai:
Enter a selection (default=all): ^5-8 ^2
joka valitsee kaikki paketit paitsi 5 - 8 ja 2 asennusta varten.
Nähdäksesi mitä kuuluu gnome pakettiryhmään, suorita:
# pacman -Sg gnome
Vieraile myös sivulla https://archlinux.org/groups/ nähdäksesi mitä pakettiryhmiä on saatavilla.
--needed
merkinnällä.Pakettien poistaminen
Yhden paketin poistamista varten, jättäen kaikki riippuvuudet asennettuna:
# pacman -R paketin_nimi
Paketin ja sen riippuvuuksien poistaminen, joita mikään muu paketti ei tarvitse:
# pacman -Rs paketin_nimi
Yläpuolella oleva ei välttämättä aina toimi kun paketti kuuluu johonkin pakettiryhmään. Siinä tapauksessa koita:
# pacman -Rsu paketin_nimi
Paketin, sen riippuvuuksien ja kaikkien pakettien, jotka riippuvat tästä poistettavasta paketista, poistamiseen:
# pacman -Rsc paketin_nimi
Pelkä paketin poistamiseen, eikä pakettien poistamiseen joiden toiminta riippuu kyseisestä paketista:
# pacman -Rdd paketin_nimi
Pacman tallentaa tärkeät konfiguraatio tiedostot, kun poistetaan tiettyjä sovelluksia ja nimeää ne liitteellä: .pacsave. Näiden tiedostojen muodostamisen välttämiseksi voidaan käyttää -n
merkkiä:
# pacman -Rn paketin_nimi
Pakettien päivitys
- Käyttäjien oletetaan seuraavan ohjeistusta System maintenance#Upgrading the system osassa järjestelmän päivitykseen säännöllisesti eikä vain sokeasti suorittamaan seuraavaa komentoa.
- Arch tukee vain täysiä järjestelmäpäivityksiä. Katso System maintenance#Partial upgrades are unsupported ja #Pakettien asennus lisätiedolle.
Pacman voi päivittää kaikki paketit järjestelmässä yhdellä komennolla. Tämän suorittaminen voi kumminkin viedä aikaa, riippuen siitä onko järjestelmä kuinka ajan tasalla. Seuraava komento synkronoi pakketivarastojen tietokannat ja päivittää järjestelmän paketit, poislukien "paikalliset" paketit jotka eivät ole konfiguroiduissa pakettivarastoissa:
# pacman -Syu
Kysely pakettitietokannassa
Pacman kyselee paikallista pakettitietokantaa -Q
merkillä, synkronoi tietokanna -S
merkillä ja tiedosto tietokannan -F
merkillä. Katso pacman -Q --help
, pacman -S --help
ja pacman -F --help
jokaisen komennon omille vaihtoehdoille.
Pacman voi etsiä paketteja tietokannasta, etsien niin myös pakettien nimiä kuin kuvauksia:
$ pacman -Ss merkkijono1 merkkijono2 ...
Joskus, -s
n sisään rakennettu ERE (Extended Regular Expressions) voi aiheuttaa ei-toivottuja tuloksia, joten se pitää rajata vastaamaan paketin nimeä; ei paketin kuvausta tai mitään muuta kenttää:
$ pacman -Ss '^vim-'
Jo asennetujen pakettien hakeminen:
$ pacman -Qs merkkijono1 merkkijono2 ...
Paketti tiedostojen nimien hakeminen etäpaketeista:
$ pacman -F merkkijono1 merkkijono2 ...
Laajamittaisen lisätiedon näyttäminen annetusta paketista:
$ pacman -Si paketin_nimi
Paikallisten pakettien hakeminen:
$ pacman -Qi paketin_nimi
Kaksi -i
merkkiä näyttää listan varmuuskopioista ja näiden muokkaustilasta:
$ pacman -Qii paketin_nimi
Hae lista paketin asentamista tiedostoista:
$ pacman -Ql paketin_nimi
Hae lista etäpaketin asentamista tiedostoista:
$ pacman -Fl paketin_nimi
Todenna paketin asentamien tiedostojen olemassa olo:
$ pacman -Qk paketin_nimi
Kaksi k
merkkiä tekee läpikotaisen todennuksen.
Kyselemällä tietokantaa, jotta saadaan selville mille paketille tiedosto kuuluu:
$ pacman -Qo /polku/kyseiselle/tiedostolle
Kyselemällä tietokantaa, jotta saadaan selville mille etäpaketille tiedosto kuuluu:
$ pacman -F /polku/kyseiselle/tiedostolle
Listaa kaikki paketit joita ei enää tarvita riippuvuuksina (orvot):
$ pacman -Qdt
Exec
:ille omassa hook:issa: /usr/bin/bash -c "/usr/bin/pacman -Qtd || /usr/bin/echo '=> None found.'"
Listaa kaikki erityisesti erikseen asennetut paketit, joita ei tarvita riippuvuuksina:
$ pacman -Qet
Katso Pacman/Tips and tricks lisä esimerkeillä.
Pactree
Nähdäksesi riippuvuuden puumallin halutusta paketista:
$ pactree paketin_nimi
Nähdäksesi riippuu-puumallin halutusta paketista, anna reverse merkki -r
pactree komennolle, tai käytä whoneeds pkgtoolsAUR paketista.
Tietokannan rakenne
Pacman tietokannat löytyvät normaalisti polusta /var/lib/pacman/sync
. Jokaista määriteltyä pakettivarastoa kohden, tiedostossa /etc/pacman.conf
, on olemassa vastaava tietokanta tiedosto samassa sijainnissa. Tietokanta tiedostot on gzipattu tar-arkistoiksi sisältäen polun jokaiselle paketille, kuten esimerkiksi which paketille:
$ tree which-2.21-5
which-2.21-5 |-- desc
desc
tiedosto sisältää metadataa kuten paketin kuvauksen, riippuvuudet, tiedoston koon ja MD5 tarkisteen.
Pakettien kätkömuistin putsaaminen
Pacman säilyttää ladattuja paketteja polussa /var/cache/pacman/pkg/
ja ei poista vanhoja tai poistettuja paketteja automaattisesti. Tässä käytännössä on joitain etuja:
- Tälläin pystytään palauttamaan paketti ilman paketin hakemista erikseen ja asentamista muilla tavoilla, kuten esimerkiksi Arch Linux Archiven kautta.
- Paketti, jonka asennus on poistettu, voidaan suoraan uudelleen asentaa kätkömuistikansiosta, ilman uutta latausta pakettitietokannasta.
On kumminkin tarpeellista putsata kjätkömuistia ajoittain näin välttämällä tämän loputtoman kasvun.
paccache(8) skripti, joka tulee paketin pacman-contrib mukana, poistaa kaikki kätketyt versiot asennetuista ja poistetuista paketeista, paitsi 3 kaikkein tuoreinta, oletukselta:
# paccache -r
Aktivoi ja käynnistä paccache.timer
poistaaksesi käyttämättömiä paketteja viikoittain.
Voidaan myös määrittää kuinka monta versiota halutaan pitää. Vain yhden menneen version pitämistä varten voidaan suorittaa:
# paccache -rk1
Lisää -u
/--uninstalled
merkki rajaamaan paccache toimintaa poistetuille paketeille. Esimerkiksi jos halutaan poistaa kaikki poistetut versiot, käytä seuraavaa:
# paccache -ruk0
Tai voit yhdistää sen molemmille asennetuille poistetuille paketeille. Esimerkiksi pitääksesi viimeisimmät kaksi asennettua pakettia, mutta poistaaksesi kaikki poistetut paketit kätkömuistista, käytä seuraavaa:
# paccache -rk2 -ruk0
Katso paccache -h
lisäasetuksille.
Pacman sisältää myös sisään rakennetun asetuksen kätkömuistin ja tietokanta tiedostojen jäämien putsaamiseen pakettivarastoista, joita ei enää ole listattuna konfiguraatiossa /etc/pacman.conf
. Pacman ei kumminkaan onnistu tarjoamaan mahdollisuutta pitää tiettyä määrää edellisiä versioita ja on siksi aggressiivisempi kuin paccachen oletusasetukset.
Poistaaksesi kaikki kätketyt paketit, jotka eivät ole asennettuna, ja käyttämättömät synkronointi tietokannat, suorita:
# pacman -Sc
Kaikkien tiedostojen poistamiseen kätkömuistista, käytä "clean" merkintää kahdesti, tämä on kaikkein agresiivisin lähestymistapa ja ei jätä mitään jälkeensä koko kansioon:
# pacman -Scc
pkgcachecleanAUR ja pacleanerAUR ovat kaksi muuta vaihtoehtoista ohjelmaa putsaamiseen.
Muita komentoja
Lataa paketti ilman asennusta:
# pacman -Sw paketin_nimi
Asenna 'paikallinen' paketti, joka ei tuke etänä pakettivarastosta (esim. paketti on AUR:sta):
# pacman -U /polku/halutulle/paketille/paketin_nimi-versio.pkg.tar.zst
Pitääksesi kopion asennetusta paketista pacmanin kätkömuistissa, käytä:
# pacman -U file:///polku/halutulle/paketille/paketin_nimi-versio.pkg.tar.zst
Asenna 'etä' paketti (ei pakettivarastosta, joka on määriteltynä pacmanin konfiguraatio tiedostossa):
# pacman -U http://www.esimerkki.com/repo/esimerkki.pkg.tar.zst
Hillitäksesi -S
, -U
ja -R
tapahtumien käyttöä, voidaan myös käyttää -p
.
Pacman listaa asennettavat tai poistettavat paketit aina ja kysyy käyttäjältä lupaa ennenkuin mitään muutoksia tehdään.
Asennuksen syy
Pacman tietokanta jakaa asennetut paketit kahteen ryhmään syyn mukaan, miksi ne on asennettu:
-
selvästi asennetut: paketit, jotka kirjaimellisesti annettiin yleisinä pacman
-S
tai-U
komentoina; - riippuvuudet: paketit ,joita ei erikseen ole asennettu (yleisesti) antamalla erillistä argumenttia pacman asennus komennolle. Nämä on asennettu epäsuorasti toisen paketin tarvitsemana joka on selvästi asennettu.
Kun pakettia asennetaan, on mahdollista pakottaa sen asennus syy riippuvuudeksi komennolla:
# pacman -S --asdeps paketin_nimi
--asdeps
tekee tästä sellaisen, että jos poistetaan orpoja, pacman myös poistaa jääneet vaihtoiset riippuvuudet.Kun uudelleen asennetaan pakettia, kuitenkin, sen hetkinen asennus syy pidetään oletukselta.
Lista selvästi asennetuista paketeista voidaan näyttää komennolla pacman -Qe
ja täydentävä lista riippuvuuksista voidaan näyttää komennolla pacman -Qd
.
Vaihtaaksesi aiemmin asennetun paketin asennus syytä, suorita:
# pacman -D --asdeps paketin_nimi
Käytä --asexplicit
tehdäksesi vastakkaisen operaation.
--asdeps
ja --asexplicit
asetusten käyttö päivitettäessä, kuten komennolla pacman -Syu paketin_nimi --asdeps
, on hyvin epäsuosiollista. Tämä vaihtaisi asennus syyn toki myös paketille jota asennetaan, mutta myös paketeille joita ollaan päivittämässä.Etsi pakettia joka sisältää tietyn tiedoston
Synkronoi tiedostotietokanta:
# pacman -Fy
Etsi pakettia, joka sisältää tiedoston kuten:
$ pacman -F pacman
core/pacman 5.2.1-1 (base base-devel) [installed] usr/bin/pacman usr/share/bash-completion/completions/pacman extra/xscreensaver 5.43-1 usr/lib/xscreensaver/pacman
Edistyneempää toimintaa varten voidaan asentaa pkgfile, joka käyttää erillistä tietokantaa kaikilla tiedostoilla ja niihin liittyvillä paketeilla.
Konfiguraatio
Pacmanin asetukset löytyvät /etc/pacman.conf
tiedostosta: tämä on se paikka minne käyttäjä konfiguroi ohjelman toimimaan halutulla tavalla. Syvällisemmin tietoa tästä löytyy pacman.conf(5) manuaalisivulta.
Yleiset asetukset
Yleiset asetukset löytyvät [options]
osassa. Lue pacman.conf(5) tai katso oletus pacman.conf
tiedostoon lisätiedolle mitä on mahdollista tehdä.
Versioiden vertaaminen ennen päivitystä
Vanhojen ja uusien versioiden näkeminen saatavilla olevista paketeista, poista kommentointi "VerbosePkgLists" riviltä tiedostossa /etc/pacman.conf
. Ulostulo komennolla pacman -Syu
on seuraavanlainen:
Package (6) Old Version New Version Net Change Download Size extra/libmariadbclient 10.1.9-4 10.1.10-1 0.03 MiB 4.35 MiB extra/libpng 1.6.19-1 1.6.20-1 0.00 MiB 0.23 MiB extra/mariadb 10.1.9-4 10.1.10-1 0.26 MiB 13.80 MiB
Ohita paketin päivittäminen
Tietyn paketin ohittamista varten järjestelmän päivityksessä, määritä tämä seuraavasti:
IgnorePkg=linux
Useampia paketteja varten käytä välilyönnillä eroteltu lista, tai käytä useampia IgnorePkg
rivejä. Myös glob mallia voidaan käyttää. Jos halutaan ohittaa paketteja vain kerran, voidaan myös käyttää --ignore
merkintää komentorivillä - mutta tämän listan paketit pitää erotella pilkulla.
On silti mahdollista päivittää sivuutettu paketti käyttämällä pacman -S
: tässä tapauksessa pacman muistuttaa siitä, että paketti on sisälletty IgnorePkg
lauseessa.
Ohita pakettiryhmä päivityksessä
Kuten yksitäisten pakettienkin kanssa, on pakettien ryhmien ohittaminen myös mahdollista:
IgnoreGroup=gnome
Ohita tiedostojen päivittäminen
Kaikki tiedostot, jotka listataan NoUpgrade
direktiivillä, jätetään kokonaan huomioimatta paketin asennuksesta/päivityksestä, ja uudet tiedostot asennetaan .pacnew laajennuksella.
NoUpgrade=polku/kyseiseen/tiedostoon
Ohita tiedostoja asennuksessa
Ohittaaksesi asennuksen aina joidenkin tiettyjen polkujen kohdalla, listaa ne NoExtract
alle. Esimerkiksi, systemd yksiköiden asennuksen välttämiseksi kokeile seuraavaa:
NoExtract=usr/lib/systemd/system/*
Myöhemmät säännöt menevät aikaisempien päälle ja voit kieltää säännön lisäämällä alkuun !
merkin.
CheckSpace
asetuksen pacman.conf
tiedostossa vaimentaa tälläiset varoitukset, mutta sitä, että väliä tutkiva toiminnallisuus otetaan käytöstä pois kaikille paketeille.Ylläpidä useita konfiguraatio tiedostoja
Jos on olemassa useita konfiguraatio tiedostoja (esim. pääkonfiguraatio ja konfiguraatio, jossa testing pakettivarasto on aktivoituna) ja asetuksia halutaan jakaa konfiguraatioiden välillä, voidaan käyttää Include
asetusta, joka aina määritetään itse konfigurointi tiedostoissa, esim.:
Include = /polku/yleisiin/asetuksiin
missä /polku/yleisiin/asetuksiin
tiedosto sisältää samat asetukset molemmille konfiguraatioille.
Hookit
Pacman voi suorittaa esi- ja jälki toimia hookien avulla /usr/share/libalpm/hooks/
polusta; useampia polkuja voidaan määrittää HookDir
asetuksella pacman.conf
tiedostossa, joka oletukselta on /etc/pacman.d/hooks
. Hook tiedostojen nimet pitää olla nimettynä .hook päätteellä. Pacman hookit eivät ole interaktiivisia.
Pacman hookeja käytetään, esimerkiksi, yhdessä systemd-sysusers
ja systemd-tmpfiles
kanssa automaattisesti luomaan järjestelmän käyttäjiä ja tiedostoja pakettien asennuksen aikana. Esimerkiksi, tomcat8 määrittää, että tämä haluaa järjestelmän käyttäjän nimellä tomcat8
ja joitain tämän käyttäjän omistamia polkuja, omistukseensa. Pacman hookit systemd-sysusers.hook
ja systemd-tmpfiles.hook
herättävät systemd-sysusers
ja systemd-tmpfiles
, kun pacman päättää, että tomcat8 sisältää tiedostoja, jotka määrittävät käyttäjiä ja tmp tiedostoja.
Lisätiedolle alpm hookeille, katso alpm-hooks(5).
Pakettivarastot ja peilit
Erityisen [options] osan lisäksi, jokainen [section]
tiedostossa pacman.conf
määrittää pakettiriippuvuuden käytettäväksi. Pakettivarasto on looginen kokoelma paketteja, jotka ovat fyysisesti varastoituna yhdellä tai useammalla palvelimella: tästä syystä jokainen palvelin on peilinä pakettivarastolle.
Pakettivarastot jaetaan virallisiin ja epävirallisiin pakettivarastoihin. Pakettivarastojen järjestyksellä konfiguraatio tiedostossa on merkitystä; pakettivarastot listattuna ensimmäisenä ovat arvojärjestyksen päällimäiset ja joita käytetään ennen myöhemmin listattuja pakettivarastoja, kun paketeilla on identtinen nimi näissä varastoissa. Versionumeroa ei huomioida tässä tapauksessa. Pakettivaraston käyttöä varten, sen jälkeen kun se on lisätty, pitää ensin päivittää koko järjestelmä.
Jokainen pakettivarasto osa sallii peililistan määrittämisen, joko suoraan tiedostoon tai erillisessä tähän tarkoitukseen tarkoitetussa tiedostossa Include
toimintaohjeella: esimerkiksi, peilit virallisille pakettivarastoille ovat sisälletynä /etc/pacman.d/mirrorlist
tiedostosta. Katso Mirrors artikkeli peilien konfiguroinille.
Paketin turvallisuus
Pacman tukee pakettien allekirjoituksia, mikä luo lisäturvakerroksen paketeille. Oletus konfiguraatiossa, SigLevel = Required DatabaseOptional
, aktivoidaan allekirjoitus varmenne kaikille paketeille globaalilla tasolla: tämä voidaan ohittaa pakettivarastoa kohden SigLevel
riveillä. Lisätietoa pakettien allekirjoituksista ja näiden varmentamisesta löytyy artikkelista pacman-key.
Vianmääritys
"Failed to commit transaction (invalid or corrupted package)" virheilmoitus
Katso .part tiedostoja (osittain ladattu tiedosto) polusta /var/cache/pacman/pkg/
ja poista ne (johtuu usein oman komennon XferCommand
käytöstä tiedostossa pacman.conf
).
# find /var/cache/pacman/pkg/ -iname "*.part" -delete
Paketteja ei voida hakea asennuksessa
Tämä virhe ilmenee ilmoituksena Not found in sync db
, Target not found
tai Failed retrieving file
.
Ensin, varmistu siitä että paketti on oikeasti olemassa. Jos olet varma sen olemassa olosta, pakettilistasi saattaa olla päivittämättä. Yritä suorittaa komento pacman -Syu
päivityksen pakottamiseksi kaikille pakettilistoille ja lopulta päivittääksesi järjestelmä. Varmistu myös siitä, että valitut peilit ovat ajan tasalla ja pakettivarastot ovat oikein konfiguroitu.
Voi olla mahdollista myös ettei pakettivarastoa, joka sisältää tämän paketin, ole aktivoituna järjestelmässäsi, esimerkiksi kyseinen paketti voisi olla multilib pakettivarastossa, mutta multilib ei ole aktivoituna pacman.conf
tiedostossa.
Signature from "Käyttäjä <[email protected]>" is unknown trust, installation failed
Mahdollisia ratkaisutapoja:
- Päivitä avaimet, toisin sanoen suorita
pacman-key --refresh-keys
- Manuaalisesti päivitä archlinux-keyring paketti ensin, toisin sanoen suorita
pacman -Sy archlinux-keyring && pacman -Su
- Seuraa ohjeita täältä.
"Warning: current locale is invalid; using default "C" locale" virheilmoitus
Kuten virheilmoituksessa sanotaan, paikallistusasetukset eivät ole oikein konfiguroituna. Katso Locale.
Pacman ei kunnioita välityspalvelimen asetuksia
Varmistu siitä että tarpeelliset ympäristömuuttujat ($http_proxy
, $ftp_proxy
jne.) ovat asetettuna. Jos käytät pacmania sudon kanssa, täytyy konfiguroida sudo antamaan nämä ympäristömuuttujat pacmaniin. Varmista myös, että dirmngr konfiguraatiossa honor-http-proxy
on /etc/pacman.d/gnupg/dirmngr.conf
tiedostossa kunniottamassa välityspalvelinta kun avaimia päivitetään.
Kuinka asennan kaikki paketit uudelleen, pitämällä tiedon siitä mitkä paketit ovat erityisesti asennettuna tai riippuvuutena?
Asentaaksesi uudelleen kaikki alkuperäiset paketit: pacman -Qnq | pacman -S -
tai pacman -S $(pacman -Qnq)
(-S
asetus säilyttää asennus syyt oletukselta).
Sen jälkeen pitää uudelleen asentaa kaikki ulkopuoliset paketit, jotka voidaan listata komennolla pacman -Qmq
.