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

From Le Wiki de debian-fr.xyz
Revision as of 17:44, 3 February 2012 by Woj (talk | contribs) (orthographe)
Jump to navigation Jump to search
/!\ Ce tutoriel est en attente de validation par la communauté! /!\

Attention: Si au cours de vos manipulations un problème survenait, vous ne pourriez en aucun cas incriminer ce site.

Posez vos questions sur le forum



  • 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ées".
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

  • Toutes les manipulations qui suivent s'appliquent sans aucun souci lors d'une phase de réinstallation !
  • 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 !!!

Years !!!

Post-scriptum

Moment privilégié, moment partagé ... . ^¿^ .

Je vous en serre cinq ... ;) Au plaisir ... . ^¿^ .

Merci. Amicalement, loreleil.

Discussions


Loreleil 3 février 2012 à 12:35 (CET)