#! /bin/sh #CMDLINE=`cat /proc/cmdline` #echo "akutelle kernel command line <$CMDLINE> " #kexec -l --append="$CMDLINE" /boot/uImage #umount -a # make sure all disks are unmounted #kexec -e # reboot the kernel logger -s -t reboot.sh "REBOOTING SYSTEM" sync # sync all of the disks so as not to lose data sync echo 3 > /proc/sys/vm/drop_caches # RTC mit UTC setzen `/sbin/hwclock -wu` lsof > /var/log/lsof.log dbus-send --system --type=signal /GUI com.rexroth.akku.gui.systemgoingdown int32:1 sleep 5 #Wlan Verbindung beenden ifconfig | grep tiwlan0 if [ "$?" -eq "0" ]; then /opt/ti-wireless/WL6.1.6.0.3/install.sh stop & fi #AblaufSteuerung beenden killall -SIGTERM "AblaufStrg.elf" #sleep 1 #Resultserver beenden killall -SIGTERM "ResSrv.elf" #sleep 1 #Bms Treiber beenden killall -SIGTERM "BmsDrv.elf" #Systemserver beenden killall -SIGTERM "SystemSrv.elf" #Display killall -SIGTERM "newgui" sleep 1 ps | grep -c 'AblaufStrg.elf' if [ "$?" -gt "2" ];then killall -9 "AblaufStrg.elf" fi ps | grep -c 'ResSrv.elf' if [ "$?" -gt "2" ];then killall -9 "ResSrv.elf" fi ps | grep -c 'BmsDrv.elf' if [ "$?" -gt "2" ];then killall -9 "BmsDrv.elf" fi ps | grep -c 'SystemSrv.elf' if [ "$?" -gt "2" ];then killall -9 "SystemSrv.elf" fi ps | grep -c 'newgui' if [ "$?" -gt "2" ];then killall -9 "newgui" fi # Dbus anhalten /etc/init.d/dbus-1 stop # Reboot # /sbin/reboot & # echo r > /proc/sysrq-trigger unraw -> Nimmt der grafischen Oberfläche den Zugriff auf die Tastatur # echo e > /proc/sysrq-trigger term -> Sendet SIGTERM an alle Prozesse außer init # echo i > /proc/sysrq-trigger kill -> Sendet SIGKILL an alle Prozesse außer init # echo s > /proc/sysrq-trigger sync -> Schreibt alle Daten aus dem Cash auf die Platte # echo u > /proc/sysrq-trigger umount -> # echo b > /proc/sysrq-trigger reboot -> echo u > /proc/sysrq-trigger echo b > /proc/sysrq-trigger