Come impedire al kernel Linux di riattivare un HDD secondario dalla sospensione


11

C'è un modo per istruire il kernel (Linux) a non riattivare un hdd secondario dopo un ciclo di sospensione / riattivazione del sistema? Lo sto chiedendo perché sul mio laptop ho un SSD come unità primaria contenente la radice del sistema e un HDD secondario in cui tengo un sistema di backup e file a cui accedo sporadicamente. Dato che il laptop di solito attraversa molti cicli giornalieri di sospensione / riattivazione (intendo sospendere la RAM, non l'ibernazione) per molti giorni, vorrei mettere l'HDD secondario in modalità di sospensione manualmente e indicare al kernel di tenerlo addormentato durante la sospensione del sistema / cicli di sveglia.


1
Se si desidera inviare manualmente il disco rigido per la sospensione, è possibile utilizzare hdparm -Y /dev/sdb. Se il tuo sistema accede al tuo disco, si riavvierà automaticamente. Puoi anche definirlo /etc/hdparm.confcon /dev/disk/by-label/DATA4 { spindown_time = 180 } Mi raccomando di usare le etichette per i tuoi dischi in quanto non puoi mai fare affidamento su quale disco viene rilevato per primo dal tuo sistema. tenere presente che è necessario disporre di una versione più recente di hdparm (la mia è 9.43) per inviare i dischi con etichetta per la sospensione.
syss

Risposte:


1

poiché si utilizza solo l'hdd secondario per il backup, suggerirei di dire a fstab di non montare automaticamente l'unità e di creare uno script di backup che monti l'unità, esegua il backup e smonti nuovamente l'unità.

esempio della linea fstab con l'opzione noauto:

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

lo script bash per il backup dovrebbe iniziare mount /media/backupe terminare conumount /media/backup


Questo non impedisce al kernel di sondare il disco all'avvio.
Marc.2377,

0

Non penso sia possibile. L'unità viene sondata dal BIOS / UEFI all'avvio, non solo dal kernel.

Quello che faccio, tuttavia, è istruire il sistema a mettere l'unità in modalità di sospensione subito dopo l'avvio del sistema. Controlla https://wiki.archlinux.org/index.php/Hdparm#Putting_a_drive_to_sleep_directly_after_boot .

Nel mio caso ho:

/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

Non fa alcuna differenza se l'unità o le sue partizioni sono montate da fstab (o crypttab, per quella materia) oppure no.

(modifica) a rigor di termini, sembra che il kernel possa ignorare un disco tramite l'applicazione di patch . Ciò non impedirà al disco di riattivarsi, tuttavia - al contrario, la patch a cui mi sono collegato ti impedirà di accedere all'unità, non sarai in grado di accedere ai tuoi file anche sporadicamente e non potrai nemmeno mettere l'unità a dormire.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.