• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

[gelöst] Script beim Herunterfahren ausführen

Hallo,
was soll denn in der kurzen Zeit des herunterfahren noch getan werden und von wem?
Du müsstest ja eigentlich nur ein Script ausführen das du anstelle des Shutdown-Befehls ausführst. An dessen Ende dann der Shutdown-Befehl steht.

lieben Gruß aus Hessen
 
vitalik2 schrieb:
Wie kann man bei Suse 11.3 ein script beim herunterfahren ausführen?

Schau mal in /etc nach, ob du so etwas ähnliches wie rc.shutdown oder rc.local.shutdown hast.

Wenn ich das richtig verstanden habe, kann man dort angeben, welche Scripte beim Shutdown ausgeführt werden sollen.

@Herz-von-Hessen:

Da fallen mir ganz spontan verschiedene (sinnvolle) Dinge ein. Z.B. Backups, evtl. vorhandene (Backup-)Server gleich mit runterfahren, usw.
 
Hallo Norman,
Systemcrasher schrieb:
Da fallen mir ganz spontan verschiedene (sinnvolle) Dinge ein. Z.B. Backups, evtl. vorhandene (Backup-)Server gleich mit runterfahren, usw.
Natürlich gibt es Dinge die man da tun kann, aber genau genommen ist der PC dann auch noch nicht mit dem Shutdown beschäftigt sondern man tut halt etwas zuvor eingestelltes als letzte Aktion. Während dem herunterfahren wird sicher nichts mehr getan werden können weil die Systemdienste nicht mehr zur Verfügung stehen :/
Lieben Gruß an den Rhein
 
ich habe eine Windows Installation in der VirtualBox. mit einem script habe es so eingerichtet, dass Virtualbox beim Start vom Rechner gestartet wird. Beim Herunterfahren sollte der gleiche Script die VirtualBox speichern und beenden. Das Problemm ist das der Linux zu schnell herunterfährt und in der Zeit die VirtualBox ihr Zeug nicht abspeichern kann. Beim Nächsten Start startet dann die VBox nicht mehr, weil man die erst resetten muss (die box ist mit "Invalid State" markiert).

ich dachte mir man könnte ja einfach was vor den Shutdown befehl tun, damit das Problem weg ist.
 
vitalik2 schrieb:
ich habe eine Windows Installation in der VirtualBox. mit einem script habe es so eingerichtet, dass Virtualbox beim Start vom Rechner gestartet wird. Beim Herunterfahren sollte der gleiche Script die VirtualBox speichern und beenden. Das Problemm ist das der Linux zu schnell herunterfährt und in der Zeit die VirtualBox ihr Zeug nicht abspeichern kann. Beim Nächsten Start startet dann die VBox nicht mehr, weil man die erst resetten muss (die box ist mit "Invalid State" markiert).

ich dachte mir man könnte ja einfach was vor den Shutdown befehl tun, damit das Problem weg ist.
Ist es zu umständlich das laufende Windows von ganz normal herunter zu fahren und dann den Wirt mit einem Shutdown zu beenden?
Wenn Du es dennoch automatisieren willst, hilft ein Blick in das Manual von shutdown:
man shutdown schrieb:
-t sec Tell init(8) to wait sec seconds between sending processes the warning and the kill signal, before changing to another
runlevel.
Shutdown sendet allen laufenden Prozessen eine Warnung das es gleich herunterfahren wird und dann sofort das kill Signal an alle die in diesem Moment noch nicht heruntergefahren sind. Die Option -t (= time) erlaubt es Dir die Zeitspanne zwischen der Warnung und dem Kill-Signal zu vergrößern so das auch Virtualbox, resp. Windows selber, noch Zeit hat herunter zu fahren.
also wäre ein passender Shutdown-Befehl sowas wie der hier:
Code:
shutdown -t 15 -h "Achtung das Computersystem wird in 15 Sekunden herunter gefahren" now
eine Möglichkeit das Windows 15 Sekunden Zeit hat bis es terminiert wird, Die angemeldeten User werden mit der angegebenen Warnmeldung vorgewarnt..
Wie lange die Zeitspanne sein muss wirst Du selbst feststellen müssen weil das ja auch davon Abhängt wie viele Prozesse deines Windows erst heruntergefahren werden müssen.
Ein + vor der Ziffer würde aus den Sekunden Minuten machen.
Ohne grafische Oberfläche kann man es auch mit so einem Script machen (nur so am Rande)
Code:
#! /bin/bash
#
# Computer runterfahren bzw. rebooten
#
#! /bin/bash
#
# Computer runterfahren bzw. rebooten
#

if test $UID -ne 0; then
   exec sudo $0 $*
fi

DIALOG=${DIALOG=/usr/bin/dialog}
$DIALOG --clear --title "Ausschalt-Menue" \
        --menu "\n\
Bitte auswaehlen \n\
Navigation mit Cursor-Tasten, oder den \n\
ersten Buchstaben druecken (Hotkey), oder mit \n\
den Zifferntasten 1-3 eine Auswahl treffen. \n\
Try it now!\n\
 " 18 50 3 \
"Aus"  "Linux runterfahren" \
"Reboot" "Linux neu starten" \
"Cancel" "Menue abbrechen" 2> /tmp/menu.tmp.$$

       retval=$?

       choice=`cat /tmp/menu.tmp.$$`
       rm -f /tmp/menu.tmp.$$
       setterm -clear

       case $retval in
         1)
           echo "Cancel pressed.";;
         255)
           echo "ESC pressed.";;
       esac

if      [ "$choice" = "Aus" ];    then /sbin/shutdown -t 15 -h now
exit 1
elif    [ "$choice" = "Reboot" ]; then /sbin/shutdown -t 15 -r now
exit 1
elif    [ "$choice" = "Cancel" ]; then echo "Vorgang abgebrochen."
exit 1
fi

exit 0
Quelle

lieben Gruß aus Hessen
 
Oben