22 votes

Sauvegarde de l'ensemble du système d'exploitation

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

J'ai installé de nombreux logiciels sur mon système actuel. Et je vais devoir réinstaller toutes ces mises à jour, pilotes et applications également.

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

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

24voto

Matthew Steeples Points 4637

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

sudo dpkg --get-selections > package_list

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

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

sudo dpkg --set-selections < packages_list

Cette commande n'installera rien. Elle marquera simplement les paquets pour l'installation. Pour les installer, exécutez la commande suivante :

sudo apt-get -u dselect-upgrade

Cette opération prendra du temps, car votre système doit télécharger et installer tous les paquets. 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 vous aidera

10voto

vassie Points 406

J'ai répondu à la question "Comment personnaliser un CD live d'Ubuntu ?" en proposant 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 paquets. Ce guide mai semble long et difficile, mais il s'agit surtout de "suivre" et de "copier-coller". Le voici, copié et modifié 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 en utilisant une machine virtuelle (il suffit de ne pas installer d'outils VM dans le système d'exploitation invité).

Donc, d'abord nous avons besoin d'une nouvelle installation (si vous ne pouvez pas l'installer pour de vrai, essayez d'utiliser une machine virtuelle) avec seulement les choses dont vous avez besoin (dans votre cas thunderbird, samba et ssh). Ensuite, nous modifions le système et enregistrons où se trouvent les modifications (par exemple, si vous changez le fond d'écran, les paramètres se trouvent dans ~/.gconf ou si vous ajoutez des raccourcis Firefox, ils se trouvent dans ~/Desktop). Ceci 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 le chemin d'accès à un fichier temporaire. temporaire dans lequel nous allons travailler. Remplacez ~/livecd par le chemin d'accès à l'arborescence du CD. l'arborescence du CD.

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

  3. Maintenant, nous devons installer certains paquets :

    sudo apt-get install grub2 xorriso squashfs-tools
  4. Maintenant, nous allons 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 séparée, exécutez ceci : sudo cp -av /boot/* ${WORK}/rootfs/boot
    Si vous souhaitez copier vos configurations et vos fichiers utilisateur, modifiez cette liste si nécessaire : CONFIG='.config .gconf Desktop someotherfolder andanotherfolder'. Et maintenant nous copions vos configurations et vos fichiers :

    cd ~ && for i in $CONFIG
    do
    sudo cp -rpv --parents $i ${WORK}/rootfs/etc/skel
    done        
  5. Maintenant nous nous connectons au nouveau système et le modifions.

    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 sont effectuées en chroot :

    LANG=
    apt-get update
    apt-get install casper

    Casper contient des scripts vivants. Maintenant l'installateur (version gnome) apt-get install ubiquity ubiquity-frontend-gtk Ou si vous voulez KDE :

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

    depmod -a $(uname -r)
    update-initramfs -u -k $(uname -r)
  7. Suppression des utilisateurs hors 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 les 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. Quitter le chroot. exit

  10. Maintenant, on copie 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émonter 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. Faire 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é, cela n'a pas d'importance) Collez ceci et sauvegardez :

    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 en utilisant une machine virtuelle !

Tout le mérite revient à capink, car le guide est tiré de ici .

5voto

David G Points 635

Il y a plusieurs façons de le faire. La plus simple est d'utiliser remastersys.

sudo remastersys dist 

Vous devez installer le paquet ubiquity avant de travailler avec remastersys.

ou vous pouvez utiliser fsarchiver , redo-backup (Un cd live)

Comment sauvegarder votre système d'exploitation

5voto

Arun Seehra Points 23

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, il ressemble à 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 "Live Ubuntu" (nécessite le paquet "casper").

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

Il possède à la fois une ligne de commande et une interface graphique. Il est plus flexible lorsqu'il est exécuté en ligne de commande.

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

enter image description here

3voto

Jesse Buchanan Points 569

Si Ubuntu est installé sur un seul disque dur et que vous disposez d'un autre disque dur de capacité é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 voulez cloner sda vers sdb, vous ferez ce qui suit sudo dd if=/dev/sda of=/dev/sdb . Cela permettrait de conserver toutes les partitions, le gestionnaire de démarrage, etc.

Veillez à utiliser correctement les expressions if (fichier d'entrée) et of (fichier de sortie). Le fichier d'entrée est le disque que vous voulez copier. Si vous intervertissez l'ordre, vous clonerez le disque vide sur le disque plein, ce qui vous laissera avec deux disques vides. :)

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

Si vous voulez créer une image, il suffit de remplacer of=/dev/sdb avec of=/some_place/disk-image.raw . Stockez-le sur un autre disque.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X