5.2. Spostare i file system root da un dispositivo a percorso singolo ad un dispositivo Multipath
Se avete installato il sistema su un dispositivo con percorso singolo e successivamente avete aggiunto un altro percorso al file system root, allora sarà necessario spostare il file system root su un dispositivo con percorsi multipli. Questa sezione documenta la procedura necessaria per spostare il file system su un dispositivo con percorsi multipli.
Dopo aver installato il pacchetto
device-mapper-multipath
eseguire la procedura di seguito riportata:
- Eseguire il seguente comando per creare il file di configurazione
/etc/multipath.conf
, caricare il modulo multipath ed impostarechkconfig
permultipathd
suon
:#
mpathconf --enable
Per maggiori informazioni sull'uso del comandompathconf
consultate la Sezione 3.1, «Come impostare un DM-Multipath». - Modificare le sezioni
blacklist
eblacklist_exceptions
del file/etc/multipath.conf
come descritto in Sezione 4.2, «File di configurazione - Blacklist». - Per confermare l'impostazione corretta del file di configurazione eseguire il comando
/sbin/multipath
con l'opzione-v3
per controllare se il demone multipath ha cercato di creare un dispositivo multipath sul dispositivo root. Questo comando fallirà poichè il dispositivo root è in esecuzione, ma l'output del comando dovrebbe mostrare il dispositivo root nell'elenco dei percorsi.Controllare la presenza all'interno dell'output del comando della riga con il seguente formato:WWID H:B:T:L devname MAJOR:MINOR
Per esempio, se il file system root è impostato susda
o su una delle sue partizioni, allora sarà possibile visualizzare una riga simile alla seguente:===== paths list ===== ... 1ATA WDC WD800JD-75MSA3 WD-WMAM9F 1:0:0:0 sda 8:0 ...
Più avanti nell'output sarà possibile visualizzare il dispositivo root assegnato ad un dispositivo multipath:time | devname: ownership set to mpathdev
Per esempio, l'output potrebbe apparire nel modo seguente:Jun 14 06:48:21 | sda: ownership set to mpatha
È possibile visualizzare un avviso relativo al fallimento del comando durante la creazione del dispositivo multipath, con una riga avente un formato simile:time | mpathdev: domap (0) failure for create/reload map
Nell'esempio sopra riportato sarà presente all'interno dell'output del comando la seguente riga:Jun 14 06:48:21 | mpatha: domap (0) failure for create/reload map
- Per compilare nuovamente il file system
initramfs
conmultipath
, eseguiredracut
con le seguenti opzioni:#
dracut --force --add multipath --include /etc/multipath /etc/multipath
- Se il dispositivo root non è un volume LVM ed è stato montato in base al nome del dispositivo, per smistarsi sul nome del dispositivo multipath appropriato sarà necessario modificare il file
fstab
. Se il dispositivo root è un dispositivo LVM o è stato montato in base all'UUID o altro, allora questa fase non sarà necessaria.- Usare la procedura descritta nella Fase 3 relativa all'esecuzione del comando
/sbin/multipath
con-v3
per determinare il WWID del dispositivo root. - Impostare un alias per il dispositivo root nel file
/etc/multipath.conf
:multipaths { multipath { wwid WWID_of_root_device alias rootdev } }
- Modificare
/etc/fstab
e sostituite il percorso del dispositivo vecchio per il dispositivo root con il dispositivo multipath.Per esempio se in possesso della seguente voce nel file/etc/fstab
:/dev/sda1 / ext4 defaults 1 1
Modificare la voce in questione nel modo seguente:/dev/mapper/rootdev / ext4 defaults 1 1
Sarà necessario modificare il file/etc/fstab
, il file/etc/grub/grub.conf
ed il parametro root daroot=/dev/sda1
aroot=/dev/mapper/rootdev
.Il seguente esempio mostra la voce del filegrub.conf
prima del modifica.title Red Hat Enterprise Linux FoundationServer (2.6.32-71.24.1.el6.x86_64) root (hd0,0) kernel /vmlinuz-2.6.32-71.24.1.el6.x86_64 ro root=/dev/sda1 rd_NO_LUKS rd_NO_MD rd_NO_DM LANG=en_US.UTF-8 SYSFONT=latarcyrheb-sun16 KEYTABLE=us console=ttyS0,115200n8 crashkernel=auto initrd /initramfs-2.6.32-71.24.1.el6.x86_64.img
Il seguente esempio mostra la voce del filegrub.conf
dopo la modifica.title Red Hat Enterprise Linux FoundationServer (2.6.32-71.24.1.el6.x86_64) root (hd0,0) kernel /vmlinuz-2.6.32-71.24.1.el6.x86_64 ro root=/dev/mapper/rootdev rd_NO_LUKS rd_NO_MD rd_NO_DM LANG=en_US.UTF-8 SYSFONT=latarcyrheb-sun16 KEYTABLE=us console=ttyS0,115200n8 crashkernel=auto initrd /initramfs-2.6.32-71.24.1.el6.x86_64.img
- Arrestate la macchina.
- Configurare l'interruttore FC in modo tale che altri percorsi siano visibili alla macchina.
- Avviare la macchina.
- Controllate se il file system root ('/') è sul dispositivo multipath.