PDA

View Full Version : [Ubuntu Server 10.04] Backup/Clonazione


kwb
29-12-2012, 17:19
Ciao!
Mi ritrovo con la grana di dover sostituire l'hdd del mio muletto che gira con Ubuntu Server 10.04. L'hdd funziona perfettamente.
Siccome è fortemente personalizzato non voglio reinstallare tutto da capo perchè temo che facendo il backup potrei dimenticare qualcosa di fondamentale.

Vorrei aggiungere che, essendo il muletto un portatile, non ho la possibilità di aggiungere un hd interno e piano piano trasferire le cose li sopra ( cosa che se avessi potuto fare avrei fatto ). L'unica cosa è l'utilizzo di un HD esterno ma il trasferimento è veramente lento e ci impiegherei troppo.

Mi domandavo quindi se esiste un modo per fare una sorta di immagine del disco e poterla poi 'incollare' sul nuovo HD.

Ho trovato in giro tutorial su come fare il backup con vari script in bash e non, ma vorrei prima discuterne qua per capire quale sia la migliore soluzione.

Concludo dicendo che il filesystem utilizzato è ext4, nel caso servisse e le partizioni utilizzate sono quelle standard: root, /swap e /home

Grazie a tutti,

Kwb

Gimli[2BV!2B]
29-12-2012, 18:27
Solitamente avvio il sistema con un disco live, monto le partizioni, poi vado di (esempio con home)cp -ax /mnt/VECCHIA_home/. /mnt/NUOVA_homeAttenzione al punto per evitare che la cartella di origine sia creata nella destinazione (l'opzione x è per precauzione paranoica).

Una volta spostato il tutto revisiono fstab ed i parametri di Grub.

eaman
29-12-2012, 19:01
Gia' che ci sei considera di mettere il nuovo hd in LVM: fai una partizione primaria di ~80MB per /boot e poi un un'unica altra partizione da far diventare un PV. Poi ti fai tutti gli LV che vuoi.

Dato che non c'e' neanche un modulo del kernel da caricare non dovresti neanche aver bisogno di aggiornare l'initrd (se la usi).

kwb
30-12-2012, 11:54
Il mio problema è che ho modificato anche file di sistema che non vorrei dover rimodificare, quindi penso che una clonazione sia più appropiata.

Ora sto provando ad usare clonezilla, facendo una clonazione da disco a disco.
Tuttavia continuo a ricevere questi errori:
[XXX.XXXXXX]end_request: I/O error, dev sr0, sector XXXXXX

E non capisco che sta succedendo... Non capisco se questa serie di errori terminerà ( e inizierà la clonazione ) oppure se si ferma tutto.. Credo ci sia qualche problema con il lettore dvd..


Se così fosse avrei seri problemi a sostituirlo, e mi dovrei inventare qualcosa..

Ma ho scoperto che c'è pure dd integrato nei sistemi unix, ma da quello che ho letto in giro ( non so se ho capito bene ) questo fa la copia esatta così come è, nel senso che se faccio una copia di un HD da 40 GB, e poi la metto su un hd da 300GB, mi ritroverò con una partizione da 40GB e il resto dello spazio non formattato...
È una situazione che vorrei evitare...

EDIT: Ho provato anche a googlare l'errore ma non ho trovato nulla di rilevante

nicfio
30-12-2012, 15:32
Ma ho scoperto che c'è pure dd integrato nei sistemi unix, ma da quello che ho letto in giro ( non so se ho capito bene ) questo fa la copia esatta così come è, nel senso che se faccio una copia di un HD da 40 GB, e poi la metto su un hd da 300GB, mi ritroverò con una partizione da 40GB e il resto dello spazio non formattato...
È una situazione che vorrei evitare...

Se utilizzi DD anzichè copiare l'intero device sull'altro, puoi limitarti alle singole partizioni: ad esempio se SDA1 è quello da 40Gb e SDB1 da 300, puoi dare:

dd if=/dev/sda1 of=/dev/sdb1.

In questo modo non copi anche la tabella delle partizioni e pernto dovresti evitare lo spreco di spazio.

eaman
30-12-2012, 15:43
Guarda che un cp -a copia qualunque cosa ci sia sul file system. Io devo migrare un server da Francia a USA e userò CP (SCP) oppure rsync.

Una copia raw è cosa da windows, è sempre meglio lavorare coi file che con i block decide.

kwb
30-12-2012, 17:25
Se utilizzi DD anzichè copiare l'intero device sull'altro, puoi limitarti alle singole partizioni: ad esempio se SDA1 è quello da 40Gb e SDB1 da 300, puoi dare:

dd if=/dev/sda1 of=/dev/sdb1.

In questo modo non copi anche la tabella delle partizioni e pernto dovresti evitare lo spreco di spazio.
Ora sto usando clonezilla ( ho caricato il programma in RAM tramite l'apposita opzione, il lettore dvd deve essere un po' scassato ), vediamo che succede.

Ma siccome sda ha 3 partizioni:
- / ( sda1 )
- /swap ( sda5 )
- /home ( sda2 )

Se davo:

dd if=/dev/sda of=/dev/sdb
Avrebbe funzionato? Perchè se no mi devo ricreare le stesse partizioni ( 3 ) pure su sdb e tanto vale...

[QUOTE=eaman;38786096]Guarda che un cp -a copia qualunque cosa ci sia sul file system.[/code]
Si ma avrei dovuto dare:

cp -a / /media/mount1/

invece di

cp -ax /mnt/VECCHIA_home/. /mnt/NUOVA_home

Come aveva suggerito Gimli[2BV!2B]

kwb
31-12-2012, 15:49
Bene!
Sono riuscito a sbrogliare la situazione in maniera piuttosto liscia.
Purtroppo come temevo, clonezilla ha realmente clonato il disco, nel senso che anche le partizioni sono rimaste uguali, lasciandomi gran parte del nuovo disco non allocato.


Per chi incontrasse questo stesso problema, spiego come fare:

Mi sono ritrovato quindi con la seguente tabella delle partizioni:
[Ext 4 ~40GB - Boot][Extended[Swap ~1.5 GB]][~120 GB non allocati]

Il problema era che volevo spostare i 120 GB non allocati e unirli ai 40GB ext4.
Tramite l'interfaccia grafica di GParted ho dovuto:

Estendere la Extended fino al massimo ( usando i 120GB non allocati ).
Spostare la swap alla fine dell'Extended
Ridimensionare l'Extended alla stessa dimensione della Swap

A questo punto ci si ritrova con la situazione desiderata, ovvero lo spazio non allocato è subito dopo l'ext4.
Da qui basta allargare l'ext4 fino ad arrivare alla Extended ( usando tutto lo spazio non allocato ) e si risolve il problema.

Spero di essere stato chiaro!
Grazie a tutti per le indicazioni, anche se poi ho fatto di testa mia :D

omerook
31-12-2012, 22:57
non dimenticate anche gparted per copiare e ridimensionare le partizioni. io lo trovo molto comodo.