Ich möchte ein Skript /etc/pm/suspend.d/
einfügen, das Netzwerkzugriff benötigt (für eine sehr kurze Zeit), bevor das System angehalten werden kann. Aber auch mit Skripten namens „001_something“ in /etc/pm/suspend.d/
und /usr/lib/pm-utils/sleep.d/
ich bekomme keinen Netzwerkzugriff. Es scheint, dass dies deaktiviert ist, bevor die Skripte ausgeführt werden.
Warum ist das Netzwerk deaktiviert? Wie kann ich es aktivieren?
Außerdem kann ich die Datei pm-suspend.log in nicht verwenden /var/log
. Es scheint, dass die Datei für den Suspend-Teil überschrieben wird, sobald das System wieder aufgenommen wird.
Folgendes wurde beobachtet in daemon.log
:
Feb 7 22:09:04 zenbook NetworkManager[3606]: <info> sleep requested (sleeping: no enabled: yes)·
Feb 7 22:09:04 zenbook NetworkManager[3606]: <info> sleeping or disabling...·
Feb 7 22:09:04 zenbook NetworkManager[3606]: <info> (wlan0): now unmanaged·
Feb 7 22:09:04 zenbook NetworkManager[3606]: <info> (wlan0): device state change: activated -> unmanaged (reason 'sleeping') [100 10 37]·
Feb 7 22:09:04 zenbook NetworkManager[3606]: <info> (wlan0): deactivating device (reason 'sleeping') [37]·
Ich verwende Debian Testing mit Gnome 3.
EDIT: Das Problem hängt nicht mit pm-utils zusammen. Soweit ich weiß, deaktiviert NetworkManager das Netzwerk (in nm-manager.c: do_sleep_wake). Ich weiß noch nicht, wie ich das lösen soll. Siehe NetworkManager: Netzwerk deaktiviert, wenn das System in den Ruhezustand versetzt wird
quelle
sleep.d
mitsuspend.d
der Frage, aber das ist nicht die Ursache des Problems.Antworten:
1. Macken?
Zuerst würde ich bestätigen, dass Ihr Suspend korrekt funktioniert. Werfen Sie einen Blick auf die Seite mit den Macken und bestätigen Sie, dass Ihr Suspend ordnungsgemäß funktioniert und nicht nur so aussieht, als ob es richtig funktioniert.
2. Ist Ihr Skript 001_something ausführbar?
Stellen Sie sicher, dass Ihr
001_something
Skript ausführbar ist!3. Sieht Ihr Skript 001_something korrekt aus?
Stellen Sie sicher, dass Ihr Skript den
pm-utils
Erwartungen entspricht.Beispielskript
HINWEIS: Setzen Sie Ihre Versuche, das Netzwerk zu verwenden, in den
hibernate|suspend
richtigen Teil der case / switch-Anweisung?4. Datei im Verzeichnis .d funktioniert (/etc/pm/suspend.d/ oder /usr/lib/pm-utils/sleep.d/)?
Als nächstes würde ich bestätigen, dass Ihr
001_something
Skript tatsächlich durch Suspend / Hibernate korrekt erfasst wird, indem es einfach in eine Datei mit einer Zeichenfolge zurückgesendet wird, damit Sie wissen, dass es funktioniert.Sie sollten dann Dateien wie
pmck_2013-16:08:11.log
in sehen/tmp
.5. / var / log?
Wenn das obige .d- Verzeichnis funktioniert, würde ich eine erstellen
001_something
und die/var/log/pm-suspend.log
Datei, von der Sie glauben, dass sie überschrieben wird, in eine andere Datei kopieren/tmp
lassen. Auf diese Weise können Sie zumindest bestätigen, dass die Protokollierung korrekt ist. Dies kann Ihnen weitere Einblicke in das Geschehen geben.6. Schlafhakennummer?
Können Sie auch den Namen Ihrer Hook-Datei in
00-something
anstelle von ändern001_something
? Nicht sicher, aber die Manpage zeigt diese Werte an.7. Netzwerkkonnektivität?
Fügen Sie Ihrem
001_something
Skript Folgendes hinzu :8. Bug mit pm-utils, HAL und Wheezy?
Ich bin auf diesen Debian-Fehlerbericht gestoßen und habe mich gefragt, ob dies die Ursache für Ihr Problem sein könnte. Der Fehler beschreibt ein Problem mit HAL und pm-utils. Es klingt so, als würde das Entfernen von HAL das Netzwerkproblem beheben.
9. Ausführlicheres Debuggen von pm-utils
Zusätzlich gibt es diesen Link, der Ratschläge für Debian-spezifische Probleme beim Anhalten / Fortsetzen bietet. Es wird eine Möglichkeit erwähnt, die Protokollierung von pm-utils durch Festlegen einer Variablen
PM_DEBUG=true
in der/usr/lib/pm-utils/pm-functions
Datei zu erhöhen .Auszug
Vielleicht kann dies hilfreich sein, um Ihnen mehr Einblick in die Vorgänge mit pm-utils zu geben!
10. ACPI fährt das Netzwerk vor
pm-utils
?Wenn das Problem nicht auftritt
pm-utils
, liegt es möglicherweise anacpi
. Wenn Sie den Deckel Ihres Laptops schließen, wird einacpi
Ereignis ausgelöst, dem eine Aktion zugeordnet ist.EREIGNIS-Datei
ACTION-Datei
Bei näherer Betrachtung werden
laptop_mode
Sie feststellen, dass dieses Tool für eine Vielzahl von Aufgaben verantwortlich ist, darunter die Verwaltung des Status Ihrer Netzwerkgeräte.Der Laptop-Modus verwaltet ein Verzeichnis
/etc/laptop-mode/conf.d
, ähnlich wie bei anderen Unix-Tools. Darin befinden sich Dateien, die sich auf das Ethernet und drahtlose Netzwerkgeräte beziehen.In der primären Konfiguration. Datei
/etc/laptop-mode/laptop-mode.conf
,, ist die Fähigkeit, ausführlichere Nachrichten zu aktivieren. Vielleicht bringt dies zusätzliches Licht auf das, was los ist?Zusammenfassung der oben genannten Punkte basierend auf dem Feedback des OP
1: Suspend funktioniert in Bezug auf den Akkuverbrauch und die Sleep-LED auf meinem Notebook. Ansonsten verstehe ich nicht, wie die erwähnte Webseite mir helfen soll, es herauszufinden.
2: Es ist.
3: Es sieht richtig aus.
4: Ich bekomme diese Dateien.
5: Ich erhalte die entsprechenden Protokolldateien, diese sind jedoch für mich nicht hilfreich.
6: 00 statt 001 zeigt keinen Unterschied.
7: In diesem Abschnitt wird lediglich die Netzwerkkonnektivität getestet. Wie in meiner Frage erwähnt, habe ich keine Netzwerkverbindung, sobald das Skript ausgeführt wird. Das wlan0-Gerät ist ausgefallen. Die Protokolldateien: http://paste.debian.net/231760 .
HINWEIS: Ich hatte dig nicht installiert (Fehlermeldung im paste.debian.net-Protokoll), es ist jedoch klar, dass kein Netzwerkzugriff verfügbar ist (wie gesagt). Ich kann sehen, dass es nicht funktioniert, indem ich die Ausgabe von iwconfig, ip link show, ping, ... überprüfe. Das Perl-Skript ist das betreffende Skript.
Übrigens, sobald die erste Zeile von
/usr/lib/pm-utils/bin/pm-action
(von oben) ausgeführt wird, ist das Netzwerk bereits ausgefallen.8: hal wurde installiert, das Entfernen ändert nichts.
quelle