Start Stop script geht nicht

Status
Für weitere Antworten geschlossen.

meowmoo

Benutzer
Mitglied seit
30. Jun 2013
Beiträge
6
Punkte für Reaktionen
0
Punkte
0
Hallo, Ich versuche gerade ein start script für einen logger zu erstellen aber iwie willdas nicht klappen

hab mir aus dem wiki den code hier zusammen gebaut
Rich (BBCode):
#!/bin/sh
case $1 in
start)
sh cd /opt/etc/init.d/Hyperion-Logger start&
;;
stop)
sh cd /opt/etc/init.d/Hyperion-Logger stop&
;;
*)
echo "Usage: $0 [start|stop]"
;;
esac

die datei S66logger.sh benannt und nach \usr\local\etc\rc.d kopiert geht aber nichts

wenn ich die datei via putty starte kommt line 2: syntax error: unexpected word (expecting "in")

nun steht ich leider ganz schön auf dem schlauch...
 

goetz

Super-Moderator
Teammitglied
Sehr erfahren
Mitglied seit
18. Mrz 2009
Beiträge
14.191
Punkte für Reaktionen
428
Punkte
393
Hallo,
womit hast Du das Script erstellt? Wenn unter Windows dann benutze bitte notpad++ und stelle dort Unix Zeilenenden ein. Schau Dir das Script per vi an, wenn ^M am Zeilenende steht so hast Du Windowszeilenumbrüche.
Das sh vor cd brauchst Du nicht.

Gruß Götz
 

meowmoo

Benutzer
Mitglied seit
30. Jun 2013
Beiträge
6
Punkte für Reaktionen
0
Punkte
0
mit edit plus, in vi sieht alles gut aus, hab die sh mal gelöscht ändert aber nichts.

wenn ich die datei via putty mit
Rich (BBCode):
cd /opt/etc/init.d/ sh Hyperion-Logger start
starten will geht auch nichts.

wenn ich mich nach
Rich (BBCode):
cd /opt/etc/init.d
bewege und /dir mach sehe ich die file auch nicht
mit
Rich (BBCode):
cd /etc/init.d
allerdings schon

aber
Rich (BBCode):
cd /etc/init.d/ sh Hyperion-Logger start

geht auch nicht.

nur wenn ich aus dem dir
Rich (BBCode):
sh Hyperion-Logger start
startet alles sauber...

ich mounte das system mit mount --bind / /volume1/system und und öffne die datei über windows7 mit edit plus, kann es daran liegen?

PS:
chmod u+x S66hyperion.sh mach ich natürlich auch

edit:

hab mal noch etwas rum probiert und die datei mit vi neu erstellt nun kommt das wenn ich sie via putty starte
S66hyperion.sh: cd: line 12: can't cd to /opt/etc/init.d/Hyperion-Logger
 
Zuletzt bearbeitet:

joku

Benutzer
Mitglied seit
06. Mrz 2011
Beiträge
6.664
Punkte für Reaktionen
2
Punkte
164
hab mal noch etwas rum probiert und die datei mit vi neu erstellt nun kommt das wenn ich sie via putty starte
S66hyperion.sh: cd: line 12: can't cd to /opt/etc/init.d/Hyperion-Logger
Hallo,
warum cd ?
ist Hyperion-Logger ein Verzeichniss ?

Code:
#!/bin/sh
case $1 in
start)
/opt/etc/init.d/Hyperion-Logger start&
;;
stop)
/opt/etc/init.d/Hyperion-Logger stop&
;;
*)
echo "Usage: $0 [start|stop]"
;;
esac

Gruß Jo
 

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0
cd /opt/etc/init.d/ sh Hyperion-Logger start
wenn schon
Code:
cd /opt/etc/init.d/ ; sh ./Hyperion-Logger start
wenn du zwei Kommandos auf einer Zeile willst, dann musst du dem System sagen wo die Grenze zwischen den Kommandos ist (oben mit ; )
 

meowmoo

Benutzer
Mitglied seit
30. Jun 2013
Beiträge
6
Punkte für Reaktionen
0
Punkte
0
wenn schon
Code:
cd /opt/etc/init.d/ ; sh ./Hyperion-Logger start
wenn du zwei Kommandos auf einer Zeile willst, dann musst du dem System sagen wo die Grenze zwischen den Kommandos ist (oben mit ; )

das war der trick :D

allerdings mußte ich die zeile noch etwas ändern, mit
Rich (BBCode):
cd /etc/init.d/ ; sh Hyperion-Logger start

nun läuft es nach dem reboot von alleine an,

Super, Vielen dank für die Tips
 

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0
ich würde trotzdem sh ./Hyperion-Logger start machen. Dann ist es eindeutig welches File gemeint ist. Dein Bsp funzt solange bis es irgendwo in PATH ein anderes Hyperion-Logger Script gibt. Dann würde bei deiner Schreibweise immer das Script in PATH ausgeführt. wenn du ein ./ voranstellst, dann weiss das System, dass das Script im aktuellen Arbeitsverzeichnis gemeint ist, egal was sich sonst noch so in PATH tummelt
 

meowmoo

Benutzer
Mitglied seit
30. Jun 2013
Beiträge
6
Punkte für Reaktionen
0
Punkte
0
Nun muss ich meinen alten Fred mal hochholen...

hab gestern auf DSM 6 aktualisiert und nun startet mein Logger nicht mehr nach dem booten

ein manuelles sh Hyperion-Logger start geht aber noch

gibts da ne simple lösung? hat sich was geändert beim starten von scripten?

Danke schon mal
 
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