Lihatlah hdparm
.
Dari manual ( man hdparm
pada baris perintah):
-S Mengatur batas waktu siaga (spindown) untuk drive. Nilai ini digunakan oleh drive untuk menentukan berapa lama menunggu (tanpa aktivitas disk) sebelum mematikan motor spindel untuk menghemat daya. Dalam keadaan seperti itu, drive mungkin memakan waktu selama 30 detik untuk menanggapi akses disk berikutnya, meskipun kebanyakan drive jauh lebih cepat.
Pengkodean nilai batas waktu agak aneh. Nilai nol berarti "batas waktu dinonaktifkan": perangkat tidak akan secara otomatis memasuki mode siaga. Nilai dari 1 hingga 240 menentukan kelipatan 5 detik, menghasilkan batas waktu dari 5 detik hingga 20 menit. Nilai dari 241 hingga 251 menentukan dari 1 hingga 11 unit 30 menit, menghasilkan batas waktu dari 30 menit hingga 5,5 jam. Nilai 252 menandakan batas waktu 21 menit. Nilai 253 menetapkan periode waktu habis yang ditentukan vendor antara 8 dan 12 jam, dan nilai 254 dicadangkan. 255 diartikan sebagai 21 menit plus 15 detik. Perhatikan bahwa beberapa drive yang lebih lama mungkin memiliki interpretasi yang sangat berbeda dari nilai-nilai ini.
Jadi sudo hdparm -I /dev/sdb | grep level
akan menampilkan nilai spindown saat ini, misalnya:
Advanced power management level: 254
Dari manual: 254 dicadangkan jadi saya berharap ini adalah default Ubuntu (dapatkah ada yang mengkonfirmasi / memperluas ini?)
Contoh:
sudo hdparm -S 25 /dev/sdb
= spindown setelah 25 * 5 detik.
sudo hdparm -S 245 /dev/sdb
= spindown setelah (245-240) * 30 menit.
grep
untuk APM (-B
parm) tetapi berbicara tentang-S
spindown. Apakah Anda juga tahu sesuatu tentang APM?-B
Pengaturan saat ini ditunjukkan seperti yang ditunjukkan di atas. Bagaimana saya bisa melihat-S
pengaturan saat ini ?sudo hdparm -y /dev/sdb
membunuh binatang itu dengan segeraUtilitas Disk -> pilih drive HDD -> klik ikon "Tindakan lainnya ..." di sudut kanan atas -> Pengaturan drive ...
Milik saya terlihat seperti ini:
sumber
gnome-disk-utility
.Jika Anda tertarik untuk melakukan pengaturan hdparm secara persisten di antara reboot, alih-alih menambahkannya ke crontab, Anda dapat menggunakan
/etc/hdparm.conf
. Saya memiliki yang berikut ini, perhatikan penggunaan huruf kapital S, bukan huruf kecil:Tambahkan baris yang menggantikan UUID oleh Anda, atau Anda juga dapat menentukan perangkat menggunakan
/dev/sdX
format. Anda dapat mengetahui UUID disk Anda dengan perintahsudo blkid
.sumber
command_line
saat ini? Saya punya contoh berbeda di/etc/hdparm
?Temukan UUID disk Anda .
Sunting
/etc/hdparm.conf
Cari
spindown-time
atau bagian pengaturan disk Anda.Saya lebih suka merujuk ke disk oleh UUID yang tetap sama di instalasi yang berbeda (kecuali jika Anda mengubahnya di HW itu sendiri).
Jika skrip init menyebabkan masalah boot, Anda bisa meneruskan
nohdparm
baris perintah kernel, dan skrip tidak akan dijalankan.sumber
man hdparm.conf
.man hdparm.conf
secara tidak langsung membaca bahwa nilai diteruskan ke-S
karenanya untuk nilai <255 harus kompatibel dengan aturan dalam jawaban teratas . Setiap informasi lebih lanjut disambut.Setelah menghabiskan berjam-jam saya menemukan bahwa drive WDC saya tidak mendukung perintah hdparm -S, tidak peduli nilai atribut idle3 (google: idle3ctl). Dan itu adalah masalah umum dengan drive WD. Tapi saya senang mengumumkan bahwa hd-idle ( http://hd-idle.sourceforge.net/ ) berfungsi dengan sempurna. Jika diinstal dari paket dpkg-builded (lihat Catatan Instalasi), ia menciptakan daemon di ubuntu dan debian (konfigurasi ada di / etc / default / hd-idle). Berfungsi dengan baik setelah melanjutkan dari hibernasi juga.
sumber
Saya menemukan bahwa perilaku spindown Samsung HD204UI tergantung pada level APM (
hdparm -B
). Jika level APM adalah 127, batas waktu spindown adalah 10 detik. Jika level APM adalah 150, batas waktu spindown ditentukan oleh-S
opsi.sumber
-S
opsi (lihat Cara menentukan waktu spindown disk ). Untuk mendapatkannya, gunakan perangkat lunak GUI "Disk". Lihat jawaban lain dengan tangkapan layar.Saya menambahkan sesuatu seperti:
ke root crontab. Menggunakan uuid lebih baik saya pikir karena
sda
/sdb
dll tampaknya berubah setiap kali rebootsumber
hdparm.conf
?Di Ubuntu 14.04
Disk> sorot drive> klik gir di sudut kanan atas> Pengaturan Drive> sekarang Anda memiliki pengaturan Standby, APM, AAM dan Write Cache dalam GUI yang mudah digunakan!
sumber
Pada Debian, dengan drive WD, saya menemukan bahwa pengaturan level apa pun dengan hdparm -S menghasilkan drive mengembalikan level 254 pada hdparm berikutnya -I . Jadi saya benar-benar tidak yakin apakah mereka berputar atau tidak. Saya pikir mereka masih berputar.
Drive-drive ini berada pada larik server, dan saya benar-benar tidak ingin mereka pernah berputar. Di masa lalu saya telah mengurangkan ini dengan menetapkan tugas cron untuk memperbarui file setiap beberapa menit.
sumber
Saya tidak beruntung dengan hdparm pada HDD eksternal yang dipasang di kandang USB, yang saya gunakan untuk melayani media dengan minidlna.
Saya mendapat ide dari sini: https://serverfault.com/questions/562738/keeping-usb-backup-drive-from-sleeping-while-mounted
Hasil terbaik berasal dari penggunaan uuid disk, yang dapat Anda temukan dengan:
Metode berikut memang membutuhkan akses root, tetapi begitu juga hdparm. Ini menggunakan crontab untuk membaca blok acak dari drive setiap 5 menit dan mengabaikan semua pesan. Untuk memastikan Anda memiliki UUID yang tepat, ujilah di baris perintah seperti ini (pastikan Anda menggunakan UUID yang Anda inginkan, bukan yang ini):
Anda akan melihat output seperti ini:
Untuk menekan pesan ini, yang akhirnya bisa ditulis di suatu tempat, berpotensi / filesystem (yang ada di SSD dalam kasus saya), di bawah ini adalah apa yang saya gunakan di root crontab. Anda sampai di sana bersama
Kemudian, di bawah komentar:
Semoga ini bisa membantu orang lain dengan masalah serupa. Sayangnya, ini masih ditulis ke syslog, tetapi ada kemungkinan cara untuk menekannya; lihat posting ServerFault ini .
[sunting] 2017-01-07 09:02:
Saya dapat menekan pesan-pesan ini dengan mengedit /etc/rsyslog.d/50-default.conf untuk mengubah baris ini:
*.*;auth,authpriv.none -/var/log/syslog
untuk ini:
*.*;cron,auth,authpriv.none -/var/log/syslog
Sayangnya, ini menekan semua pesan cron; Saya tidak bisa mendapatkan cron untuk mengarahkan kembali log dari sistem file root (yang ada pada SSD yang sudah tua dalam kasus saya, jadi saya ingin membatasi menulis), tetapi karena ini hanya server rumah, saya mungkin tidak kehilangan banyak. Pasti tidak akan merekomendasikan strategi ini untuk mesin produksi.
sumber