Hallo zusammen,
ich betreibe einen Proxmox Homeserver und habe bei meinen beiden NAS-Platten das Problem, dass diese nicht in den Spindown gehen.
Zum Setup:
Die Platten sind zwei WD Red Plus 4TB (WD40EFZX), jede für sich LUKS verschlüsselt.
Die beiden Platten hängen an einer PCIe Karte (SATA controller, Chip ASM1064).
Als Host kommt Proxmox zum Einsatz.
Die PCIe-Karte wird an eine KVM mit openmediavault weiter gereicht.
In der VM werden die beiden Platten entschlüsselt und im btrfs RAID1 verwendet.
Das Problem:
Trotz entsprechenden Settings in OMV gehen die Platten nie in den Spindown.
EDIT: Lösung gefunden: Zur Lösung springen
Da die ursprünglichen Überlegungen zur Fehlerursache in die falsche Richtung gingen packe ich diese hinter einen Spoiler.
Danke schonmal fürs Lesen und schonmal vielen Dank fürs mitgrübeln.
Um Rückfragen vorzubeugen gibts zusätzliche System-Infos hinter dem Spoiler:
ich betreibe einen Proxmox Homeserver und habe bei meinen beiden NAS-Platten das Problem, dass diese nicht in den Spindown gehen.
Zum Setup:
Die Platten sind zwei WD Red Plus 4TB (WD40EFZX), jede für sich LUKS verschlüsselt.
Die beiden Platten hängen an einer PCIe Karte (SATA controller, Chip ASM1064).
Als Host kommt Proxmox zum Einsatz.
Die PCIe-Karte wird an eine KVM mit openmediavault weiter gereicht.
In der VM werden die beiden Platten entschlüsselt und im btrfs RAID1 verwendet.
Das Problem:
Trotz entsprechenden Settings in OMV gehen die Platten nie in den Spindown.
EDIT: Lösung gefunden: Zur Lösung springen
Da die ursprünglichen Überlegungen zur Fehlerursache in die falsche Richtung gingen packe ich diese hinter einen Spoiler.
Bisher gecheckt und vermutlich auszuschließen:
Bisher gecheckt und mir 'verdächtig':
Scheinbar wird APM nicht unterstützt, was mich bei WD Reds aber etwas überrascht.
Fragen bei der Fehlersuche:
- Die Änderungen im OMV interface bzgl APM und Spindown werden in
/etc/hdparm.conf
korrekt hinterlegt. - Die Platten scheinen nicht durch Programmzugriffe wach zu bleiben. Getestet durch
sudo lsof <path>
und zudemhtop
durchforstet. Darüber hinaus bleiben die Platten im Spindown, wenn ich sie persudo hdparm -y /dev/sdX
manuell schlafen schicke. - Manuelles Ändern der Spindown time via
sudo hdparm -S $WERT /dev/sdX
funktioniert ... aber bewirkt genauso wenig wie die Settings im OMV UI.
Bisher gecheckt und mir 'verdächtig':
Scheinbar wird APM nicht unterstützt, was mich bei WD Reds aber etwas überrascht.
Code:
$ sudo hdparm -B /dev/sda
/dev/sda:
APM_level = not supported
Code:
$ sudo hdparm -B 127 /dev/sda
/dev/sda:
setting Advanced Power Management level to 0x7f (127)
SG_IO: bad/missing sense data, sb[]: 70 00 05 00 00 00 00 0a 04 51 40 7f 21 04 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
APM_level = not supported
Fragen bei der Fehlersuche:
- Hat jemand von euch eine WD Red Plus (4TB) im Einsatz und kann checken ob APM tatsächlich nicht unterstützt wird?
- Könnte es sein, dass APM beim PCIe passthrough verloren geht? In Proxmox habe ich das Häkchen bei "All Functions" aber aktiviert.
- Sollte der Spindown nicht trotzdem funktionieren auch wenn APM nicht unterstützt wird?
Dennsudo hdparm -S $WERT /dev/sdX
wird ja angenommen. - Die auf den Block-devices aufbauenden layer wie LUKS crypt oder der btrfs RAID1 sind zwar eine Abstraktionsebene höher, aber könnte das trotzdem einen Effekt auf die unterstützten Funktionen der block devices (/dev/sdX) haben?
- Kann jemand die nach
sudo hdparm -B 127 /dev/sda
erzeugte Fehlermeldung erklären?
Danke schonmal fürs Lesen und schonmal vielen Dank fürs mitgrübeln.
Um Rückfragen vorzubeugen gibts zusätzliche System-Infos hinter dem Spoiler:
Die zwei LUKS-verschlüsselten Platten sda und sdb; system drive ist sdc
Die beiden Platten sind entschlüsselt und im RAID1, eine der beiden RAID-Platten wird dann nach /srv/... gemountet.
Details zu sda (analog zu sdb)
Die von OMV erzeugte hdparm config
Code:
$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 3.6T 0 disk
└─WD-WX32D80CF81P 253:1 0 3.6T 0 crypt
sdb 8:16 0 3.6T 0 disk
└─WD-WX92DA1J6X1Z 253:0 0 3.6T 0 crypt /srv/dev-disk-by-uuid-xxx
sdc 8:32 0 32G 0 disk
├─sdc1 8:33 0 30G 0 part /
├─sdc2 8:34 0 1K 0 part
└─sdc5 8:37 0 2G 0 part [SWAP]
Die beiden Platten sind entschlüsselt und im RAID1, eine der beiden RAID-Platten wird dann nach /srv/... gemountet.
Code:
$ df -h
Filesystem Size Used Avail Use% Mounted on
[...]
/dev/mapper/WD-WX92DA1J6X1Z 3.7T 678G 3.0T 19% /srv/dev-disk-by-uuid-xxx
Details zu sda (analog zu sdb)
Code:
$ sudo hdparm -i /dev/sda
/dev/sda:
Model=WDC WD40EFZX-68AWUN0, FwRev=81.00A81, SerialNo=xxx
Config={ HardSect NotMFM HdSw>15uSec SpinMotCtl Fixed DTR>5Mbs FmtGapReq }
RawCHS=16383/16/63, TrkSize=0, SectSize=0, ECCbytes=0
BuffType=unknown, BuffSize=unknown, MaxMultSect=16, MultSect=16
(maybe): CurCHS=16383/16/63, CurSects=16514064, LBA=yes, LBAsects=7814037168
IORDY=on/off, tPIO={min:120,w/IORDY:120}, tDMA={min:120,rec:120}
PIO modes: pio0 pio3 pio4
DMA modes: mdma0 mdma1 mdma2
UDMA modes: udma0 udma1 udma2 udma3 udma4 udma5 *udma6
AdvancedPM=no WriteCache=disabled
Drive conforms to: unknown: ATA/ATAPI-1,2,3,4,5,6,7
* signifies the current active mode
Code:
$ sudo hdparm -I /dev/sda
/dev/sda:
ATA device, with non-removable media
Model Number: WDC WD40EFZX-68AWUN0
Serial Number: xxx
Firmware Revision: 81.00A81
Transport: Serial, SATA 1.0a, SATA II Extensions, SATA Rev 2.5, SATA Rev 2.6, SATA Rev 3.0
Standards:
Used: unknown (minor revision code 0x006d)
Supported: 10 9 8 7 6 5
Likely used: 10
Configuration:
Logical max current
cylinders 16383 0
heads 16 0
sectors/track 63 0
--
LBA user addressable sectors: 268435455
LBA48 user addressable sectors: 7814037168
Logical Sector size: 512 bytes
Physical Sector size: 4096 bytes
Logical Sector-0 offset: 0 bytes
device size with M = 1024*1024: 3815447 MBytes
device size with M = 1000*1000: 4000787 MBytes (4000 GB)
cache/buffer size = unknown
Form Factor: 3.5 inch
Nominal Media Rotation Rate: 5400
Capabilities:
LBA, IORDY(can be disabled)
Queue depth: 32
Standby timer values: spec'd by Standard, with device specific minimum
R/W multiple sector transfer: Max = 16 Current = 16
DMA: mdma0 mdma1 mdma2 udma0 udma1 udma2 udma3 udma4 udma5 *udma6
Cycle time: min=120ns recommended=120ns
PIO: pio0 pio1 pio2 pio3 pio4
Cycle time: no flow control=120ns IORDY flow control=120ns
Commands/features:
Enabled Supported:
* SMART feature set
Security Mode feature set
* Power Management feature set
Write cache
* Look-ahead
* WRITE_BUFFER command
* READ_BUFFER command
* NOP cmd
* DOWNLOAD_MICROCODE
* 48-bit Address feature set
* Device Configuration Overlay feature set
* Mandatory FLUSH_CACHE
* FLUSH_CACHE_EXT
* SMART error logging
* SMART self-test
* General Purpose Logging feature set
* 64-bit World wide name
* IDLE_IMMEDIATE with UNLOAD
* WRITE_UNCORRECTABLE_EXT command
* {READ,WRITE}_DMA_EXT_GPL commands
* Segmented DOWNLOAD_MICROCODE
* Gen1 signaling speed (1.5Gb/s)
* Gen2 signaling speed (3.0Gb/s)
* Gen3 signaling speed (6.0Gb/s)
* Native Command Queueing (NCQ)
* Host-initiated interface power management
* Phy event counters
* Idle-Unload when NCQ is active
* NCQ priority information
* READ_LOG_DMA_EXT equivalent to READ_LOG_EXT
Device-initiated interface power management
* Software settings preservation
* SMART Command Transport (SCT) feature set
* SCT Write Same (AC2)
* SCT Error Recovery Control (AC3)
* SCT Features Control (AC4)
* SCT Data Tables (AC5)
unknown 206[12] (vendor specific)
unknown 206[13] (vendor specific)
* DOWNLOAD MICROCODE DMA command
* WRITE BUFFER DMA command
* READ BUFFER DMA command
Security:
Master password revision code = 65534
supported
not enabled
not locked
not frozen
not expired: security count
supported: enhanced erase
480min for SECURITY ERASE UNIT. 480min for ENHANCED SECURITY ERASE UNIT.
Logical Unit WWN Device Identifier: 50014ee2138c05ea
NAA : 5
IEEE OUI : 0014ee
Unique ID : 2138c05ea
Checksum: correct
Die von OMV erzeugte hdparm config
Code:
$ cat /etc/hdparm.conf
# This file is auto-generated by openmediavault (https://www.openmediavault.org)
# WARNING: Do not edit this file, your changes will get lost.
/dev/disk/by-id/ata-WDC_A {
apm = 127
spindown_time = 60
write_cache = off
}
/dev/disk/by-id/ata-WDC_B {
apm = 127
spindown_time = 60
write_cache = off
}
Zuletzt bearbeitet:
(Frage editiert)