Eu tenho um gabinete externo e-sata com um expansor de porta e 4 discos sata nele que eu uso para backups periódicos. Eu tenho o que eu acho que é um método de som para desligá-lo, mas não tenho certeza se é o melhor método. Depois de desmontar o sistema de arquivos e parar o grupo de volume nos discos, aqui está o que eu faço atualmente:
echo 1 > /sys/block/sdg/device/delete
echo 1 > /sys/block/sdh/device/delete
echo 1 > /sys/block/sdi/device/delete
echo 1 > /sys/block/sdj/device/delete
ou
smartctl -s standby,now /dev/sdg
smartctl -s standby,now /dev/sdh
smartctl -s standby,now /dev/sdi
smartctl -s standby,now /dev/sdj
ou
echo "scsi remove-single-device 5 0 0 0" > /proc/scsi/scsi
echo "scsi remove-single-device 5 1 0 0" > /proc/scsi/scsi
echo "scsi remove-single-device 5 2 0 0" > /proc/scsi/scsi
echo "scsi remove-single-device 5 3 0 0" > /proc/scsi/scsi
Destas opções, gosto do último porque é o único que escreve algo no log, por exemplo
sd 5:0:0:0: [sdg] Stopping disk
ata6.00: disabled
sd 5:1:0:0: [sdh] Synchronizing SCSI cache
sd 5:1:0:0: [sdh] Stopping disk
ata6.01: disabled
sd 5:2:0:0: [sdi] Synchronizing SCSI cache
sd 5:2:0:0: [sdi] Stopping disk
ata6.02: disabled
sd 5:3:0:0: [sdj] Synchronizing SCSI cache
sd 5:3:0:0: [sdj] Stopping disk
ata6.03: disabled
E, em seguida, eu ligo o poder swtich no gabinete para remover a energia dos discos. Eu nunca tive problemas com qualquer um desses métodos, mas recebo muitas reclamações do dispositivo ata quando desativo. Isto é o que o log mostra ao desligar o compartimento (note que os discos são sincronizados e parados por este ponto através de um dos métodos acima, isto é apenas de inverter o interruptor):
ata6.00: failed to read SCR 1 (Emask=0x40)
ata6.01: failed to read SCR 1 (Emask=0x40)
ata6.02: failed to read SCR 1 (Emask=0x40)
ata6.03: failed to read SCR 1 (Emask=0x40)
ata6.04: failed to read SCR 1 (Emask=0x40)
ata6.15: exception Emask 0x50 SAct 0x0 SErr 0x4490801 action 0xe frozen
ata6.15: irq_stat 0x00400040, connection status changed
ata6.15: SError: { RecovData HostInt PHYRdyChg 10B8B Handshk DevExch }
ata6.00: exception Emask 0x100 SAct 0x0 SErr 0x0 action 0x6 frozen
ata6.01: exception Emask 0x100 SAct 0x0 SErr 0x0 action 0x6 frozen
ata6.02: exception Emask 0x100 SAct 0x0 SErr 0x0 action 0x6 frozen
ata6.03: exception Emask 0x100 SAct 0x0 SErr 0x0 action 0x6 frozen
ata6.04: exception Emask 0x100 SAct 0x0 SErr 0x0 action 0x6 frozen
ata6.15: hard resetting link
ata6.15: SATA link down (SStatus 0 SControl 300)
ata6.15: qc timeout (cmd 0xe4)
ata6.15: failed to read PMP GSCR[0] (Emask=0x4)
ata6.15: PMP revalidation failed (errno=-5)
Nota: Eu vi
Tags disk external-hdd sata hot-plug