Jestem połączony z beagleboardem przez tty i nagle widzę ten komunikat:
Broadcast message from root@arm
(unknown) at 11:40 ...
The system is going down for reboot NOW!
[ 143.036193] Restarting system.
System to Ubuntu 12.10. Czy jest miejsce, w którym mogę dowiedzieć się, dlaczego system postanowił zejść?
AKTUALIZACJA: Więcej informacji
- Dzieje się tak przez cały czas, plansza restartuje się co 1 do 5 minut.
- Upewniłem się, że żaden program ani demon nie działa podczas uruchamiania.
Restarting
Nigdzie nie mogę znaleźć żadnego pliku/var/log
- W
syslog
przed ponownym uruchomieniem jest konsekwentnieFeb 10 09:20:00 arm rsyslogd: [origin software="rsyslogd" swVersion="5.8.6" x-pid="317" x-info="http://www.rsyslog.com"] exiting on signal 15.
rsyslogd
to po prostu demon, który przekazuje te wiadomości ... Być może masz rzadkie złośliwe oprogramowanie dla Linuksa ... 1 do 5 minut to mało czasu, spróbuj włożyć Live CD i dowiedzieć się więcej. Jeśli nic nie dostaniesz, radzę ponownie zainstalować, być może inną dystrybucję.Odpowiedzi:
Sposób, w jaki to wyśledzę, to zastąpienie narzędzi
halt
ishutdown
skryptu.Najpierw utwórz skrypt, taki jak poniżej
/bin/fakehalt
:Następnie zainstaluj go za pomocą:
Spowoduje to utworzenie pliku dziennika przy
/tmp/fakehalt.log
każdym wywołaniu. Będzie rejestrować nazwę, która została nazwana jako (halt
lubshutdown
) jego własny PID, a następnie schemat drzewa wszystkich procesów w tym czasie.To powinno dać ci wszystkie informacje niezbędne do jej wyśledzenia. Wystarczy spojrzeć na
ps
drzewo i znaleźć tak zwany skrypt./sbin/reboot
powinien być dowiązaniem symbolicznym do/sbin/halt
. Jeśli tak nie jest, wymień go również.Jeśli nadal nie można go przechwycić, wymień
/sbin/init
również (ponieważ można go również użyć do ponownego uruchomienia systemu). Ale jest to niebezpieczne, jakby system uruchomił się ponownie, nie zadziała poprawnie.źródło
fcron
był pusty, po prostu zastanawiałeś się, dlaczego zadanie się nie pokazało, widzisz to teraz?fcron
zamknąć pracę ?Uruchom jądro z czymś takim
init=/bin/bash
. To powinno sprawić, że nie uruchomią się żadne procesy poza tą powłoką.Sprawdź, czy problem dotyczy ponownego uruchamiania komputera.
Następnie dowiedz się, jakiego systemu init używasz normalnie i przejrzyj wszystkie uruchomione przez niego usługi.
Spróbuj wyłączyć usługi, aż problem z ponownym uruchomieniem zniknie.
źródło
init=/bin/bash
?To jedna z tych możliwości.
źródło