Kubuntu 11.10 sudo halt
Posted by wnf on Tuesday, 22 November 2011Problem:
Das wird jetzt wohl am neuen Kernel liegen. Mein Rechner schaltet sich nach dem herunterfahren nicht aus. (Ein reboot funktioniert tadellos, aber dabei wird der Rechner ja auch nicht ausgeschaltet ;-)
Der Fehler tritt sowohl bei Suse 12.1, Fedora 16 als auch bei (K)Ubuntu 11.10 auf.
Mein Kernel auf dem Asus P5QL Pro Motherboard
$ uname -a
Linux c2008 3.0.0-12-generic #20-Ubuntu SMP Fri Oct 7 14:56:25 UTC 2011 x86_64 x86_64 x86_64 GNU/Linux
(Meine) Lösung
- sowohl /sbin/halt als auch /sbin/poweroff zeigen auf /sbin/reboot und /sbin/reboot ruft wiederum /sbin/shutdown auf.
- in der Datei /etc/kde4/kdm/kdmrc steht der Befehl, den die KDE (kdm) zum herunterfahren nutzt.
[Shutdown]
BootManager=None
HaltCmd=/sbin/halt
RebootCmd=/sbin/reboot
- da mein Rechner mit diesem Befahl kein Poweroff durchführt, habe ich ein Script geschrieben, dass ich zum Herunterfahren und abschalten benutze.
#!/bin/bash
/sbin/shutdown -P now
- diese Script habe ich /etc/kde4/kdm/kdmrc eingetragen
HaltCmd=/home/wnf/bin/wnfsystempoweroff.sh
Ich weiß jetzt zwar nicht, warum der Befehl /sbin/halt den Rechner nur herunterfährt und nicht mehr ausschaltet, aber mit dieser Änderung kann ich den Rechner wieder ausschalten.
Der Befehl
$ sudo poweroff
fährt den Rechner herunter und schaltet den Strom aus.
$ sudo halt
fährt den Rechner herunter und schaltet den Strom nicht aus.
Unterschied zwischen poweroff und halt
XXX-|$ sudo shutdown -P now |fährt das System herunter und schaltet den Rechner aus
|$ sudo shutdown -h now |fährt das System herunter und schaltet den Rechner aus
|$ sudo shutdown -H now |fährt das System herunter der Rechner bleibt an
Das ist jetzt aber eine Überraschung sowohl /sbin/halt als auch /sbin/poweroff zeigen auf /sbin/reboot und /sbin/reboot ruft wiederum /sbin/shutdown auf.
$ which halt
/sbin/halt
$ ls -l /sbin/halt
lrwxrwxrwx 1 root root 6 2011-10-27 07:17 /sbin/halt -> reboot
$ which poweroff
/sbin/poweroff
$ ls -l /sbin/poweroff
lrwxrwxrwx 1 root root 6 2011-10-27 07:17 /sbin/poweroff -> reboot
$ which reboot
/sbin/reboot
$ reboot --help
Usage: reboot [OPTION]...
Das System neu starten.
Options:
-n, --no-sync don't sync before reboot or halt
-f, --force force reboot or halt, don't call shutdown(8)
-p, --poweroff switch off the power when called as halt
-w, --wtmp-only don't actually reboot or halt, just write wtmp record
-q, --quiet reduce output to errors only
-v, --verbose increase output to include informational messages
--help display this help and exit
--version output version information and exit
Dieser Befehl ist dazu gedacht, den Kernel anzuweisen, das System neu zu starten
oder herunterzufahren; wenn er ohne die Option -f aufgerufen wird oder sich das
System in einem anderen Runlevel als 0 oder 6 befindet, wird er
/sbin/shutdown ausführen.
$ which shutdown
/sbin/shutdown
$ ls -l /sbin/shutdown
-rwxr-xr-x 1 root root 60280 2011-10-27 07:17 /sbin/shutdown
$ shutdown --help
Usage: shutdown [OPTION]... ZEIT [NACHRICHT]
Das System herunterfahren.
Options:
-r reboot after shutdown
-h halt or power off after shutdown
-H halt after shutdown (implies -h)
-P power off after shutdown (implies -h)
-c cancel a running shutdown
-k only send warnings, don't shutdown
-q, --quiet reduce output to errors only
-v, --verbose increase output to include informational messages
--help display this help and exit
--version output version information and exit
ZEIT kann auf verschiedene Art und Weise angegeben werden, der gebräuchlichste Wert ist das
Wort »now«, damit das System sofort herunterfährt. Andere gültige Formate sind »+m«,
wobei m die Anzahl der Minuten bis zum Herunterfahren angibt, und hh:mm (eine Uhrzeit im
24-Stunden-Format).
Angemeldete Benutzer werden mit einer an ihr Terminal gesendeten Meldung gewarnt, Sie
können optional eine NACHRICHT dazu angeben. Nachrichten können ohne tatsächliches
Herunterfahren mittels der Option -k versandt werden.
Falls ZEIT angegeben wurde, wird der Befehl im Vordergrund verbleiben, bis das
Herunterfahren beginnt. Er kann durch Strg+C oder von einem anderen Benutzer mittels der
Option -c abgebrochen werden.
Das System wird standardmäßig in einen Wartungszustand (Einbenutzer-Modus) versetzt. Sie
können dieses Verhalten durch Angabe der Optionen -h (für Herunterfahren) oder -r (für
Neustart) ändern. Die Option -h kann mittels -H oder -P verfeinert werden, um anzugeben, ob
das System nach dem Herunterfahren angehalten (-H) oder ausgeschaltet (-P) werden soll. Der
Standardwert wird den shutdown-Skripten überlassen.
Report bugs to <upstart-devel@lists.ubuntu.com>
Der Tipp von ubuntuuser.de half auch nicht:
- ubuntu 11.10 Power down after shutdown does not work
fedora 16 11.10 Power down after shutdown does not work
- bugzilla.redhat.com/show_bug.cgi?id=751060
Wenn ich den Rechner mit dem Befehl sudo halt herunterfahre sind das die letzten Meldungen, die zu sehen sind:
*Will now halt
md: stopping all md devices
sd: 7:0:0:0 [sdb] Synchronizing SCSI Cache
sd: 7:0:0:0 [sdb] Stopping disk
sd: 3:0:0:0 [sdb] Synchronizing SCSI Cache
sd: 3:0:0:0 [sdb] Stopping disk
sd: 2:0:0:0 [sdb] Synchronizing SCSI Cache
sd: 2:0:0:0 [sdb] Stopping disk
ehci_hcd 0000:00:1d.7 PCI INT A disabled
ohci_hcd 0000:00:1a.7 PCI INT C disabled
System halted
Von wegen System halted, der Bildschirm bleibt an, der Rechner läuft weiter aber die Festplatten scheinen angehalten zu sein.
Ich hoffe, dass irgendwann ein Kernel-Update diesen Fehler beseitigt.