Sata/hotplug

 [13:35:35]  Recommended by @binary: @ComradeDOS: *linux *sata *hotplug *howto Вчера с @Binary пытались подключить жесткий диск с интерфейсом SATA «на горячую». В итоге у нас ничего не получилось и пришлось перезагружаться. Сегодня я решил более детально разобраться в предмете и попытался обобщить полученый опыт для будущего использования. Для начала начнем с того, что не все устройства и контроллеры поддерживают «SATA hotplug» (по большей части это относится к устройствам и контроллерам SATA I, так как в спецификация SATA II предусматривает hotplug в обязательном порядке). Порядок подключения следующий: 1) подключить кабель передачи данных; 2) подключить кабель питания; 3) если устройство не появилось в системе автоматически, то необходимо выполнить следующую команду «echo "- - -" > /sys/class/scsi_host/host0/scan», где host0 - канал, к которому подключено устройство. Узнать, какие каналы доступны можно узнать выполнив команду «ls /sys/class/scsi_host/». Обращаю ваше внимание на тот факт, что количество подкаталогов в каталоге /sys/class/scsi_host/ может отличаться от количества физический SATA-каналов. Дело в том, что драйверы некоторых устройств «общаются» с ядром через подсистему SCSI (например драйверы многих USB-устройств, драйверы PATA/ATAPI-устройств использующие libata). После появления устройства в системе порядок работы с ним ничем не отличается от порядка работы с любым сменным накопителем. Для отключения устройства необходимо сделать следующее: 1) выполнить команду «echo 1 > /sys/block/sdc/device/delete», где sdc соответствует имени подключенного устройства; 2) после полной остановки шпинделя отключить кабель питания; 3) отключить кабель передачи данных. 