ACPI Einstellung dauerhaft speichern

Hinweis: In dem Thema ACPI Einstellung dauerhaft speichern gibt es 3 Antworten. Der letzte Beitrag () befindet sich ganz unten auf dieser Seite.
  • Hallo zusammen,


    ich möchte Einstellungen für acpi dauerhaft speichern. Genau gesagt geht es z.B. um den trigger, den man durch das Öffnen des Laptop auslöst. Bisher wird hierdurch mein Laptop (Thinkpad X240, Leap42.2) aus suspend oder hibernate geweckt.


    Daher habe ich proc/acpi/wakeup durch:


    Code
    echo disabled > /sys/devices/LNXSYSTM\:00/LNXSYBUS\:00/PNP0C0D\:00/power/wakeup

    Danach wird der Laptop durch das Öffnen des Deckels nicht mehr aus hibernate geweckt. Genau was ich erreichen wollte.


    Leider ist die Änderung flüchtig. Nach dem nächsten Start oder einer gewissen Zeit (habe das nocht nicht genau untersucht) sind meine gemachten Änderungen wieder überschrieben.


    Daher also die Frage, wie ich die Änderungen an den Parametern für acpi dauerhaft vornehmen kann.


    Wird dieses evtl. über sysctl als Kernel-Parameter festgelegt?


    Danke.

    Für den Inhalt des Beitrages 102320 haftet ausdrücklich der jeweilige Autor: fred_feuer

  • Das /proc ist ein Pseudofilesystem.
    Letztlich ist es als ein normales Dateisystem angezeigter Blick auf Kernelveriablen und Datenstrukturen.


    Es bildet den Kernel ab, wie er gerade mit welchen Parametern und welchen Zuständen läuft.
    Und das wird nun mal bei jedem Neustart neu aufgebaut und ändert sich auch beständig.


    Du kannst dir aber leicht mit deinem Befehl ein Script erstellen,
    und das dann bei Systemstart einfach ausführen lassen.


    Ein systemd - Servicefile dazu genügt.
    Einfach hier suchen. Ich hab sogar mal ein Mini- Tutorial für systemd- Timer geschrieben. Dort steht auch, was du für ein Service-file brauchst.
    Danach einfach mit systemctl enable myServiceFile.service und es wird nach den Vorgaben im Servicefile gestartet.

  • Danke für die Infos.


    Ich hab sogar mal ein Mini- Tutorial für systemd- Timer geschrieben.

    Habe das Tutorial gefunden, bei den HowTos. Werde mich dann mal daran versuchen, ein service-file zu erstellen.


    Insgesamt erstaunt mich aber das Vorgehen bei ACPI an dieser Stelle. Es werden hier Parameter aus dem BIOS ausgelesen und als Grundlage für die Energieverwaltung durch das OS genutzt. Im BIOS selber können diese Parameter nicht verändert werden und mit Hilfe des OS kann das nur temporär getan werden.


    Das klingt auf der einen Seite so, als solle der Endkunde diese Parameter nicht verstellen. Aber wie kann man davon ausgehen, dass für alle erdenklichen Nutzungsszenarien und Vorlieben, ein fester Satz an Parametern passend sein soll.


    Als Beispiel sei die Helligkeit des Displays eines Laptops genannt. Diese wird jeder für sich individuell einstellen wollen. Wenn hier das BIOS die Nuzter-Einstellung jede Stunde überschreiben würde, wäre das eine furchtbare Gängelung. In diesem Sinne sehe ich die ACPI Parameter ebenfalls. Ich möchte nicht, dass mein Rechner aus Hibernate aufwacht, nur weil ich die externe USB-Maus bewegt habe. Mich wundert auch, dass dieses Vorgehen in der Windows-Welt akzeptiert wird.

    Für den Inhalt des Beitrages 102358 haftet ausdrücklich der jeweilige Autor: fred_feuer

  • Nun ja, jetzt bist du bei der Frage angekommen, die dir erleuchten wird, warum das heilige Linuxmantra Everything is a file so genial ist.
    /proc ist nun mal ein Pseudofilesystem, das den LAUFENDEN Zustand des Kernels greifbar macht.


    Es sind eben keine Dateine und Verzeichnisse, es ist (nicht nur) die Hardware, wie sie der Kernel sieht, und laufend modifiziert.


    Wenn du mit deinem echo da reinschreibst, schreibst du eben nur scheinbar eine Datei, tatsächlich schreibst du DIREKT in die Hardware.
    Der Kernel tut nichts anderes, als bei deinem Befehl, den entsprechenden String direkt unter der korrekten Adressierung auf die entsprechende PCI- lane zu schieben, und das entspricht im dort angeschlossenen Gerät die entsprechende Funktion mit dem entsprechenden Parameter zu rufen.


    Dir ist also mit Linux wirklich die ganze Kiste -auch die Hardware- offenbar.


    Unter Windows kann man das übrigens auch machen. Man muss nur als Obersuperlooser sich erst einmal die Systemrichtlinien für das entsprechende Gerät so verbiegen, dass der Zugriff erlaubt wird. Dann kann man dort dasgleiche machen. Muss aber wirklich die genaue PCI Adresse kennen, die exakte Funktionsnummer und die korrekte Schreibweise des Parameters. Entschieden zu viel verlangt.


    Linux macht es einfacher. Ein echo something > /proc/something arbeitet mit Bezeichnungen, die man verstehen kann. Das Rausfrickeln der korrekten Geräteadresse, der korrekten Funktionsnummer und der korrekten Syntax entfällt.


    Dass die Windowsleute das ertragen, ist eher Philosophie.
    Es gibt auch in Linux genügend Leute, die es schön bunt brauchen, und wenn sie die schwarze Hölle der Konsole -am Ende gar noch vi - sehen, hört man "Aber in Windows....".


    Wer kann, der kann.
    Wer nicht kann, klagt.