HDD sıkma süresini nasıl kontrol edebilirim?

63

Bilgisayarımda 2 HDD var. Ubuntu ikincil HDD'yi yaklaşık 15 dakika sonra çok hızlı bir şekilde kapatıyor, bu benim için kısa. Bu zamanı kontrol etmem gerek. Bunu nasıl yapabilirim?

GNOME güç yönetimini denedim, ancak yararlı bulmadım.

    
sordu user16295 03.05.2011 19:43

10 cevap

57

hdparm dosyasına bakın.

Kılavuzdan (komut satırında man hdparm ):

  

-S Sürücü için bekleme (spindown) zaman aşımını ayarlayın. Bu değer, güç tasarrufu için iş mili motorunu kapatmadan önce ne kadar bekleyeceğini (disk aktivitesi olmadan) belirlemek için sürücü tarafından kullanılır. Bu koşullar altında, çoğu sürücü daha hızlı olsa da, sürücünün bir sonraki disk erişimine yanıt vermesi 30 saniye kadar sürebilir.

     

Zaman aşımı değerinin kodlanması biraz tuhaftır. Sıfır değeri, "zaman aşımları devre dışı" anlamına gelir: cihaz otomatik olarak bekleme moduna girmez. 1'den 240'a kadar olan değerler 5 saniyenin katlarını belirterek 5 saniyeden 20 dakikaya kadar zaman aşımları verir. 241 ila 251 arasındaki değerler, 1 ila 11 ünite 30 dakika arasında bir değer olup, 30 dakika ila 5,5 saat arasında zamanaşımları elde edilir. 252 değeri 21 dakikalık zaman aşımı anlamına gelir. 253 değeri, satıcı tarafından tanımlanan bir zaman aşımı süresini 8 ila 12 saat arasında ayarlar ve 254 değeri saklı tutulur. 255, 21 dakika artı 15 saniye olarak yorumlanır. Bazı eski sürücülerin bu değerler hakkında çok farklı yorumlara sahip olabileceğini unutmayın.

Yani sudo hdparm -I /dev/sdb | grep level geçerli spindown değerini gösterecektir, örneğin:

Advanced power management level: 254

El kitabından: 254 ayrılmış olduğundan Ubuntu'nun varsayılanı olmasını beklerim (bunu herkes onaylayabilir / genişletebilir mi lütfen?)

Örnek:

sudo hdparm -S 25 /dev/sdb = 25 * 5 saniye sonra işmili.

sudo hdparm -S 245 /dev/sdb = işten sonra (245-240) * 30 dakika.

    
verilen cevap Rinzwind 03.05.2011 19:53
42

Disk Yardımcı Programı - & gt; HDD sürücüsünü seç - & gt; sağ üst köşedeki "Diğer işlemler ..." simgesini tıklayın - & gt; Sürücü ayarları ...

Benimki şuna benziyor:

    
verilen cevap Ray 08.12.2013 14:26
26

HDparm'ın ayarlarının yeniden başlatmalar arasında kalıcı olmasını sağlamak istiyorsanız, bunu crontab'a eklemek yerine % kullanabilirsiniz co_de% . Aşağıdakilere sahibim, S harfinin kullanıldığına dikkat edin, küçük harf değil:

command_line {
    hdparm -S 25 /dev/disk/by-uuid/f6c52265-d89f-43a4-b03b-302c3dadb215 
}

UUID'yi değiştirerek o satırı ekleyin ya da cihazı /etc/hdparm.conf formatını kullanarak belirtebilirsiniz. Diskinizin UUID'sini /dev/sdX komutuyla öğrenebilirsiniz.

    
verilen cevap sergio.hs84 03.12.2012 12:04
6
  1. Diskinizin UUID'sini bulun .

    sudo lsblk --output NAME,FSTYPE,LABEL,UUID,MODE
    
  2. /etc/hdparm.conf değerini düzenle

    sudo -H gedit /etc/hdparm.conf  # Be careful from now on
    
  3. spindown-time veya disk ayarları bölümünüze bakın.

    /dev/disk/by-label/4TB {
        spindown_time = 1200
    }
    
  4. UUID tarafından farklı kurulumlarda aynı kalan diske atıfta bulunmayı tercih ederim (HW'de değiştirmediğiniz sürece).

    /dev/disk/by-uuid/91e32677-0656-45b8-bcf5-14acce39d9c2 {
        spindown_time = 1200
    }
    
  5. Init betiği önyükleme sorunlarına neden oluyorsa, nohdparm değerini geçirebilirsiniz. kernel komut satırında ve betik çalıştırılmayacak.

verilen cevap Ondra Žižka 04.05.2016 19:10
5

Saatlerce ve saatlerimi harcadıktan sonra WDC diskimin, idle3 özellik değeri (google: idle3ctl) olursa olsun, hdparm -S komutunu desteklemediğini keşfettim. Ve bu WD sürücülerinde yaygın bir sorundur. Ama ben, hd-idle ( İşte ) 'in kusursuz çalıştığını duyurmaktan memnuniyet duyuyorum. Dpkg tarafından oluşturulmuş paketten yüklendiyse (bkz. Kurulum notları), hem ubuntu hem de debian'da daemon oluşturur (config / etc / default / hd-idle dizinindedir). Hazırda bekletme modundan devam ettikten sonra da iyi çalışır.

mc default # ps aux | grep hd-idle | grep -v grep | cut -c 66- ; for f in [a-d] ; do hdparm -C /dev/sd$f | grep -v "^$" ; done
/usr/sbin/hd-idle -i 1800 -a sdc -i 600 -a sdd -i 60 -l /var/log/hd-idle.log
/dev/sda:
 drive state is:  active/idle
/dev/sdb:
 drive state is:  standby
/dev/sdc:
 drive state is:  standby
/dev/sdd:
 drive state is:  standby

    
verilen cevap user306935 15.02.2015 14:42
5

Samsung HD204UI'nin spindown davranışının APM seviyesine ( hdparm -B ) bağlı olduğunu keşfettim. APM seviyesi 127 ise, spindown zaman aşımı 10 saniyedir. APM seviyesi 150 ise, spindown zaman aşımı -S seçeneği ile tanımlanır.

    
verilen cevap beroal 13.02.2016 18:40
5

Şunun gibi bir şey ekliyorum:

@reboot sudo hdparm -S244 /dev/disk/by-uuid/71492809-e463-41fa-99e2-c09e9ca90c8e  > /dev/null 2> /dev/null

root’un crontab’ına. Uuid kullanmak daha iyi çünkü bence sda / sdb vs. her yeniden başlatma ile değişiyor gibi görünüyor

    
verilen cevap vidar uslingsen 28.08.2011 22:15
3

Ubuntu’da 14.04

Diskler & gt; sürücüyü vurgula & gt; sağ üst köşedeki dişli çarkı tıklayın & gt; Sürücü Ayarları & gt; Şimdi GUI kullanımı kolay bir Standby, APM, AAM ve Yazma Önbellek ayarlarınız var!

    
verilen cevap user245219 24.04.2014 23:37
1

Debian'da, WD sürücülerinde, hdparm -S ile herhangi bir seviyenin daha sonraki hdparm -I seviyesinde bir seviye 254'e döndürülmesiyle sonuçlandığını görüyorum. Bu yüzden, dönüp dönmediklerini gerçekten emin değilim. Sanırım hala dönüyorlar.

Bu sürücüler bir sunucu dizisinde ve gerçekten hiç dönmelerini istemiyorum. Geçmişte, her birkaç dakikada bir dosyayı güncellemek için bir cron görevi ayarlayarak bunu kandıdım.

    
verilen cevap dwasifar 01.05.2015 17:15
1

Minidlna ile medyaya hizmet etmek için kullandığım bir USB muhafazasına takılı harici bir HDD'de hdparm ile hiç şansım olmadı.

Buradan bir fikre rastladım: İşte

En iyi sonuçlar, aşağıdakileri bulabileceğiniz diskin uuid'ini kullanır:

sudo blkid

Aşağıdaki yöntem root erişimi gerektiriyor, ancak hdparm da öyle. Bu, her 5 dakikada bir sürücüden rasgele bir bloğu okumak için crontab kullanır ve tüm mesajları yok sayar. Doğru UUID'ye sahip olduğunuzdan emin olmak için, komut satırında bu şekilde test edin (istediğiniz UUID'yi kullandığınızdan emin olun):

sudo dd if=/dev/disk/by-uuid/f01df4b5-6865-476a-8d3b-597cbd886d41 of=/dev/null count=1 skip=$RANDOM

Çıktıyı şu şekilde görmelisiniz:

1+0 records in
1+0 records out
512 bytes copied, 0.000738308 s, 693 kB/s'

Bu mesajı, bir yere yazılmaya yol açacak şekilde, potansiyel olarak / dosya sistemi (benim durumumda bir SSD'de) olabilir, altta crontab içinde kullanıyorum. Oraya varsın

sudo crontab -e

Sonra, yorumların altında:

*/5 * * * * bash -c 'dd if=/dev/disk/by-uuid/f01df4b5-6865-476a-8d3b-597cbd886d41 of=/dev/null count=1 skip=$RANDOM' >/dev/null 2>&1

Bunun, benzer sorunlara sahip başkalarına yardımcı olmasını umarız. Ne yazık ki, bu hala syslog'a yazılıyor, ancak bunu bastırmak için potansiyel yollar var; bu SunucuFault yayına bakın.

[değiştir] 2017-01-07 09:02:

Bu satırı değiştirmek için /etc/rsyslog.d/50-default.conf dosyasını düzenleyerek bu iletileri bastırdım:

*.*;auth,authpriv.none -/var/log/syslog

bunun için:

*.*;cron,auth,authpriv.none -/var/log/syslog

Ne yazık ki, bu tüm cron mesajlarını bastırır; Kök dosya sistemini (benim durumumdaki bir SSD'de olan, bu yüzden yazımları sınırlamak istiyorum) günlüğe kaydetmeyi yeniden yönlendiremedim, ancak bu sadece bir ev sunucusu olduğundan, muhtemelen fazla bir şey kaçırmıyorum. Bu makineyi bir üretim makinesi için kesinlikle önermek değil .

    
verilen cevap LawyerOnLinux 06.01.2017 12:03

Etiketlerdeki diğer soruları oku