ubuntuusers.de

SATA-HDDs an PCI-Controller bleiben nicht im Sleep-Mode (bei On-Board-SATA schon)

Status: Gelöst | Ubuntu-Version: Server 16.04 (Xenial Xerus)
Antworten |

akuzma

Anmeldungsdatum:
22. Januar 2017

Beiträge: Zähle...

Liebe Leute,

Ich konfiguriere gerade Ubuntu 16.04.1 LTS Server um (hauptsächlich) als NAS zu fungieren. Derzeit habe ich insgesamt 8 HDDs identen Typs im Einsatz, vier hängen an den internen SATA-Ports am Mainboard (GIGABYTE N3150N-D3V) und vier an der PCI-Controllerkarte (Syba PCI-RAID-Controller, SiI3124-Chipsatz). Gebootet wird von einem USB-Stick. Mit mdadm habe jeweils ein RAID5-Volume angelegt, alles soweit in Ordnung.

Mein Problem ist, dass ich es nicht schaffe, alle HDDs dauerhaft schlafen zu schicken. Mit hdparm -y /dev/sd[a-d] kann ich die On-Board-SATA-Platten schlafen schicken und die bleiben auch bis zum nächsten Zugriff in diesem Modus. Mit hdparm -y /dev/sd[f-i] kann ich die HDDs am PCI-RAID-Controller ebenfalls schlafen schicken, die wachen aber nach wenigen Sekunden wieder auf.

Ein wenig habe ich schon investigiert. Es passiert nur, wenn das RAID-Set gemountet ist. Sobald ich das RAID-Set per umount /dev/md126 rausschmeiße, ist nach der Eingabe von hdparm -y /dev/sd[f-i] dauerhaft Ruhe. Sobald ich das RAID-Set per mount /dev/md126 ~/test wieder mounte, wachen die Platten wieder auf. Es liegt auch nicht an einem Monitoring durch mdadm, das habe ich schon überprüft und alle Prozesse gekillt, die da etwas machen könnten. cat /proc/mdstat zeigt mir zwei idente RAID-Sets, mdadm --detail /dev/md127 und mdadm --detail /dev/md126 zeigen auch die gleichen Einstellungen. Es passiert interessanterweise nur bei den Platten die am PCI-RAID-Controller hängen, dieser hat aber keine speziellen Einstellungen, die ich dafür verantwortlich machen könnte.

mit iotop habe ich mich auch schon gespielt, alles was ich sehen konnte war, dass ein Zugriff durch kworker erfolgt, in dem Moment wo die Festplatten aufwachen. Das hilft mir aber nicht viel weiter.

Irgendwelche Ideen wie ich das in den Griff bekommen könnte?

Bearbeitet von sebix:

Inline-Codesyntax eingefügt.

akuzma

(Themenstarter)

Anmeldungsdatum:
22. Januar 2017

Beiträge: 6

Ich bin mittlerweile selbst darauf gekommen. ☺

Letztendlich hat mir doch iotop geholfen, denn irgendwann ist mir eine Zeile mit jbd2... aufgefallen, ein Prozess, der scheinbar immer wieder auf das RAID-Set zugreift, wenn es gemountet ist.

Die Ursache war, dass ich das RAID-Set am PCI-Controller erst kürzlich erstellt habe und die "Lazy Initialization" des EXT4-Dateisystems noch nicht abgeschlossen war. Ich wusste nicht, dass bei der Erstellung von EXT4-Dateisystemen noch längere Zeit im Hintergrund gewerkt wird.

Das Kommando, mit dem ich zuschauen konnte, ob die Lazy Installation schon fertig ist:

sudo iotop -b -o -t | grep jbd2/

Infos zur "Lazy Installation" habe ich hier gefunden: https://www.thomas-krenn.com/de/wiki/Ext4_Dateisystem?xtxsearchselecthit=1#Lazy_Initialization

Antworten |