Postez ici vos trucs & astuces.
Répondre

Sauvegarde/Restauration de tous les paquets

#1Messageil y a 9 ans

Bonjour :bjr:

Comment sauvegarder et restaurer tous ses paquets en cas de réinstallation du système ?
On en a déjà parlé dans le cours d'un sujet, j'ai quand même jugé utile d'en faire un sujet à part.

Ce qui est bien avec la distribution Manjaro tout comme avec Arch Linux, c’est d’être en Rolling Release :sourire:
Le système ainsi que les programmes sont toujours à jour et n'ont pas besoin d'être réinstallés tous les six mois :sourire:

Cependant on n’est jamais à l’abri d’une mise à jour qui se passe mal ou d'un problème matériel d’où l’obligation de tout réinstaller.
C’est assez pénible et long de réinstaller tous les logiciels. et pas particulièrement jouissif :desole:

Voici donc une petite astuce qui permet de sauvegarder tous les paquets dans deux fichiers qu'il suffira de restaurer en cas de besoin.

On commence par créer la liste des paquets installés issus des dépôts officiels dans un simple fichier texte :

pacman -Qqen > pkglist-repo.txt

Puis la liste des paquets installés issus du dépôt AUR dans un simple fichier texte :

pacman -Qqem > pkglist-aur.txt


Les fichiers pkglist.txt se trouvent dans le répertoire utilisateur et sont à sauvegarder sur un support externe.

En cas de besoin, pour restaurer tous les paquets, mettre les deux fichiers sauvegardés dans le nouveau dossier personnel, puis :

sudo pacman -S --needed $(< pkglist-repo.txt)
yaourt -S --needed --noconfirm $(< pkglist-aur.txt)

Evidemment (merci à waitnsea) ces fichiers texte sont à actualiser régulièrement, certains paquets étant retirés des dépôts ou tout simplement en raison des nouvelles installations/désinstallations que l'ont fait.

sources :
- memo-linux
- forum inter

Sauvegarde/Restauration de tous les paquets

#2Messageil y a 9 ans

Salut Thierry,

Merci pour l' info. :bien et pour le lien.

Bonne soirée

Sauvegarde/Restauration de tous les paquets

#3Messageil y a 9 ans

Indispensable post :clap

Sauvegarde/Restauration de tous les paquets

#4Messageil y a 9 ans

Excellent, merci pour l'astuce !!!

Sauvegarde/Restauration de tous les paquets

#5Messageil y a 9 ans

Bonsoir à tous,
Sans vouloir troller, cette "astuce" n'est pas valable éternellement, les mises à jour entrainent l'abandon de certains paquets ou ensembles au profit d'autres qui peuvent ne même plus figurer dans les dépôts.
Un exemple parmi bien d'autres: l'abandon de nepomuk au profit de baloo, l'arrivée de mariadb, etc...
À actualiser régulièrement, par exemple avant chaque mise à jour.

Sauvegarde/Restauration de tous les paquets

#6Messageil y a 9 ans

Salut JP

Tu as raison de le souligner, bien sûr ces fichiers texte sont à actualiser régulièrement, déjà pour la raison que tu évoques et en plus en raison des nouvelles installations/désinstallations que l'ont fait.
Je vais le mentionner dans le premier message, merci :clindoeil:

Sauvegarde/Restauration de tous les paquets

#7Messageil y a 9 ans

waitnsea a écrit :À actualiser régulièrement, par exemple avant chaque mise à jour.

justement je viens de tester une sauvegarde automatique dans le "cloud" (et restauration dans une vm)
pour moi le "cloud" c'est github (compte gratuit)
ps: pour github on a un LOGIN qui est utile aussi pour connaitre son url; le repository se nomme "pacman"

#!/bin/bash
cd pacman
pacman -Qqen > pkglist-repo.txt
pacman -Qqem > pkglist-aur.txt

#on a executé les 2 lignes a la création du repository dans le dossier "pacman"
#git init
#git remote add origin https://github.com/monLOGIN/pacman.git

echo '---------- git add ----------'
git add pkglist-repo.txt
git add pkglist-aur.txt
echo '---------- git commit ----------'
git commit -m "derniere sauvegarde de ma config Manjaro"
echo '---------- git upload ----------'
git push origin master

#voila c'est fini

echo '-----------------------------------'
echo 'pour restauration:'
echo 'git clone https://github.com/monLOGIN/pacman.git'
echo 'sudo pacman -S --needed $(< pacman/pkglist-repo.txt)'
echo 'yaourt -S --needed --noconfirm $(< pacman/pkglist-aur.txt)'


pour la restauration, on se place n'importe ou sur son dd puis :

git clone https://github.com/monLOGIN/pacman.git
echo '---------- git a créé un dossier pacman et fait un download ----------'
sudo pacman -S --needed $(< pacman/pkglist-repo.txt)
yaourt -S --needed --noconfirm $(< pacman/pkglist-aur.txt)

éventuellement on a ajouté un script restauration.sh dans le repository
Dernière modification par papajokeil y a 9 ans, modifié au total 1 fois.

Sauvegarde/Restauration de tous les paquets

#8Messageil y a 9 ans

:clap

Sauvegarde/Restauration de tous les paquets

#9Messageil y a 9 ans

le test de recup en vm (sur iso "tout frais" : E18 de fassil :!: )...

sudo pacman -S --needed $(< pkglist-repo.txt)

le retour après 3 question (3x choix no1):

(659/659) analyse des conflits entre fichiers      [######################] 100%
Erreur: la validation de la transaction a échoué (conflit de fichiers)
btrfs-progs: /usr/bin/fsck.btrfs est déjà présent dans le système de fichiers
Des erreurs se sont produites, aucun paquet n'a été mis à jour.

dur dur de ce passer de --force

Sauvegarde/Restauration de tous les paquets

#10Messageil y a 9 ans

:bjr: Salut Thierry
J'ai suivi ton lien memo-linux
et apparemment il y a le commentaire suivant :
Bonjour
Il vaut mieux passer la commande :
pacman -Qeq > pkglist.txt
Celle-ci liste les paquets y compris ceux de AUR.
-Qqen ne liste que les paquets installés par pacman.


Exact ?
A ce moment là une seule ligne de commande pour sauver et une autre pour restaurer ? Oui ? Non ?
Alors si Oui ce serait :
Pour sauvegarder :

pacman -Qeq > pkglist.txt

Pour restaurer :

sudo pacman -S --needed $(< pkglist.txt)

Exact ?
Faux ?

Merci de ces astuces et de tes infos.
Jean

Sauvegarde/Restauration de tous les paquets

#11Messageil y a 9 ans

Salut Jean

Je crois bien qu'on en a déjà parlé sur ce forum et il est bien préférable de passer par deux fichiers texte et donc de faire comme sur le forum inter plutôt que comme sur memo-linux.
Il faudrait faire une recherche sur le forum.

Sauvegarde/Restauration de tous les paquets

#12Messageil y a 9 ans

:bjr:
On pourrait se concocter un alias du genre

alias maj='sudo pacman-mirrors -g -c France,Germany,Netherlands,United_Kingdom && sudo pacman -Syu && yaourt -Syua && pacman -Qqen > pkglist-repo.txt && pacman -Qqem > pkglist-aur.txt'

Comme ça , la liste sera toujours actualisée après chaque mise à jour en tapant simplement :

maj

Sauvegarde/Restauration de tous les paquets

#13Messageil y a 9 ans

ewolnux a écrit :Salut Jean

Je crois bien qu'on en a déjà parlé sur ce forum et il est bien préférable de passer par deux fichiers texte et donc de faire comme sur le forum inter plutôt que comme sur memo-linux.
Il faudrait faire une recherche sur le forum.


Ok, oui il me semblait avoir vu une discussion sur ce sujet mais je ne l'ai pas retrouvée.
Je ne suis vraiment pas doué pour "chercher", j'ai quelques difficultés avec les "mots clés".
C'est pour ça que maintenant je me fais une liste des pages qui contiennent des infos qui m’intéressent. !
Bon pas grave du tout, de toutes façons ce n'est pas bien difficile non plus de taper 2 lignes au lieu d'une.....!

Et la solution de @lemust83" avec son alias est très bonne aussi :bien

Un grand merci à vous deux !
:merci::merci::bien:bien

Sauvegarde/Restauration de tous les paquets

#14Messageil y a 9 ans

janodherepio a écrit :Et la solution de @lemust83" avec son alias est très bonne aussi :bien

C'est un fait ; après il faut bien penser à aller mettre ces deux fichiers sur un support externe, au cas où.

J'ai corrigé son alias, il y avait un espace en trop.

Sauvegarde/Restauration de tous les paquets

#15Messageil y a 9 ans

la nécessité de décomposer l'opération en deux étapes est justifiée: Yaourt n'est pas installé par défaut sur toutes les versions, et donc mieux vaut commencer par installer ce qui est dans les dépôts grâce à Pacman (ce qui devrait en prime installer Yaourt et base-devel pour la suite).
de plus, beaucoup de gens sur ce forum utilisent aussi Arch, pour laquelle cette méthode est aussi valable; mais justement, chez Arch, Yaourt n'est pas dans les dépôts et doit être installé depuis AUR à la main.

Sauvegarde/Restauration de tous les paquets

#16Messageil y a 9 ans

Loubrix a écrit :la nécessité de décomposer l'opération en deux étapes est justifiée: Yaourt n'est pas installé par défaut sur toutes les versions, et donc mieux vaut commencer par installer ce qui est dans les dépôts grâce à Pacman (ce qui devrait en prime installer Yaourt et base-devel pour la suite).
de plus, beaucoup de gens sur ce forum utilisent aussi Arch, pour laquelle cette méthode est aussi valable; mais justement, chez Arch, Yaourt n'est pas dans les dépôts et doit être installé depuis AUR à la main.


Donc ........ A Bien noter ! Merci pour ces précisions @Loubrix :merci::bien

Sauvegarde/Restauration de tous les paquets

#17Messageil y a 8 ans

sudo pacman -S --needed $(< pkglist-repo.txt)


cette commande ne fait que me lister les paquets dont je n'ai pas besoin car déjà installé. Moi je voudrai plutôt qu'il m'installe les paquets manquants....Il ne manquerait pas une option au pacman pour ça ?

Sauvegarde/Restauration de tous les paquets

#18Messageil y a 8 ans

Personnellement, j'utilise la commande suivante pour installer mes différents paquets depuis un fichier texte :

yaourt -S --noconfirm --needed $(sed s/#.*// Manjaro-pkg.txt)

Ça me permet d'ajouter des commentaires à la fin des lignes ou bien de commenter des lignes entières...

Sauvegarde/Restauration de tous les paquets

#19Messageil y a 7 ans

ewolnux a écrit :12 Août 2014, 16:07

Comment sauvegarder et restaurer tous ses paquets en cas de réinstallation du système ?
On en a déjà parlé dans le cours d'un sujet, j'ai quand même jugé utile d'en faire un sujet à part.


Bonjour ewolnux,

Je découvre le chemin vers le (Klili)Manjaro et comme je l'ai déjà fait remarquer, le chemin est très bien balisé :clap

Mon installation s'est très bien passée, y compris l'ajout de dizaines d'applications dont 13 provenant de AUR 8-)

Et là, je viens de trouver comment générer une liste des paquets pour les installer sur les machines suivantes :bien

Merci !
Répondre