Recupero dati · 4 min read · Dec 25, 2025
Recupera Dati Da Partizioni RAID1 LVM Con Knoppix Linux LiveCD
Recupera Dati Da Partizioni RAID1 LVM Con Knoppix Linux LiveCD
Versione 1.0
Autore: Till Brehm
Ultima modifica: 04/11/2007
Questo tutorial descrive come recuperare dati da un singolo disco rigido che faceva parte di un setup LVM2 RAID1 come quello creato ad esempio dall’installer di Fedora Core. Perché è così problematico recuperare i dati? Ogni singolo disco rigido che in precedenza faceva parte di un setup LVM RAID1 contiene tutti i dati che erano memorizzati nel RAID, ma il disco rigido non può semplicemente essere montato. Prima, un setup RAID deve essere configurato per la (le) partizione(i) e poi LVM deve essere impostato per utilizzare questa (queste) partizione(i) RAID prima di poterlo montare. Userò il Knoppix Linux LiveCD per effettuare il recupero dei dati.
Requisiti
Ho usato un Knoppix 5.1 LiveCD per questo tutorial. Scarica l’immagine ISO del CD da qui e masterizzala su CD, poi collega il disco rigido che contiene la (le) partizione(i) RAID al controller IDE / ATA della tua scheda madre, inserisci il CD di Knoppix nel tuo lettore CD e avvia dal CD.
Il disco rigido che ho usato è un’unità IDE collegata al primo controller IDE (hda). Nel mio caso, il disco rigido conteneva solo una partizione.
Ripristino Del Raid
Dopo che Knoppix è stato avviato, apri una shell ed esegui il comando:
sudo super diventare l’utente root.
Poiché non ho il file mdadm.conf dalla configurazione originale, lo creo con questo comando:
mdadm --examine --scan /dev/hda1 >> /etc/mdadm/mdadm.confIl risultato dovrebbe essere simile a questo:
DEVICE partitions
CREATE owner=root group=disk mode=0660 auto=yes metadata=1
MAILADDR root
ARRAY /dev/md0 level=raid1 num-devices=2 UUID=a28090aa:6893be8b:c4024dfc:29cdb07a
Modifica il file e aggiungi devices=/dev/hda1,missing alla fine della riga che descrive l’array RAID.
vi /etc/mdadm/mdadm.confInfine, il file appare così:
DEVICE partitions
CREATE owner=root group=disk mode=0660 auto=yes metadata=1
MAILADDR root
ARRAY /dev/md0 level=raid1 num-devices=2 UUID=a28090aa:6893be8b:c4024dfc:29cdb07a devices=/dev/hda1,missing
La stringa /dev/hda1 è il dispositivo hardware e missing significa che il secondo disco in questo array RAID non è presente al momento.
Modifica il file /etc/default/mdadm:
vi /etc/default/mdadme cambia la riga:
AUTOSTART=falsein:
AUTOSTART=true
Ora possiamo avviare il nostro setup RAID:
/etc/init.d/mdadm start
/etc/init.d/mdadm-raid start
Per controllare se il nostro dispositivo RAID è ok, esegui il comando:
cat /proc/mdstatL’output dovrebbe apparire così:
Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10]
md0 : active raid1 hda1[1]
293049600 blocks [2/1] [_U]
unused devices:
Recupero Della Configurazione LVM
Il file di configurazione LVM non può essere creato con un semplice comando come il mdadm.conf, ma LVM memorizza una o più copie del contenuto del file di configurazione all’inizio della partizione. Uso il comando dd per estrarre la prima parte della partizione e scriverla in un file di testo:
dd if=/dev/md0 bs=512 count=255 skip=1 of=/tmp/md0.txtApri il file con un editor di testo:
vi /tmp/md0.txtTroverai prima alcuni dati binari e poi una parte del file di configurazione simile a questa:
VolGroup00 {
id = "evRkPK-aCjV-HiHY-oaaD-SwUO-zN7A-LyRhoj"
seqno = 2
status = ["RESIZEABLE", "READ", "WRITE"]
extent_size = 65536 # 32 Megabytes
max_lv = 0
max_pv = 0
physical_volumes {
pv0 {
id = "uMJ8uM-sfTJ-La9j-oIuy-W3NX-ObiT-n464Rv"
device = "/dev/md0" # Solo un suggerimento
status = ["ALLOCATABLE"]
pe_start = 384
pe_count = 8943 # 279,469 Gigabytes
}
}
logical_volumes {
LogVol00 {
id = "ohesOX-VRSi-CsnK-PUoI-GjUE-0nT7-ltxWoy"
status = ["READ", "WRITE", "VISIBLE"]
segment_count = 1
segment1 {
start_extent = 0
extent_count = 8942 # 279,438 Gigabytes
type = "striped"
stripe_count = 1 # lineare
stripes = [
"pv0", 0
]
}
}
}
}Crea il file /etc/lvm/backup/VolGroup00:
vi /etc/lvm/backup/VolGroup00e inserisci i dati di configurazione in modo che il file assomigli all’esempio sopra.
Ora possiamo avviare LVM:
/etc/init.d/lvm startLeggi nel volume:
vgscanLettura di tutti i volumi fisici. Questo potrebbe richiedere un po’ di tempo…
Gruppo di volumi trovato “VolGroup00” usando il tipo di metadati lvm2
pvscanPV /dev/md0 VG VolGroup00 lvm2 [279,47 GB / 32,00 MB liberi]
Totale: 1 [279,47 GB] / in uso: 1 [279,47 GB] / in nessun VG: 0 [0 ]
e attiva il volume:
vgchange VolGroup00 -a y 1 volume logico(i) nel gruppo di volumi "VolGroup00" ora attivoOra siamo in grado di montare la partizione in /mnt/data:
mkdir /mnt/data
mount /dev/VolGroup00/LogVol00 /mnt/data/
Se recuperi dati da un disco rigido con nomi di file in formato UTF-8, potrebbe essere necessario convertirli nella tua attuale locale non-UTF-8. Nel mio caso, il disco rigido RAID proviene da un sistema Fedora Core con nomi di file codificati in UTF-8. La mia locale di destinazione è ISO-8859-1. In questo caso, lo script Perl convmv aiuta a convertire i nomi dei file nella locale di destinazione.
Installazione Di convmv
cd /tmp
wget http://j3e.de/linux/convmv/convmv-1.10.tar.gz
tar xvfz convmv-1.10.tar.gz
cd convmv-1.10
cp convmv /usr/bin/convmv
Per convertire tutti i nomi dei file in /mnt/data nella locale ISO-8859-1, esegui questo comando:
convmv -f UTF-8 -t ISO-8859-1 -r --notest /mnt/data/*Se vuoi testare prima la conversione, usa:
convmv -f UTF-8 -t ISO-8859-1 -r /mnt/data/*Link
Ricevi i nuovi post nella tua casella di posta.
Nessuno spam. Disiscriviti in qualsiasi momento.