Gadatliwe zamykanie Debiana
: 07 sierpnia 2008, 13:56
Dając halt, poweroff czy shutdown -f now system zatrzymuje się w pewnym miejscu i tylko dzięki Magic SysRQ jestem w stanie bezpieczniej wyłączyć maszynę (sync, kill, umount,...).
Rzecz dzieje się przy nie każdym zamykaniu, a moment zamknięcia jest tajemniczy, bo nie dostaję na konsolę żadnych komunikatów od jądra czy skryptów zamykających. W syslogu nie znalazłem niczego ciekawego, zaś w /etc/default/rcS mam
Nie mogę doszukać się, jak zwiększyć gadatliwość systemu, bym mógł widzieć na jakim etapie siedzi problem, np. przejrzeć komunikat od któregoś ze sterowników ACPI.
Myślałem nawet, by zrobić w init.d skrypt basha z poleceniem echo $_. Wyświetlałby on w szczególności nazwę linku, który do niego prowadzi. A wtedy mógłbym między kilkoma skryptami w /etc/rc0.d powstawiać odpowiednie linki do niego i widzieć przynajmniej, po którym z systemowych skryptów Debian staje w miejscu.
Dopisuję dalej: dałem kernelowi loglevel=6 oraz odpaliłem w trybie single. Odpaliłem reboot i znowu się zatrzymało. Kiedy dałem Alt-Sysrq-E (sygnał TERM dla procesów poza initem), dostałem zachętę do zalogowania się w bashu. Ciekawym kawałkiem mógł być:
Niestety, nie zajrzałem do dmesg. Polecenie poweroff wyłączyło maszynę (najprawdopodobniej bez odmontowania dysków i wykonania jeszcze paru skryptów). Czy mam zatem rozumieć, że problem nie leży w ACPI, tylko jeszcze na etapie któregoś skryptu, np. S20sendsigs?
Rzecz dzieje się przy nie każdym zamykaniu, a moment zamknięcia jest tajemniczy, bo nie dostaję na konsolę żadnych komunikatów od jądra czy skryptów zamykających. W syslogu nie znalazłem niczego ciekawego, zaś w /etc/default/rcS mam
Kod: Zaznacz cały
VERBOSE=yes
Myślałem nawet, by zrobić w init.d skrypt basha z poleceniem echo $_. Wyświetlałby on w szczególności nazwę linku, który do niego prowadzi. A wtedy mógłbym między kilkoma skryptami w /etc/rc0.d powstawiać odpowiednie linki do niego i widzieć przynajmniej, po którym z systemowych skryptów Debian staje w miejscu.
Dopisuję dalej: dałem kernelowi loglevel=6 oraz odpaliłem w trybie single. Odpaliłem reboot i znowu się zatrzymało. Kiedy dałem Alt-Sysrq-E (sygnał TERM dla procesów poza initem), dostałem zachętę do zalogowania się w bashu. Ciekawym kawałkiem mógł być:
Kod: Zaznacz cały
root 2053 0.0 0.2 2828 1364 ? T 15:56 0:00 /bin/sh /etc/rc6.d/S20sendsigs stop
root 2056 0.0 0.0 0 0 ? Z 15:56 0:00 [killall5] <defunct>
root 2057 0.2 0.9 6260 4996 ? Ss 15:57 0:00 bash
root 2108 0.0 0.1 2372 904 ? R 16:00 0:00 ps aux