Script unter /usr/local/etc/rc.d/ wird nicht ausgeführt

  • Ab sofort steht euch hier im Forum die neue Add-on Verwaltung zur Verfügung – eine zentrale Plattform für alles rund um Erweiterungen und Add-ons für den DSM.

    Damit haben wir einen Ort, an dem Lösungen von Nutzern mit der Community geteilt werden können. Über die Team Funktion können Projekte auch gemeinsam gepflegt werden.

    Was die Add-on Verwaltung kann und wie es funktioniert findet Ihr hier

    Hier geht es zu den Add-ons

Status
Für weitere Antworten geschlossen.

soley

Benutzer
Registriert
14. Mai 2013
Beiträge
20
Reaktionspunkte
0
Punkte
0
Hallo,

ich möchte ein Verzeichnis aus "/volume1/homes/<user>/video" unter "/volume1/video" einbinden. Dafür habe ich das "Start/Stop Skript" aus dem Wiki genommen und entsprechend angepaßt. Berechtigungen: 755 auf root:root. Das Skript funktioniert auch, wenn es manuell gestartet wird, nicht aber automatisch beim Booten der DS. Gibt es noch weitere Voraussetzungen oder Änderungen, die in dem Wiki-Artikel nicht genannt sind? Oder sitzt das Problem eher vor dem Bildschirm (die derzeitigen Temperaturen scheinen mir mehr auszumachen als der DS) ;-).....

Grüße,
Marc
 
Poste das script doch mal.
 
Rich (BBCode):
#!/bin/sh
# chmod 755 /usr/syno/etc.defaults/rc.d/S99ZZZ_customize.sh
# mount/bind some folders on startup and umount them on shutdown/reboot (http://www.synology-wiki.de/index.php/Mount_Bind)
# Write to system log, event ids in /usr/syno/synosdk/texts/enu/events (http://forum.synology.com/enu/viewtopic.php?f=27&t=6396)
mountit()
{
    # $1 mount what, $2 mount where
    if [ -e $2 ]
    then
        /usr/syno/bin/synologset1  sys err 0x11800000 "$0: $2 exists"
    else
        /bin/mkdir -p $2
        /bin/mount -o bind $1 $2
        /usr/syno/bin/synologset1  sys info 0x11800000 "$0: Mounted $1 to $2"
    fi
    return
}
umountit()
{
    # $1 umount what
    /bin/umount $1 && /bin/rmdir $1 && /usr/syno/bin/synologset1  sys info 0x11800000 "$0: Unmounted $1"
    return
}

case $1 in
start)
    mountit /volume1/homes/sp/Audio/01/ /volume1/music/01/
    mountit /volume1/homes/sp/Audio/02/ /volume1/music/02/
    mountit /volume1/homes/sp/Audio/03/ /volume1/music/03/
    mountit /volume1/homes/sp/Video/Film/ /volume1/video/Film/
    ;;
stop)
    umountit /volume1/music/01/
    umountit /volume1/music/02/
    umountit /volume1/music/03/
    umountit /volume1/video/Film/
    ;;
*)
    echo "Usage: $0 [start|stop]"
    ;;
esac
 
Zuletzt bearbeitet von einem Moderator:
Hm, ich sehe erstmal kein Problem, aber bei mir ist's auch sehr warm und der Kopf ist träge...

Vielleicht entdeckt sonstwer ja was...
 
Die typischsten Fehler sind:
1.) irgendwo fehlt noch der Pfad zum Befehl. Nimm mal die PATH-Einstellung "PATH=...; export PATH" aus der /etc/profile mit in das Script auf.
2.) Der Name des Scripts endet nicht mit .sh (meines Wissens werden nur diese automatisch ausgeführt, bin mir aber nicht sicher)
3.) Das Scripts läuft einfach zu früh, /volume1 ist einfach noch nicht gemountet. Bau mal ein paar weitere Meldungen ein.

Gruß Benares
 
Zumindest Vermutung 3) kann ich entkräften, denn ich habe auch ein mount-script in diesem Ordner.
 
Die typischsten Fehler sind:
2.) Der Name des Scripts endet nicht mit .sh (meines Wissens werden nur diese automatisch ausgeführt, bin mir aber nicht sicher)

Und genau so ist es. Somit würde ich mal ganz dezent auf ein fehlendes .sh tippen.

Gruß Frank
 
Sorry, hat ein bisserl länger gedauert. Zu Euren Vermutungen:

1.) Die PATH Einstellungen hatte und habe ich (immer noch) nicht überprüft
2.) Das Script hat geendet und endet auf ".sh"
3.) Ob /volume1 zur Zeit der Skriptausführung noch nicht eingebunden war, kann ich nicht sagen. Es würde mich aber überraschen, wenn dem so gewesen sein sollte. Und bei Puppetmaster ist dieser Punkt ja auch kein Thema.

Auf jeden Fall hat sich das Problem gelöst, nachdem ich das Skript noch einmal geschrieben und auf die DS kopiert habe. In vi sind mir dann Steuerzeichen ( ^M ) angezeigt worden, die ich entfernt habe (ich weiß gar nicht mehr mit welchem Editor ich das erste Skript erstellt hatte. Könnte "Textedit" gewesen sein. Das neue kommt auf jeden Fall aus Notepad++ und ist - wie gesagt - noch einmal mit vi überarbeitet worden.). Hat auf Anhieb funktioniert :-) ..... Verstehe nur nicht, warum die manuelle Ausführung damals funktioniert hatte. Nun gut ....

Vielen Dank für Eure Tips,
Gruß,
Marc
 
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