it-swarm.it

Mancano i dispositivi LVM in / dev / mapper

Sto usando Debian Squeeze ed eseguo LVM sul software RAID 1. Ho appena scoperto per caso che la maggior parte dei collegamenti in /dev/mapper mancano, anche se il mio sistema sembra funzionare correttamente.

Non sono sicuro di cosa sia successo. L'unica cosa che posso immaginare è stata il mio tentativo fallito di far funzionare un container LXC Fedora. Ho finito per eliminare una directory /cgroup/laughlin, corrispondente al contenitore, ma non riesco a immaginare perché ciò abbia causato il problema. /dev/mapper sembrava (ho apportato alcune modifiche, vedi sotto) approssimativamente come

orwell:/dev/mapper# ls -la
total 0
drwxr-xr-x  2 root root     540 Apr 12 05:08 .
drwxr-xr-x 22 root root    4500 Apr 12 05:08 ..
crw-------  1 root root  10, 59 Apr  8 10:32 control
lrwxrwxrwx  1 root root       7 Mar 29 08:28 debian-root -> ../dm-0
lrwxrwxrwx  1 root root       8 Apr 12 03:32 debian-video -> ../dm-23

debian-video corrisponde a un LV che avevo appena creato.

Tuttavia, ho un certo numero di VG sul mio sistema, corrispondenti a 4 VG distribuiti su 4 dischi. vgs

orwell:/dev/mapper# vgs
  VG         #PV #LV #SN Attr   VSize   VFree  
  backup       1   2   0 wz--n- 186.26g  96.26g
  debian       1   7   0 wz--n- 465.76g 151.41g
  olddebian    1  12   0 wz--n- 186.26g  21.26g
  testdebian   1   3   0 wz--n- 111.75g  34.22g

Ho provato a correre

 /dev/mapper# vgscan --mknodes

e alcuni dispositivi sono stati creati (vedi l'output di seguito), ma non sono collegamenti simbolici ai dispositivi dm come dovrebbero essere, quindi non sono sicuro se questo sia inutile o peggio. Avrebbero ostacolato la ricreazione dei collegamenti corretti? Devo eliminare di nuovo questi dispositivi?

Credo che udev crei questi collegamenti, quindi un riavvio risolverà questo problema o otterrei un sistema non avviabile? Cosa devo fare per risolvere questo problema? Esistono controlli diagnostici/di integrità che dovrei eseguire per assicurarmi che non ci siano altri problemi che non ho notato? Grazie in anticipo per qualsiasi assistenza.

orwell:/dev/mapper# ls -la
total 0
drwxr-xr-x  2 root root     540 Apr 12 05:08 .
drwxr-xr-x 22 root root    4500 Apr 12 05:08 ..
brw-rw----  1 root disk 253,  1 Apr 12 05:08 backup-local_src
brw-rw----  1 root disk 253,  2 Apr 12 05:08 backup-video
crw-------  1 root root  10, 59 Apr  8 10:32 control
brw-rw----  1 root disk 253, 15 Apr 12 05:08 debian-boot
brw-rw----  1 root disk 253, 16 Apr 12 05:08 debian-home
brw-rw----  1 root disk 253, 22 Apr 12 05:08 debian-lxc_laughlin
brw-rw----  1 root disk 253, 21 Apr 12 05:08 debian-lxc_squeeze
lrwxrwxrwx  1 root root       7 Mar 29 08:28 debian-root -> ../dm-0
brw-rw----  1 root disk 253, 17 Apr 12 05:08 debian-swap
lrwxrwxrwx  1 root root       8 Apr 12 03:32 debian-video -> ../dm-23
brw-rw----  1 root disk 253, 10 Apr 12 05:08 olddebian-etch_template
brw-rw----  1 root disk 253, 13 Apr 12 05:08 olddebian-Fedora
brw-rw----  1 root disk 253,  8 Apr 12 05:08 olddebian-feisty
brw-rw----  1 root disk 253,  9 Apr 12 05:08 olddebian-gutsy
brw-rw----  1 root disk 253,  4 Apr 12 05:08 olddebian-home
brw-rw----  1 root disk 253, 11 Apr 12 05:08 olddebian-lenny
brw-rw----  1 root disk 253,  7 Apr 12 05:08 olddebian-msi
brw-rw----  1 root disk 253,  5 Apr 12 05:08 olddebian-oldchresto
brw-rw----  1 root disk 253,  3 Apr 12 05:08 olddebian-root
brw-rw----  1 root disk 253, 14 Apr 12 05:08 olddebian-suse
brw-rw----  1 root disk 253,  6 Apr 12 05:08 olddebian-vgentoo
brw-rw----  1 root disk 253, 12 Apr 12 05:08 olddebian-wsgi
brw-rw----  1 root disk 253, 20 Apr 12 05:08 testdebian-boot
brw-rw----  1 root disk 253, 18 Apr 12 05:08 testdebian-home
brw-rw----  1 root disk 253, 19 Apr 12 05:08 testdebian-root
23
Faheem Mitha

Questi giorni /dev è su tmpfs e viene creato da zero ogni avvio di udev. È possibile riavviare in modo sicuro e questi collegamenti torneranno.

Dovresti anche trovare collegamenti simbolici LVM a /dev/dm-X nodi in /dev/<vg> directory, una directory per ciascun gruppo di volumi. Tuttavia, quei nodi ricreati da vgscan --mknodes funzionerà anche bene, supponendo che abbiano i numeri maggiori/minori giusti - ed è un presupposto sicuro che siano stati creati correttamente.

Probabilmente puoi anche ottenere udev per ricreare i collegamenti simbolici usando udevadm trigger con una corrispondenza appropriata, test con --dry-run fino a quando non è giusto. Non sembra valere la pena, tuttavia, anche quando un riavvio risolverà il problema.

16
camh

Ho appena avuto un problema simile a quello che descrivi, anche se per me è successo quando stavo tentando di installare il nuovo Ubuntu 11.10 Oneiric Ozelot su un volume LVM. Avevo fatto quanto segue per impostare lvm su un sistema di avvio live (i volumi logici di cui avevo bisogno erano già presenti):

apt-get install lvm2
vgscan --mknodes -v

Adesso lvscan -v ha mostrato i miei volumi ma non erano in /dev/mapper né in /dev/<vg>/. Alla fine ho scoperto che dovevo attivare il gruppo di volumi, in questo modo:

vgchange -a y <name of volume group>

Il comando sopra ha creato per me tutti i file del dispositivo mancanti. Ora potrei avviare il programma di installazione e trovare i volumi di LVM e permettermi di installarli.

Trovare queste informazioni su google è stato difficile, quindi scrivo questa risposta nella speranza che gli altri abbiano un tempo più facile - da qui il contesto approfondito e il nominativo.

Sebbene non faccia parte della domanda, per completezza aggiungerò che nella situazione sopra (installazione Ubuntu LVM) è necessario aggiungere lvm2 all'inizio del sistema appena installato una volta terminata l'installazione, altrimenti non si avvierà. Il tuo nuovo sistema dovrebbe essere impostato per te in/target, ma se non lo è, fallo manualmente in questo modo:

mount /dev/vg/new_root /target
mount /dev/sdx1 /target/boot       # important
mount -o bind /proc /target/proc
mount -o bind /sys /target/sys
mount -o bind /dev /target/dev
mount -o bind /dev/pts /target/dev/pts

Avevo bisogno di fare questo per far funzionare la rete nel chroot, che passerò al prossimo:

cp /etc/resolv.conf /target/etc/

Ora chroot al nuovo sistema e installa lvm2:

chroot /target
apt-get install lvm2

Si noti che esegue update-initramfs. Ora digita exit e riavvia e il tuo sistema dovrebbe avviarsi correttamente.

39

Questo ha funzionato anche per me.

vgchange -a y -name of volume group-

Dopo una patch del kernel il mio sistema RHEL non è riuscito a riavviarsi. Lamentarsi di un mancante /dev/mapper/VG-lv file.

Avviato a utente singolo e commentato da /etc/fstab. Una volta online ho scoperto che il mio disco crittografato veniva mostrato come "dispositivo sconosciuto" usando pvs.

Risolto questo problema, ma ancora nessun file di dispositivo per il gruppo Volume. L'esecuzione del comando precedente ha ricreato i file del mapper del dispositivo e mi ha permesso di montare.

4
Paul Bennett

Ho avuto un problema simile dopo aver aggiornato il mio debian. Durante il riavvio, questo messaggio mi è apparso:

Unable to find LVM Volume. 
/dev/mapper/debian-root does not exist.

Ho trovato la soluzione qui :

cryptsetup luksOpen /dev/sda5 lvmsys
lvm
lvm> vgscan        ## scan for volume groups
lvm> vgchange -a y ## activates the volume groups

E voilà, dopo questo si è riavviato bene.

3
Adriano P

https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=616689 è rilevante qui. Ha a che fare con i timeout in modo tale che lvm root non appaia in tempo.

0
Martin Cleaver