Probleme mit dem Mount Skript oder den Rechtevergabe

Status
Für weitere Antworten geschlossen.

freakzz

Benutzer
Mitglied seit
27. Nov 2010
Beiträge
5
Punkte für Reaktionen
0
Punkte
0
Hallo, ich habe mich heute durch das Forum und Wiki gewühlt um meine zwei Filmshares im video Ordner des DNLA Medienserver zu mounten. Ich dachte eigentlich dass ich es kapiert habe. Ich sehe aber in der Filestation keine gemounteten Ordner oder Dateien. Also hab ich wohl doch was übersehen.
Ich habe eine DS409 mit Disk Manager 2.2., bisher verwende ich nur SMB Shares, DLNA ist Neuland.

Als erstes habe ich einen neuen Ordner unter /volume1/video/ angelegt.
Rich (BBCode):
/volume1/video/All Movies DLNA/

Dann einen gemeinsamen root Ordner um die Systemfiles im Filemanager sehen zu können.
Rich (BBCode):
/volume1/root/

Ich habe mir ein Skript gebaut - mit dem normalen Windows Editor und dann einfach die txt Endung durch sh
ersetzt:
Rich (BBCode):
#!/bin/sh
# S99ownmount.sh
# mount/bind some folders on startup
# and umount them on shutdown/reboot

case $1 in
start)
        /bin/mount -o bind /volume1/Movies 1/ /volume1/video/All Movies DLNA/
	/bin/mount -o bind /volume2/Movies 2/ /volume1/video/All Movies DLNA/
	/bin/mount -o bind / /volume1/root/
        ;;
stop)
        /bin/umount /volume1/video/All Movies DLNA/
	/bin/umount /volume1/root/
        ;;
*)
        echo "Usage: $0 [start|stop]"
        ;;
esac
Dann bin ich mit Putty (Telnet) auf die DS. Habe den root Ordner gemounted:
Rich (BBCode):
mount --bind / /volume1/root/

Dann habe ich mittels Filestation mein Skript 'S99ownmount.sh' in den Ordner
Rich (BBCode):
/usr/syno/etc.defaults/rc.d/
kopiert.

Dann wieder Putty (Telnet)
Rich (BBCode):
cd /usr/syno/etc.defaults/rc.d/
dann
Rich (BBCode):
chmod 755 S99ownmount.sh

Danach habe ich die DS neu gestartet. Die Ordner wurden aber beim Hochfahren nicht automatisch gemounted (auch nicht die Sys-files im root Ordner). Irgendwas mach ich falsch, aber was? Fehler im Skript oder mach ich bei der Rechtevergabe etwas falsch?

Danke für Eure Hilfe!
Gruss,
 

janus

Benutzer
Mitglied seit
07. Sep 2010
Beiträge
667
Punkte für Reaktionen
0
Punkte
0
Hallo, ich habe mich heute durch das Forum und Wiki gewühlt um meine zwei Filmshares im video Ordner des DNLA Medienserver zu mounten. Ich dachte eigentlich dass ich es kapiert habe. Ich sehe aber in der Filestation keine gemounteten Ordner oder Dateien. Also hab ich wohl doch was übersehen.
Ich habe eine DS409 mit Disk Manager 2.2., bisher verwende ich nur SMB Shares, DLNA ist Neuland.

Als erstes habe ich einen neuen Ordner unter /volume1/video/ angelegt.
Rich (BBCode):
/volume1/video/All Movies DLNA/

Dann einen gemeinsamen root Ordner um die Systemfiles im Filemanager sehen zu können.
Rich (BBCode):
/volume1/root/

Ich habe mir ein Skript gebaut - mit dem normalen Windows Editor und dann einfach die txt Endung durch sh
ersetzt:
Rich (BBCode):
#!/bin/sh
# S99ownmount.sh
# mount/bind some folders on startup
# and umount them on shutdown/reboot

case $1 in
start)
        /bin/mount -o bind /volume1/Movies 1/ /volume1/video/All Movies DLNA/
	/bin/mount -o bind /volume2/Movies 2/ /volume1/video/All Movies DLNA/
	/bin/mount -o bind / /volume1/root/
        ;;
stop)
        /bin/umount /volume1/video/All Movies DLNA/
	/bin/umount /volume1/root/
        ;;
*)
        echo "Usage: $0 [start|stop]"
        ;;
esac
Dann bin ich mit Putty (Telnet) auf die DS. Habe den root Ordner gemounted:
Rich (BBCode):
mount --bind / /volume1/root/

Dann habe ich mittels Filestation mein Skript 'S99ownmount.sh' in den Ordner
Rich (BBCode):
/usr/syno/etc.defaults/rc.d/
kopiert.

Dann wieder Putty (Telnet)
Rich (BBCode):
cd /usr/syno/etc.defaults/rc.d/
dann
Rich (BBCode):
chmod 755 S99ownmount.sh

Danach habe ich die DS neu gestartet. Die Ordner wurden aber beim Hochfahren nicht automatisch gemounted (auch nicht die Sys-files im root Ordner). Irgendwas mach ich falsch, aber was? Fehler im Skript oder mach ich bei der Rechtevergabe etwas falsch?

Danke für Eure Hilfe!
Gruss,

Also als erstes kommen die Leerzeichen beim Mount sehr suspekt. Die muss du mindestens mit einem Backslash escapen.

2. Vor dem Reboot sollte dein Script schon funktionieren, wenn es das nicht macht, wird es nach dem Reboot garantiert nicht besser.

Gruß

Janus
 

goetz

Super-Moderator
Teammitglied
Sehr erfahren
Mitglied seit
18. Mrz 2009
Beiträge
14.166
Punkte für Reaktionen
414
Punkte
393
Hallo,
@janus
bitte keine Vollquote, das behindert den Lesefluss ungemein.

Ich habe mir ein Skript gebaut - mit dem normalen Windows Editor und dann einfach die txt Endung durch sh
ersetzt:
da liegt Dein Problem, da hast Du im script an jedem Zeilenende ein ^M zu stehen. Besorge Dir notepad++ und speichere dann im Unix Dateiformat.

Gruß Götz
 

freakzz

Benutzer
Mitglied seit
27. Nov 2010
Beiträge
5
Punkte für Reaktionen
0
Punkte
0
Hi,
danke für die Tips. Ich habe das Skript nun mit Notepad++ erstellt.
Dann Putty (Telnet)
Rich (BBCode):
chmod +x /usr/syno/etc.defaults/rc.d/S99ownmount.sh
um das Skript zu aktivieren (stand in einem Forumspost - muss man diesen Schritt machen?)
dann
Rich (BBCode):
chmod 755 /usr/syno/etc.defaults/rc.d/S99ownmount.sh
dann Neustart der DS.

Leider sehe ich immer noch keine Files (auch nicht im root Ordner).
Was nun?
 

goetz

Super-Moderator
Teammitglied
Sehr erfahren
Mitglied seit
18. Mrz 2009
Beiträge
14.166
Punkte für Reaktionen
414
Punkte
393
Hallo,
wea passiert wenn Du das script per Hand aufrufst?
Rich (BBCode):
/usr/syno/etc.defaults/rc.d/S99ownmount.sh start
sind die mounts dann vorhanden?
Rich (BBCode):
mount

Gruß Götz
 

freakzz

Benutzer
Mitglied seit
27. Nov 2010
Beiträge
5
Punkte für Reaktionen
0
Punkte
0
Nein die mounts sind nicht vorhanden:

Rich (BBCode):
-ash: /usr/syno/etc.defaults/rc.d/S99ownmount.sh: not found

In der Filestation wird die Datei aber angezeigt - sofern ich den root ordner per Hand mounte. Als Besitzer der S99ownmount.sh wird mir übrigens 'admin' angezeigt. Nicht '0' wie bei allen anderen Systemdateien. Liegt hier der Fehler?
 

goetz

Super-Moderator
Teammitglied
Sehr erfahren
Mitglied seit
18. Mrz 2009
Beiträge
14.166
Punkte für Reaktionen
414
Punkte
393
Hallo,
ja, Eigentümer sollte root (0) sein, bei all diesen Dingen mußt Du Dich als root anmelden, Passwort vom admin. Log Dich als root ein und
Rich (BBCode):
chown root,root /usr/syno/etc.defaults/rc.d/S99ownmount.sh
und probiere den Aufruf des Scripts noch einmal.

Gruß Götz
 

janus

Benutzer
Mitglied seit
07. Sep 2010
Beiträge
667
Punkte für Reaktionen
0
Punkte
0
Nein die mounts sind nicht vorhanden:

Rich (BBCode):
-ash: /usr/syno/etc.defaults/rc.d/S99ownmount.sh: not found

In der Filestation wird die Datei aber angezeigt - sofern ich den root ordner per Hand mounte. Als Besitzer der S99ownmount.sh wird mir übrigens 'admin' angezeigt. Nicht '0' wie bei allen anderen Systemdateien. Liegt hier der Fehler?

Jungs,
das mit den leerzeichen meinte ich durchaus ernst.

Gruß

Janus
 

freakzz

Benutzer
Mitglied seit
27. Nov 2010
Beiträge
5
Punkte für Reaktionen
0
Punkte
0
Hallo,
ja, Eigentümer sollte root (0) sein, bei all diesen Dingen mußt Du Dich als root anmelden, Passwort vom admin. Log Dich als root ein und
Rich (BBCode):
chown root,root /usr/syno/etc.defaults/rc.d/S99ownmount.sh
und probiere den Aufruf des Scripts noch einmal.

Gruß Götz

Hi goetz - danke für deine Geduld. Im Putty bin ich immer als root angemeldet, in die Filestation gehe ich nur als admin (als root bekomme ich dort keinen Zugang). Dein Code ist glaube ich falsch - ein 'root' zuviel.
Rich (BBCode):
chown: unknown user name: root,root

Wenn ich
Rich (BBCode):
chown root /usr/syno/etc.defaults/rc.d/S99ownmount.sh
eingebe dann geht es. In der Filestation ist '0' nun der Besitzer.

Jetzt kommt der Skriptaufruf per Hand.
Rich (BBCode):
/usr/syno/etc.defaults/rc.d/S99ownmount.sh start

Leider kommt immer noch eine Fehlermeldung
Rich (BBCode):
-ash: /usr/syno/etc.defaults/rc.d/S99ownmount.sh: not found

@janus - Ich habe testweise das Skript umgeschrieben und alle meine Movie Ordner rausgeworfen. Es soll also nur der root Ordner gemountet werden. Klappt aber auch nicht. Der Fehler
Rich (BBCode):
-ash: /usr/syno/etc.defaults/rc.d/S99ownmount.sh: not found
kommt auch dann. Mit den Leerzeichen hat mein Problem also erstmal nix zu tun. Das Leerzeichenproblem kommt vielleicht später noch :), wenn ich überhaupt ein Skript zum laufen bekomme.

Gruss,
 
Zuletzt bearbeitet:

janus

Benutzer
Mitglied seit
07. Sep 2010
Beiträge
667
Punkte für Reaktionen
0
Punkte
0
Moin,
also wenn dann heisst das "chown root:root <datei>" das "," dürfte wohl ein Dreckfuhler sein.

Ansonsten rufe doch das Script mal mit -x auf.

Also entweder "sh -x <scriptname><parameter>" oder du setzt in die erste Zeile des Scripts ein:

#!/bin/sh -x

Das liefert dir die Debug ausgaben beim ausführen, dann kann man wahrscheinlich etwas mehr sehen.

Gruß

Janus
 

janus

Benutzer
Mitglied seit
07. Sep 2010
Beiträge
667
Punkte für Reaktionen
0
Punkte
0
Hallo,
ja, Eigentümer sollte root (0) sein, bei all diesen Dingen mußt Du Dich als root anmelden, Passwort vom admin. Log Dich als root ein und
Rich (BBCode):
chown root,root /usr/syno/etc.defaults/rc.d/S99ownmount.sh
und probiere den Aufruf des Scripts noch einmal.

Gruß Götz

Um ehrlich zu sein,
glaube ich nicht daran, dass der Owner des Scripts eine Rolle spielt. Der spielt erst dann eine Rolle, wenn das S Bit gesetzt ist.

Gruß

Janus
 

freakzz

Benutzer
Mitglied seit
27. Nov 2010
Beiträge
5
Punkte für Reaktionen
0
Punkte
0
Moin,
also wenn dann heisst das "chown root:root <datei>" das "," dürfte wohl ein Dreckfuhler sein.

Ansonsten rufe doch das Script mal mit -x auf.

Also entweder "sh -x <scriptname><parameter>" oder du setzt in die erste Zeile des Scripts ein:

#!/bin/sh -x

Hi Janus, sorry ich verstehe nur noch 'Bahnhof'. Meine Ahnung von Linux/Unix gehen genn Null. Kannst Du bitte den ganzen Code posten den ich eingeben soll. Das Skript an sich, habe ich mir aus der Wiki kopiert. Die erste Zeile ist daher
Rich (BBCode):
#!/bin/sh

Soll ich das nun in
Rich (BBCode):
#!/bin/sh -x
ändern?

Und dann wieder per Putty
Rich (BBCode):
chmod +x /usr/syno/etc.defaults/rc.d/S99ownmount.sh
sowie
Rich (BBCode):
chmod 755 /usr/syno/etc.defaults/rc.d/S99ownmount.sh
Diese zwei Schritte muss ich immer machen oder??

Thx!
 

janus

Benutzer
Mitglied seit
07. Sep 2010
Beiträge
667
Punkte für Reaktionen
0
Punkte
0
Hi Janus, sorry ich verstehe nur noch 'Bahnhof'. Meine Ahnung von Linux/Unix gehen genn Null. Kannst Du bitte den ganzen Code posten den ich eingeben soll. Das Skript an sich, habe ich mir aus der Wiki kopiert. Die erste Zeile ist daher
Rich (BBCode):
#!/bin/sh

Soll ich das nun in
Rich (BBCode):
#!/bin/sh -x
ändern?

Und dann wieder per Putty
Rich (BBCode):
chmod +x /usr/syno/etc.defaults/rc.d/S99ownmount.sh
sowie
Rich (BBCode):
chmod 755 /usr/syno/etc.defaults/rc.d/S99ownmount.sh
Diese zwei Schritte muss ich immer machen oder??

Thx!

Da muss man klar zwischen dem "-x" für den Debug von Shell Scripts und dem "+x" für das setzen von Rechten unterscheiden. Bitte nicht durcheinander werfen.

Für dich ist beim Aufruf der Shell Scripts erst mal das "-x" im Shell Script selbst wichtig, damit du ein paar mehr Ausgaben bekommst, um das Script debuggen zu können.

Das mit den +x Rechten der Scripts musst du nur einmal machen, dann reichts auch schon. Wobei entweder das chmod +x oder das chmod 0755 durchzuführen ist. Ist beides OK.

Einfach mal machen, mehr wie kaputt gehen kanns nicht :D

Gruß

Janus
 
Zuletzt bearbeitet:
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