AdminTool Shell Probleme mit dem Admin Tool

Status
Für weitere Antworten geschlossen.

comx

Benutzer
Mitglied seit
04. Jan 2011
Beiträge
21
Punkte für Reaktionen
0
Punkte
0
Hi,

ich hab bei meiner DS411j (DM 3.0-1354) die AdminTools (0.99c) installiert. Soweit so gut. aber irgendwie scheint wohl was nicht so richtig zu laufen.

Mittels Tools->Shell möchte ich eigentlich ein paar Befehle aus einem Script (Z.B. für Shutdown) testen.

Aber alles was mir die Shell bietet ist folgendes:
Rich (BBCode):
/> ls
[2]:
sh: /opt/bin/bash: not found
[1]:

/> help
[2]:
sh: /opt/bin/bash: not found
[1]:

/> dir
[2]:
sh: /opt/bin/bash: not found
[1]:

/>
Irgendwas scheint er nicht zu finden ... Ist da bei der Installation was schief gegangen?

Die Pakete Admin Tools & Init_3rdparty 1.5 laufen aber.

Gruß
C.

Aber vielleicht habt ihr auch ein paar andere Vorschläge wie ich so ein script testen bzw. installieren kann :)
 

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0
ipkg bash scheint zu fehlen oder nicht korrekt installiert zu ein. Kannst ja mal auf die "echte" Konsole gehen und nachschauen ob bash korrekt installiert ist. Dazu musst du im DSM telnet oder (besser) ssh aktivieren und dann mit einem Client wie Putty zur DS verbinden. Anmelden als root mit PW des admin. Dann mal gucken mittels
Code:
which bash
echo $PATH
 

Matthieu

Benutzer
Mitglied seit
03. Nov 2008
Beiträge
13.222
Punkte für Reaktionen
88
Punkte
344
Mit init_3rdparty und AdminTool ist es noch nicht getan. Das Tool verwendet für viele Funktionen ipkg-Pakete, welche erst noch installiert werden müssen. Ein passendes Shell-Skript sollte mit installiert worden sein. Schau noch mal in die Installationsanleitung, ich glaube da wird auch darauf eingegangen.

MfG Matthieu
 

itari

Benutzer
Mitglied seit
15. Mai 2008
Beiträge
21.900
Punkte für Reaktionen
14
Punkte
0
Eigentlich steht alles im ersten Satz des Download-Beitrags:

Das AdminTool ist ein Sammlung verschiedener Linux-Tools [IPKG] und PHP-Skripte zur Systemadministration einer DiskStation.
...
Und immer dran denken, dass mit jeder neuen Version eventuell auch neue IPKG-Tools installiert werden müssen. Also immer überprüfen (kann ja im AdminTool gemacht werden), ob auch alle IPKG-Pakete an Board sind.

Ohne die Installation der IPKG-Pakete ist das AdminTool nur sehr rudimentär zu verwenden. Allerdings gibt es auch ein ash-Shell-Fenster, wenn man auf das [_>]-Icon im Menü-Fenster klickt.

Itari
 

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0
@itari
Bitte ned falsche verstehen, aber würde es ned Sinn machen wenn dein adminTool diese Pakete gleich selbstständig installieren würde? Das wäre imho gerade für Neueinsteiger doch eher hilfreich
 

itari

Benutzer
Mitglied seit
15. Mai 2008
Beiträge
21.900
Punkte für Reaktionen
14
Punkte
0
nö - ich denke, man kann mit dem AdminTool soviel Blödsinn anrichten, wenn man nicht versteht, wie es funktioniert. Ich hab auch bislang nicht den Eindruck gehabt, als würde die Installation des IPKG und weitere Pakete hier im Forum generell als etwas Schwieriges angesehen werden.

Itari
 

comx

Benutzer
Mitglied seit
04. Jan 2011
Beiträge
21
Punkte für Reaktionen
0
Punkte
0
Naja, da bin ich das Thema wohl etwas zu spontan angegangen ;)

In der Wiki-Seite steht ja auch folgendes:
In der Datei ipkg_install.sh (/var/packages/adm/target/ipkg_install.sh) stehen die (noch) zu installierenden IPKG-Pakete.

Da werde ich heute Abend mal hergehen und fehlende Packages nachinstallieren.


Prinzipiell denke ich, dass die Admin-Tools auf jeden Fall eine tolle Sache sind, um einen beim "Anpassen/Erweitern" der fehlenden Funktionalität der DS zu helfen. Außerdem kann man damit sehr einfach weitergehende Informationen zur Konfiguration der DS erhalten. Dies ist meiner Erfahrung nach mit Bordmitteln nicht oder nur schwierig erreichbar.

Also Fazit: AdminTools == "tolle Sache und bitte weiter entwickeln"

Gruß
C.

PS: Die gewünschten Info's aus den Posts weiter vorn liefere ich noch nach.


______________________________
DS411j | 3.0-1354 | 1x1TB SD10UJ 2x2TB WD20EARS as SHR
 
Zuletzt bearbeitet:

comx

Benutzer
Mitglied seit
04. Jan 2011
Beiträge
21
Punkte für Reaktionen
0
Punkte
0
So die fehlenden Info's

@jahlives:
Rich (BBCode):
DS411j> which bash
DS411j> echo $PATH
/usr/bin:/bin:/usr/sbin:/sbin:/usr/syno/bin:/bin:/sbin:/usr/bin:/usr/sbin:/usr/syno/bin:/usr/syno/sbin:/usr/local/bin:/usr/local/sbin
 

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0
Hast du denn ipkg überhaupt nicht installiert? Sonst müsste in $PATH irgendwas mit /opt auch vorkommen. In unserem Wiki steht mehr dazu wie man sich ipkg installieren kann. Erst damit kannst du dann Pakete wie z.B. bash nachinstallieren
 

comx

Benutzer
Mitglied seit
04. Jan 2011
Beiträge
21
Punkte für Reaktionen
0
Punkte
0
Erfolg / weitere Fragen zum Thema Scripting

Hast du denn ipkg überhaupt nicht installiert? Sonst müsste in $PATH irgendwas mit /opt auch vorkommen. In unserem Wiki steht mehr dazu wie man sich ipkg installieren kann. Erst damit kannst du dann Pakete wie z.B. bash nachinstallieren
Natürlich nicht :D (hätte mich vielleicht doch vorher mal ein bisschen mehr mit diesen Sachen beschäftigen sollen...)

Das hat mich jetzt auch die letzten beiden Stunden beschäftigt. Und mit der Anleitung, die ich unter http://www.synology-wiki.de/index.php/IPKG gefunden habe + der Recherche, welches Paket ich da brauche, habe ich es geschafft!

Ferner verfügen meine AdminTools jetzt über die installierte BASH. :)

Naja soviel zu den positiven Nachrichten...

Mittlerweile kämpfe ich damit ein Script, welches ich mir hier im Forum zusammengesucht und modifiziert habe für mein Shutdown-Problem zu testen.

Script (Autor ist glaube ich NickRivers und unter http://www.synology-forum.de/showthread.html?t=8769&page=9 zu finden.:
Rich (BBCode):
#!/bin/sh

# Automatischer PowerOff der DiskStation:

# Die DiskStation soll NICHT runterfahren solange nachfolgende Bedingungen erfüllt sind:
# - ein MagicPacket (Wol) wurde empfangen, dass z.B. von anderen Geräten mittels ether-wake, wakeonlan etc. zyklisch (z.B. CronJob) gesendet wurde
# - die IP's vordefinierter Rechner sind erreichbar
# - ein Download, Kopiervorgang oder Backup auf der DS läuft
#
# Warum so? Läuft der Rechner an dem man gerade arbeitet ist's nett wenn die DiskStation anbleibt. Sitzt man im Wohnzimmer und möchte 
# z.B. Musik hören (Sonos ZoneBridge an Funksteckdose, FritzBox sendet WOL an DS) oder Bilder/Videos mittels DreamBox anschauen ist 
# fein wenn die DS hochfährt aber noch feiner wenn die DS dann auch wieder runterfährt wenn man sie mal nicht braucht.
#
# Nicht alles was die DS am Leben halten kann ist geeignet diese auch aus der 
# Ferne zu wecken, daher nachfolgend die Syntax mit der ich Erfolg hatte:
# wakelan -m MACADRESSE -p 9 		(verwendet in DreamBox) 
# ether-wake -b -i eth0 MACADRESSE	(verwendet in FritzBox)

# Hier die IP's der Rechner eintragen, bei denen die DiskStation immer aktiv bleibt, bis alle IP's inaktiv
HOSTS="192.168.178.10 192.168.178.15"

# Pfad fürs Logfile
LOGFILE=/volume1/system/log/shutdown.log  

log() {                                                                                                                  
        echo `date +%c` $1 >> $LOGFILE                                                                                  
}      

# Endlosschleife für dauerhafte Abfrage bis zum PowerOff (danach sind Abfragen nicht mehr möglich ;)

while true
do

		LIFESIGNS=0
		ONLINE=0
		BACKUP=0
		DOWNLOAD=1
		
		log "-----------------------------------" 
		
		# Wenn ein Rechner mittels CronJob alle 120 Sekunden ein Packet sendet, dann muss die Abfragedauer
		# >120 Sekunden (hier 180 Sekunden) sein damit man auch was davon mitbekommt. 
		
		vorher="$(date +%s)"
		vergangene_sekunden=0
		
		while [ $vergangene_sekunden -le 180 ]
		do
		   DUMP=$(nohup tcpdump -q -n -l -p -c 1 -t -i eth0 )
		
			# für die DreamBox mittels wakelan
			if ( echo $DUMP | grep -q -o "discard: UDP, length 102" ); then
				LIFESIGNS=1;
				log "Lebenszeichen empfangen per UDP discard"
				break
			fi
			
			# für Sonos bzw. FritzBox mittels ether-wake
			if ( echo $DUMP | grep -q -o "Ethertype" ); then
				LIFESIGNS=1;
				log "Lebenszeichen empfangen per Ether-Wake"
				break
			fi
			
			danach="$(date +%s)"
			vergangene_sekunden="$(expr $danach - $vorher)"
		done
		
		# BackUp aktiv prüfen
		if (ps aux | grep rsnapshot | grep -v grep) ; then
		    BACKUP=1
			log "Backup aktiv!"	 
		fi
				
		# Download über HTTP aktiv
		if ! netstat | grep 'http' > /dev/null; then
				DOWNLOAD=0
		else
				DOWNLOAD=1
				log "Download aktiv"
		fi 
		
		# IP's prüfen
		for host in $HOSTS ; do
			if ping -c 1 -w 1 $host > /dev/null; then
				ONLINE=1
				log " $host ist online!"	
		fi	
		done
		
		# Kopiervorgang aktiv prüfen
		if (ps aux | grep ntfs-3g | grep -v grep | grep R); then
				BACKUP=1
				log "Kopiervorgang aktiv!" 
		fi
		
		# PowerOff der DiskStation
		if [ $ONLINE -eq 0 ] && [ $BACKUP -eq 0 ] && [ $DOWNLOAD -eq 0 ] && [ $LIFESIGNS -eq 0 ]; then
			log "Diskstation wird heruntergefahren!"
			sleep 5	
# TEST fuer SHUTDOWN
#			/sbin/poweroff
		fi
					
		# Wartezeit bis erneute Abfrage auf Lebenszeichen erfolgen soll
		sleep 120
done

Tut mir leid, wenn die Frage jetzt zu banal ist, aber meine Linux-Ausflüge sind seit der UNI schon ne weile her.
Also wie kann ich das Script via Shell oder Telnet testen, um zu sehen, ob die Logausgaben korrekt sind, wenn einer der Rechner an ist bzw. ein Download läuft?

Soweit ich weis sollte dieses Script dann via cron-job laufen. Also z.B. nach 21:00. Ist das damit möglich?

Ach ja, danke nochmal für eure Hilfe!
C.
 

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0
Ein Script führt du grundsätzlich aus indem du es aufrufst ;)
Verbinde dich mit einem Client (z.B. Putty) via telnet oder ssh auf die DS und ruf das Script einfach auf
Code:
sh /pfad/zum/script
das wird dir jedoch die Shell blockieren, da das Script in einer Endlosschleife läuft. Mittels ctrl+c kannst du da Script abbrechen und hast die Konsole wieder zurck
 
Status
Für weitere Antworten geschlossen.
 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat