PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : chroot + shutdown?



RTSX
15.03.07, 13:22
Hallo,

ich habe einen Apache Server in einer changeroot laufen, welcher mir eine Bedienoberflaeche fuer ein Programm bietet welches auserhalb der chroot laeuft, sich aber die configfiles aus der chroot holt.

Ich moechte nun gerne eine Funktion zum restarten des Rechners mit ins chroot bauen.
shutdown, init habe ich schon rueberkopiert und ins sudo eingesetzt, ebenso wie die beiden initctl und initrd devices.

Wenn ich nun sudo shutdown now -r innerhalb der chroot aufrufe dauert es einen moment und dann kommt wieder der Promt.

Ueber strace habe ich gesehen das shutdown in der /var/run/shutdown rumschreibt (zumindest bei meinem Debian, da ich auf dem Server kein strace zur verfuegung hatte...) ... welche mein chroot natuerlich nicht hat, das normale system aber auch nicht... wie ich gerade festgestellt habe.

Gibt es eine vernuenftige moeglichkeit das zu realisieren?
Einen cronjob der von aussen jede Minute nachfragt ob er einen Neustart machen soll moechte ich nicht unbedingt.

Falls jemand einen Tip hat waere ich ihm dankbar.

gruss
Tobias

(OS: White Dwarf Linux, Kernel: 2.4.34)

derRichard
15.03.07, 13:31
hallo!

jetzt auf die schnelle würd ich sagen, dass es daran liegt, dass vom chroot aus keinen zugriff auf /dev/initctl hast.
am besten du schreibst ein kleines programm, das außerhalb vom chroot auf einen request wartet. im chroot kannst dann das andere programm per tcp/ip dazu veranlassen einen reboot oder was auch immer zu machen.
das sollte mit ein paar zeilen perl oder was du auch immer bevorzugst klappen.

hth,
//richard

RTSX
15.03.07, 15:53
Hallo,

danke fuer den Tip mit dem TCP/IP. Ich hatte zwar vorher noch nie etwas damit gemacht aber nach einigen versuchen laeuft es erstmal... ich muss zwar noch ein wenig dran verfeinern aber es ist schonmal gut ;)

Fuer alle dies interessiert, hier findet man ein gutes Beispiel
http://www.galileopress.de/openbook/kit/itkomp14002.htm#Rxx355kap14002040003AD1F0211AA

thx
bye

derRichard
15.03.07, 15:55
hallo!

so lang das nur auf localhost rennt kannst eh ein bisschen schmutzen. ;)

//richard

RTSX
15.03.07, 16:03
naja momentan heisst es noch -> Hauptsache es laeuft

Langfristig muss ich mir schon etwas einfallen lassen das nicht jeder Hinz und Kunz den Server permanent rebootet....

Momentan koennte jeder der eine bestimmte Zeichenfolge (welche man im chroot im Klartext auslesen kann) an den Server schickt die Kiste neu starten... waere zwar kein Beinbruch, aber koennte wenn man ne Schleife macht den Serverbetrieb lahmlegen...:confused:
Vielleicht waere es sinnvoll, durch eine vorgelagerte Firewall den Port zumindest vom I-Net her nicht durchzulassen... wenn einer im Netz ist schaut es dann halt schon wieder schlechter aus... aber es waere ein Anfang, denk ich ;)