So verhindern Sie, dass der Linux-Kernel eine sekundäre Festplatte aus dem Ruhezustand weckt

11

Gibt es eine Möglichkeit, den (Linux-) Kernel anzuweisen, eine sekundäre Festplatte nach einem System-Schlaf- / Weckzyklus nicht aufzuwecken? Ich frage, weil ich in meinem Laptop eine SSD als primäres Laufwerk mit dem Systemstamm und eine sekundäre Festplatte habe, auf der ich ein Backup-System und Dateien aufbewahre, auf die ich sporadisch zugreife. Da der Laptop normalerweise viele Tage lang täglich viele Schlaf- / Weckzyklen durchläuft (ich meine Suspend to RAM, nicht Hibernation), möchte ich die sekundäre Festplatte manuell in den Ruhezustand versetzen und den Kernel anweisen, sie während des gesamten Systemschlafes einzuschlafen / Weckzyklen.

John Terragon
quelle
1
Wenn Sie Ihre Festplatte manuell in den Ruhezustand senden möchten, können Sie sie verwenden hdparm -Y /dev/sdb. Wenn Ihr System auf Ihre Festplatte zugreift, wird diese automatisch wieder hochgefahren. Sie können dies auch in definieren /etc/hdparm.confmit /dev/disk/by-label/DATA4 { spindown_time = 180 } I - Etiketten für Ihre Datenträger empfehlen die Verwendung von wie Sie nie auf dem Datenträger erkannt wird zuerst von Ihrem System verlassen können. Beachten Sie, dass Sie eine neuere Version von hdparm benötigen (meine ist 9.43), um Festplatten mit Label in den Ruhezustand zu versenden.
Syss

Antworten:

1

Da Sie nur die sekundäre Festplatte für die Sicherung verwenden, würde ich fstab empfehlen, das Laufwerk nicht automatisch bereitzustellen und ein Sicherungsskript zu erstellen, das das Laufwerk bereitstellt, die Sicherung erstellt und die Bereitstellung des Laufwerks wieder aufhebt.

Beispiel für die Zeile fstab mit der Option noauto:

/dev/sdb1 /media/backup ext4 user,noauto 0 0

Bash-Skript für die Sicherung würde dann mit beginnen mount /media/backupund mit endenumount /media/backup

switch87
quelle
Dies hindert den Kernel nicht daran, die Festplatte beim Booten zu prüfen.
März 2377
0

Ich denke nicht, dass das möglich ist. Das Laufwerk wird beim Booten vom BIOS / UEFI geprüft, nicht nur vom Kernel.

Ich weise das System jedoch an, das Laufwerk direkt nach dem Systemstart in den Ruhemodus zu versetzen. Überprüfen Sie https://wiki.archlinux.org/index.php/Hdparm#Putting_a_drive_to_sleep_directly_after_boot .

In meinem Fall habe ich:

/usr/local/lib/systemd/system/rsleephdd.service

[Unit]
Description="Ranolfi's script to sleep hard drives on boot"

[Service]
Type=oneshot
ExecStart=/usr/bin/hdparm -q -S 120 -Y /dev/sdc

[Install]
WantedBy=multi-user.target

Es spielt keine Rolle, ob das Laufwerk oder seine Partitionen von fstab (oder crypttab) gemountet werden oder nicht.

(Bearbeiten) Genau genommen scheint es möglich zu sein, den Kernel dazu zu bringen, eine Festplatte durch Patchen zu ignorieren . Dies verhindert jedoch nicht, dass das Laufwerk aufwacht. Im Gegenteil, der Patch, mit dem ich verlinkt habe, verhindert, dass Sie auf das Laufwerk zugreifen. Sie können nicht einmal sporadisch auf Ihre Dateien zugreifen und das Laufwerk auch nicht installieren Schlaf.

März 2377
quelle