Я добавил новый диск в свою работающую виртуальную машину Linux.
Возможно ли это. явно добавить устройство SCSI / SATA или повторно просканировать всю шину хоста SCSI / SATA без перезагрузки работающего Linux?
Да, это возможно. Есть несколько способов сделать это:
Добавить одно устройство
echo "scsi add-single-device <Host> <Bus> <Target> <Lun>" > /proc/scsi/scsi
В моем случае я добавил единственный диск SCSI / SATA на Host = 8, поэтому команда
echo "scsi add-single-device 8 0 0 0" > /proc/scsi/scsi
Rescan SCSI / SATA Host Bus
Если в вашу систему было добавлено более одного диска, вы можете сканировать все устройства на явном узле SCSI / SATA
echo "- - -" > /sys/class/scsi_host/hostHOSTNUM/scan
Т.е. если диск был добавлен в Host = 8, команда будет
echo "- - -" > /sys/class/scsi_host/host8/scan
Rescan all SCSI / SATA Hosts
Обычно, если вы не знаете номер хоста добавленного диска, вы можете сканировать все SCSI-хосты на вашем компьютере. .
Получите список хостов SCSI / SATA:
Используйте lsscsi , чтобы получить список хостов: lsscsi -H
Используйте sysfs , чтобы получить список хостов: ls -d /sys/class/scsi_host/host*[1151023 impression.
Повторно просканировать данный хост: echo "- - -"> / sys / class / scsi_host / hostX / scan
Простой скрипт автоматизации полного сканирования
#/bin/bash
# ReScan all SCSI/SATA Hosts
for SHOST in /sys/class/scsi_host/host*; do
echo -n "Scanning ${SHOST##*/}..."
echo "- - -" > ${SHOST}/scan
echo Done
done
В этом ответе использовались источники: