Sostituzione Hard Disk guasto su Debian Lenny e ripristino sistema

Ieri sera mi ha dato l’addio l’hard disk da 2,5 pollici con capacità da 80GByte del mio mini pc che funge da server casalingo grazie ad una Debian Lenny (ne parlavo qui L’oggetto del mistero svelato ). In tutta fretta ho recuperato un altro hard disk di taglia un po più piccola, 60 GByte, e l’ho sostituito ripristinando il sistema dal vecchio disco, ( che nel frattempo a sprazzi  a ripreso a funzionare ) per mezzo della seguente procedura:

Recuperando un’interfaccia pata-to-usb per hd da 2,5 pollici ho collegato il disco guasto al mio sistema ubuntu 9.10 che fortunatamente l’ha riconosciuto senza problemi e l’ha montato in /media/cfc20d0f-6d8c-4687-ad2d-f5f440f36135

Quindi ho creato la directory backup nella mia home dove ho provveduto a copiare il contenuto del disco incriminato:

mkdir backup
cp -av /media/cfc20d0f-6d8c-4687-ad2d-f5f440f36135/ backup 2> errori_backup

Il parametro a serve a fare una copia ricorsiva preservando permessi, gruppi e proprietari dei file.

Mentre con 2> errori_backup redirigo l’output error nel file errori_backup in modo da controllare successivamente in questo file se vi sono stati problemi durante la copia per i quali non sono stati copiati dei file in modo da provvedere ad un corretto ripristino di quest’ultimi.

Ultimata la copia ho collegato il disco nuovo e l’ho partizionato similmente a quello guasto:

Disco /dev/sdb: 60.0 GB, 60011642880 byte
255 testine, 63 settori/tracce, 7296 cilindri
Unità = cilindri di 16065 * 512 = 8225280 byte
Identificativo disco: 0x0002679e
 
Dispositivo Boot      Start         End      Blocks   Id  System
/dev/sdb1               1          62      497983+  82  Linux swap / Solaris
/dev/sdb2   *          63        7296    58107105   83  Linux

Adesso procedo a preparare la partizione di swap e a creare il filesystem ext3 per la partizione che conterrà il sistema:

sudo mkswap /dev/sdb1
Setting up swapspace version 1, size = 497976 KiB
nessuna etichetta, UUID=9f06b011-f997-4ebe-911a-7247f9ae5247
 
mkfs.ext3 /dev/sdb2

Ora scollego il disco e lo ricollego in modo che ubuntu lo monti in automatico (in /media/3cb6b8e7-b219-4605-b041-0c84dd24075c) e successivamente inizio il ripristino dei dati precedentemente salvati:

sudo cp -av backup/cfc20d0f-6d8c-4687-ad2d-f5f440f36135/* /media/3cb6b8e7-b219-4605-b041-0c84dd24075c/

Adesso non mi rimane altro che ripristinare grub ricostruendo il master boot record:

sudo umount /dev/sdb2
sudo grub

a questo punto sono entrato nella shell di grub è ho digitato i seguenti comandi

grub> root (hd1,1)
 
grub> setup (hd1)
 Checking if "/boot/grub/stage1" exists... yes
 Checking if "/boot/grub/stage2" exists... yes
 Checking if "/boot/grub/e2fs_stage1_5" exists... yes
 Running "embed /boot/grub/e2fs_stage1_5 (hd1)"...  17 sectors are embedded.
succeeded
 Running "install /boot/grub/stage1 (hd1) (hd1)1+17 p (hd1,1)/boot/grub/stage2 /boot/grub/menu.lst"... succeeded
Done.
 
grub> quit

Con root (hd1,1) indico che il sistema dove è installato grub da ripristinare è sulla seconda partizione del secondo disco che il sistema riconosce (grub inizia a numerare i dischi/partizioni da 0, quindi nel mio caso il sdb2 è identificato da hd1,1).
Con setup (hd1) installo grub nell’mbr del secondo disco ovvero sdb.

A questo punto tutti i passaggi sono completati e se non vi sono stati errori, ricollegando il disco al sistema originale (al mio mini pc) tutto dovrebbe ripartire nel modo giusto.

Informatica , , , ,