[MEGOLDVA] ssh parancs végrehajtás a távoli gépen

Ahogy a cím is mutatja, szeretnék egy egyszerű dolgot a "végrehajtatni" a távoli gépen ssh segítségével.
A feladat az lenne, hogy mondjuk a /tmp fájlba lerakja a saját ip címét egy fájlba (beregisztráljon?).
A távoli gépre jelszó nélkül, nyilvános/egyéni kulcs párral jelentkezek be.
Elsőre így gondoltam:
$echo $WAN_ADDRESS | ssh távoli.gép.url tee -a /tmp/ip_address.log

De így a fájl a helyi gépen jön létre az ip-address.log a távoli gép bejelentkező adataival.
Valamit nagyon benézek :( Tipp?

UI: ez csak emlékeztetőnek, jól jöhet még http://hup.hu/node/101021

Hozzászólások

Pl.

ssh root@szerver.hu 'echo "valami" > /tmp/cucc'
Odaát: # cat /tmp/cucc
valami

Nekem már a kiírásból is az jön le, hogy fordított értelemben használja a "helyi" és "távoli" szavakat:

ssh távoli.gép.url tee -a /tmp/ip_address.log [...] De így a fájl a helyi gépen jön létre

Nyilvánvaló, hogy az "ssh ... tee ..." a távoli gépen fog létrehozni egy file-t, vagyis a kolléga valójában azt akarja, hogy távoli gépen fusson az echo, és a helyi gépen legyen a kimenete mentve. A kolléga korábbi post-jai alapján azt gondolom, hogy helyi munkaállomásról akarja periodikusan naplózni, hogyan alakul a távoli gépének az IP címe. Csak az nem világos, hogy ezt miért a távoli gépre belépve kell megnézni, mivel ahhoz már eleve kell a publikus IP... Esetleg van egy közvetlen (privát) link?

ssh remote printf '"%s\\n" "$WAN_ADDRESS"' >>/tmp/ip_address.log

Nem rossz a hup; először találjuk ki a problémát, aztán oldjuk meg! Tükrözi a való világ kihívásait.

Bocs! Biztos bennem van a hiba :(
Igenis a távoli gépen szeretném létrehozni a fájlt, lehetőleg append, és minden sor tartalmaz egy dátum/idő hostname és IP (WEB/WAN) címet. A távoli gép nem tudja a helyi gép IP címét, ezért kellene a távoli gépről (mondjuk) ssh és hozzácsapni (valamilyen időnként) egy sort.
A probléma "kerülgethető" úgy, hogy az összerakott "reportot" átmásolom scp -val, majd az ssh segítségével appnedálom az igazi napló fájlhoz.
Tulajdonképpen ott rekedtem le, hogy már sok olyat csináltam, amikor a távoli gépen elindítottam egy parancsot, majd a helyi gép konzolon néztem az outputot (ami a távoli gép stdout -ja). Most azt kellene elérni, hogy a távoli gépen futtatott parancs bemenetét (stdin) a helyi gép adja, és a távoli parancs outputja (stdout) a távoli gépen maradjon. Pl. próbálkoztam ilyennel:

echo "$STAMP $HOSTNAME $WAN_ADDRESS" | ssh távoli_gép echo >> /tmp/egy_fájl"

De nem jött be :(

UI: Biztos fáradok, úgy érzem egyre zavarosabb amit írok :(

* Én egy indián vagyok. Minden indián hazudik.

Tényleg fáradt lehetek :(
Ime a megoldás:

ssh távoli_gép "echo "$STAMP $HOSTNAME $WN_ADDRESS" >> /tmp/ip_cím.log"

Nem tudom miért nem jött ez elsőre össze :(

KÖSZÖNÖM a segítséget!

* Én egy indián vagyok. Minden indián hazudik.

Mondjuk hogy fejlesztés? GSM "router" - még nem használtunk ilyet - rengeteg rossz tapasztalatom van a GSM IP alapú kommunikációjával. Ráadásul a produkció ki lesz rakva a prérire. Nincs sz'rabb amikor ott értetlenkedsz mi történt.
A Linux számomra egyik legfontosabb tanulsága, értéke a naplózás. Borzasztóan tud bosszantani a windows használhatatlan naplója - minden programom naplóz, még azt is hogy naplóz (ha úgy akarom).

* Én egy indián vagyok. Minden indián hazudik.