for i in /sys/block/sd* ; do wwn=`/lib/udev/scsi_id -g -s /block/${i##*/}` ; [ "$wwn" != "" ] && echo -e ${i##*/}'\t'$wwn ;done


Команда for i in /sys/block/sd* ; do wwn=/lib/udev/scsi_id -g -s /block/${i##*/} ; [ "$wwn" != "" ] && echo -e ${i##*/}'\t'$wwn ;done используется для получения форматированного списка World Wide Name (wwn) всех логических юнитов (LUN) в системе.

Краткое объяснение команды:
for i in /sys/block/sd* — цикл для каждого блочного устройства, имя которого начинается с «sd» в директории «/sys/block»;
wwn=/lib/udev/scsi_id -g -s /block/${i##*/} - переменная "wwn" присваивает значение, полученное с помощью утилиты "scsi_id" для блочного устройства;
-
[ «$wwn» != «» ] - условие, которое выполняется, если переменная "wwn" не равна пустой строке;
-
echo -e ${i##*/}’\t’$wwn - вывод форматированной строки, состоящей из имени блочного устройства (полученного с помощью синтаксиса ${i##*/}`) и значения переменной «wwn».

Эта команда полезна, когда требуется получить список wwn всех LUN в системе. Альтернативным способом может быть использование утилиты «lsscsi» для получения информации о SCSI-устройствах.

Ответить

Ваш адрес email не будет опубликован. Обязательные поля помечены *