[gull] UUID
Félix Hauri
felix at f-hauri.ch
Mon May 23 11:03:28 CEST 2011
On Mon, May 23, 2011 at 09:02:02AM +0200, Daniel Cordey wrote:
> On Sunday 22 May 2011 10:56:03 Félix Hauri wrote:
>
> > Oui, mais au prochain ``dd'', *toute* ta structure de fs (métadonnées)
> > sera recopiée égallement, donc tu aurras à nouveau le même UUID.
> > La solution est de faire *systématiquement* la commande suggérée par
> > Erik et François, *après chaque* ``dd'' (petit script shell).
>
> Exact, et c'est la raison pour laquelle je trouve dangereux de faire des
> backups en utilisant dd. En effet, tout probleme dans le FS va se trouver
> "transporte" sur l'autre disque...
Pour ma part, j'utilise à fond les possibités offertes par le Kernel:
raid et lvm:
avec 1 disque:
- 2 partitions: p0 = 200Mo, p1 = reste du disque
- création de 2 raid mirroirs en mode dégradés:
mdadm --create /dev/md0 --level 1 --raid-devices 2 /dev/sda1 missing
mdadm --create /dev/md1 --level 1 --raid-devices 2 /dev/sda2 missing
- attribution de disque physique LVM
pvcreate /dev/md1
vgcreate vol1 /dev/md1
- creation d'une grosse partition root sur lvm en réservant quelque
Giga-octets pour y faire des snapshots pour les backups.
- montage de md0, en ext[23] sur /boot pour grub.
- installation de linux et grub.
avec 4 disques, en raid-10, pareil:
- 2 partitions sur chaque disques: p0=200Mo, p1= reste du disque
- creation de 2 raids 0=mirroir pour /boot et 1=raid-10 pour LVM:
mdadm --create /dev/md0 --level 1 --raid-devices 4 /dev/sd[abcd]1
mdadm --create /dev/md0 --level 10 --raid-devices 4 /dev/sd[abcd]2
- suite idem: md0 en ext pour /boot et root avec quelque Go de non
attribués dans LVM.
Pour les backups:
.1 s'assurer qu'aucune tâche du genre ``aptitude upgrade'' ou autre
gestionnaire de mise à jour soit en fonction.
.2 # mount -o remount,ro /boot
.3 # lvcreate -s -n bkroot -L 10G vol1/root
et du coup, j'ai réservé une zone ``tampon'' de 10Go pour
maintenir un état figé de vol1/root dans vol1/bkroot.
.4 mount -o ro /dev/vol1/bkroot /mnt
.5 mount --bind /boot /mnt/boot
.6 rsync -ax ... /mnt/. rsync://backup/destdir/.
.7 umount /mnt{/boot,}
.8 lvremove -f vol1/bkroot
TRUC:
j'utilise, sur la machine de backups un script shell pour faire
une ``rotation de backups'' en utilisant la commande ``cp -al'':
# cd /backup-base
# rm -fR backup.10
# mv backup.9 backup.10
# ...
# mv backup.0 backup.1
# cp -al destdir backup.0
entre 2 rsync...
L'avantage de cette méthode est qu'en créant des liens ``durs'', les
copies n'occupent quasiment pas de place, sur le backup, mais
lorsqu'un fichier est modifié à la souce, rsync créé des nouvel inode
(autre fichier) et supprime l'ancien.
Du coup, le dossier ``destdir'' contient le dernier état ``rsyncé'',
tandis que backup.10 contient des fichier qui ont pu être modifiées
ou éffacés entre temps.
Mais à présent, je dois dire que je suis séduit par dr:bd
http://www.drbd.org/
(l'un des avantage à utiliser lvm avec un peu de place libre est
que je peux passer mes partitions à dr:bd, sans rien retoucher:
ss=$(blockdev --getss "/dev/vol1/root")
sz=$(blockdev --getsz "/dev/vol1/root")
ms=$((sz/2**15+72))
mk=$((ms*ss/2**10))
[ $((mk*2**10/ss)) -eq $ms ] || mk=$((1+mk))
lvresize -L +$mk vol1/root
la suite, configuration du second disque, creation du raid dr:bd,
etc, selon les docs sur:
http://www.drbd.org/docs/about/
)
--
Félix Hauri - <felix at f-hauri.ch> - http://www.f-hauri.ch
More information about the gull
mailing list