Antworten:
Schau es dir an hdparm
.
Aus dem Handbuch ( man hdparm
in der Befehlszeile):
-S Legen Sie das Standby-Timeout (Spindown) für das Laufwerk fest. Dieser Wert wird vom Laufwerk verwendet, um zu bestimmen, wie lange gewartet werden soll (ohne Festplattenaktivität), bevor der Spindelmotor ausgeschaltet wird, um Strom zu sparen. Unter solchen Umständen kann es bis zu 30 Sekunden dauern, bis das Laufwerk auf einen nachfolgenden Datenträgerzugriff reagiert, obwohl die meisten Laufwerke viel schneller sind.
Die Kodierung des Timeout-Wertes ist etwas eigenartig. Ein Wert von Null bedeutet "Zeitüberschreitungen sind deaktiviert": Das Gerät wechselt nicht automatisch in den Standby-Modus. Werte von 1 bis 240 geben ein Vielfaches von 5 Sekunden an, was zu Zeitüberschreitungen von 5 Sekunden bis 20 Minuten führt. Werte von 241 bis 251 geben 1 bis 11 Einheiten von 30 Minuten an, was zu Zeitüberschreitungen von 30 Minuten bis 5,5 Stunden führt. Ein Wert von 252 bedeutet eine Zeitüberschreitung von 21 Minuten. Ein Wert von 253 legt ein vom Hersteller definiertes Zeitlimit zwischen 8 und 12 Stunden fest, und der Wert 254 ist reserviert. 255 wird als 21 Minuten plus 15 Sekunden interpretiert. Beachten Sie, dass einige ältere Laufwerke diese Werte möglicherweise sehr unterschiedlich interpretieren.
So sudo hdparm -I /dev/sdb | grep level
wird der aktuelle Spindown-Wert angezeigt, zum Beispiel:
Advanced power management level: 254
Aus dem Handbuch: 254 ist reserviert, daher erwarte ich, dass es Ubuntus Standard ist (kann jemand dies bitte bestätigen / erweitern?)
Beispiel:
sudo hdparm -S 25 /dev/sdb
= Spindown nach 25 * 5 Sekunden.
sudo hdparm -S 245 /dev/sdb
= Spindown nach (245-240) * 30 Minuten.
grep
für APM ( -B
parm) zu sein, aber sprechen Sie über -S
das Spindown. Wissen Sie auch etwas über APM?
-B
Einstellung wird wie oben angegeben angezeigt. Wie kann ich die aktuelle -S
Einstellung sehen?
sudo hdparm -y /dev/sdb
tötet das Biest sofort
Festplatten-Dienstprogramm -> Festplattenlaufwerk auswählen -> auf das Symbol "Weitere Aktionen ..." in der oberen rechten Ecke klicken -> Laufwerkseinstellungen ...
Meins sieht so aus:
gnome-disk-utility
.
Wenn Sie daran interessiert sind, die hdparm-Einstellung zwischen Neustarts beizubehalten, anstatt sie der crontab hinzuzufügen, können Sie die verwenden /etc/hdparm.conf
. Ich habe folgende, beachten Sie die Verwendung von Großbuchstaben S, nicht Kleinbuchstaben:
command_line {
hdparm -S 25 /dev/disk/by-uuid/f6c52265-d89f-43a4-b03b-302c3dadb215
}
Fügen Sie diese Zeile hinzu, indem Sie die UUID durch Ihre ersetzen, oder geben Sie das Gerät mithilfe des /dev/sdX
Formats an. Sie können die UUID Ihrer Festplatte mit dem Befehl ermitteln sudo blkid
.
command_line
heutzutage zu verwenden ? Ich habe verschiedene Beispiele in meinem /etc/hdparm
?
Suchen Sie die UUID Ihrer Festplatte .
sudo lsblk --output NAME,FSTYPE,LABEL,UUID,MODE
Bearbeiten /etc/hdparm.conf
sudo -H gedit /etc/hdparm.conf # Be careful from now on
Suchen Sie nach spindown-time
oder in Ihrem Abschnitt mit den Festplatteneinstellungen.
/dev/disk/by-label/4TB {
spindown_time = 1200
}
Ich bevorzuge es, über die UUID auf die Festplatte zu verweisen, die über verschiedene Installationen hinweg gleich bleibt (es sei denn, Sie ändern sie in der Hardware selbst).
/dev/disk/by-uuid/91e32677-0656-45b8-bcf5-14acce39d9c2 {
spindown_time = 1200
}
Wenn das Init-Skript Startprobleme verursacht, können Sie nohdparm
die Kernel-Befehlszeile weitergeben, und das Skript wird nicht ausgeführt.
man hdparm.conf
.
man hdparm.conf
liest indirekt, dass der Wert übergeben wird, -S
damit für Werte <255 mit Regel in der oberen Antwort kompatibel sein sollte . Alle weiteren Informationen sind willkommen.
Nachdem ich Stunden und Stunden damit verbracht hatte, stellte ich fest, dass mein WDC-Laufwerk den Befehl hdparm -S nicht unterstützt, unabhängig vom Wert des Attributs idle3 (google: idle3ctl). Und das ist ein häufiges Problem bei WD-Laufwerken. Aber ich freue mich, Ihnen mitteilen zu können, dass hd-idle ( http://hd-idle.sourceforge.net/ ) einwandfrei funktioniert. Bei der Installation mit einem von dpkg erstellten Paket (siehe Installationshinweise) wird ein Daemon sowohl auf Ubuntu als auch auf Debian erstellt (die Konfiguration befindet sich in / etc / default / hd-idle). Funktioniert auch nach dem Reaktivieren aus dem Ruhezustand.
mc default # ps aux | grep hd-idle | grep -v grep | Schnitt -c 66-; für f in [ad]; hdparm -C / dev / sd $ f | grep -v "^ $"; getan / usr / sbin / hd-idle -i 1800 -a sdc -i 600 -a sdd -i 60 -l /var/log/hd-idle.log / dev / sda: Laufwerksstatus ist: Aktiv / Leerlauf / dev / sdb: Laufwerksstatus ist: Standby / dev / sdc: Laufwerksstatus ist: Standby / dev / sdd: Laufwerksstatus ist: Standby
Ich habe festgestellt, dass das Spindown-Verhalten von Samsung HD204UI von der APM-Stufe abhängt ( hdparm -B
). Wenn der APM-Level 127 ist, beträgt das Spindown-Timeout 10 s. Wenn der APM-Level 150 ist, wird das Spindown-Timeout durch die -S
Option definiert .
-S
Option festlegen, aber nicht erhalten (siehe So bestimmen Sie die Spindown-Zeit für Datenträger ). Verwenden Sie dazu die GUI-Software "Disk". Siehe die andere Antwort mit dem Screenshot.
Ich füge etwas hinzu wie:
@reboot sudo hdparm -S244 /dev/disk/by-uuid/71492809-e463-41fa-99e2-c09e9ca90c8e > /dev/null 2> /dev/null
Wurzel Crontab. Uuid zu verwenden ist meiner Meinung nach besser, da sich sda
/ sdb
etc. bei jedem Neustart zu ändern scheint
hdparm.conf
?
In Ubuntu 14.04
Festplatten> Laufwerk markieren> Klicken Sie auf das Zahnrad in der oberen rechten Ecke> Laufwerkseinstellungen> Jetzt haben Sie die Einstellungen für Standby, APM, AAM und Cache schreiben in einer benutzerfreundlichen Benutzeroberfläche!
Unter Debian mit WD-Laufwerken stelle ich fest, dass das Setzen eines beliebigen Levels mit hdparm-S dazu führt, dass das Laufwerk bei nachfolgendem hdparm-I einen Level 254 zurückgibt . Ich bin mir also nicht sicher, ob sie sich drehen oder nicht. Ich denke, sie drehen sich immer noch runter.
Diese Laufwerke befinden sich in einem Server-Array, und ich möchte nicht, dass sie jemals heruntergefahren werden. In der Vergangenheit habe ich dies vermieden, indem ich einen Cron-Job eingerichtet habe, um alle paar Minuten eine Datei zu aktualisieren.
Ich hatte kein Glück mit hdparm auf einer externen Festplatte in einem USB-Gehäuse, mit dem ich Medien mit minidlna versorge.
Von hier kam mir eine Idee: https://serverfault.com/questions/562738/keeping-usb-backup-drive-from-sleeping-while-mounted
Die besten Ergebnisse werden mit der UUID der Festplatte erzielt, die Sie finden können mit:
sudo blkid
Für die folgende Methode ist Root-Zugriff erforderlich, für hdparm jedoch auch. Dabei wird mit crontab alle 5 Minuten ein zufälliger Block vom Laufwerk gelesen und alle Meldungen ignoriert. Um sicherzustellen, dass Sie die richtige UUID haben, testen Sie sie in der Befehlszeile wie folgt (stellen Sie sicher, dass Sie die gewünschte UUID verwenden, nicht diese):
sudo dd if=/dev/disk/by-uuid/f01df4b5-6865-476a-8d3b-597cbd886d41 of=/dev/null count=1 skip=$RANDOM
Sie sollten die Ausgabe so sehen:
1+0 records in
1+0 records out
512 bytes copied, 0.000738308 s, 693 kB/s`
Um diese Meldung zu unterdrücken, die möglicherweise irgendwo geschrieben wird (in meinem Fall das Dateisystem / auf einer SSD), verwende ich im Folgenden die Root-Crontab. Sie kommen dort mit
sudo crontab -e
Dann unter den Kommentaren:
*/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
Hoffe das hilft jemand anderem bei ähnlichen Problemen. Leider wird dies immer noch in das Syslog geschrieben, aber es gibt möglicherweise Möglichkeiten, dies zu unterdrücken. Siehe diesen ServerFault-Beitrag .
[bearbeiten] 2017-01-07 09:02:
Ich konnte diese Meldungen unterdrücken, indem ich /etc/rsyslog.d/50-default.conf bearbeitete, um diese Zeile zu ändern:
*.*;auth,authpriv.none -/var/log/syslog
dazu:
*.*;cron,auth,authpriv.none -/var/log/syslog
Leider werden dadurch alle Cron-Nachrichten unterdrückt. Ich konnte cron nicht dazu bringen, das Abmelden vom Root-Dateisystem umzuleiten (das sich in meinem Fall auf einer veralteten SSD befindet, daher möchte ich das Schreiben einschränken), aber da dies nur ein Heimserver ist, verpasse ich wahrscheinlich nicht viel. Würde auf jeden Fall nicht , diese Strategie für eine Produktionsmaschine empfehlen.