sonnenblen.de - Das unabhängige Sun User Forum
Hardware => Sun SPARC => Thema gestartet von: Tschokko am 15. April 2008, 14:23:47
-
Hallo,
aufgrund der letzten Stromabrechnung und der gestiegenen Strompreise, lass ich einige Hardware von mir nicht mehr durchlaufen. Nichts destotrotz möchte ich den Komfort eines vollwertigen Netzwerkes geniesen und dazu hat nun mal meine V240 (demnächste meine V210) beigetragen. Nun ist mir die Idee gekommen ob ich das Gerät nicht automatisch stoppen und starten kann. Ein automatischen Shutdown in der Nacht sollte kein Problem sein. Gilt das gleiche auch für einen Start? Die Maschine würden auf jeden Fall Standby bleiben, sprich über die ALOM Schnittstelle zugänglich. Hat jemand ne Idee wie ich die Maschine zeitgesteuert anwerfen könnte?
Wenn das nämlich gehen würde, könnte ich die Fire automatisch um 16:00 Uhr hochfahren und ca. 02:00 nachts wieder automatisch herunterfahren lassen.
Gruß Tschokko
-
hmmm,
das lom gibt (afaik) keine möglichkeit her einen server zeitgesteuert zu starten. vllt könnte man über einen server der immer läuft per cron etwas an die server schicken... also per telnet auf lom und dort ein "poweron" absetzen. könnte aber script-technisch etwas umfangreicher sein... ich weiss nicht ob die alom's ssh können, aber wenn ja, liesse sich da sicher ein script schreiben mit dem man sowas realisieren kann.
wake on lan hab ich bei solaris/sun hardware noch nie gemacht und weiss auch nicht ob das da überhaupt funktioniert.
-
hmmm,
das lom gibt (afaik) keine möglichkeit her einen server zeitgesteuert zu starten. vllt könnte man über einen server der immer läuft per cron etwas an die server schicken... also per telnet auf lom und dort ein "poweron" absetzen. könnte aber script-technisch etwas umfangreicher sein... ich weiss nicht ob die alom's ssh können, aber wenn ja, liesse sich da sicher ein script schreiben mit dem man sowas realisieren kann.
wake on lan hab ich bei solaris/sun hardware noch nie gemacht und weiss auch nicht ob das da überhaupt funktioniert.
Das ist nen prima Ansatz ! Meine ALOM Schnittstellen sind nämlich alle auf SSH umgestellt, nur bin ich mir nicht so sicher ob man sich automatisch am ALOM anmelden kann.
Gruß
Tschokko
-
du brauchst dich ja nicht anmelden sondern "nur" das poweron command schicken. arbeitest du mit kennwort, oder mit key? wenn der key hinterlegt ist, sollte das ausführen von remote per cron funktionieren. ich habe aber noch nicht versucht ein kennwort ins ssh zu pipen... und das ssh kommando hat (soweit ich sehe) keine möglichkeit das kennwort im klartext mitzugeben...
-
ich habe aber noch nicht versucht ein kennwort ins ssh zu pipen... und das ssh kommando hat (soweit ich sehe) keine möglichkeit das kennwort im klartext mitzugeben...
Dein Freund (und Feind zugleich) heisst SSH_ASKPASS.
SSH_ASKPASS
If ssh needs a passphrase, it will read the passphrase
from the current terminal if it was run from a termi-
nal. If ssh does not have a terminal associated with
it but DISPLAY and SSH_ASKPASS are set, it will execute
the program specified by SSH_ASKPASS and open an X11
window to read the passphrase. This is particularly
useful when calling ssh from a .xsession or related
script. (Note that on some machines it may be neces-
sary to redirect the input from /dev/null to make this
work.)
Der ssh-Prozess muss unbedingt glauben kein Terminal zu haben. Ist gar nicht so einfach das hinzubekommen, nur /dev/null auf den Input zu legen reicht unter Solaris definitiv nicht. Ausserdem muss die Variable DISPLAY gesetzt sein. Der Wert ist egal, es wird auch erstmal nichts mit X gemacht, nur ohne geht es einfach nicht. (Eigentlicher Sinn von SSH_ASKPASS ist zwar für die Passwortabfrage ein X-Fenster zu öffnen, aber es geht auch ohne.)
Ich hatte vor ein paar Jahren das zweifelhafte Vergnügen ein entsprechendes Skript für ein "automatisiertes" SFTP mit Passwort erstellen zu müssen.
Vielleicht eignet sich dieses Fragment als Grundlage:
# (1) Create command script for SFTP
#
echo "cd ${DEST_DIR}" > ${BASE_DIR}/ctrl/SFTP_cmd.in
echo "pwd" >> ${BASE_DIR}/ctrl/SFTP_cmd.in
echo "put ${PROC_FILE} ${DEST_NAME}.tmp" >> ${BASE_DIR}/ctrl/SFTP_cmd.in
echo "rename ${DEST_NAME}.tmp ${DEST_NAME}" >> ${BASE_DIR}/ctrl/SFTP_cmd.in
echo "quit" >> ${BASE_DIR}/ctrl/SFTP_cmd.in
# ----------------------------------------------
# (2) Create an executable script that prints the password
#
echo "#!/bin/sh" > ${BASE_DIR}/ctrl/pass$$.sh
chmod 700 ${BASE_DIR}/ctrl/pass$$.sh
echo "echo $SFTP_PASSWD" >> ${BASE_DIR}/ctrl/pass$$.sh
# ----------------------------------------------
# (3) Set SSH_ASKPASS and DISPLAY for non-interactive SFTP
#
DISPLAY=anything
SSH_ASKPASS=${BASE_DIR}/ctrl/pass$$.sh
export DISPLAY SSH_ASKPASS
# ----------------------------------------------
# (4) Call sftp
#
echo "Start SFTP to IP address: ${DEST_IP_ADDRESS}"
# Use setpgrp to make sftp a process group leader (this detatches it
# from the terminal, which is required for SSH_ASKPASS to be honoured)
#
# On other systems (e.g. Linux) use setsid which has the same effect as setpgrp.
#
setpgrp sftp -b ${BASE_DIR}/ctrl/SFTP_cmd.in -o LogLevel=error ${SFTP_USER}@${DEST_IP_ADDRESS} </dev/null 2> ${BASE_DIR}/log/sftp_sap.log
# If Batch mode (-b) causes problems try redirecting the commands to stdin instead:
#
# setpgrp sftp -o LogLevel=error ${SFTP_USER}@${DEST_IP_ADDRESS} <SFTP_cmd.in 2>sftp_sap.log
rm -f ${BASE_DIR}/ctrl/pass$$.sh
-
Genialer Tipp !!!
Darüber hab ich schon mal den ALOM poweron hinbekommen. :) Coool und viiiiiiiiiiiiielen Dank.
Gruß
Tschokko
-
Wenn nur ein Befehl über die SSH gehen soll, dann sollte plink (Putty-Tools) reichen.
"plink -ssh -pw geheim user@ip-adresse poweron"
Damit kann man auch prima die Server wegen Stromausfall runterfahren, wenn nur ein Server seriell an der USV hängt. Der fährt dann den Rest mit Hilfe von plink runter.
Ist eine "Armeleutelösung", tut aber.
-
Hat jemand putty schonmal auf Solaris Sparc kompiliert? Ich kenne es bisher von Windows und Debian. Auf der Page werden die Sourcen für Unix bereitgestellt.
http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html
-
Ja, ist aber schon einige Zeit her - hat damals aber problemlos funktioniert.