Rescanner le bus SCSI

Si vous avez ajouté un nouveau stockage à une machine virtuelle en cours d’exécution (à chaud), vous ne pourrez pas le voir sans faire quelques manipulations. Notamment parce que le bus SCSI à laquelle les périphériques de stockage sont connectés, a besoin d’être réanalysé pour le rendre visible. il faut donc forcer une réanalyse du bus SCSI à chaud.

La méthode sera différente si vous avez ajouté un nouveau disque, ou si vous avez augmenté la taille d’un disque existant.

Ajout d’un nouveau disque

D’abord il faut identifier le numéro du disque avec cette commande:

grep mpt /sys/class/scsi_host/host?/proc_name

Qui doit retourner une ligne comme (où host0 est le disque concerné):

/sys/class/scsi_host/host0/proc_name:mptspi

On peut maintenant réanalyser le bus:

echo "- - -" > /sys/class/scsi_host/host0/scan

Les tirets représente tous les contrôleurs, tous les canaux et tous les LUN pour qu’ils soient scannés.

Pour aller plus vite, voici une petite boucle qui fait tout le boulot:

for i in $(ls /sys/class/scsi_host/ | awk -F 'host' '{print $2}'); do echo "- - -" > /sys/class/scsi_host/host$i/scan ; done

Augmentation d’un disque existant

Si vous connaissez le nom du périphérique du disque que vous avez élargi (par exemple, /dev/sda), alors vous pouvez simplement lancer la commande suivante pour forcer un rescan du disque. Attention, cela n’est pas fiables à 100% sur LVM avec les noyaux anciens, mais devrait fonctionner avec les noyaux récents

On commence par récupérer la liste des disques existants:

ls /sys/class/scsi_device/

0:0:0:0 2:0:0:0

Puis on rescanne le tout (sauf si vous savez lequel c’est):

echo 1 > /sys/class/scsi_device/0\:0\:0\:0/device/rescan
echo 1 > /sys/class/scsi_device/2\:0\:0\:0/device/rescan

Vous pouvez maintenant faire mumuse avec Fdisk.

Derniers Articles