Pour vérifier s'ils sont identiques, voir ce que ls -la
listes pour les deux fichiers :
$ 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
Comme vous le voyez, il y a une petite différence :
/dev/mapper/datavg-datalv
est un fichier de périphérique tandis que /dev/datavg/datalv
est un lien symbolique .
Bien que les deux chemins soient interchangeables dans les commandes comme mount
ou fdisk
:
# mount /dev/datavg/datalv /mnt
# mount /dev/mapper/datavg-datalv /mnt
mon expérience est que vous devriez utiliser le fichier de périphérique dans /etc/fstab
, par exemple :
/dev/mapper/datavg-datalv /mnt ext3 acl,user_xattr 1 2
Comment se fait-il que je recommande cela ? Il y a quelques années, j'ai eu un problème avec un serveur qui ne s'est pas présenté après un redémarrage et la cause était un lien symbolique de périphérique manquant pour un système de fichiers LVM répertorié dans /etc/fstab
.
Peut-être que cela a changé depuis que la question a été posée, mais les pages de manuel pour l'état LVM2 (c'est moi qui souligne):
Un répertoire portant le nom de chaque Volume Group est créé sous
/dev
lorsque l'un de ses volumes logiques est activé. Chaque volume logique actif est accessible depuis ce répertoire sous la forme d'un lien symbolique menant à un nœud de périphérique. Liens ou nœuds en/dev/mapper
sont destinés uniquement à un usage interne et le format précis et l'échappement peuvent changer entre les versions et les distributions. Les autres logiciels et scripts doivent utiliser le/dev/VolumeGroupName/LogicalVolumeName
format pour réduire le risque d'avoir besoin d'une modification lors de la mise à jour du logiciel. Si vous devez traiter les noms de nœuds en/dev/mapper
, vous pouvez utiliserdmsetup splitname
pour séparer les noms de couches VG, LV et internes d'origine.
Par conséquent, vous devez utiliser mount /dev/datavg/datalv /mnt
Concernant 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.
Voici un exemple d'utilisation :
# dmsetup splitname /dev/mapper/datavg-datalv
VG LV LVLayer
/dev/mapper/datavg datalv
Fait intéressant, sur mon système, /dev/mapper/datavg
n'existe pas donc je suis perplexe devant cette sortie.