Sauvegarder tout le système d'exploitation


20

Je dois formater tout mon disque et réinstaller Ubuntu.

J'ai installé beaucoup de logiciels sur mon système actuel. Et je devrai réinstaller toutes ces mises à jour, pilotes et applications aussi.

Existe-t-il un moyen de créer une image .iso de mon Ubuntu installé avec tous les logiciels, préférences, pilotes, etc.?

Existe-t-il un moyen de sauvegarder l'intégralité de mon système d'exploitation avec tous ses logiciels, lecteurs, mises à jour et tout?


3
La sauvegarde de l'ensemble du système d'exploitation est une question valable, cependant, la raison que vous donnez: "Je dois formater tout mon disque et réinstaller Ubuntu" semble étrange. Pourquoi voudriez-vous formater le disque que vous avez quand vous voulez réinstaller vraiment tout ce que vous avez actuellement dessus de toute façon?
Martin

Vous voudrez peut-être réfléchir à la raison pour laquelle Linux a des partitions, et voici un très bon guide pour en parler: tldp.org/LDP/intro-linux/html/sect_03_01.html#sect_03_01_02
Vue elliptique du

Réponses:



21

Ce que vous pouvez faire est de sauvegarder votre répertoire personnel et d'enregistrer une liste de tous les packages que vous avez installés. Pour enregistrer la liste des logiciels installés, utilisez la commande suivante:

sudo dpkg --get-selections > package_list

Cela créera un fichier avec une liste de tous les paquets / logiciels installés sur ce système. Vous devrez sauvegarder ce fichier dans un endroit sûr.

Ensuite, lorsque vous réinstallez ubuntu sur votre machine, vous pouvez utiliser la commande suivante pour installer tous ces logiciels

sudo dpkg --set-selections < packages_list

Cette commande n'installera rien. Il marquera simplement les packages à installer. Pour les installer, exécutez la commande suivante:

sudo apt-get -u dselect-upgrade

Cela prendra du temps car votre système téléchargera et installera tous les packages. Une fois cette commande terminée, remplacez votre répertoire personnel actuel par celui que vous avez sauvegardé précédemment.

J'espère que cela t'aides


mais n'ai-je pas besoin de réinstaller les packages dans un nouvel Ubuntu installé?
Avinash Sonawane

@Avinash: cette commande réinstalle les paquets dans le Ubuntu nouvellement installé
Jeremy Kerr

@ Jeremy- je veux dire .. cette commande va chercher (télécharger) les packages puis les installer ou je n'ai rien à télécharger quoi que ce soit que j'ai téléchargé jusqu'à maintenant? En fait, je ne veux pas télécharger quoi que ce soit que j'ai déjà, car cela prend beaucoup de temps pour télécharger ces énormes données.
Avinash Sonawane

@Avinash: désolé, j'ai oublié d'ajouter une commande pour mettre à jour. J'ai mis à jour la réponse plz check.
binW

Pas tout à fait la méthode que j'utiliserais, mais l'effet global est le même.
MBraedley

10

J'ai répondu "Comment personnaliser un CD Ubuntu en direct?" avec un moyen de créer des CD live à partir des installations actuelles. Cela signifie que vous n'aurez pas besoin de télécharger à nouveau tous les packages. Ce guide peut sembler long et difficile, mais il s'agit principalement de «suivre» et de «copier-coller». Le voici, copié et édité un peu:

Création d'un CD live à partir d'une installation existante / nouvelle

Un bon moyen serait de créer un CD live à partir d'une installation actuelle. Cela peut être fait à l'aide d'une machine virtuelle (il suffit de ne pas installer d'outils VM dans le système d'exploitation invité)

Donc, nous avons d'abord besoin d'une nouvelle installation (si vous ne pouvez pas l'installer pour de vrai, essayez d'utiliser une machine virtuelle) avec uniquement les choses dont vous avez besoin (dans votre cas, thunderbird, samba et ssh). Ensuite, nous ajustons le système et enregistrons où se trouvent les ajustements (par exemple, vous modifiez l'arrière-plan de votre bureau, les paramètres sont dans ~ / .gconf ou vous ajoutez des raccourcis firefox, ils sont situés dans ~ / Desktop). Cela est nécessaire pour l'étape 4.

  1. Configurez quelques variables:

    export WORK=~/temp
    export CD=~/livecd
    export FORMAT=squashfs
    export FS_DIR=casper
    

    Remplacez ~ / temp par un chemin d'accès à un répertoire temporaire dans lequel nous travaillerons. Remplacez ~ / livecd par un chemin d'accès à l'arborescence du CD.

  2. Faites la structure du dossier. sudo mkdir -p ${CD}/{${FS_DIR},boot/grub} ${WORK}/rootfs

  3. Maintenant, nous devrons installer certains packages:

    sudo apt-get install grub2 xorriso squashfs-tools
    
  4. Nous allons maintenant copier l'installation actuelle, modifier les drapeaux d'exclusion pour répondre à vos besoins:

    sudo rsync -av --one-file-system --exclude=/proc/* --exclude=/dev/* \
    --exclude=/sys/* --exclude=/tmp/* --exclude=/home/* --exclude=/lost+found \
    --exclude=/var/tmp/* --exclude=/boot/grub/* --exclude=/root/* \
    --exclude=/var/mail/* --exclude=/var/spool/* --exclude=${WORK}/rootfs \
    --exclude=/etc/fstab --exclude=/etc/mtab --exclude=/etc/hosts \
    --exclude=/etc/timezone --exclude=/etc/shadow* --exclude=/etc/gshadow* \
    --exclude=/etc/X11/xorg.conf* --exclude=/etc/gdm/custom.conf \
    / ${WORK}/rootfs
    

    Si vous avez une partition de démarrage distincte, exécutez ceci: sudo cp -av /boot/* ${WORK}/rootfs/boot
    Si vous souhaitez copier vos configurations et fichiers utilisateur, modifiez cette liste selon vos besoins: CONFIG = '. Config .gconf Desktop someotherfolder andanotherfolder' Et maintenant nous copions vos configurations et fichiers:

    cd ~ && for i in $CONFIG
    do
    sudo cp -rpv --parents $i ${WORK}/rootfs/etc/skel
    done        
    
  5. Nous allons maintenant chrooter dans le nouveau système et le modifier.

    sudo mount  --bind /dev/ ${WORK}/rootfs/dev
    sudo mount -t proc proc ${WORK}/rootfs/proc
    sudo mount -t sysfs sysfs ${WORK}/rootfs/sys
    sudo mount -t devpts devpts ${WORK}/rootfs/dev/pts
    sudo chroot ${WORK}/rootfs /bin/bash
    

    Les commandes suivantes se font en chroot:

    LANG=
    apt-get update
    apt-get install casper
    

    Casper contient des scripts en direct. Maintenant, le programme d'installation (version gnome) apt-get install ubiquity ubiquity-frontend-gtk Ou si vous voulez KDE:

    apt-get install ubiquity ubiquity-frontend-kde
    
  6. Mettez à jour modules.dep et initramfs:

    depmod -a $(uname -r)
    update-initramfs -u -k $(uname -r)
    
  7. Supprimer les utilisateurs non-système - ne vous inquiétez pas, nous avons copié les paramètres et les données dans le "squelette" des utilisateurs. Cela signifie que tous les nouveaux utilisateurs en auront.

    for i in `cat /etc/passwd | awk -F":" '{print $1}'`
    do
        uid=`cat /etc/passwd | grep "^${i}:" | awk -F":" '{print $3}'`
        [ "$uid" -gt "999" -a  "$uid" -ne "65534"  ] && userdel --force ${i} 2>/dev/null
    done
    
  8. Nettoyer:

    apt-get clean
    find /var/log -regex '.*?[0-9].*?' -exec rm -v {} \;
    find /var/log -type f | while read file
    do
        cat /dev/null | tee $file
    done
    rm /etc/resolv.conf /etc/hostname
    
  9. Quittez chroot. exit

  10. Maintenant, nous copions le noyau:

    export kversion=`cd ${WORK}/rootfs/boot && ls -1 vmlinuz-* | tail -1 | sed 's@vmlinuz-@@'`
    sudo cp -vp ${WORK}/rootfs/boot/vmlinuz-${kversion} ${CD}/boot/vmlinuz
    sudo cp -vp ${WORK}/rootfs/boot/initrd.img-${kversion} ${CD}/boot/initrd.img
    sudo cp -vp ${WORK}/rootfs/boot/memtest86+.bin ${CD}/boot
    
  11. Pour que l'installateur n'installe pas des choses comme casper:

    sudo chroot ${WORK}/rootfs dpkg-query -W --showformat='${Package} ${Version}\n' | sudo tee ${CD}/${FS_DIR}/filesystem.manifest
    sudo cp -v ${CD}/${FS_DIR}/filesystem.manifest{,-desktop}
    REMOVE='ubiquity casper user-setup os-prober libdebian-installer4'
    for i in $REMOVE 
    do
        sudo sed -i "/${i}/d" ${CD}/${FS_DIR}/filesystem.manifest-desktop
    done        
    
  12. Démontez ce que nous avons monté:

    sudo umount ${WORK}/rootfs/proc
    sudo umount ${WORK}/rootfs/sys
    sudo umount ${WORK}/rootfs/dev/pts
    sudo umount ${WORK}/rootfs/dev
    
  13. Convertir en squashfs:

    sudo mksquashfs ${WORK}/rootfs ${CD}/${FS_DIR}/filesystem.${FORMAT}
    
  14. Créez filesystem.size: echo -n $(sudo du -s --block-size=1 ${WORK}/rootfs | tail -1 | awk '{print $1}') | sudo tee ${CD}/casper/filesystem.size

  15. Et md5: find ${CD} -type f -print0 | xargs -0 md5sum | sed "s@${CD}@.@" | grep -v md5sum.txt |sudo tee ${CD}/md5sum.txt

  16. Maintenant grub.cfg:

    sudo nano ${CD}/boot/grub/grub.cfg
    

    (remplacez nano par votre éditeur de texte préféré, peu importe) Collez-le et enregistrez:

    set default="0"
    set timeout=10
    
    menuentry "Ubuntu GUI" {
    linux /boot/vmlinuz boot=casper quiet splash
    initrd /boot/initrd.img
    }
    
    
    menuentry "Ubuntu in safe mode" {
    linux /boot/vmlinuz boot=casper xforcevesa quiet splash
    initrd /boot/initrd.img
    }
    
    
    menuentry "Ubuntu CLI" {
    linux /boot/vmlinuz boot=casper textonly quiet splash
    initrd /boot/initrd.img
    }
    
    
    menuentry "Ubuntu GUI persistent mode" {
    linux /boot/vmlinuz boot=casper boot=casper persistent quiet splash
    initrd /boot/initrd.img
    }
    
    
    menuentry "Ubuntu GUI from RAM" {
    linux /boot/vmlinuz boot=casper nopersistent toram quiet splash
    initrd /boot/initrd.img
    }
    
    menuentry "Check Disk for Defects" {
    linux /boot/vmlinuz boot=casper integrity-check quiet splash
    initrd /boot/initrd.img
    }
    
    
    menuentry "Memory Test" {
    linux16 /boot/memtest86+.bin
    }
    
    
    menuentry "Boot from the first hard disk" {
    set root=(hd0)
    chainloader +1
    }
    
  17. Faites le CD / DVD! sudo grub-mkrescue -o ~/live-cd.iso ${CD}

  18. Testez-le à l'aide d'une machine virtuelle!

Tout le mérite revient à capink, car le guide vient d' ici .


@ nickguletskii- Puisque je suis complètement novice, existe-t-il un logiciel pour le faire? Au fait merci pour votre réponse.
Avinash Sonawane

@Avinash remastersys et / ou Ubuntu Customization Kit.
Uri Herrera

@Avinash Sonawane Ce sera à peu près une routine simple de "copier-coller", il suffit de prendre les commandes et de les exécuter.
nickguletskii

Depuis que je suis totalement novice .. Je préfère Remastersys à la simple copie et au collage et à trop de commandes. Au fait, ces commandes fonctionnaient.! :) Merci @nickguletskii :)
Avinash Sonawane

@Avinash Sonawane Pas de problème, et merci d'avoir vérifié! :)
nickguletskii

5

En Chine, certains amis utilisent ucloner dans Ubuntu pour sauvegarder le système d'exploitation.

https://code.google.com/p/ucloner/

UCloner est un outil de sauvegarde / restauration / clonage conçu pour Ubuntu Linux. D'une certaine manière, c'est comme Norton Ghost pour Windows.

Avec UCloner, vous pouvez sauvegarder votre système Ubuntu dans un fichier image squashfs. Directement à partir de ce fichier image, vous pouvez démarrer un PC dans un environnement dit "Live Ubuntu" (besoin du package "casper").

Un système ubuntu actif peut se cloner dans une / des partition (s) cible (s) à l'aide de UCloner. Vous vous souvenez de l'agent Smith dans Matrix? Ouais c'est ça.

Il a à la fois une ligne de commande et une interface graphique. Il est plus flexible lors de l'exécution dans l'interface de ligne de commande.

UCloner est un logiciel gratuit, distribué sous GPL v2.

entrez la description de l'image ici


3

Si Ubuntu est installé sur un seul disque dur et que vous avez un autre disque dur de capacité de stockage égale ou supérieure, le clonage du disque est très simple:

sudo dd if=/<from disk> of=<to disk>

Ainsi, par exemple, si vous souhaitez cloner sda vers sdb, vous le feriez sudo dd if=/dev/sda of=/dev/sdb. Cela conserverait toutes les partitions, le gestionnaire de démarrage, etc.

Veillez à utiliser les bons if (fichier d'entrée) et of (fichier de sortie). Le fichier d'entrée est le disque que vous souhaitez copier. Si vous changez d'ordre, vous clonerez le disque vide sur le disque complet, ce qui vous laissera deux disques vierges. :)

Assurez-vous également que le nouveau disque dispose de suffisamment d'espace pour cloner le premier disque. Sinon, il sera simplement coupé à la fin. Il n'y aura aucun avertissement.

Si vous souhaitez créer une image, remplacez simplement of=/dev/sdbpar of=/some_place/disk-image.raw. Stockez-le sur un autre disque.


Je n'ai pas de disque dur externe supplémentaire. Je veux juste restaurer ou sauvegarder l'ensemble du système d'exploitation avec toutes les mises à jour, les pilotes n tous dans un seul fichier .iso. de sorte que lorsque je vais formater mon disque et réinstaller Ubuntu, je ne téléchargerai pas et ne réinstallerai pas cette énorme quantité de données (logiciels, pilotes, etc.)
Avinash Sonawane

sûr. Ensuite, comme je l'ai dit à la dernière ligne: dd if = / dev / disktobackup of = somefile.img. Ce sera une copie complète du disque, vous devrez donc le stocker quelque part. Les fichiers ISO sont appelés ainsi en raison du système de fichiers ISO9660 utilisé sur les CD-ROM. Nous les appelons généralement raw ou img ou quelque chose lorsque nous imaginons un disque dur.
Jo-Erlend Schinstad

@ jo-erlend donc ça va marcher d'une partition à l'autre? Le chargeur de démarrage et toutes sortes de choses?
Hari KT

1

J'ai un script qui migre une installation Ubuntu vers un autre emplacement, par exemple dans votre cas, vous pouvez la migrer vers un disque dur externe. La chose intéressante est que vous pouvez le démarrer indépendamment et confirmer qu'il fonctionne avant de formater votre ancien disque. Il s'agit d'une copie exacte - aucune configuration, réinstallation ou ajustement requis. Il vous suffit de préparer la partition cible. (Il ne modifie pas non plus l'installation actuelle, vous pouvez donc tester celle migrée avant de formater l'ancienne.)

http://ubuntuforums.org/showthread.php?t=1519354

(Oui, c'est la migration wubi, mais elle fait aussi des migrations normales. Je l'utilise tout le temps pour sauvegarder et restaurer différentes installations)


1

Une fois que vous aurez récupéré toutes vos données et réinstallé, vous voudrez peut-être essayer d'utiliser Clonezilla pour prendre une image de votre système d'exploitation. Si quelque chose ne va pas, insérez simplement l'image du système d'exploitation et vous aurez votre système à l'endroit où il était.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.