16/12/2024

Commandes et Système

CentOS : Identifier les périphériques blocs

I. Présentation

Lorsque l’on dispose d’un système d’exploitation GNU/Linux fonctionnant sur une distribution CentOS, il peut s’avérer utile de forcer les partitions à être identifiées de façon unique via le n° UUID des volumes physiques sous-jacents.

Pour se faire, on dispose de deux commandes extraordinaires permettant d’identifier les périphériques blocs utilisés sur le système ainsi que leur numéro d’identification :

  • lsblk
  • blkid

II. Identification des périphériques blocs

Par défaut, lsblk permet d’afficher dans un format arborescent l’ensemble des périphériques blocs utilisés sur le système :

Si l’on souhaite disposer de l’information sur la propriété du périphérique il faut alors exécuter la commande lsblk avec l’option –m :

# lsblk -m

Cela permet de faire afficher le propriétaire, l’utilisateur et le groupe possédant le fichier du périphérique ainsi que le mode du système de fichiers monté :

Il existe également une option permettant de ne lister que les périphériques sous forme de liste (sans représentation arborescente :

# lsblk -l

REMARQUE : si l’on souhaite utiliser cette liste ultérieurement, mais que l’affichage de l’entête des colonnes nous gêne, qu’à cela ne tienne, il suffit d’utiliser l’option –n :

# lsblk -ln

III. Identification des numéro UUID

En complément des informations que l’on a pu collecter précédemment, on peut aussi souhaiter forcer l’utilisation du montage des partitions locales d’un système GNU/Linux en utilisant, non pas le nom ou le label de la partition, mais son numéro unique d’identification (aussi appelé UUID). A cet égard, on doit alors utiliser la commande blkid.

Cette commande permet d’identifier le type de contenu (système de fichiers, swap…etc) d’un périphérique bloc présenté tout en affichant les métadonnées de ce même contenu (label, nom, UUID…etc).

Par défaut, la commande affiche l’ensemble des associations périphériques bloc et UUID :

Mais, rien n’empêche l’administrateur d’identifier un périphérique bloc particulier, par exemple /dev/sda1 :

# blkid /dev/sda1
/dev/sda1: LABEL="/boot" UUID="4b292304-b83f-4d08-b3a6-e09bd86505d4" TYPE="xfs"

Mais, on peut aussi effectuer la recherche inverse, en connaissant le numéro UUID d’un périphérique, il est possible de récupérer son nom et son label:

# blkid –U 4b292304-b83f-4d08-b3a6-e09bd86505d4

REMARQUE : cette commande peut s’avérer très utile car cela permet de sécuriser un peu plus son système en forçant la table /etc/fstab à présenter les volumes locaux uniquement avec leur n°UUID.

De la même façon que l’on dispose d’informations sur le périphérique en utilisant la commande sdparm, il est aussi possible d’utiliser blkid pour récupérer l’intégralité des informations détaillées du périphérique :

# blkid –po udev  /dev/sda1

On peut alors afficher l’ensemble des entrées d’information du périphérique en question :

On peut également interroger la base des périphériques avec le label et l’option –L ou encore des informations d’entrées/sorties, avec l’option –i. On peut également lister les types de systèmes de fichiers supportés en utilisant l’option –k.

ASTUCE : il arrive parfois que l’affichage ne soit pas cohérent par rapport à la réalité. En fait, la commande blkid possède un cache, qu’il convient alors de rafraîchir au moyen de la commande ci-dessous :

# blkid –g

 

IV. Le répertoire /dev/disk/by-uuid

De la même façon que la commande blkid, il est possible d’interroger le contenu du répertoire /dev/disk/by-uuid qui devrait contenir les fichiers d’informations de chacun des périphériques du système, référencés par rapport à leur numéro UUID, et correspondant, comme on s’en doute, aux différents périphériques blocs précédemment identifiés :

Par ailleurs, on peut générer un nouveau n° UUID via la commande uuidgen et faire en sorte de l’attribuer à une partition en particulier pour être certain que l’on maîtrise de bout en bout l’identification de nos volumes, présentés au système Linux :

# uuidgen
1037e14d-1bfb-4ee7-8d30-99bb2c87a96d
# umount /soft
# tune2fs /dev/mapper/vg01-lv_soft –U 1037e14d-1bfb-4ee7-8d30-99bb2c87a96d

Il ne reste plus qu’à remonter la partition avec son nouveau numéro d’identification UUID:

# mount /dev/mapper/vg01-lv_soft /soft

IMPORTANT : il faut alors ne surtout pas oublier de modifier le fichier /etc/fstab afin d’identifier correctement la nouvelle partition (et surtout son n° UUID):

UUID=1037e14d-1bfb-4ee7-8d30-99bb2c87a96d /soft xfs defaults 0 0

 

V. Conclusion

Voilà, j’espère qu’avec ces deux commandes vous pourrez désormais identifier facilement vos périphériques et les répartir sans difficulté sur vos différentes partitions. Ce genre d’utilitaire permet, lorsque l’on écrase ou corrompt le fichier /etc/fstab, de pouvoir au moins rebooter sans erreur, grâce au n°UUID.

author avatar
Philippe PIERRE
A exercé de nombreuses années en tant qu'administrateur de base de données et comme administrateur Système Unix/Linux. Il a enseigné les réseaux au CNAM (Paris). Aujourd'hui, employé en tant qu'ingénieur infrastructure, au sein d'un laboratoire pharmaceutique et administrant un cluster de calculs HPC, il connaît parfaitement les environnements GNU/Linux dans le cadre d'une entreprise et des systèmes de haute disponibilité. Il aime partager son expérience.
Partagez cet article Partager sur Twitter Partager sur Facebook Partager sur Linkedin Envoyer par mail

1 commentaire sur “CentOS : Identifier les périphériques blocs

  • Bonjour jai beaucoup aimé les informations postees sur cette page et aussi pour son design carcest parfait selon moi, raymond moundzele legnerys

    Répondre

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.