web-dev-qa-db-fra.com

Comment transférer des packages et des paramètres installés d'une distribution à une autre?

J'explore l'apprentissage et le système Linux via VirtualBox depuis quelques mois et j'ai décidé que je voulais en faire mon système d'exploitation principal et l'installer sur mon disque dur. J'ai un certain nombre de fichiers, de packages et de paramètres (tels que des modifications de .bashrc) que j'aimerais apporter lorsque je l'installe directement sur mon disque dur, alors comment faire? De plus, en ce moment j'utilise Ubuntu si je décide de passer à une distribution Debian ou RPM similaire, RHEL serait-ce le même processus? Quelles considérations devrais-je prendre en compte le cas échéant?

18
Tony

La gestion des packages est l'un des principaux différenciateurs entre les distributions. Entre les distributions non liées, vous ne pourrez rien faire automatiquement. Différentes distributions décomposent le logiciel en différents ensembles de packages et utilisent des noms différents.

Entre des machines exécutant la même version de la même distribution, vous pouvez réaliser une installation similaire en reproduisant la liste des packages installés. Sur les systèmes utilisant apt, tels que Debian et dérivés (Ubuntu, Mint,…), utilisez apt-clone . Voir Comment puis-je répliquer les sélections de paquets installés d'un système Debian à un autre? (Debian Wheezy) pour les commandes exactes. En bref, sur l'ancienne machine:

Sudo apt-get install apt-clone
apt-clone clone foo

Copie foo.apt-clone.tar.gz sur la nouvelle machine et exécutez

Sudo apt-get install apt-clone
Sudo apt-clone restore foo.apt-clone.tar.gz

apt-clone peut fonctionner entre des distributions liées, par exemple Debian et Ubuntu. Utilisation restore-new-distro au lieu de restore dans ce cas. Si cela échoue, utilisez la méthode manuelle avec dpkg --get-selections et apt-mark, et jouer avec la liste des paquets jusqu'à ce que apt soit satisfait.

Pour vos propres paramètres, c'est plus simple: copiez simplement les fichiers de points depuis votre répertoire personnel. En règle générale, configurez les éléments qui ne sont pas liés au matériel de votre compte, pas à l'échelle du système; cela facilitera leur copie sur une autre machine.

Si vous restez dans la famille Debian, oui, vous pouvez les transférer très facilement. Il vous suffit de répertorier les packages actuellement installés, de les enregistrer dans un fichier, puis de lire ce fichier pour les réinstaller:

  1. Enregistrez les packages installés dans le fichier installed:

    dpkg -l | grep ^ii | awk '{print $2}' > installed
    
  2. Dans votre distribution basée sur Debian nouvellement installée, installez les paquets enregistrés:

    Sudo apt-get install $(cat installed)
    

Alternativement, vous pouvez utiliser un outil GUI pour cela. Mint en a un très joli appelé mintbackup :

mintbackup screenshot

Ensuite, à partir de la nouvelle installation:

another screenshot of mintbackup

10
terdon

Les paramètres sont généralement stockés dans /etc/. etckeeper peut être pratique. Son objectif principal est de transformer /etc/ dans un dépôt git, mais il filtre également certaines parties que vous ne voudriez pas copier, si je comprends bien. Donc, si vous connaissez git, il vaut mieux utiliser etckeeper pour fusionner vos modifications dans la nouvelle installation.

1
Rolf