Linuxserver herunterfahren

0210072042

0210072042

Aktives Mitglied
Thread Starter
Dabei seit
18.10.2004
Beiträge
107
Reaktionspunkte
0
Hallo,

Ich möchte per Apple-Script (oder wie auch immer) einen entfernten Linuxserver herunterfahren.

Wer weiss wie das geht?

HP
 
Zuletzt bearbeitet:
warum nicht per ssh im terminal?

mit "ssh www.domain.de -l root" einloggen, dann "shutdown"

(ohne anführungszeichen)
 
Ja so mache ichs jetzt ja auch!

Allerdings möchte ich das ganze auf "Knopfdruck" mit einem kleinen Progrämmchen!
 
Dann würde ich empfehlen nach folgenden AS-Befehlen zu suchen:
do shell script (um Shellbefehle aus AS auszuführen)
und
with administrator privileges (das dürfte sich von selbst erklären)

Das einloggen per ssh lässt sich umgehen wenn man auf dem zu steuernden Rechner Entfernte Apple Events zulässt. Dann kann man der Kommandozeile des Zielrechners Befehle "direkt" übergeben. Gerade entdeckt: Linuxserver. Dann klappt das mit den Events natürlich (leider) nicht.

Grüße,
Flo
 
lengsel schrieb:
Das einloggen per ssh lässt sich umgehen wenn man auf dem zu steuernden Rechner Entfernte Apple Events zulässt. Dann kann man der Kommandozeile des Zielrechners Befehle "direkt" übergeben. Gerade entdeckt: Linuxserver. Dann klappt das mit den Events natürlich (leider) nicht.
Mit Hilfe eines Schlüsselaustauschs kann man den Login ohne Passwort einrichten. Hier ein Link:
http://www.linuxfocus.org/English/January2003/article278.shtml#278lfindex5

 
Oder ne mini website machen mit einem cgi, das den Shutdown befehl ausführt.
Natürlich über https und passwort verschlüsselt.
 
deniz schrieb:
Wie startet man den Server dann neu? kopfkratz

Gar nicht. Wenn er runtergefahren wird, ist er aus.

Deshalb verstehe ich auch den Sinn nicht so ganz..aber egal, er wird wissen, was er tut ;-)
 
Incoming1983 schrieb:
Gar nicht. Wenn er runtergefahren wird, ist er aus.

Deshalb verstehe ich auch den Sinn nicht so ganz..aber egal, er wird wissen, was er tut ;-)

Der Sinn daran wird vermutlich sein, daß an dem besagtem Server keine Tastatur/Monitor dran ist... so wie bei meiner Windows Kiste (per Remote Desktop): zum Einschalten auf den Knopf drücken und warten dann per RDV anmelden ;)
 
Necrolyte schrieb:
Der Sinn daran wird vermutlich sein, daß an dem besagtem Server keine Tastatur/Monitor dran ist... so wie bei meiner Windows Kiste (per Remote Desktop): zum Einschalten auf den Knopf drücken und warten dann per RDV anmelden ;)

Naja, wenn man das von hand macht, geht man eh über ssh.
Außerdem laufen server meist durch ;-)
 
Incoming1983 schrieb:
Außerdem laufen server meist durch ;-)

Da stimmte ich dir selbstverständlich zu *ggg* echte Server kennen nur ein reboot aber das ist eine andere Geschichte :D

hm... Könnte man den ssh Aufruf nicht in ein Shellscript packen und das ganze per Doppelklick mit einer bash öffnen kopfkratz
 
"hm... Könnte man den ssh Aufruf nicht in ein Shellscript packen und das ganze per Doppelklick mit einer bash öffnen kopfkratz"

Genau das ist es, was ich will!!! Geht das?
 
Mit "expect" z.B. könnte das gehen..
 
Necrolyte schrieb:
...Könnte man den ssh Aufruf nicht in ein Shellscript packen und das ganze per Doppelklick mit einer bash öffnen kopfkratz

Schon mal einen Blick in das Ablagemenü von Terminal geworfen? Befehle und Serververbindungen lassen sich da ganz bequem einstellen. Muss man dann nur noch aufrufen.

Grüße,
Flo
 
Beim schnellen herumprobieren jetzt hab ichs nicht hinbekommen ABER
wenn das Shutdown Procedere in einem Shellscript ist dann kann man es ja per AppleScript Starten:

Code:
tell application "Terminal"
	do shell script "woauchimmer/shutdownLinuxSrv.sh"
end tell
 
lengsel schrieb:
Schon mal einen Blick in das Ablagemenü von Terminal geworfen?

*lach* warum einfach wenns kompliziert auch geht... *ggg* ;)
aber an so einfach hab ich natürlich nicht gedacht...
 
Auf dem Mac erstmal einen SSH-Key erzeugen. Dazu im Terminal:
ssh-keygen -t dsa

Alles mit Return beantworten. In .ssh liegt jetzt id_dsa und id_dsa.pub. Das File id_dsa.pub auf den Linux-Server kopieren und zwar in das Verzeichnis /root/.ssh unter dem neuen Namen authorized_keys. Danach chmod -R go-rwx /root/.ssh tippen. Die andere Datei ohne das .pub am Ende bleibt auf dem Mac, und nur dort, denn jeder der sie hat, kann sie benutzen um sich auf dem Server einzuloggen.

Jetzt müsste vom Mac aus mit dem User, der den ssh-Key hat, ein ssh root@linuxserver ohne Passwortabfrage gehen. Es kann nur sein dass Du eine Frage am Anfang mit yes bestätigen musst, das ist aber nur beim ersten ssh-Verbindungsaufbau nötig.

Wenn das alles geht, kannst Du den Linuxserver per Applescript runterfahren per do shell script "ssh root@linuxserver shutdown -h now". Oder halt direkt ueber das Terminal mit dem selben ssh-Befehl.
 
Also ich mach das mit einem kleinen Perl-Script
Code:
#! /usr/bin/perl

use Net::Ping;

$p = Net::Ping->new();

unless ($p->ping("10.0.0.2"))
		{
		print "Router offline\nWarte 2 Minuten\n";
		sleep 100;
		unless ($p->ping("10.0.0.2"))
				{
				print "Fahre Server herunter\n";
				system("poweroff");
				$x = 1;
				}
		}

if($x != 1)
		{
		print "Router online\nServer-Shutdown abgebrochen\n";
		}

$p->close();

Ich weiß das, das Anfänger-Stiel ist, aber es funktionert.

Das dann über Cron-Job aufrufen.
Ich habe mir nauch noch den Webmin (einfach googlen) installiert, da geht das erstellen dieser Job äußerst einfach.

MfG Kana
 
Zurück
Oben Unten