L’incubo di ogni sistemista Asterisk e/o Trixbox è di perdere tutto per un fault dell’hardware.
Se fosse un ambiente con RAID, meglio se hardware, il problema grosso è nel caso di rottura della scheda madre o altro componente non ridondato.
In questo caso una strada da percorrere è quella di sostituire la scheda madre (o quel che sia) oppure prendere un immagine del disco e spostarla su altro sistema.
Nel caso di salvataggio di un’immagine, ho cercato un sacco di programmi più o meno Open Source per farlo, purtroppo non ho mai trovato qualcosa di ideale.
In soccorso è giunto un ottimo programma, Acronis True Image, sia la versione 9 che 10.
Questo software (ahimè a pagamento), permette un salvataggio completo dell’hard disk, boot sector compreso (ma questo a noi non frega granchè come vedremo).
Uno dei punti di forza è la velocità, sia del ripristino che nel backup, inoltre il bootdisk di Acronis (che è poi l’unica cosa utile nel nostro caso), supporta dischi e penne USB, salvataggio in rete e server Acronis.
Il problema maggiore è ovviamente quello che nella stragrande maggioranza dei casi, cambierà il controller dell’harddisk, e al riavvio (sempre su GRUB parte senza problema) otterremo qualcosa di simile
mount: error 6 mounting ext3
mount: error 2 mounting none
switchroot: mount failed 22
umount /initrd/dev failed: 2
kernel panic
Il sistema non riesce a montare la partizione di root perché ovviamente non sa di avere un disco!
Esistono semplicissimi step per risolvere la questione.
-Prendete il CD di Trixbox 2 e partite con il Rescue Mode (F5)
-Il sistema sarà montato in /mnt/sysimage
-Usate il chroot per “creare l’ambiente” sulla directory di cui sopra
Le distribuzioni basate su Fedora e Red Hat enterprise e derivati, fanno uso dei label per “etichettare” dei device, ad esempio in fstab abbiamo
# This file is edited by fstab-sync – see ‘man fstab-sync’ for details
LABEL=/ / ext3 defaults 1 1
LABEL=/boot /boot ext3 defaults 1 2
none /dev/pts devpts gid=5,mode=620 0 0
none /dev/shm tmpfs defaults 0 0
none /proc proc defaults 0 0
none /sys sysfs defaults 0 0
LABEL=/var /var ext3 defaults 1 2
LABEL=SWAP-sda2 swap swap defaults 0 0
Crea un po’ di confusione, ma è una comodità nel nostro caso, perchè non dobbiamo modificare a mano fstab, grub.conf etc.. basterà etichettare una volta le partizioni.
Il comando è e2label e l’uso è semplice
e2label /dev/xxx ETICHETTA
ad esempio e2label /dev/sda2 /
A questo punto sarà necessario ricreare limmagine initrd con il modulo del controller disco adatto e per il kernel usato.
Per fare questo basta un semplice
mkinitrd with=NOME MODULO CONTROLLER /boot/nuovo-initrd.img NOME KERNEL
Dopo qualche secondo tale file sarà pronto, quindi andremo ad editare il file grub.conf, che sarà simile a questo
#boot=/dev/sda
default=0
timeout=5
splashimage=(hd0,0)/grub/splash.xpm.gz
#hiddenmenu
title CentOS-4 i386 (2.6.9-34.0.2.ELsmp)
root (hd0,0)
kernel /vmlinuz-2.6.9-34.0.2.ELsmp ro root=LABEL=/ acpi=off noapic
initrd /nuovo-initrd.img
Siamo quasi alla fin, infatti adesso basta caricare grub ed alla console fare (come esempio)
root (hd0,0)
e avremo come output
grub> root (hd0,0)
Filesystem type is ext2fs, partition type 0×83setup (hd0)
grub> setup (hd0)
Checking if “/boot/grub/stage1″ exists… no
Checking if “/grub/stage1″ exists… yes
Checking if “/grub/stage2″ exists… yes
Checking if “/grub/e2fs_stage1_5″ exists… yes
Running “embed /grub/e2fs_stage1_5 (hd0)”… 16 sectors are embedded.
succeeded
Running “install /grub/stage1 (hd0) (hd0)1+16 p (hd0,0)/grub/stage2 /grub/grub.
.conf”… succeeded
Done.
Non ci rimane che riavviare e vedere (spero!!!) il nostro sistema ripartire!!

Categories
Tag Cloud
Blog RSS
Comments RSS
Last 50 Posts
Back
Void « Default
Life
Earth
Wind
Water
Fire
Light 