Aller au contenu

Gestionnaire de paquets Pacman

Copier toutes les commandes Générer PDF

Commandes et workflows Pacman complets pour la gestion des paquets Arch Linux.

Installation et mises à jour

Opérations de base

Command Description
sudo pacman -Syu Update system (sync + upgrade)
sudo pacman -S package_name Install package
sudo pacman -R package_name Remove package
sudo pacman -Rs package_name Remove package and dependencies
sudo pacman -Rns package_name Remove package, deps, and config
sudo pacman -U package.pkg.tar.xz Install local package

Installation avancée

Command Description
sudo pacman -S package1 package2 Install multiple packages
sudo pacman -S --needed package_name Install only if not installed
sudo pacman -S --asdeps package_name Install as dependency
sudo pacman -D --asdeps package_name Mark as dependency
sudo pacman -D --asexplicit package_name Mark as explicitly installed

Informations sur l'emballage

Recherche et information

Command Description
pacman -Ss keyword Search for packages
pacman -Si package_name Show package information
pacman -Q List installed packages
pacman -Qs keyword Search installed packages
pacman -Qi package_name Show installed package info
pacman -Ql package_name List package files
pacman -Qo /path/to/file Find package owning file

Dépendances des paquets

Command Description
pacman -Qi package_name \|grep Depends Show dependencies
pacman -Qii package_name Show detailed package info
pactree package_name Show dependency tree
pactree -r package_name Show reverse dependencies

Entretien du système

Opérations de nettoyage

Command Description
sudo pacman -Sc Clean package cache
sudo pacman -Scc Clean all cache
sudo pacman -Rns $(pacman -Qtdq) Remove orphaned packages
sudo pacman -Qqd \|pacman -Rsu - Remove unused dependencies

Opérations de bases de données

Command Description
sudo pacman -Sy Sync package database
sudo pacman -Syy Force sync database
sudo pacman-db-upgrade Upgrade package database

AUR (Arch User Repository)

Aides AUR

Command Description
yay -S package_name Install AUR package (yay)
yay -Syu Update system including AUR
yay -Ss keyword Search AUR packages
paru -S package_name Install AUR package (paru)

Installation AUR manuelle

# Clone AUR package
git clone https://aur.archlinux.org/package_name.git
cd package_name

# Review PKGBUILD
cat PKGBUILD

# Build and install
makepkg -si

Fichiers de configuration

Configuration de Pacman

File Description
/etc/pacman.conf Main configuration
/etc/pacman.d/mirrorlist Mirror list
/var/log/pacman.log Package log
/var/lib/pacman/local/ Local package database

Exemple pacman.conf

[options]
HoldPkg     = pacman glibc
Architecture = auto
Color
CheckSpace
VerbosePkgLists
ParallelDownloads = 5

[core]
Include = /etc/pacman.d/mirrorlist

[extra]
Include = /etc/pacman.d/mirrorlist

[community]
Include = /etc/pacman.d/mirrorlist

[multilib]
Include = /etc/pacman.d/mirrorlist
```_

## Gestion des miroirs

### Réflecteur (optimisation des miroirs)
|Command|Description|
|---------|-------------|
|`sudo reflector --latest 20 --protocol https --sort rate --save /etc/pacman.d/mirrorlist`|Update mirrorlist|
|`sudo reflector --country 'United States' --latest 10 --sort rate --save /etc/pacman.d/mirrorlist`|Country-specific mirrors|

### Sélection manuelle du miroir
```bash
# Backup current mirrorlist
sudo cp /etc/pacman.d/mirrorlist /etc/pacman.d/mirrorlist.backup

# Edit mirrorlist
sudo nano /etc/pacman.d/mirrorlist

# Test mirrors
sudo pacman -Syy
```_

## Groupes d'emballage

### Opérations de groupe
|Command|Description|
|---------|-------------|
|`pacman -Sg`|List all groups|
|`pacman -Sg group_name`|List packages in group|
|`sudo pacman -S group_name`|Install package group|
|`sudo pacman -S --needed group_name`|Install missing group packages|

### Groupes communs
|Group|Description|
|-------|-------------|
|`base`|Base system packages|
|`base-devel`|Development tools|
|`gnome`|GNOME desktop environment|
|`kde-applications`|KDE applications|
|`xorg`|X Window System|

## Utilisation avancée

### Vérification de l'emballage
|Command|Description|
|---------|-------------|
|`sudo pacman -Qk`|Check all packages|
|`sudo pacman -Qkk`|Thorough check|
|`sudo pacman -Qk package_name`|Check specific package|

### Paquets de déclassement
|Command|Description|
|---------|-------------|
|`sudo pacman -U /var/cache/pacman/pkg/package-version.pkg.tar.xz`|Downgrade from cache|
|`downgrade package_name`|Downgrade using downgrade tool|

### Crochets et Scripts
```bash
# /etc/pacman.d/hooks/example.hook
[Trigger]
Operation = Install
Operation = Upgrade
Type = Package
Target = *

[Action]
Description = Running custom script...
When = PostTransaction
Exec = /usr/local/bin/custom-script.sh

Dépannage

Questions communes

Problem Solution
Conflicting files sudo pacman -S --overwrite glob package
Corrupted package sudo pacman -S --force package
Key issues sudo pacman-key --refresh-keys
Database lock sudo rm /var/lib/pacman/db.lck

Conflits de paquets

Command Description
sudo pacman -Rdd package_name Remove without checking deps
sudo pacman -S --force package_name Force installation
sudo pacman -Syu --ignore package_name Ignore package during upgrade

Gestion des clés

Command Description
sudo pacman-key --init Initialize keyring
sudo pacman-key --populate archlinux Populate Arch keys
sudo pacman-key --refresh-keys Refresh all keys
sudo pacman-key --recv-keys KEYID Receive specific key

Optimisation des performances

Téléchargements parallèles

# /etc/pacman.conf
[options]
ParallelDownloads = 5

Miroirs les plus rapides

# Install reflector
sudo pacman -S reflector

# Auto-update mirrors weekly
sudo systemctl enable reflector.timer

SSD Optimisation

# /etc/pacman.conf
[options]
NoExtract = usr/share/doc/*
NoExtract = usr/share/man/*
NoExtract = usr/share/info/*

Sauvegarde et récupération

Sauvegarde de la liste des paquets

# Create package list
pacman -Qqe > pkglist.txt

# Restore packages
sudo pacman -S --needed - < pkglist.txt

Capture instantanée du système

# Create system backup
sudo rsync -aAXv / --exclude=\\\\{"/dev/*","/proc/*","/sys/*","/tmp/*","/run/*","/mnt/*","/media/*","/lost+found"\\\\} /backup/

# Package cache backup
sudo cp -r /var/cache/pacman/pkg/ /backup/pacman-cache/

Meilleures pratiques

Sécurité

  1. ** Mises à jour régulières** : Gardez le système à jour avec sudo pacman -Syu
  2. Vérification des clés: Maintenez à jour les clés de signature du paquet
  3. AUR Attention: Consultez les PKGBUILD avant de construire des paquets AUR
  4. Installation miniature: Installer uniquement les paquets nécessaires
  5. Backup: Sauvegardes système et liste de paquets

Rendement

  1. ** Optimisation des risques** : Utilisez des miroirs plus rapides avec réflecteur
  2. Parallel Downloads: Activer les téléchargements parallèles
  3. Gestion des caches : Nettoyage régulier du cache
  4. ** Optimisation SSD** : Exclure les fichiers inutiles
  5. ** Optimisation de la base de données** : Gardez la base de données du paquet propre

Entretien

  1. ** Nettoyage des orphelins**: enlèvement régulier des colis orphelins
  2. Surveillance du journal : Vérifier les journaux de pacman pour les problèmes
  3. Dependency Health: Surveiller les dépendances des paquets
  4. Mirror Health: Vérifier l'accessibilité aux miroirs
  5. ** Cohérence du système**: vérification régulière du colis