Restauration ou Reconstruction de sa Debian - Racine et Home séparés

De Le Wiki du Forum-Debian.fr
Aller à la navigation Aller à la recherche
  • Moment partagé, Moment privilégié, ... . ^¿^ .

Avant-propos

  • Restauration : Fait de rétablir quelque chose dans son état d'origine.
    • Par extension : Réparer, rénover, rétablir, etc ...
  • Reconstruction : Bâtir à nouveau ce qui a été détruit.
    • Par extension : ce qui est endommagé, altéré, dégradé, ravagé, etc ...


Deux possibilités vous sont offertes :

Restaurer votre disque source à partir des sauvegardes préalablement effectuées, la condition étant que la source soit saine.
Ou
Reconstruire votre Debian à partir des sauvegardes sur un support sain.

Supports : disque interne, externe, USB, voir même la possibilité de créer un live-cd bootable.


Introduction

Ce tutoriel vient à la suite de celui-ci Sauvegarder sa Debian en vue d'une Réinstallation ou Reconstruction - Racine et Home séparés
Ayant des sauvegardes viables, il vous sera possible de ré-installer votre Debian sur tout autre disque disponible, identique en tout point à la sauvegarde, autrement dit, au disque source.
À titre informatif, ma toute première reconstruction s'était faite sur une clé USB de 8 Gio.

Règles d'or


1°) Maîtriser la console root en ayant bien conscience que root est le maître à bord, la relation chaise/clavier !


Root a tous les pouvoirs !!!!


2°) Identifiez clairement les disques et partitions sans qu'aucun doute ne subsiste !


3°) Maîtriser un outil de partitionnement !


4°) Les appellations des disques et partitions cités dans ce tutoriel sont propre à mon installation !


Veillez donc à adapter celles-ci à votre situation !



Mise en garde !


Ce tutoriel ne consiste pas en l'installation et configuration d'un paquet, d'une application x. Etc ...

Mais bien de manipulation de disques et partitions !

Il vous faut en avoir réellement conscience ! Cela n'est pas sans risque ... s'il est utilisé à mauvaise escient !!!

Ne prenez pas ces Avertissements, Recommandations, et Mise en garde à la légère. Le bon fonctionnement de votre système en dépend !!!

Identifiez clairement les disques et partitions


:~# fdisk -l
:~# blkid


1°) Arrêter et déconnecter physiquement (cordon d'alimentation) la machine (mise Hors Tension).

2°) Déconnecter physiquement les disques internes/externes qui ne seront pas concernés par les opérations qui vont suivre.

Cela limitera d'autant plus les éventuels cafouillages sur les partitions. (L'erreur est humaine !)

3°) Identifier votre disque dur source, prendre des notes.

4°) Arrêter de nouveau votre Debian. Hors Tension !

5°) Connecter le disque interne/externe qui recevra vos sauvegardes. Relancer la machine. En console root, identifier celui-ci.

6°) Mêmes opérations si vous désirez utiliser un deuxième disque pour les sauvegardes.

Prenez des notes !

Notes : Dans le cas de deux disques connectés pour les sauvegardes, vous devriez obtenir après le dernier re-démarrage :

/dev/sda    ### disque source
/dev/sdb    ### premier disque des sauvegardes (interne/externe)
/dev/sdc    ### Deuxième disque des sauvegardes (interne/externe)

Sauf erreur de ma part.

Vous êtes à présent paré pour la suite ...




Pré-requis

  • Un live-cd sous la main.
  • (fr) Debian-live-cd
  • (en) gparted
  • Un disque interne/externe/USB ... partitionné au préalable.
  • Avoir installé le paquet rsync.



Tableau des partitions

Plus parlant qu'un discours ...


dd Source
/dev/sda
dd Sauvegardes
/dev/sdc
dd Reconstruction
/dev/sdb
Partitions
Racine " / " (*) /dev/sda1 /dev/sdc1 /dev/sdb1
extended /dev/sda2 /dev/sdb2
Swap /dev/sda5 /dev/sdb5
/home /dev/sda6 /dev/sdc2 /dev/sdb6


Préparation des partitions pour la reconstruction


  • La préparation des nouvelles partitions en ext3, tel que la source, se fera avec gparted, libre à vous de choisir vos outils pour ce faire !
  • Nous allons reconstruire notre Debian sur le disque sdb.


Partition primaire

Qui réceptionnera la sauvegarde de la racine, de taille équivalente au disque source, en ext3.

 /dev/sdb1   # partition primaire (drapeau boot inutile sous Linux)

Une extension.

/dev/sdb2

La swap.

/dev/sdb5


Partition logique /home

Qui réceptionnera la sauvegarde de /home de taille équivalente à la partition /home du disque source, en ext3.

Note : aucune étiquette pour cette partition !!!

/dev/sdb6


Reconstruction de la racine "/"

  • On monte la sauvegarde de notre racine "/" sur /mnt.
:~# mount -t ext3 /dev/sdc1 /mnt
:~# mount -t ext3 /dev/sdb1 /media


  • rsync va "copier" la sauvegarde de la " / " sur /dev/sdb1.
  • (fr) manuel rsync


:~# rsync -av --del --exclude-from=/root/exclureR /mnt/ /media


Création des répertoires qui ont été exclus (/root/exclureR) lors des sauvegardes

Souvenir, souvenir ... Le fichier /root/exclureR

  • Rappel : ceci est mon fichier exclureR


/root/exclureR

:~# cat /root/exclureR
/home
/dev
/proc
/sys
/mnt
/lost+found
/media
:~#


  • Rappel : Vous aurez soins de vérifier votre fichier exclureR


:~# mkdir /media/home
:~# mkdir /media/lost+found
:~# mkdir /media/media
:~# mkdir /media/mnt
:~# mkdir /media/dev
:~# mkdir /media/proc
:~# mkdir /media/sys


  • À présent on démonte proprement, et l'on reste en root.
:~# umount /media
:~# umount /mnt


Reconstruction de notre /home

  • On monte la sauvegarde de notre "/home" sur /mnt.


:~# mount -t ext3 /dev/sdc2 /mnt



:~# mount -t ext3 /dev/sdb6 /media


  • rsync va "copier" la sauvegarde de la " /home " sur /dev/sdb6.


:~# rsync -av --del --exclude-from=/home/<user>/.exclureH /mnt/ /media


Création des répertoires qui ont été exclus (/home/<user>/.exclureH) lors des sauvegardes


  • Faut-il créer ces répertoires dans /home/user/.../ ????
  • La réponse est Non !
  • Pourquoi ????
    • On le devine facilement en observant le contenu du fichier /home/<user>/.exclureH




/home/<user>/.exclureH

:~# cat /home/<user>/.exclureH

 /.ure
/bin
/boot
/dev
/etc
/lib
/lib32
/lib64
/lost+found
/media
/mnt
/opt
/proc
/root
/sbin
/selinux
/srv
/sys
/tmp
/usr
/var
/initrd.img
/vmlinuz
:~#



  • À présent on démonte proprement, et l'on reste en root.
:~# umount /media
:~# umount /mnt
  • Quittez la console proprement.
# exit




Redémarrez sur votre nouvelle Debian reconstruite


1°) Avant de stoppez la bête, insérer votre live-cd Debian.

2°) Arrêtez la machine.

3°) Mettez le pc Hors Tension physiquement !!!

4°) Déconnectez le disque sda et sortez-le de votre tour.

5°) Connectez sdb en lieu et place de sda.

6°) Vérifiez vos connectiques, sdb devant être le seul qui soit connecté.

7°) Rebootez sur le live-cd Debian.


  • Notes :


Vu qu'il n'y que sdb de connecté en lieu et place, au reboot, celui-ci devient sda


C'est parti mon kiki !

  • Passez en console root.
user@debian:~$ sudo -s
root@debian:/home/user#

Identifier les partitions

root@debian:/home/user# fdisk -l

Disk /dev/sda: 8019 MB, 8019509248 bytes
  Device Boot      Start         End      Blocks   Id  System

/dev/sda1   *           1         602     4608000   83  Linux
/dev/sda2             602        1023     3222528    5  Extended
/dev/sda5             603         750     1126400   82  Linux swap / Solaris
/dev/sda6             750        1023     2094080   83  Linux

root@debian:/home/user#


Identifier les UUID

root@debian:/home/user# blkid

/dev/loop0: TYPE="squashfs"
/dev/sda1: UUID="xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" SEC_TYPE="ext2" TYPE="ext3"

/dev/sda5: UUID="yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy" TYPE="swap"

/dev/sda6: UUID="zzzzzzzz-zzzz-zzzz-zzzz-zzzzzzzzzzzz" SEC_TYPE="ext2" TYPE="ext3"

root@debian:/home/user#


Chrooter sda1, sda6

  • Ouvrez une deuxième console, ce qui vous permettra d'identifier, partitions et UUID, pour la suite.


user@debian:~$ sudo -s
root@debian:/home/user# mkdir /mnt/chroot
root@debian:/home/user# mount -t ext3 /dev/sda1 /mnt/chroot
root@debian:/home/user# mount -t ext3 /dev/sda6 /mnt/chroot/home
root@debian:/home/user# mount --bind /dev /mnt/chroot/dev
root@debian:/home/user# mount --bind /sys /mnt/chroot/sys
root@debian:/home/user# mount -t proc /proc /mnt/chroot/proc
root@debian:/home/user# chroot /mnt/chroot
root@debian:/#


Modifier le fstab


  • Vous n'aurez aucun mal à vous apercevoir que celles-ci ne correspondent pas.
    • Ce qui est normal, rsync a copié le fichier /etc/fstab sur votre "sauvegardeR".
    • Et comme vous venez de reconstruire votre OS à partir de ces dernières, le reste coule de source.
  • Pour mémoire, dans le tutoriel "sauvegarder sa Debian", allez à la section Disque source où vous aviez relever les UUID précédemment.


root@debian:/# nano /etc/fstab

#
# Use 'blkid' to print the universally unique identifier for a
# device; this may be used with UUID= as a more robust way to name devices
# that works even if disks are added and removed. See fstab(5).
#

# <file system> <mount point>   <type>  <options>       <dump>  <pass>

proc            /proc           proc    defaults        0       0
# / was on /dev/sda1 during installation
UUID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx  /               ext3    errors=remount-ro 0       1

# /home was on /dev/sda6 during installation
UUID=zzzzzzzz-zzzz-zzzz-zzzz-zzzzzzzzzzzz /home           ext3    defaults        0       2
 
# swap was on /dev/sda5 during installation
UUID=yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy none            swap    sw              0       0
 
 (...)
root@debian:/#


Mise à jour de Grub

root@debian:/# update-grub

Generating grub.cfg ...
Found background image: /usr/share/images/desktop-base/desktop-grub.png
Found linux image: /boot/vmlinuz-2.6.32-5-amd64
Found initrd image: /boot/initrd.img-2.6.32-5-amd64
done

root@debian:/#


Installation de Grub sur sda

root@debian:/# grub-install /dev/sda
Installation finished. No error reported.
root@debian:/#
  • Traduction : Aucune erreur relevée.


Vérification de l'implantation de Grub

  • Qui devrait se situer à la section "### BEGIN /etc/grub.d/10_linux ###"
root@debian:/# cat /boot/grub/grub.cfg


### BEGIN /etc/grub.d/10_linux ###
menuentry 'Debian GNU/Linux, avec Linux 2.6.32-5-amd64' --class debian --class gnu-linux --class gnu --class os {
        insmod part_msdos
        insmod ext2
        set root='(hd0,msdos1)'
        search --no-floppy --fs-uuid --set d128857f-859e-490e-a9bf-3e7afb2741d8
        echo    'Chargement de Linux 2.6.32-5-amd64 ...'
        linux   /boot/vmlinuz-2.6.32-5-amd64 root=UUID=d128857f-859e-490e-a9bf-3e7afb2741d8 ro  quiet
        echo    'Chargement du disque mémoire initial ...'
        initrd  /boot/initrd.img-2.6.32-5-amd64
}
menuentry 'Debian GNU/Linux, avec Linux 2.6.32-5-amd64 (mode de dépannage)' --class debian --class gnu-linux --class gnu --class os {
        insmod part_msdos
        insmod ext2
       set root='(hd0,msdos1)'
        search --no-floppy --fs-uuid --set d128857f-859e-490e-a9bf-3e7afb2741d8
        echo    'Chargement de Linux 2.6.32-5-amd64 ...'
        linux   /boot/vmlinuz-2.6.32-5-amd64 root=UUID=d128857f-859e-490e-a9bf-3e7afb2741d8 ro single
        echo    'Chargement du disque mémoire initial ...'
        initrd  /boot/initrd.img-2.6.32-5-amd64
}
### END /etc/grub.d/10_linux ###


Vérifier que tous les systèmes sont présents, le retour console doit être vide

  • Vous devriez (sauf erreur) installer os-prober.
root@debian:/# aptitude install os-prober
  • À présent, lancez le.
root@debian:/# os-prober
root@debian:/#

Vérifier que Grub2 est bien installé dans le MBR

root@debian:/# dd if=/dev/sda bs=512 count=1 | strings
1+0 records in
1+0 records out
512 bytes (512 B) copied, 2.5143e-05 s, 20.4 MB/s
ZRr=
`|f
\|f1
GRUB
Geom
Hard Disk
Read
Error
root@debian:/#


Démonter le chroot et sortir proprement

root@debian:/home/user# umount /mnt/chroot/proc
root@debian:/home/user# umount /mnt/chroot/sys
root@debian:/home/user# umount /mnt/chroot/dev
root@debian:/home/user# umount /mnt/chroot/home
root@debian:/home/user# umount /mnt/chroot
root@debian:/home/user# exit


Voilà, c'est fini !!! Vous avez reconstruit votre Debian !!!

Cool et quoi de plus simple!


Restauration

  • Pour x raisons, vous souhaitez procéder à une restauration de l'une ou des partitions de votre disque source sda, ceci en date de la dernière sauvegarde ou bien au-delà encore.
    • Restauration intégrale de la Racine.
    • Restauration intégrale de la /home.
    • Restauration partiel de la /home à chaud.

Notes :

  • La restauration de la racine s'effectuera à froid.
  • À chaud, celle de la /home, ne semble pas vraiment poser à proprement dit de souci pour un répertoire en particulier ou un fichier. (Testé personnellement)
  • Toutefois, à mon humble avis, il serait certainement plus approprié dans le cas d'une restauration intégrale, d'effectuer celle-ci à froid.


Restauration à froid dans la pratique

  • Pour info.
    • Restauration de ma racine, (le 25/02/2012) suite à un problème de ré-installation de mysql-server-5.1, problème que je n'ai pas réussi à solutionner.

Que se soit avec aptitude, apt-get, dpkg.



1°) Avant de stoppez la bête, insérer votre live-cd Debian.

2°) Arrêtez la machine.

3°) Mettez le pc Hors Tension physiquement !!!

4°) Déconnectez tout autre disque en dehors de sda.

5°) Vérifiez vos connectiques, sda devant être le seul qui soit connecté.

6°) Rebootez sur le live-cd Debian.

7°) Connectez votre périphérique de sauvegarde sdc en lieu et place.

8°) Installer le paquet rsync



/!\ ATTENTION /!\ Identifiez clairement les disques et partitions


Depuis le live-cd installez rsync

user@debian:~$ sudo -s
root@debian:/home/user#
  • Modification du sources.list
root@debian:~# cat /etc/apt/sources.list
deb http://cdn.debian.net/debian/ squeeze main
deb http://security.debian.org/ squeeze/updates main
root@debian:~# 
  • Installation de rsync et gparted.
root@debian:~# aptitude install rsync
root@debian:~# aptitude install gparted
  • J'en profite pour lancer une vérification de mon disque source avec gparted. Partitions non montées!
root@debian:~# /usr/sbin/gparted

Restauration intégrale de la racine à froid

  • Dans un premier temps, création du fichier /root/exclure.
root@debian:~# cat /root/exclureR
/home
/dev
/proc
/sys
/mnt
/lost+found
/media
  • Identification des partitions.
root@debian:/root# fdisk -l

Disk /dev/sda: 1000.2 GB, 1000204886016 bytes
255 heads, 63 sectors/track, 121601 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
 Disk identifier: 0x0009a149

Device Boot Start End Blocks Id System
/dev/sda1 * 1 27988 224804864 83 Linux
/dev/sda2 27988 121602 751956696 5 Extended
/dev/sda5 27988 28237 2004992 82 Linux swap / Solaris
/dev/sda6 28237 55009 215040000 83 Linux
/dev/sda7 55009 56156 9216000 83 Linux

Disk /dev/sdf: 1000.2 GB, 1000204886016 bytes
255 heads, 63 sectors/track, 121601 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x85169e07

Device Boot Start End Blocks Id System
/dev/sdf1 1 16471 132299744+ 7 HPFS/NTFS
/dev/sdf2 16471 18784 18578432 83 Linux
/dev/sdf3 18784 121602 825883648 5 Extended
/dev/sdf5 18784 25158 51200000 83 Linux
/dev/sdf6 25158 28345 25600000 83 Linux
/dev/sdf7 28346 30258 15360000 83 Linux
/dev/sdf8 30258 33445 25600000 83 Linux
/dev/sdf9 33445 36632 25600000 83 Linux
/dev/sdf10 36632 38544 15360000 83 Linux
/dev/sdf11 38545 41732 25600000 83 Linux
/dev/sdf12 41732 43644 15360000 83 Linux
/dev/sdf13 43644 46831 25600000 83 Linux
/dev/sdf14 46831 56392 76800000 83 Linux
/dev/sdf15 56393 65954 76800000 83 Linux
/dev/sdf16 65954 75515 76800000 83 Linux
root@debian:/root# 
  • Ma dernière sauvegarde se situe sur /dev/sdf6.
root@debian:/root# blkid
/dev/sda1: UUID="xxxxxx" TYPE="ext3"
/dev/sda5: TYPE="swap" UUID="xxxxxxxx"
/dev/sda6: UUID="xxxxxxx" TYPE="ext3" SEC_TYPE="ext2"
/dev/sda7: UUID="xxxxxxxx" SEC_TYPE="ext2" TYPE="ext3"
/dev/loop0: TYPE="squashfs"
/dev/sdf1: UUID="xxxxxxx" TYPE="ntfs"
/dev/sdf2: LABEL="copie (dell), 8" UUID="xxxx" SEC_TYPE="ext2" TYPE="ext3"
/dev/sdf5: LABEL="sauve2H" UUID="xxxxx" TYPE="ext3" SEC_TYPE="ext2"
/dev/sdf6: LABEL="savpc1R18" UUID="xxxxx" SEC_TYPE="ext2" TYPE="ext3"
/dev/sdf7: LABEL="savpc1H14" UUID="xxxxxx" SEC_TYPE="ext2" TYPE="ext3"
/dev/sdf8: LABEL="savpc1R10" UUID="xxxxxxxx" SEC_TYPE="ext2" TYPE="ext3"
/dev/sdf9: LABEL="sacpc1R11" UUID="xxxxxx" SEC_TYPE="ext2" TYPE="ext3"
/dev/sdf10: LABEL="OVH-home" UUID="xxxxxxxxx" TYPE="ext4"
/dev/sdf11: LABEL="savpc1R12" UUID="xxxxxxxxxxx" SEC_TYPE="ext2" TYPE="ext3"
/dev/sdf12: LABEL="savpc1H9" UUID="xxxxxxxxx" SEC_TYPE="ext2" TYPE="ext3"
/dev/sdf13: LABEL="savpc1R13" UUID="xxxxxxxx" SEC_TYPE="ext2" TYPE="ext3"
/dev/sdf14: LABEL="serveur1R1" UUID="xxxxxxxxx" TYPE="ext4"
/dev/sdf15: LABEL="OVH-racine" UUID="xxxxxxxxx" TYPE="ext4"
root@debian:/root# 
  • On monte la sauvegarde de la / sur /mnt
root@debian:~# mount -t ext3 /dev/sdf6 /mnt
  • On monte la partition racine (/) qui est à restaurer /dev/sda1 sur /media
root@debian:~# mount -t ext3 /dev/sda1 /media  
  • rsync va copier le contenu (et non le contenant) de la sauvegarde racine (/) monter sur /mnt/ vers la partition /dev/sda1 à restaurer monter sur /media
root@debian:~# rsync -av --del --exclude-from=/root/exclureR /mnt/ /media
 
....

var/spool/squid3/00/FF/0000FF30
var/tmp/
var/tmp/kdecache-loreleil/
var/tmp/kdecache-loreleil/ksycoca4
 
....
 
var/tmp/kdecache-root/kpc/kde-icon-cache.updated
var/www/fwlogwatch/index.html
 
sent 916440786 bytes  received 226068 bytes  5283382.44 bytes/sec
total size is 6184183184  speedup is 6.75
root@debian:~#        
  • Notes: Aucune erreur relevé!

Tous semble s'être bien passer.

Je vais à présent passer en chroot cette restauration, histoire de voir si j'ai obtenu ce que je désirer.

root@debian:~# mount -l
aufs on / type aufs (rw)
tmpfs on /lib/init/rw type tmpfs (rw,nosuid,mode=0755)
proc on /proc type proc (rw,noexec,nosuid,nodev)
sysfs on /sys type sysfs (rw,noexec,nosuid,nodev)
procbususb on /proc/bus/usb type usbfs (rw)
udev on /dev type tmpfs (rw,mode=0755)
tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev)
devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=620)
/dev/hda on /live/image type iso9660 (ro,noatime) [Debian lenny 20110123-12:36]
tmpfs on /live/cow type tmpfs (rw,noatime,mode=755)
tmpfs on /live type tmpfs (rw)
tmpfs on /tmp type tmpfs (rw,nosuid,nodev)
/dev/sdf6 on /mnt type ext3 (rw) [savpc1R18]
/dev/sda1 on /media type ext3 (rw)
root@debian:~#
root@debian:~# umount /mnt
root@debian:~# umount /media
root@debian:~# fdisk -l

Disk /dev/sda: 1000.2 GB, 1000204886016 bytes
255 heads, 63 sectors/track, 121601 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x0009a149

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1       27988   224804864   83  Linux
/dev/sda2           27988      121602   751956696    5  Extended
/dev/sda5           27988       28237     2004992   82  Linux swap / Solaris
/dev/sda6           28237       55009   215040000   83  Linux
/dev/sda7           55009       56156     9216000   83  Linux
root@debian:~# 
  • Je chroot. Ouverture d'une nouvelle console.
user@debian:~$ sudo -s
root@debian:~# mkdir /mnt/chroot
root@debian:~# mount -t ext3 /dev/sda1 /mnt/chroot
root@debian:~# mount -t ext3 /dev/sda6 /mnt/chroot/home
root@debian:~# mount --bind /dev /mnt/chroot/dev
root@debian:~# mount --bind /sys /mnt/chroot/sys
root@debian:~# mount -t proc /proc /mnt/chroot/proc
root@debian:~# chroot /mnt/chroot
root@debian:/#
root@debian:~# mount -l
aufs on / type aufs (rw)
tmpfs on /lib/init/rw type tmpfs (rw,nosuid,mode=0755)
proc on /proc type proc (rw,noexec,nosuid,nodev)
sysfs on /sys type sysfs (rw,noexec,nosuid,nodev)
procbususb on /proc/bus/usb type usbfs (rw)
udev on /dev type tmpfs (rw,mode=0755)
tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev)
devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=620)
/dev/hda on /live/image type iso9660 (ro,noatime) [Debian lenny 20110123-12:36]
tmpfs on /live/cow type tmpfs (rw,noatime,mode=755)
tmpfs on /live type tmpfs (rw)
tmpfs on /tmp type tmpfs (rw,nosuid,nodev)
/dev/sda1 on /mnt/chroot type ext3 (rw)
/dev/sda6 on /mnt/chroot/home type ext3 (rw)
/dev on /mnt/chroot/dev type none (rw,bind)
/sys on /mnt/chroot/sys type none (rw,bind)
/proc on /mnt/chroot/proc type proc (rw)
root@debian:~#  
  • Quand n'est il de mysql-server-5.1 ?
 root@debian:/# apt-cache policy mysql-server-5.1
mysql-server-5.1:
  Installed: 5.1.49-3
  Candidate: 5.1.49-3
  Package pin: 5.1.58-1
  Version table:
     5.1.58-1 -40
         90 http://ftp.fr.debian.org/debian/ wheezy/main amd64 Packages
         50 http://ftp.fr.debian.org/debian/ sid/main amd64 Packages
*** 5.1.49-3 -40
        990 http://ftp.fr.debian.org/debian/ squeeze/main amd64 Packages
        100 /var/lib/dpkg/status
root@debian:/#

Bingo!

  • Je lance une mise à jour de grub, pas vraiment primordial, mais puisque j'y suis et cela ne mange pas de pain ...
root@debian:/# update-grub
Generating grub.cfg ...
Found background image: /usr/share/images/desktop-base/desktop-grub.png
Found linux image: /boot/vmlinuz-2.6.32-5-amd64
Found initrd image: /boot/initrd.img-2.6.32-5-amd64
Found memtest86+ image: /boot/memtest86+.bin
Found memtest86+ multiboot image: /boot/memtest86+_multiboot.bin
 done
root@debian:/#   
  • Vérification.
root@debian:/# dd if=/dev/sda bs=512 count=1 | strings
1+0 records in
1+0 records out
512 bytes (512 B) copied, 0.0668252 s, 7.7 kB/s
ZRr=
`|f
\|f1
GRUB
Geom
 Hard DiskRead
Error
root@debian:/# 
  • Je peux sortir du chroot, j'ai obtenu ce que je souhaiter!
root@debian:/# exit
exit
root@debian:~#
root@debian:~# mount -l
aufs on / type aufs (rw)
tmpfs on /lib/init/rw type tmpfs (rw,nosuid,mode=0755)
proc on /proc type proc (rw,noexec,nosuid,nodev)
sysfs on /sys type sysfs (rw,noexec,nosuid,nodev)
procbususb on /proc/bus/usb type usbfs (rw)
udev on /dev type tmpfs (rw,mode=0755)
tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev)
devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=620)
/dev/hda on /live/image type iso9660 (ro,noatime) [Debian lenny 20110123-12:36]
tmpfs on /live/cow type tmpfs (rw,noatime,mode=755)
tmpfs on /live type tmpfs (rw)
tmpfs on /tmp type tmpfs (rw,nosuid,nodev)
/dev/sda1 on /mnt/chroot type ext3 (rw)
/dev/sda6 on /mnt/chroot/home type ext3 (rw)
/dev on /mnt/chroot/dev type none (rw,bind)
/sys on /mnt/chroot/sys type none (rw,bind)
/proc on /mnt/chroot/proc type proc (rw)
root@debian:~#  
root@debian:~# umount /mnt/chroot/proc
root@debian:~# umount /mnt/chroot/sys
root@debian:~# umount /mnt/chroot/dev
root@debian:~# umount /mnt/chroot/home
root@debian:~# umount /mnt/chroot
umount: /mnt/chroot: device is busy
root@debian:~#
root@debian:~# exit
exit
user@debian:~$ 

Reboot, et, que du bonheur!

Restauration intégrale de la /home à froid

  • Reprenez la procédure du live-cd, chroot, identification.
  • On monte la sauvegarde de /home/<user> sur /mnt


:~ # mount -t ext3 /dev/sdcx /mnt 


  • On monte la partition /home qui est à restaurer /dev/sda6 sur /media


:~ # mount -t ext3 /dev/sdax /media  


  • rsync va copier le contenu (et non le contenant) de la sauvegarde (/home) monter sur /mnt/ vers la partition /dev/sda6 à restaurer monter sur /media


:~ # rsync -av /mnt/ /media
  • Démontage.
:~ # umount /mnt && umount /media


Restauration partiel de la /home à chaud

  • Dans ce cas de figure, supposons que l'on souhaite restaurer un répertoire ou un fichier bien précis.

Disons /home/<user>/mon-album_photos/2012/Decembre/Noël_en_famille/fichier_089.png

On monte la sauvegarde de /home/<user> sur /mnt


:~# mount -t ext3 /dev/sdcx /mnt 


  • rsync va copier le fichier_089.png de la sauvegarde (/home) monter sur /mnt/ vers le répertoire de /home<user> en lieu et place.
:~# rsync -av /mnt/<user>/mon-album_photos/2012/Decembre/Noël_en_famille/fichier_089.png /home/<user>/
  • Démontage.
:~ # umount /mnt

Post-scriptum

Conclusion : rsync est votre meilleur ami !!



Discussions



loreleil