J'ai un ordinateur portable (apparemment plutôt exotique) Dell Latitude XT2 exécutant Lubuntu 12.04, fraîchement installé. J'ai essayé de faire fonctionner le bouton d'alimentation comme prévu (ouverture de la boîte de dialogue de déconnexion lubuntu-logout
), mais sans succès: le bouton d'alimentation ne fait que mettre hors tension de force en appuyant longuement.
Le bouton d'alimentation lui-même est détecté et fonctionne. Dans xfce4-power-manager-settings, lorsque je règle l'action du bouton d'alimentation de "Demander" (= ouvrir lubuntu-logout
) sur "Arrêter", l'ordinateur portable s'éteint avec succès. appuyer sur le bouton d'alimentation est reconnu et traité correctement.
Edit: J'ai enlevé un tas d'informations de la question, car cela ne semble pas être lié au problème.
Il semble s'agir d'un bug conn à Lubuntu. Dans les paramètres de xfce4-power-manager, plusieurs actions doivent être sélectionnées pour le bouton d'alimentation en cours d'utilisation. Lorsque vous sélectionnez "Arrêter", cela fonctionne comme prévu, mais lorsque vous sélectionnez "Demander", rien ne se produit.
Une solution de contournement est dans le commentaire n ° 1 . Ça marche pour moi. Il semble y avoir un problème sous-jacent entre xfce4 et LXDE.
Vous pouvez créer le même comportement avec un démon acpi (supplémentaire), comme Green7. La version dans sa réponse ferme le PC sans dialogue, mais nous avons discuté dans le chat que vous pouvez démarrer lubuntu-logout
à partir du script au lieu de simplement éteindre l'ordinateur. Cependant, cela nécessite un peu de travail, car vous devez démarrer l'application de déconnexion en tant qu'utilisateur autorisé à se connecter à X et fournir les variables d'environnement nécessaires (comme $DISPLAY
). Comme les variables env semblent varier d’une distribution à l’autre, je pense que vous deviez les rechercher soigneusement pour LXDE.
Installez acpi
et acpi-support
, si ce n'est déjà fait.
/etc/acpi/events
.powerbtn
(sinon, créez-le). Le contenu du fichier dans mon installation est:# /etc/acpi/events/powerbtn # Ceci est appelé lorsque l'utilisateur appuie sur le bouton d'alimentation et appelle # /etc/acpi/powerbtn.sh pour un traitement ultérieur. # Vous pouvez éventuellement spécifier l'espace réservé% e. Il transmettra # À l’ensemble du message d’événement du noyau au programme que vous avez spécifié. #. # Nous devons réagir au "bouton d’alimentation". * "and" button/power. * "car # de modifications du noyau. event = button [/]power action=/etc/acpi/powerbtn .sh
action
de ce fichier./etc/acpi/powerbtn.sh
est le suivant:#!/bin/sh # /etc/acpi/powerbtn.sh # Déclenche un arrêt lorsque le putton de puissance a été appuyé sur #. ____.] [-r/usr/share/acpi-support/power-funcs] &&. /usr/share/acpi-support/power-funcs[.____.HERn.________..## getXuser obtient l'utilisateur X appartenant à l'affichage dans $ displaynum. # Si vous voulez l'utilisateur X au premier plan, utilisez getXconsole! getXuser () { user = `pinky -fw | awk '{if ($ 2 == ":' $ displaynum '" || $ (NF) == ":' $ displaynum '") {print $ 1; sortie; }} '` if [x" $ user "= x" "]; then startx = `pgrep -n startx` if [x" $ startx "! = x" "]; then user = `ps -o user --no-headers $ startx` fi fi if [x" $ user "! = x" " ]; then userhome = `getent passwd $ user | cut -d: -f6` export XAUTHORITY = $ userhome/.Xauthority sinon export XAUTHORITY = "" f export XUSER = $ user } # Sauter si nous sommes en train de reprendre. teste -f/var/lock/acpisleep && exit 0 # Si l'utilisateur actuel de la console X exécute un démon de gestion de l'alimentation qui # Gère les demandes de suspension/reprise, laissez-le gérer la stratégie. Il s'agit en réalité de # Identique à 'acpi Le fichier '/ usr/share/acpi-support/policy-funcs' de -support. [-r/usr/share/acpi-support/power-funcs] && getXconsole PMS = "gnome-settings-daemon kpowersave xfce4-power-manager" PMS = "$ PMS guide-power-manager.py dalston-power-applet" Si pidof x $ PMS>/dev/null; then exit Test Elif "$ XUSER"! = "" && pidof dcopserver>/dev/null && test -x/usr/bin/dcop &&/usr/bin/dcop --user $ XUSER kded kded chargéModules | grep -q klaptopdaemon; then exit Test Elif "$ XUSER"! = "" && test -x/usr/bin/qdbus; alors kded4pid = $ (pgrep -n -u $ XUSER kded4) si test "$ kded4pid"! = ""; then dbusaddr = $ (su - $ XUSER -c "grep -z DBUS_SESSION_BUS_ADDRESS /proc/$kded4pid/environ") if testez" $ dbusaddr "! =" "&& su - $ XUSER -c "exportation $ dbusaddr; qdbus org.kde.kded" | grep -q powerdevil; puis sortie fi fi fi # Si tout le reste échouait, il suffisait de déclencher un arrêt complet. .]/sbin/shutdown -h now "Bouton d'alimentation enfoncé"