Comment faire des mises à jour Pacman dans Arch Linux

Comment faire des mises à jour Pacman dans Arch Linux

Arch Linux est souvent loué pour son logiciel de saignement et le modèle de libération de roulement. Nous discutons de ces fonctionnalités plus en profondeur dans notre article comparant Arch Linux et Manjaro. En plus de ces éloges, Arch Linux a également la réputation d'être instable. Cette réputation découle de la nature parfois imprévisible du logiciel de saignement. Les derniers logiciels des développeurs en amont peuvent contenir des bogues qui n'étaient pas apparents lors des tests initiaux. En conséquence, le risque est toujours présent que la mise à jour avec le gestionnaire de packages, Pac-Man, peut apporter des résultats inattendus. Ceux-ci peuvent inclure un logiciel spécifique ne fonctionnant plus correctement (ou du tout) ou même plusieurs applications ou environnements de bureau ne fonctionnent plus comme prévu.

La sauvegarde régulièrement de votre système GNU / Linux est la meilleure sauvegarde pour atténuer le mal de tête que cela pourrait provoquer. Il n'y a pas de pénurie de solutions de sauvegarde pour Linux; Certaines des options de sauvegarde incluent DD, BackUppc, RSync, Fsarchiver, RSNAPShot. Si vous avez une solution de sauvegarde régulière en place, il peut être réconfortant de savoir que vous pourriez restaurer à partir d'une sauvegarde dans le cas où un Pac-Man La mise à jour a causé des problèmes, mais ce serait idéal si vous n'aviez pas à. Dans cet article, nous vous montrerons comment revenir en arrière Pac-Man Mises à jour dans Arch Linux. Il y a deux façons d'accomplir cela. Une façon est via le cache Pacman; L'autre est en utilisant le Archive Arch Linux. Nous discuterons des deux méthodes.

Dans ce tutoriel, vous apprendrez:

  • Comment faire des mises à jour de linux arch à l'aide du cache Pacman
  • Comment faire des mises à jour Arch Linux à l'aide de l'archive Arch Linux
Comment faire des mises à jour Pacman dans Arch Linux

Exigences et conventions logicielles utilisées

Exigences logicielles et conventions de ligne de commande Linux
Catégorie Exigences, conventions ou version logicielle utilisée
Système Arch Linux
Logiciel Pac-Man
Autre Accès privilégié à votre système Linux en tant que racine ou via le Sudo commande.
Conventions # - exige que les commandes Linux soient exécutées avec des privilèges racine soit directement en tant qu'utilisateur racine, soit par l'utilisation de Sudo commande
$ - exige que les commandes Linux soient exécutées en tant qu'utilisateur non privilégié régulier

Comment faire des mises à jour de linux arch à l'aide du cache Pacman

Chaque fois que vous installez ou mettez à jour un package Pac-Man enregistre ce package dans / var / cache / pacman / pkg /. Pac-Man vous permet également de mettre à niveau manuellement un package via le -U drapeau. Il s'avère que cette méthode de mise à niveau peut également être utilisée pour installer une ancienne version du package, rétrogradant efficacement le package.

Rétrograder un seul package

Supposons que vous venez de mettre à jour votre système via le $ sudo pacman -syu Commande et ensuite vous ouvrez incendier Pour parcourir le Web, seulement pour réaliser qu'il se bloque maintenant alors qu'il n'avait jamais eu auparavant. Vous pouvez facilement rétrograder incendier à la version précédente que vous aviez installée en utilisant le cache Pacman.

Tout d'abord, examinez le incendier packages répertoriés dans / var / cache / pacman / pkg /

$ ls / var / cache / pacman / pkg / firefox * 

Vous devriez voir la dernière version que vous venez de mettre à jour et toutes les versions précédentes que vous aviez installées. Dans notre exemple, c'est la sortie que nous recevons.

/ var / cache / pacman / pkg / firefox-81.0.1-1-x86_64.pkg.le goudron.ZST / VAR / CACHE / PACMAN / PKG / FIREFOX-83.0-2-x86_64.pkg.le goudron.zst 

Nous savons que nous avons mis à niveau de la version 81.0.1-1 pour 83.0-2 et soupçonne que cela peut avoir causé un problème. Pour tester cette théorie, il suffit de retourner à la version 81.0.1-1 Utilisation du cache Pacman avec la commande suivante.

$ sudo pacman -u / var / cache / pacman / pkg / firefox-81.0.1-1-x86_64.pkg.le goudron.zst 


Vous verrez la sortie suivante.

Packages de chargement… AVERTISSEMENT: Downrading Package Firefox (83.0-2 => 81.0.1-1) Résolution des dépendances… à la recherche de packages conflictuels… Packages (1) Firefox-81.0.1-1 taille totale installée: 206.76 MIB NET SIGNAGE Taille: -0.13 MIB :: Procéder avec l'installation? [O / N] 

Une fois que vous tapez y Pour continuer, vous aurez la version précédemment installée de incendier installé et peut l'ouvrir pour voir si le problème a été résolu.

Détrradage de plusieurs packages

À l'aide du cache Pacman, vous pouvez rétrograder plusieurs packages en les fournissant comme arguments distincts pour Pacman -u.
Par exemple

$ sudo pacman -u / var / cache / pacman / pkg / firefox-81.0.1-1-x86_64.pkg.le goudron.ZST / VAR / CACHE / PACMAN / PKG / ALSA-LIB-1.2.3.2-1-x86_64.pkg.le goudron.ZST / VAR / CACHE / PACMAN / PKG / ADWAITA-ICON-THEME-3.38.0-1-an.pkg.le goudron.zst 

Lors de la rétrogradation de plusieurs packages, il peut être avantageux de passer à la / var / cache / pacman / pkg répertoire afin que vous n'ayez pas besoin de saisir le chemin complet de chaque package que vous souhaitez rétrograder.

$ CD / var / cache / pacman / pkg $ sudo pacman -u firefox-81.0.1-1-x86_64.pkg.le goudron.zst alsa-lib-1.2.3.2-1-x86_64.pkg.le goudron.ZST adwaita-icon-theme-3.38.0-1-an.pkg.le goudron.zst 

Très probablement, vous commencez à penser que la rétrogradation d'un grand nombre de packages de cette façon serait pour le moins fastidieux. Vous pouvez vous retrouver dans des situations où vous soupçonnez que 20 packages différents pourraient potentiellement causer un problème ou que vous n'avez aucune idée de quels packages causent un problème et vous voulez les rétrograder tous. Ces scénarios peuvent être mieux adaptés à l'utilisation du Archive Arch Linux, Mais avant de discuter de cela, examinons quelques exemples de situations où nous pourrions pirater une solution pour utiliser le cache Pacman à cette fin, sans avoir à taper manuellement chaque nom de package.

Détrradage de plusieurs packages connexes avec un schéma de dénomination similaire

Supposons que vous veniez d'alimenter votre machine après ne pas l'avoir utilisée pendant quelques semaines. Vous procédez à la mise à jour de votre système via le $ sudo pacman -syu commande et vous remarquez que toutes vos applications basées sur QT ne fonctionnent pas correctement, mais toutes les autres applications sont. Parce que de nombreux packages et bibliothèques QT fondamentaux ont QT Dans le nom de fichier et il est très peu probable que tous les packages non QT aient ceci dans le nom de fichier, il est possible de randonner uniquement les mises à jour QT de la dernière mise à niveau du système.

Chaque fois que vous effectuez une mise à jour en utilisant Pac-Man un enregistrement de ce que vous avez mis à niveau et quand est conservé / var / log / pacman.enregistrer. Un exemple de ligne suit ci-dessous.

[2020-11-30T05: 39: 16-0500] [ALPM] Amélioré QT5-XMLPatterns (5.15.1-1 -> 5.15.2-1) 


Nous pouvons utiliser ce journal pour nous aider à dégrader systématiquement uniquement les packages QT en recherchant les lignes dans le Pac-Man.enregistrer qui affichent des packages contenant QT dans le nom de fichier qui ont été mis à niveau aujourd'hui et effectuant une manipulation de texte sur eux, puis les fournissant comme arguments à Pacman -u dans une boucle pour. L'exemple ci-dessous suppose que la date actuelle est le 30 novembre 2020. Ajustez la date en conséquence si vous souhaitez en utiliser.

$ grep -a qt / var / log / pacman.Journal | grep 2020-11-30> / tmp / qtupdates.txt $ awk 'print $ 4' / tmp / qtupdates.txt> / tmp / lines1; awk 'print $ 5' / tmp / qtupdates.txt | SED 'S / (/ - / G'> / TMP / LINES2 $ Paste / TMP / LINES1 / TMP / LINES2> / TMP / LINES $ TR -D "[: Blank:]" / Tmp / Packages $ CD / VAR / cache / pacman / pkg / $ pour i dans $ (cat / tmp / packages); do sudo pacman --noconfirm -u "$ i" *; fait 

Détrradage de tous les forfaits améliorés

Supposons que vous veniez d'alimenter votre machine après ne pas l'avoir utilisée pendant quelques semaines. Vous procédez à la mise à jour de votre système via le $ sudo pacman -syu commande et ensuite vous remarquez que tout votre système se sent anormalement lent. Vous n'avez aucune idée de la mise à jour du package pour que cela se produise et vous souhaitez reculer temporairement les 512 d'entre eux à la version précédente que vous aviez installée.

Cela ne nécessite en fait pas plus d'effort que l'exemple précédent. Vous effectuez les mêmes étapes, sauf que vous utilisez le Pac-Man.enregistrer fichier pour retirer les noms de tous les packages qui ont été mis à niveau aujourd'hui et pas seulement ceux qui correspondent à un schéma de dénomination particulier. Cela fonctionnera pour un certain nombre de packages, fonctionnant essentiellement comme un gros bouton d'annulation pour Pac-Man. L'exemple ci-dessous suppose que la date actuelle est le 30 novembre 2020. Ajustez la date en conséquence si vous souhaitez en utiliser.

$ grep -a mise à niveau / var / log / pacman.Journal | Grep 2020-11-30> / TMP / LARNUPDATS.txt $ awk 'print $ 4' / tmp / Larfupdates.txt> / tmp / ligne.txt | SED 'S / (/ - / G'> / TMP / LINES2 $ Paste / TMP / LINES1 / TMP / LINES2> / TMP / LINES $ TR -D "[: Blank:]" / Tmp / Packages $ CD / VAR / cache / pacman / pkg / $ pour i dans $ (cat / tmp / packages); do sudo pacman --noconfirm -u "$ i" *; fait 

Comment faire des mises à jour Arch Linux à l'aide de l'archive Arch Linux

L'archive Arch Linux est une archive officielle qui contient des instantanés des versions précédentes de packages. Ceux-ci sont enregistrés dans le répertoire des packages du site. Il y a deux avantages potentiels à utiliser Archive Arch Linux au dessus de cache Pacman. Premièrement la cache Pacman prend de la place sur votre stockage local. En conséquence, certaines personnes choisiront de nettoyer régulièrement leur cache. Deuxièmement, l'archive met à disposition toutes les versions précédentes d'un package, pas seulement celles que vous aviez installées auparavant.

Rétrograder un seul package

Pour rétrograder un package à une version précédente, vous le trouvez d'abord dans l'archive, puis utilisez Pac-Man pour rétrograder vers cette version spécifique. Si nous réexaminons notre exemple précédent de rétrogradation Incendier, Nous ne nous limitons plus à la rétrogradation de la version 83.0-2 pour 81.0.1-1. Comme vous pouvez le voir dans les archives de Firefox, nous avons également la possibilité de rétrograder aux versions intermédiaires suivantes: 81.0.2-1, 82.0-1, 82.0.2-1, 82.0.3-1, 83.0-1.

Pour rétrograder à Incendier version 83.0-1 en utilisant le Archive Arch Linux Entrez la commande suivante.

$ sudo pacman -u https: // archive.Archlinux.org / packages / f / firefox / firefox-83.0-1-x86_64.pkg.le goudron.zst 


Rétrograder tous les packages à une date précédente

Une autre option dont vous disposez lorsque vous utilisez le Archive Arch Linux est de restaurer tous les packages de votre système à la version «actuelle» qui existait dans les référentiels à une date spécifique dans le temps. Cela peut être utile si vous rencontrez des problèmes avec votre système d'arc maintenant, mais vous vous souvenez qu'il y a quelques semaines, vous n'avez pas ces problèmes. Dans l'exemple suivant, nous rétrograderons tous les packages au 10 novembre 2020.
Pour rétrograder les packages, nous devrons faire savoir à Pacman que nous voulons utiliser le repo d'archive en modifiant / etc / pacman.D / Mirrorlist.
Avant d'apporter des modifications dans le fichier, il est recommandé de le sauvegarder afin que nous puissions facilement revenir au courant miroir dossier lorsque nous aimerions.

$ sudo cp / etc / pacman.D / MirrorList ,.bak 

Ensuite, modifiez votre / etc / pacman.D / Mirrorlist Fichier en utilisant votre éditeur de choix:

$ sudo vim / etc / pacman.D / Mirrorlist 

et changer le contenu vers les éléments suivants.

### Arch Linux Repository Mirrorlist ### Créé pour rétrograder jusqu'au 10 novembre 2020 Server = https: // archive.Archlinux.org / repos / 2020/10/11 / $ repo / os / $ arch 

Maintenant, pour finaliser la rétrogradation des packages, entrez la commande suivante.

$ sudo pacman -syyuu 

Conclusion

Dans cet article, nous avons examiné deux méthodes pour faire reculer ou rétrograder les packages dans Arch Linux, le cache Pacman et le Archive Arch Linux. Ce sont deux méthodes puissantes qui ont leurs propres avantages. Réfléchissons brièvement sur ces avantages alors que nous concluons cet article.

Le principal avantage de l'utilisation du cache Pacman est qu'il ne nécessite pas de connexion Internet ou de téléchargement de packages car il est stocké localement. En conséquence, le processus de rétrogradation est plus rapide. Un autre avantage est que le cache Pacman Contient des versions de packages que vous avez installés sur votre système auparavant, donc vous avez probablement une idée de la façon dont ils fonctionnaient. Un troisième avantage est que vous pouvez rétrograder plusieurs packages sans avoir à modifier aucun fichier de configuration.

Le principal avantage de l'utilisation du Archive Arch Linux est que vous pouvez rétrograder vers n'importe quelle version d'un package, que vous l'aviez déjà installé. Un autre avantage est qu'il ne prend pas le stockage local, donc si vous utilisez un stockage bas et que vous souhaitez effacer votre cache Pacman, vous savez qu'il existe une autre option viable pour rétrograder. Un troisième avantage est que vous pouvez facilement rétrograder chaque package de votre système simplement en modifiant un seul fichier de configuration.

Tutoriels Linux connexes:

  • Choses à installer sur Ubuntu 20.04
  • Installation de Manjaro Linux
  • Guide du débutant de Manjaro Linux
  • Meilleure distribution Linux pour les développeurs
  • Manjaro Linux Windows 10 Double démarrage
  • Manjaro Linux vs Arch Linux
  • Ajout d'un repos de bord de saignement à Kali Linux
  • Comment mettre à jour et mettre à niveau Manjaro Linux
  • Créer USB Bootable Manjaro Linux
  • Installez Manjaro dans VirtualBox