PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Dns



sunshine-live
16.08.2005, 09:18
Guten Morgen,

ich habe ein Shell Script geschrieben, dass mir Systeminformationen einsammelt und in eine Datei schreibt. Nun soll das Script natürlich nicht nur auf einem Rechner laufen sondern auf mehreren. Momentan ist die IP Adresse im Quelltext hart codiert.
Nun bin ich nach einer eleganteren Lösung über einen DNS Pool, der das Script auf mehreren Rechner ausführt. Vielleicht habt ihr die ein oder andere Idee.

Vielen Dank

ninguno
16.08.2005, 10:00
hab ich das richtig verstanden, das script wird auf verschiedene rechner kopiert und die ip-adresse wird dann angepasst?
oder soll es auf einem zentralen rechner laufen und sich dann zu anderen rechnern connecten?

sunshine-live
16.08.2005, 10:10
letzteres ist der fall das script läuft auf einem zentralen server und soll mit den anderen rechnern connecten

StyleWarZ
16.08.2005, 10:25
cronjob auf den zentralen rechner einrichten der dann das skript so aufruft das er auf anderen rechnern nachguckt. es wäre hilfreich wenn du das skript mal als anhang beilegst damit man sich das ansehen kann.

Gruss Style

sunshine-live
16.08.2005, 10:46
Auszug aus dem script:

#!/usr/bin/ksh
SERVER="10.100.1.11"
HOST_SYSTEM() {
HOSTNAME=`uname -n`
IPADDRESS=`nslookup $HOSTNAME|grep Address:|awk '{ print $2 }'`
#SUBMASK
DOMAINNAME=`domainname`
#GATEWAY
#FDNS
#SDNS
#TIMEZONE
UPSINCE=`snmpget -Oqv -v 2c -c public $IPADDRESS:9161 sysUpTime.0`
#INSTALLDATE
LOCATION=`snmpget -Oqv -v 2c -c public $IPADDRESS:9161 sysLocation.0`
#SYSTEMCLASS


echo 10"|""|"$HOSTNAME"|"$IPADDRESS"|"Submask"|"$DOMAINNAME"|"Gateway"|"FDNS"|"SDNS"|"Timezone"|"$UPSINCE"|"Installdate"|"$L
OCATION"|"Systemclass"|""|""|" > $TMPHPDATA
}



APPLICATIONS() {

APP_REV_DES=`swlist | sed -e '/^#/d'|sed -e '/^$/d'|awk '{print $1"|"$2"|"$3,$4,$5,$6,$7,$8,$9,$10"|"}'>$TMPAPPS`

while read line
do
echo "11||${line}">>$TMPHPDATA
done <$TMPAPPS

}

HOST_SYSTEM $SERVER
APPLICATIONS $SERVER

sunshine-live
17.08.2005, 09:24
Vielleicht kann mir jemand mit einem Ansatz weiterhelfen?

Schlaubi_fi.de
17.08.2005, 09:58
Hi,

als kleiner Tipp...

Du kannst via SSH remote Code auf beliebigen Maschinen ausführen, das geht so:


zentralerRechner~# ssh user@host1 "pwd"
Jetzt musst du natürlich immer das Passwort des SSH-Accounts von Maschine host1 eingeben. Um einen passwortfreien Login zu garantieren machst du folgendes:

zentralerRechner~# cat .ssh/identity.pub | ssh user@host1 "cd .ssh/ && cat - >> authorized_keys"

bzw.

zentralerRechner~# cat .ssh/id_dsa.pub | ssh user@host1 "cd .ssh/ && cat - >> authorized_keys"