gehrke schrieb:
Die tanzen mir auf der Nase rum...
Jetzt ist Schluss mit lustig!
Gräfin Klara schrieb:
gehrke schrieb:
Sporadisch wachen sie auf, ohne dass mir klar ist, warum das so ist.
Manchmal schalten sie sich schlicht gar nicht ab, und ich muss das manuell triggern. Dann bleiben sie auch aus.
Ich habe hierzu noch kein Muster herausfinden können...
Weil sie mapped sind. Sei es weil verschlüsselt, LVM oder aus anderen Gründen.
D.h. der Kernel sitzt dazwischen und kommuniziert (ohne dein Zutun) sporadisch und aus vielen Gründen über das mapping mit der Platte.
Ich glaube nicht, dass Du hier Recht hast. Keine Komponente des OS greift darauf zu, lediglich wenn der Bacula-Director dies anordnet. Das sehe ich anhand des Job-Schedulings - es ist immer ein Bacula-Job, der für das Anspringen sorgt.
Gräfin Klara schrieb:
Löse es mit cron. Sag dem Kernel "nun ist Schluss", danach hdparm und umgekehrt beim Aufwecken.
Anders wird es mit hoher Wahrscheinlichkeit nie zuverlässig funktionieren.
Ich habe jetzt einen cron-job ausschließlich für das Suspend, Wake-up geht automatisch. Die gesamte LVM/LUKS-Kette kann unverändert bleiben, so dass ich keine Credentials speichern muss.
Script hierzu:
Code:
#!/bin/sh
# suspend disks if no backup jobs running
source ./functions
disk=`get_backup_disk_private`
echo "check for suspending disk: $disk"
echo "status director" | /usr/sbin/bconsole | grep -v 'w520' | grep 'is running'
if [ $? -eq 0 ]
then
echo "running jobs on backup disk 'private' - do nothing"
else
/usr/sbin/smartctl -i -n standby "$disk" | grep 'STANDBY'
if [ $? -ne 0 ]
then
echo "no backup jobs on backup disk 'private' and disk online - suspend disk $disk"
/usr/sbin/hdparm -y "$disk"
fi
fi
disk=`get_backup_disk_work`
echo "check for suspending disk: $disk"
echo "status director" | /usr/sbin/bconsole | grep 'is running' | grep 'w520'
if [ $? -eq 0 ]
then
echo "runnig jobs on backup disk 'work' - do nothing"
else
/usr/sbin/smartctl -i -n standby "$disk" | grep 'STANDBY'
if [ $? -ne 0 ]
then
echo "no backup jobs on backup disk 'work' and disk online - suspend disk $disk"
/usr/sbin/hdparm -y "$disk"
fi
fi
Code:
# crontab -l
*/10 * * * * date >> /var/log/disks-standby.log ; cd /root/projects/local; ./suspendDisks.sh >> /var/log/disks-standby.log
Nochmal zum Hintergrund: Ich arbeite mit 2x2 Festplatten im monatlichen Wechsel, jeweils eine für die privaten Daten und eine andere für den Job. Welches Device hier verwendet werden soll, ergibt sich aus den trivialen Funktionen in 'functions', welche ich hier nicht veröffentliche.
Vielleicht hilft es aber trotzdem jemanden. Es läuft jetzt jedenfalls seit einigen Tagen zuverlässig und ich werde hoffentlich meinem Konto und dem Klima damit einigen unnötigen Stromverbrauch ersparen.
Ich find's nur sehr schade, dass das PowerManagement der Platten selbst hier nicht verlässlich funktioniert, so dass man zu solchen Sonderlocken verdammt ist.