ramses27
Goto Top

automatischer remote shutdown

Hallo erstmal,
ich bin ein Linux-Newbie und habe eine Frage.
Da mein Dateiserver (Linux) mit meinem Internetserver runterfahren soll, möchte ich diesen Befehl irgendwie in den Internetserver eintragen.
Als Internetserver dient openSuse 10.3.
In Howtos habe ich gelesen, wie das unter Windows mit einer Batch-Datei geht.
Da der Dateiserver aber zusammen mit dem Internetserver runterfahren soll, möchte ich diesen Befehlssatz in openSuse integrieren.
Der Dateiserver soll dann runtergefahren werden, wenn ich den Internetserver ausschalte.

Kann mir jemand dabei helfen?
Danke schonmal im Vorraus.

Content-Key: 83716

Url: https://administrator.de/contentid/83716

Ausgedruckt am: 29.03.2024 um 10:03 Uhr

Mitglied: Keek
Keek 26.03.2008 um 16:39:50 Uhr
Goto Top
Moin,
verstehe ich nicht ganz.
Du hast zwei Geräte Fileserver und www?
Beide haben ein Linux drauf? Diese sollen Zeitgesteuert einen Shutdown oder reboot machen?
Wenn ja, hier mein Vorschlag.
Für ein einmaliges Zeitgesteuertes runterfahren würde ich dir "at" empfehlen (einfach mal "man at" eintippen)
Falls die Dinger jeden Tag x um y runterfahren sollen würde ich dies über Cronjobs erledigen.
Oder habe ich dich komplett falsch verstanden..
Mitglied: ramses27
ramses27 27.03.2008 um 15:21:05 Uhr
Goto Top
Hallo.
Also, ich habe 2 Server. Der eine ist mein Fileserver und der andere fürs WWW.
Wenn ich den WWW-Server runterfahre (manuell), soll der Fileserver mit runtergefahren werden.
D.h., wenn der shutdown-Befehl im WWW-Server ausgelöst wird, soll dieser den Fileserver mit herunterfahren, ihm also die Anweisung geben, auch runterzufahren.
War vielleicht umständlich ausgedrückt. Sorry face-wink
Grüsse,
Rudi
Mitglied: 27688
27688 28.03.2008 um 09:37:43 Uhr
Goto Top
geht! viele verschiedene ansätze sind möglich. von quick-n-dirty bis hin zu professionellen lösungen.

quick-n-dirty könnte in etwa so aussehen:
du erstellst auf dem zielserver (slave server) einen neuen benutzer und weist im keine Shell zu sondern das programm "halt" (oder ein eigenes Script das den Server sauber herunterfährt). danach änderst du in der /etc/passwd die UserID deines neuen Benutzers auf "0" (NULL), machst ihn somit also zu einem ROOT Clone. jetzt nimmst du bei dem gleichen Eintrag auch noch das Passwort "x" heraus. Das bedeutet dieser Benutzer HAT KEIN PASSWORT! Es wird also bei einem login NICHT danach gefragt sondern es wird direkt seine Shell gestartet. in unserem Fall "halt".

Wenn sich nun jemand versucht an diesem Server mit diesem Benutzer anzumelden fährt der Server sofort herunter anstatt dem Benutzer eine Shell zu liefern.


Um nun vom Hauptserver (Masterserver) aus den Slave-Server herunterzufahren zu können brauchst du dort nur noch ein kleines Script schreiben das versucht sich z.b. SSH auf dem Slave-Server anzumelden..natürlich genau als den Benutzer der zum herunterfahren gebaut wurde.

Funktioniert das wie gewünscht brauchst du dein Script auf dem Master-Server nun nur noch unter die Start/Stop Skripte unter /etc/init.d/rc?.d als KILL Script mischen, so das es wenn dein MASTER-Server herunterfährt automatisch mitgestartet wird und den Shutdown deines SLAVE-Servers mit anstößt.

Diese MEthode funktioniert. ist aber wie schon erwähnt..Quick-n-Dirty und vermutlich auch nicht besonders Sicher.
alternativ könnte man noch in richtung SSH und sudo forschen. bei Ssh kann man ja auch gleich noch ein kommando mit übergeben das ausgeführt werden soll. wenn man es jetzt noch hinbekommt das ein normaler benutzer (NICHT ROOT! also NICHT ID = 0) das HALT kommando (oder Shutdown now) verwenden darf so hast du eine bessere...vor allem sicherere MEthode face-smile