[HowTo] (Entware-NG) APM der Festplatten ausschalten um die Lebensdauer zu verlängern - Behebung des "Load-Cycle-Problems"

  • Ich habe vor einigen Tagen mein NAS mit neuen Festplatten bestückt und neu aufgesetzt. Daher musste ich wieder das APM deaktivieren. Da mein Tutorial hier schon veraltet ist und es Optware schon garnicht mehr gibt, will ich das Tutorial mal auf den aktuellsten Stand bringen. Vielleicht kann einer der Admins (@christian) mal einen Hinweis in den ersten Beitrag machen? Oder soll ich dafür ein neues Thema aufmachen?


    Du benötigst:

    • Putty und aktivierten SSH Zugriff am Qnap + admin Zugangsdaten
    • Entware-nt aus dem QNAPClub App Center (Anleitung usw. hier)


    Vorgehen:


    • mit Putty am NAS anmelden


    • hdparm installieren, indem nacheinander die Folgenden drei Befehle eingegeben werden:
    Code
    opkg updateopkg upgradeopkg install hdparm
    • den Installationspfad von hdparm mit folgendem Befehl ermitteln. Normalerweise sollte hdparm im Pfad /opt/sbin installiert werden. Falls dem nicht so ist, merkt euch den Pfad.
    Code
    which hdparm
    • mounten des config Ramblock mit einem der folgenden Befehle (abhängig von NAS bzw. CPU Architektur):

    ARM/Marvell CPU's z.B.: TS-109, TS-109P, TS-209, TS-209P, TS-409, TS-110, TS-212, TS-412, TS-119, TS-219,TS-219P II, TS-419P

    Code
    mount -t ext2 /dev/mtdblock5 /tmp/config

    X86 bzw. Core2Duo CPU's z.B.: TS-439, TS-509, TS-639, TS-809, TS-809U

    Code
    mount -t ext2 /dev/sdx6 /tmp/config


    X64 bzw. die ganzen neuen Intel und AMD CPU's

    Code
    mount $(/sbin/hal_app --get_boot_pd port_id=0)6 /tmp/config
    • In das gemountete Verzeichnis wechseln mit:
    Code
    cd ..cd tmp/config/
    • VI Editor öffnen und eine Datei autorun.sh erstellen
    Code
    vi autorun.sh
    • Im VI Editor die taste 'i' drücken um in den insert Mode zu kommen und folgenden Code (hier beispielhaft für 4 Festplatten) eintippen. Wenn ihr nur zwei Festplatten habt, dann lasst ihr die letzten zwei Zeilen weg. Bei 6 Platten zwei Zeilen mehr usw. Der letzte Buchstabe am Ende der Zeile muss jeweils hochgezählt werden. Solltet ihr weiter oben für den Installationspfad von hdparm nicht /opt/sbin erhalten haben, dann passt das hier entsprechend an.
    Bash
    #!/bin/sh/opt/sbin/hdparm -B255 /dev/sda/opt/sbin/hdparm -B255 /dev/sdb/opt/sbin/hdparm -B255 /dev/sdc/opt/sbin/hdparm -B255 /dev/sdd
    • Anschließend wird der Insert Mode mit der ESC-Taste verlassen und zum Abspeichern und verlassen des VI-Editors folgendes eingetippt:
    Code
    :wq!
    • Damit die Datei ausführbar gemacht wird, ist folgende Eingabe notwendig:
    Code
    chmod +x /tmp/config/autorun.sh
    • Um die erstelle autorun Datei zu testen wird diese ausgeführt
    Code
    ./autorun.sh
    • Je nach Anzahl der Festplatten (hier wieder 4 Stück) sollte die Ausgabe wie folgt aussehen:

    Ausgabe.jpg

    • Anschließend geht man mit folgenden Befehlen wieder in's Hauptverzeichnis und unmounted den config Ramblock (sehr wichtig, auf garkeinen Fall vergessen!).
    Code
    cd ..
    cd ..
    umount /tmp/config
    • NAS einmal Neu starten. Ab jetzt wird das APM der Festplatten sofort beim Start des NAS deaktiviert.
  • Guten Morgen, welchen Befehl muß ich ausführen um bei meinem QNAP TS-431P an den RamBlock / an die autostart.sh zu kommen?

  • Ok, denn der Befehl

    Code
    mount -t ext2 /dev/mtdblock5 /tmp/config


    gibt bei mir nur Fehler raus :(


    Ich poste später mal die genaue Ausgabe!


    EDIT: So sieht es mei mir aus:


    Oder muß ich dann das mtd6 nehmen?

    3 Mal editiert, zuletzt von DerFalk ()

  • Hallo zusammen,


    ich bekomme ein Ergebnis nach der Testausführung von autorun.sh das ich nicht wirklich interpretieren kann, vielleicht könnt ihr mir helfen.


    Ich habe eine TS-228 und habe folgende Ramblock mount eingabe benutzt


    Code
    mount -t ext4 /dev/mmcblk0p7 /tmp/config


    nach durchführen aller weiteren schritte und ausführen der autorun.sh erhalte ich folgende Antwort:


    Code
    /dev/sda: 
    setting Advanced Power Management level to disabled
    HDIO_DRIVE_CMD failed: Input/output error
    APM_level      =not supported


    Das gleiche erhalte ich für sdb.
    Bedeutet es das meine HDD überhaupt kein APM besitzt oder kommt der Fehler von woanders?
    Benutze folgende HDD: Western Digital WDC WD20EZRX-00D8PB0



    Vielen Dank und Gruß!

  • Ich glaube bei den Western Digital Green ist die Firmware in der Platte nicht dazu fähig das APM zu deaktivieren....


    edit: Habe da eben nochmal kurz recherchiert. Schein tatsächlich an der Firmware zu liegen...Quelle: Linuxwiki

  • Ahja, das wird es dann wohl sein. Kommt davon wenn man billig unterwegs sein will -.-
    Muss ich wohl mal mit dem wdidle3 ran.


    Vielen Dank!!!
    Gruß

  • @LittleJonny
    super anleitung, danke
    hat fast auf anhieb geklappt
    bis auf die zeile
    :wq!
    ich habe den : für ein ! gehalten


    öfter mal den monitor putzen hilft :rolleyes:


    der neustart hat sehr lange gedauert
    etwa 10 min / normal sind es bei mir 5 min
    vor allem mariadb hat gefühlte 5 min zum starten gebraucht


    wie kann ich jetzt prüfen ob hdparm eingeschaltet ist!


    war übrigens mein erster kontakt mit der konsole der qnap


    mfg albert


    ich habe gerade gesehen
    systemsteuerung->hardware->benutzerdefinierte prozesse beim start ausführen autorun.sh
    muß noch ein haken gesetzt werden


    mfg albert

    Einmal editiert, zuletzt von Tabaluga ()

  • wie kann ich jetzt prüfen ob hdparm eingeschaltet ist!

    Das sollte in der Konsole mit folgendem Befehl geprüft werden können. Als Ausgabe sollte dann (wie oben im Screenshot) "APM_level = off" erscheinen.


    /opt/sbin/hdparm -B /dev/sda



    ich habe gerade gesehensystemsteuerung->hardware->benutzerdefinierte prozesse beim start ausführen autorun.sh
    muß noch ein haken gesetzt werden

    Den punkt gibt es bei mir am TS-412 nicht. Hängt eventuell von der Firmware oder dem NAS ab.

  • Den punkt gibt es bei mir am TS-412 nicht. Hängt eventuell von der Firmware oder dem NAS ab.

    gibt es, glaube ich, erst seit der 4.3.3 0262
    funktioniert aber erst seit der 0299 korekt
    zumindest bei mir auf der 219er


    mfg albert

  • Das bedeutet, daß dieser Befehl bei jedem Booten wieder ausgeführt werden muß?
    Kann man das den Platten nicht irgendwie dauerhaft beibringen?

  • Ich frage mich, ob du die Anleitung wirklich gelesen oder nur überflogen hast. Du musst beim Start nichts ausführen, dafür hast du ja deine autorun...

  • Ich frage mich, ob du die Anleitung wirklich gelesen oder nur überflogen hast.

    Ja, ich habe sie komplett durchgelesen.



    Du musst beim Start nichts ausführen, dafür hast du ja deine autorun...


    Aber dadurch wird es ja bei jedem Start wieder ausgeführt. Ich meinte nicht, daß ich es per Hand wieder ausführen muß.

  • Theoretisch könnte man das auch in der Firmware der Festplatte festlegen. Ob und wie das geht hängt vom Hersteller, Festplattenmodell usw ab. Eine allgmeingültige Lösung wirst du da kaum finden. Und vor allem wirst du da keine Lösung finden, die ein Laie mal eben fix durchführen kann (und vor allem sollte!). Für vereinzelte Festplattenmodelle gibt es Tools vom Hersteller (weil das APM Probleme gemacht hat o.ä.).


    Was spricht für dich gegen die oben aufgeführte "autorun-Lösung"?

  • Also irgendwie verhalten sich meine WD RED seltsam:

    Es sind vier: WDC WD40EFRX-68WT0N0 82.00A82