Comment rendre une sauvegarde bootable ... ?

Saluts,

Voici deux semaines que je m’y affaire sans succès, quelques améliorations apportés mais, toujours pas de boot.

Le but : faire une sauvegarde de mon os mère vers un disque interne/externe, ça c’est fait !!!

Mon problème, est que je ne peut booter sur cette sauvegarde.

J’ai tenté x partitionnement sur le disque “recevant” et des réinstallations en chroot de grub, j’en suis toujours au même point … :mrgreen:

Sur la toile, j’ai très souvent lu, “c’est très facile à faire”, “rien de plus simple” etc… mais une recette fonctionnel, c’est tout autre chose.

Rendre une sauvegarde bootable, Oui ! mais comment s’y prendre ???

Merci … :wink:

Salut,

A partir de ton OS fonctionnel (disque avec la sauvegarde branché):
os-prober

Sinon, tu branches le disque avec la sauvegarde, tu le mets en premier dans le bios, tu démarres avec supergrubdisk, tu installe grub.

Fais abstraction du fait que ce soit une sauvegarde, attaches-toi à l’installation de grub et c’est tout!

Oui, ce sont des étapes par lesquels je suis passé … sauf erreur(s), mais le résultat est le même.

[code]ebian:~# mount /dev/sda1 /mnt/chroot
debian:~# mount --bind /proc /mnt/chroot/sauvegardesystem/proc
debian:~# mount --bind /dev /mnt/chroot/sauvegardesystem/dev
debian:~# mount --bind /sys /mnt/chroot/sauvegardesystem/sys
debian:~#

debian:~# chroot /mnt/chroot/sauvegardesystem/
root@debian:/# update-grub
Generating grub.cfg …
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
No volume groups found
done
root@debian:/#

root@debian:/# grub-install /dev/sda
Installation finished. No error reported.
root@debian:/#
[/code]

[code]debian:~# mkdir /mnt/chroot
debian:~# mount /dev/sda1 /mnt/chroot
debian:~# mount --bind /proc /mnt/chroot/sauvegardesystem/proc
debian:~# mount --bind /dev /mnt/chroot/sauvegardesystem/dev
debian:~# mount --bind /dev /mnt/chroot/sauvegardesystem/dev
debian:~# mount --bind /sys /mnt/chroot/sauvegardesystem/sys
debian:~# chroot /mnt/chroot/sauvegardesystem/

root@debian:/# aptitude install os-prober
No packages will be installed, upgraded, or removed.
0 packages upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
Need to get 0 B of archives. After unpacking 0 B will be used.
Traceback (most recent call last):
File “/usr/bin/apt-listchanges”, line 33, in
from ALChacks import *
File “/usr/share/apt-listchanges/ALChacks.py”, line 32, in
sys.stderr.write(("Can’t set locale; make sure $LC* and $LANG are correct!\n"))
NameError: name ‘_’ is not defined
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
LANGUAGE = (unset),
LC_ALL = (unset),
LANG = "en_US.UTF-8"
are supported and installed on your system.
perl: warning: Falling back to the standard locale (“C”).
locale: Cannot set LC_CTYPE to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_ALL to default locale: No such file or directory
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
LANGUAGE = (unset),
LC_ALL = (unset),
LANG = "en_US.UTF-8"
are supported and installed on your system.
perl: warning: Falling back to the standard locale (“C”).
root@debian:/#

root@debian:/# cp /boot/grub/grub.cfg /boot/grub/grub.cfg_02082011_13h43.bak

root@debian:/# rm /boot/grub/grub.cfg

root@debian:/# os-prober
/dev/cdrom1: open failed: No medium found
No volume groups found
root@debian:/#

root@debian:/# grub-mkconfig -o /boot/grub/grub.cfg
Generating grub.cfg …
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
/dev/cdrom1: open failed: No medium found
No volume groups found
done
root@debian:/#

root@debian:/# grub-install --root-directory=/mnt/chroot/sauvegardesystem/ --recheck /dev/sda
Installation finished. No error reported.
root@debian:/#

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

Y a t’il une préparation particulière à mettre en place (partitionement) du disque recevant ?

Qu’est ce que j’ai raté ?

ps: afin de vérifier le bon fonctionnement du disque “recevant”, j’avais juste auparavant installé squeeze, sans souci, chose que j’ai renouvelé à plusieurs reprises.

J’exclus toute source de souci matériels (disque, machine) … sauf erreur(s)

Re,

[quote=“loreleil.747”]Y a t’il une préparation particulière à mettre en place (partitionement) du disque recevant ?[/quote]Non

Le nommage des disques je pense.
As-tu simplement essayé avec os-prober à partir de ton os maître ?

??

Tu fait allusion à fstab (sauvegarde), non ? pour lequel j’ai modifier UUID (blkid)de la racine “/” avec home et swap commun.

Je ne vois pas trop comment mettre ceci en pratique (hors live-cd) avec os mère.

Re,

apt-get install os-prober os-prober update-grub
Encore que comme c’est une Debian, update-grub devrait suffire…

la même procédure qu’en live-cd ? c’est ça ?

mais cette fois à partir de l’os maître ?

[code]debian:~# mount /dev/sda1 /mnt/chroot
debian:~# mount --bind /proc /mnt/chroot/sauvegardesystem/proc
debian:~# mount --bind /dev /mnt/chroot/sauvegardesystem/dev
debian:~# mount --bind /sys /mnt/chroot/sauvegardesystem/sys
debian:~#

… etc …

[/code]
puis

apt-get install os-prober os-prober update-grub

ps: je n’ai pas réussi à résoudre en live-cd les multiples erreurs rencontrés lors apt-get install os-prober citer plus haut.

Non…

Bon, que donne fdisk -l ?

Que souhaites-tu faire exactement ?

  • Démarrer ta sauvegarde à partir de ton os principal (grub de l’os principal) ?
  • Démarrer ta sauvegarde à partir du disque ou la sauvegarde se trouve ?
  • Autre choix ?

[code]root@Debian-pc-1:/home/pc-1-loreleil# 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: 0x00025ee5

Device Boot Start End Blocks Id System
/dev/sda2 1 51316 412192769 5 Extended
/dev/sda5 * 1 5042 40497152 83 Linux
/dev/sda6 5043 6606 12556288 83 Linux
/dev/sda7 6606 8935 18707456 83 Linux
/dev/sda8 8935 9185 2004992 82 Linux swap / Solaris
/dev/sda9 9185 11893 21750784 83 Linux
/dev/sda10 11893 29895 144606208 83 Linux
/dev/sda11 29895 44076 113906688 83 Linux

Disk /dev/sdb: 160.0 GB, 160041885696 bytes
255 heads, 63 sectors/track, 19457 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: 0x0002a690

Device Boot Start End Blocks Id System
/dev/sdb1 * 1 117 937984 83 Linux
Partition 1 does not end on cylinder boundary.
/dev/sdb2 117 19458 155351040 5 Extended
/dev/sdb5 118 19458 155350016 83 Linux
root@Debian-pc-1:/home/pc-1-loreleil# [/code]

Ce que je souhaite c’est de démarrer sur le disque ou se trouve la sauvegarde, à savoir que le clone ce situe sur sdb5.

sdb étant le disque de la sauvegarde.
sdb1 la partition primaire que j’ai “étiqueté” /boot avec gparted.
sdb2 l’extention.
Le tout en ext3.

,

Re,

[quote=“loreleil.747”]Ce que je souhaite c’est de démarrer sur le disque ou se trouve la sauvegarde, à savoir que le clone ce situe sur sdb5.

sdb étant le disque de la sauvegarde.
sdb1 la partition primaire que j’ai “étiqueté” /boot avec gparted.
sdb2 l’extention.
Le tout en ext3.[/quote]

Il faut donc bien changer l’ordre des disques dans le bios pour que sdb devienne sda.
Ensuite LiveCD + chroot + grub-install /dev/sda ou SuperGrubDisk et grub-install /dev/sda

je modifie l’ordre du bios à chaque fois (après mes divers tentatives d’install grub), Oui c’est bien ce que je fait !

SuperGrubDisk ne détecte pas la sauvegarde.

quant à grub-install /dev/sda ce fût fait, en live cd.

root@debian:/# grub-install /dev/sda Installation finished. No error reported. root@debian:/#

No error reported. … ?

Re,

Il faut vérifier si ta sauvegarde est complète… Je ne vois pas d’autre raison.
Ta sauvegarde, tu l’as faite comment ? C’est un clone (un vrai avec dd) ?

J’ai suivi le tuto Digression Sauvegarde & clonage d’une SID avec rsync, y a pas de raison qu’elle soit incomplète. Et aucune erreur à déclaré, durant et après.

j’ai refais toutes les manip une bonne dizaine de fois, “sauve et sauve-user” (chez moi “sauvegardesystem et sauvegardehome” ) j’y retrouves tout mes dossiers (sous dossiers) et fichiers.

Bon, je vais repassé en live-cd, ce sera peut être plus parlant … :12

-edit-

[quote=“wofy”]bonjour,

je pencherais que os-prober exige que le système soit installé directement sur la racine et non dans sauvegardesystem

il faudra aussi changé les uuid car le disque a changé.[/quote]

j’ai pourtant suivit la procédure …

rsync -av --del --backup --backup-dir=/home/controle/ --exclude-from=/root/exclure / /mnt/sauvegardesystem

[code]# mount -t ext3 /dev/sdf6 /mnt

mkdir /mnt/clone

mount -t ext3 /dev/sdb1 /mnt/clone

rsync -av /mnt/sauvegardesystem /mnt/clone

[/code]
Une erreur ???

Comme dit plus haut l’UUID à était modifier en fonction du retour blkid.

Re,

Quoi qu’il en soit, update-grub devrait, depuis ton os original, détecter l’installation clonée sur sdb"x" et l’ajouter à son menu.

Si ce n’est pas le cas, y’a un “os dans le potage”.
Ta copie de sauvegarde n’est pas bonne ou incomplète ou pas à l’endroit ou tu la cherches… C’est de ce côté là qu’il faut chercher.

À ce stade il faut savoir où sont tes disques quand tu fais grub-install et le contenu de ton grub-cfg. Ensuite la question est de savoir si tu veux que ton disque soit boutable en tant que disque externe ou en remplacement de ton disque actuel. Que contient grub.cfg?

,

Je n’ai pas tout relu car je connais ton histoire.
As-tu vérifié que dans /boot/ tout était conforme au niveau : config, initrd, system-map, vmlinuz ?
Si c’est bon de ce côté, donne ici le fstab “entier” de ton clone et rien que ça.

Bon, il me semble que j’ai quelques soucis avec mon live-cd “Debian-live-5.0.8 amd64 KDE”

Une fois sur deux j’obtiens le résultat voulu.

Il me refuse pas mal de commandes, et d’autres fois :013 elles passent :017

exemple : grub-install: command not found et j’en passe … :033

[code]debian:~# mkdir /mnt/chroot
debian:~# mount /dev/sda5 /mnt/chroot
debian:~# mount --bind /proc /mnt/chroot/sauvegardesystem/proc
mount: mount point /mnt/chroot/sauvegardesystem/proc does not exist
debian:~#

debian:~# mount --bind /proc /mnt/chroot/proc
debian:~# mount --bind /dev /mnt/chroot/dev
debian:~# mount --bind /sys /mnt/chroot/sys
debian:~#

debian:~#
debian:~# chroot /mnt/chroot
root@debian:/#
root@debian:/#
root@debian:/#

root@debian:/# update-grub
bash: update-grub: command not found
root@debian:/#

root@debian:/#

root@debian:/# grub-install /dev/sda
bash: grub-install: command not found
root@debian:/#

root@debian:/# [/code]

[code]root@debian:/# cat /boot/grub/grub.cfg

DO NOT EDIT THIS FILE

It is automatically generated by grub-mkconfig using templates

from /etc/grub.d and settings from /etc/default/grub

BEGIN /etc/grub.d/00_header

if [ -s $prefix/grubenv ]; then
load_env
fi
set default=“0”
if [ “${prev_saved_entry}” ]; then
set saved_entry="${prev_saved_entry}"
save_env saved_entry
set prev_saved_entry=
save_env prev_saved_entry
set boot_once=true
fi

function savedefault {
if [ -z “${boot_once}” ]; then
saved_entry="${chosen}"
save_env saved_entry
fi
}

function load_video {
insmod vbe
insmod vga
insmod video_bochs
insmod video_cirrus
}

insmod part_msdos
insmod ext2
set root=’(/dev/sda,msdos6)’
search --no-floppy --fs-uuid --set 21b1aa02-0531-48e5-9606-65fdbfaf319d
if loadfont /share/grub/unicode.pf2 ; then
set gfxmode=640x480
load_video
insmod gfxterm
fi
terminal_output gfxterm
insmod part_msdos
insmod ext2
set root=’(/dev/sda,msdos5)’
search --no-floppy --fs-uuid --set ee1fa486-1f91-4dac-8a91-9b11173a0a69
set locale_dir=($root)/boot/grub/locale
set lang=fr
insmod gettext
set timeout=5

END /etc/grub.d/00_header

BEGIN /etc/grub.d/05_debian_theme

insmod part_msdos
insmod ext2
set root=’(/dev/sda,msdos6)’
search --no-floppy --fs-uuid --set 21b1aa02-0531-48e5-9606-65fdbfaf319d
insmod png
if background_image /share/images/desktop-base/spacefun-grub.png; then
set color_normal=light-gray/black
set color_highlight=white/black
else
set menu_color_normal=cyan/blue
set menu_color_highlight=white/blue
fi

END /etc/grub.d/05_debian_theme

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=’(/dev/sda,msdos5)’
search --no-floppy --fs-uuid --set ee1fa486-1f91-4dac-8a91-9b11173a0a69
echo ‘Chargement de Linux 2.6.32-5-amd64 …’
linux /boot/vmlinuz-2.6.32-5-amd64 root=UUID=ee1fa486-1f91-4dac-8a91-9b11173a0a69 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=’(/dev/sda,msdos5)’
search --no-floppy --fs-uuid --set ee1fa486-1f91-4dac-8a91-9b11173a0a69
echo ‘Chargement de Linux 2.6.32-5-amd64 …’
linux /boot/vmlinuz-2.6.32-5-amd64 root=UUID=ee1fa486-1f91-4dac-8a91-9b11173a0a69 ro single
echo ‘Chargement du disque mémoire initial …’
initrd /boot/initrd.img-2.6.32-5-amd64
}

END /etc/grub.d/10_linux

BEGIN /etc/grub.d/20_linux_xen

END /etc/grub.d/20_linux_xen

BEGIN /etc/grub.d/20_memtest86+

menuentry “Memory test (memtest86+)” {
insmod part_msdos
insmod ext2
set root=’(/dev/sda,msdos5)’
search --no-floppy --fs-uuid --set ee1fa486-1f91-4dac-8a91-9b11173a0a69
linux16 /boot/memtest86+.bin
}
menuentry “Memory test (memtest86+, serial console 115200)” {
insmod part_msdos
insmod ext2
set root=’(/dev/sda,msdos5)’
search --no-floppy --fs-uuid --set ee1fa486-1f91-4dac-8a91-9b11173a0a69
linux16 /boot/memtest86+.bin console=ttyS0,115200n8
}
menuentry “Memory test (memtest86+, experimental multiboot)” {
insmod part_msdos
insmod ext2
set root=’(/dev/sda,msdos5)’
search --no-floppy --fs-uuid --set ee1fa486-1f91-4dac-8a91-9b11173a0a69
multiboot /boot/memtest86+_multiboot.bin
}
menuentry “Memory test (memtest86+, serial console 115200, experimental multiboot)” {
insmod part_msdos
insmod ext2
set root=’(/dev/sda,msdos5)’
search --no-floppy --fs-uuid --set ee1fa486-1f91-4dac-8a91-9b11173a0a69
multiboot /boot/memtest86+_multiboot.bin console=ttyS0,115200n8
}

END /etc/grub.d/20_memtest86+

BEGIN /etc/grub.d/30_os-prober

END /etc/grub.d/30_os-prober

BEGIN /etc/grub.d/40_custom

This file provides an easy way to add custom menu entries. Simply type the

menu entries you want to add after this comment. Be careful not to change

the ‘exec tail’ line above.

END /etc/grub.d/40_custom

BEGIN /etc/grub.d/41_custom

if [ -f $prefix/custom.cfg ]; then
source $prefix/custom.cfg;
fi

END /etc/grub.d/41_custom

root@debian:/#[/code]

Un autre essai …

[code]debian:~# mount /dev/sdb5 /mnt/chroot
debian:~#

debian:~# mount --bind /dev/ /mnt/chroot/dev
mount: mount point /mnt/chroot/dev does not exist
debian:~#

debian:~# mount --bind /dev /mnt/chroot/dev
mount: mount point /mnt/chroot/dev does not exist
debian:~#

debian:~# mount --bind /dev /mnt/chroot/dev
mount: mount point /mnt/chroot/dev does not exist
debian:~#

debian:~# mount --bind /proc /mnt/chroot/proc
mount: mount point /mnt/chroot/proc does not exist
debian:~#

debian:~#
debian:~# mount --bind /proc /mnt/chroot/sauvegardesystem/proc
debian:~# mount --bind /dev /mnt/chroot/sauvegardesystem/dev
debian:~# mount --bind /sys /mnt/chroot/sauvegardesystem/sys
debian:~#

debian:~#
debian:~# chroot /mnt/chroot
chroot: cannot run command `/bin/bash’: No such file or directory
debian:~#

debian:~# chroot /mnt/chroot /bin/bash
chroot: cannot run command `/bin/bash’: No such file or directory
debian:~#

debian:~#
debian:~# chroot /mnt/chroot/sauvegardesystem
root@debian:/#
root@debian:/#

root@debian:/#
root@debian:/# update-grub
Generating grub.cfg …
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
No volume groups found
Found Debian GNU/Linux (6.0.2) on /dev/sda5
done
root@debian:/#

root@debian:/# grub-install /dev/sda
Installation finished. No error reported.
root@debian:/#

[/code]

Serait ce l’origine du souci ?

Je retourne sur OS maître, et vais me procurer une version plus récente … :083 :013

Re,

Il y est des fois ou il faut savoir s’arrêter, faire une pause, et prendre du recul !!!

Cette fois, j’aurais dû … :013

Au re-démarrage sur l’OS maître grub rescue > … :013

Je viens de comprendre que je me suis lamentablement viandé en live-cd !!!

Pour cette unique fois, je n’avais pas dé-connecté (physiquement) OS maître.

Au final, j’ai jonglé avec sda & sdb :013 !!!

Résultat ! j’ai dû redémarré avec SuperGrubDisk … :doh: sur mon OS maître :033 les boules :013

-edit-

je vais essayé de faire une bonne action avant cette fin de journée !

Ré-installé grub sur mon OS maître avec l’aide de SuperGrubDisk … à suivre. :005