Archiv verlassen und diese Seite im Standarddesign anzeigen : Samba Startscript
Hallo,
ich habe ein kleines Startscript für den Samba-Server geschrieben:
smbstart.sh:
#!/bin/bash
echo "Samba wird gestartet"
rcsamba start
Um die Datei bei jedem Start automatisch auszuführen, habe ich
sh smbstart.sh
in /etc/init.d/boot.local eingetragen. Allerdings bekomm ich jetzt eine Fehlermeldung, da bei einem Systemstart der Runlevel N ist, der NBM-Daemon beim Start aber einen Runlevel benötigt. Deshalb zeigt er mit rcsamba status auch "dead" an.
Es wäre also von Vorteil, wenn der Aufruf des Scripts erst dann geschieht, wenn das System bereits in einem Runlevel ist (was ja boot.local nicht macht). Könnt ihr mir kurz einen Tipp geben, welche Datei die Anweisungen erst nach Eintritt in den Runlevel ausführt?
Vielen Dank im Voraus!
MfG
Michael
MatzeG2002
09.02.03, 16:25
Hi,
kopier dein Script nach "/etc/init.d" und mach einen Symlink nach "/etc/rc5.d/S90Samba"
Gruß Matze
Hi,
wenn du SuSE hast gibt es doch schon die Startskripte. Du musst nur mit dem Runleveleditor (YaST) festlegen, in welchem Runlevel welcher Dienst gestartet werden soll.
Also das mit den Links kann ich leider noch nicht. Deshalb hab ich mal die Methode mit dem Runlevel-Editor ausprobiert. Das Script ist in /etc/init.d. Wenn ich in dem RL-Editor bei dem Script die Runlevels 3 und 5 aktiviere, werden diese Einstellungen nicht übernommen. Als ich zum Test mal auf "Dienst jetzt starten" geklickt habe, kam folgende Meldung (obwohl als root angemeldet):
/etc/init.d/smbstart.sh start gab 126 (Fehler nicht spezifiziert)
sh: line3: /etc/init.d/smbstart: Keine Berechtigung
Könnte es sein, dass ich die Datei rcsamba nach init.d kopieren müsste? Wie schaffe ich es, nicht nur den Dienst zu starten sondern das gesamte Script auszuführen?
MfG
Michael
MatzeG2002
09.02.03, 17:02
hmm,
Fehler steht eigentlich da !!
sh: line3: /etc/init.d/smbstart: Keine Berechtigung
Vieleicht mal dieser Datei ausführungsrechte für root geben.
Gruß Matze
Hmm also ich hab festgestellt, dass der Runleveleditor dem Script Parameter übergeben will, was natürlich nicht funzt. Ich hab jetzt direkt die rcsamba in /etc/init.d kopiert. Soweit ist alles in Ordnung. Er versucht auch, die Services zu starten, allerdings ohne Erfolg (starting samba classic ........ failed). Theoretisch müsste es doch so funktionieren (Samba startet im Runlevel 3 mit rcsamba start). Kann der Fehler evtl. daran liegen, dass Samba spezielle Netzwerkkomponenten braucht, die erst nach dem Sambastart gestartet werden? Gibt es eine Möglichkeit, die Reihenfolge zu beeinflussen?
MfG
Also den rcsamba beim Start zu starten, funktioniert bei mir nicht. Ich hab jetzt einfach die 2 Komponenten (NBM, SMB) einzeln starten lassen und siehe da: Es funktioniert :)
Trotzdem vielen Dank für die Hilfe!
MfG
Michael
Thomas Mitzkat
09.02.03, 21:32
die start-/stopscripte der suse ( /etc/init.d/smb+rmb ) erfüllen voll die funktionalität, die gebraucht wird. die bearbeitung mit dem runlevel-editor ist auch richtig, aber warum das system durch wahlloses rumkopieren von scripten verdreht wird, kann ich nicht nachvollziehen. um ein neues startscript auch in der richtigen reihenfolge mit dem runlevel-editor einbinden zu können, muss dieses script ein info-block am anfang haben.
#### begin init info ###
#
# info
# info
usw..
daran werden beispielsweise die scriptanhängigkeiten untereinander geregelt, gerade samba braucht netzwerk, um überhaupt richtig funktionieren zu können. wer ein spezielles script für samba braucht, das dort eingebunden werden kann, sollte einfach auch nur mal die suchfunktion benutzen, ich habe ein solches komplettzes script hier gepostet.
was mir gerade noch auffällt: ein script ruft ein anderes script, welches wieder ein anderes script aufruft, sorry, das ist schon echt daneben.
Powered by vBulletin® Version 4.2.5 Copyright ©2024 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.