Fluxbox Wiki
Computer herunterfahren
0. Einleitung
Fluxbox bringt keine eigene Möglichkeit mit, den Computer ohne Klimmzüge herunterzufahren. Trotzdem gibt es mehrere Möglichkeiten, ohne jedes Mal einen Aufwand betreiben zu müssen den Computer auszuschalten.
1. Benutzt man GDM zum Login
Benutzt man GDM zum Login, kann man diesen aber auch dazu heranziehen, den Computer auszuschalten. Damit dabei nicht zu leicht etwas daneben geht, macht eine Rückfrage Sinn.
Ein einfaches Fragefenster kann man mit xmessage
erzeugen:
xmessage -nearmouse -buttons Nein:1,Ja:0 "Wirklich herunterfahren?"
Klickt der Benutzer auf "nein" haben wir weiter nichts mehr zu tun, können ihm höchstens noch etwas nettes zum Abschied sagen. Klickt er auf "ja" schalten wir den Computer aus.
Dazu sagen wir als erstes GDM, dass er den Computer herunterfahren soll, wenn Fluxbox beendet ist:
gdmflexiserver -a -c 'SET_LOGOUT_ACTION HALT'
Danach schießen wir Fluxbox ab:
kill -TERM $(xprop -root _BLACKBOX_PID | awk '{print $3}')
Dieser Umweg ist nötig, da man GDM nicht auf so einfachem Weg dazu auffordern kann, den Computer direkt auszuschalten. Es ist nur möglich, ihm diese Aufgabe für den Fall zu geben, dass der Benutzer sich auslogt.
Ein bisschen Drumrum ergänzt das Ganze dann zu einem kleinen Script, das man in sein Menü einbauen kann:
#!/bin/sh if xmessage -nearmouse -buttons Nein:1,Ja:0 "Wirklich herunterfahren?"; then gdmflexiserver -a -c 'SET_LOGOUT_ACTION HALT' kill -TERM $(xprop -root _BLACKBOX_PID | awk '{print $3}') else xmessage -nearmouse "Warum hast du es dann versucht?" fi
1. Einen kleinen Button im fluxbox Menü hinzufügen
Das ganze geht wie folgt: Zuerst kreieren wir eine neue Gruppe
Bsp.:
sudo addgroup shutdown
nun noch den eigenen user der Gruppe zuordnen
sudo adduser <Dein_Username> shutdown
danach editieren wir die Datei /etc/sudoers mit folgendem Befehl
visudo
dieser Datei fügen wir einfach am Ende folgendes hinzu
%shutdown ALL=(root) NOPASSWD: /sbin/shutdown %shutdown ALL=(root) NOPASSWD: /sbin/halt %shutdown ALL=(root) NOPASSWD: /sbin/reboot
nachdem das geschehen ist kann man einfach in der Datei ./fluxbox/menu folgende Zeilen an der Stelle einfügen, an der man gerne den Button hätte
[exec] (reboot) {sudo reboot} [exec] (shutdown) {sudo halt}