Um zu überprüfen, ob sie gleich sind, siehe was ls -la
Listen für beide Dateien:
$ ls -l /dev/datavg/datalv
lrwxrwxrwx 1 root root 25 2013-03-01 19:02 /dev/datavg/datalv -> /dev/mapper/datavg-datalv
$ ls -l /dev/mapper/datavg-datalv
brw------- 1 root root 253, 0 2013-03-01 19:02 /dev/mapper/datavg-datalv
Wie Sie sehen, gibt es einen kleinen Unterschied:
/dev/mapper/datavg-datalv
ist eine Gerätedatei während /dev/datavg/datalv
ist ein symbolischer Link .
Obwohl beide Pfade in Befehlen austauschbar sind wie mount
oder fdisk
:
# mount /dev/datavg/datalv /mnt
# mount /dev/mapper/datavg-datalv /mnt
meiner Erfahrung nach sollten Sie die Gerätedatei in /etc/fstab
verwenden , zum Beispiel:
/dev/mapper/datavg-datalv /mnt ext3 acl,user_xattr 1 2
Wie kommt es, dass ich das empfehle? Vor ein paar Jahren hatte ich ein Problem mit einem Server, der nach einem Neustart nicht auftauchte, und die Ursache war ein fehlender Geräte-Symlink für ein LVM-Dateisystem, das in /etc/fstab
aufgeführt ist .
Vielleicht hat sich das geändert, seit die Frage gestellt wurde, aber die Manpages für LVM2 geben an (Hervorhebung von mir):
Unter /dev
wird ein Verzeichnis erstellt, das den Namen jeder Volume Group trägt wenn eines seiner logischen Volumes aktiviert wird. Jedes aktive logische Volumen ist von diesem Verzeichnis aus als symbolische Verknüpfung zugreifbar, die zu einem Geräteknoten führt. Links oder Knoten in /dev/mapper
sind nur für den internen Gebrauch bestimmt und das genaue Format und das Escapezeichen können sich zwischen Releases und Distributionen ändern. Andere Software und Skripte sollten den /dev/VolumeGroupName/LogicalVolumeName
verwenden Format, um die Wahrscheinlichkeit zu verringern, dass Änderungen erforderlich sind, wenn die Software aktualisiert wird. Sollten Sie die Knotennamen in /dev/mapper
verarbeiten müssen , können Sie dmsetup splitname
verwenden um die ursprünglichen VG-, LV- und internen Schichtnamen zu trennen.
Daher sollten Sie mount /dev/datavg/datalv /mnt
verwenden
Bezüglich dmsetup splitname
:
splitname device_name [subsystem] Splits given device name into subsystem constituents. The default subsystem is LVM. LVM currently generates device names by concatenating the names of the Volume Group, Logical Volume and any internal Layer with a hyphen as separator. Any hyphens within the names are doubled to escape them. The precise encoding might change without notice in any future release, so we recommend you always decode using the current version of this command.
Hier ist ein Anwendungsbeispiel:
# dmsetup splitname /dev/mapper/datavg-datalv
VG LV LVLayer
/dev/mapper/datavg datalv
Interessanterweise auf meinem System /dev/mapper/datavg
existiert nicht, also bin ich von dieser Ausgabe verwirrt.