Dua solusi di sini: satu cepat untuk diterapkan, walaupun hanya memecahkan sebagian saja, yang lain adalah yang lengkap tetapi mengharuskan Anda untuk mengkompilasi kernel Anda sendiri.
Jawaban yang benar adalah tambalan kernel.
Robin H. Johnson menulis tambalan untuk driver kernel SATA ( temukan di situs pertukaran tumpukan Unix / Linux ) yang menyembunyikan sepenuhnya drive.
Perbarui Patch sekarang merupakan hulu (setidaknya di kernel stabil 3.12.7), lihat repositori git . Saya meminta backport di launchpad Ubuntu .
Setelah tambalan diinstal, tambahkan
libata.force=2.00:disable
ke parameter boot kernel akan menyembunyikan disk dari kernel Linux. Periksa kembali apakah nomornya benar; mencari nama perangkat dapat membantu:
(0)samsung-romano:~% dmesg | grep iSSD
[ 1.493279] ata2.00: ATA-8: SanDisk iSSD P4 8GB, SSD 9.14, max UDMA/133
[ 1.494236] scsi 1:0:0:0: Direct-Access ATA SanDisk iSSD P4 SSD PQ: 0 ANSI: 5
Penanganan masalah
Dijawab oleh pengguna Unix StackExchange Emmanuel di https://unix.stackexchange.com/a/103742/52205
Anda setidaknya bisa menyelesaikan masalah yang ditangguhkan dengan mengeluarkan perintah
echo 1 > /sys/block/sdb/device/delete
sebelum ditunda.
Untuk mengotomatiskannya, saya menambahkan file berikut: (perhatikan benderanya, itu harus dapat dieksekusi)
-rwxr-xr-x 1 root root 204 Dec 6 16:03 99_delete_sdb
dalam direktori /etc/pm/sleep.d/
#!/bin/sh
# Tell grub that resume was successful
case "$1" in
suspend|hibernate)
if [ -d /sys/block/sdb ]; then
echo Deleting device sdb
echo 1 > /sys/block/sdb/device/delete
fi
;;
esac
... dan sekarang sistem menangguhkan (dan melanjutkan) dengan benar. Saya menambahkan cuplikan
if [ -d /sys/block/sdb ]; then
echo Deleting device sdb
echo 1 > /sys/block/sdb/device/delete
fi
untuk /etc/rc.local
juga, untuk mengukur baik.
99_delete_sdb
file yang dapat dieksekusi? Di/etc/rc0.d/
mungkin?