Problem mit rc.config
Problem mit rc.config
Hallo Leute,
also ich habe da ein kleines Problem mit meinem Linux-Rechner (SuSELinux 7.3). Wenn ich in der rc.config den Wert START_SMB auf YES setze und den Rechner neu starte, startet mein Samba nicht ! Wenn ich jedoch unter ...\ rc2.d einen symbolischen Link einfüge, so startet Samba nach einem Neustart ohne Probleme. Genau das gleiche Problem habe ich auch mit Inetd und Squid. Obwohl beide auf START_XXXX=YES stehen, starten sie einfach nicht automatisch. Mit einem symbolischen Link hat es bei beiden wieder funktioniert. Ich hatte auch SuSEconfig nach Änderung der rc.config ausgeführt,aber leider ohne erfolg. Woran kann das liegen, daß mein System diese Einstellungen in der rc.config einfach ignoriert ????
Ich bin noch ein ziemlicher Neuling, was Linux betrifft und bin daher für jeden Tipp dankbar.
Viele Grüße
pl
also ich habe da ein kleines Problem mit meinem Linux-Rechner (SuSELinux 7.3). Wenn ich in der rc.config den Wert START_SMB auf YES setze und den Rechner neu starte, startet mein Samba nicht ! Wenn ich jedoch unter ...\ rc2.d einen symbolischen Link einfüge, so startet Samba nach einem Neustart ohne Probleme. Genau das gleiche Problem habe ich auch mit Inetd und Squid. Obwohl beide auf START_XXXX=YES stehen, starten sie einfach nicht automatisch. Mit einem symbolischen Link hat es bei beiden wieder funktioniert. Ich hatte auch SuSEconfig nach Änderung der rc.config ausgeführt,aber leider ohne erfolg. Woran kann das liegen, daß mein System diese Einstellungen in der rc.config einfach ignoriert ????
Ich bin noch ein ziemlicher Neuling, was Linux betrifft und bin daher für jeden Tipp dankbar.
Viele Grüße
pl
Re: Problem mit rc.config
Hi,
zimlich weit oben in der rc.config befindet sich der Eintrag "ENABLE_SUSECONFIG" den musst du auf "yes" setzen <img src="http://www.pl-forum.de/UltraBoard/Images/Wilk.gif" border="0" align="middle">
Andre
zimlich weit oben in der rc.config befindet sich der Eintrag "ENABLE_SUSECONFIG" den musst du auf "yes" setzen <img src="http://www.pl-forum.de/UltraBoard/Images/Wilk.gif" border="0" align="middle">
Andre
Re: Problem mit rc.config
Meiner SuSE-Erfahrung nach sind die rc-Skripte so gestrickt, dass sie abfragen, ob der entsprechende START_*-Eintrag in der rc.config steht. Falls ja, starten, sonst stille beenden, als ob es gar nicht da wäre. Das Vorhanden der Skripte ist also Voraussetzung dafür, dass der rc.config-Mechanismus überhaupt funktioniert. Weshalb die Links in /etc/rc?.d bei Dir nicht da waren, kann ich jetzt aber nicht beurteilen.
Jochen
Jochen
Re: Problem mit rc.config
rc2.d dürfte grundsätzlich zu früh sein, weil da das netzwerk noch nicht läuft! rc3.d und rc5.d macht sinn. aber vielleicht ist es besser, das paket nochmals zu installieren, denn normalerweise sind die links auch vorhanden.
wie man im scriptz auch sehen kann, findet eine überprüfung der variable $START_SMB aus /etc/rc.config statt. wenn die auf "yes" steht, wird der server gestartet, sofern die programme sich auch an der richtigen stelle befinden!
#! /bin/sh
# Copyright (c) 2001 SuSE Gmbh Nueremberg, Germany. All rights reserved.
#
# <fedback@suse.de>
#
### BEGIN INIT INFO
# Provides: smb
# Required-Start: $network $remote_fs syslog
# Required-Stop:
# Default-Start: 3 5
# Default-Stop:
# Description: initscript for the SAMBA services
### END INIT INFO
#
# init.d/smb
. /etc/rc.config
SMB_BIN=/usr/sbin/smbd
NMB_BIN=/usr/sbin/nmbd
SMB_CONF=/etc/samba/smb.conf
SMB_PID=/var/run/samba/smbd.pid
NMB_PID=/var/run/samba/nmbd.pid
# Determine the base and follow a runlevel link name.
base=${0##*/}
link=${base#*[SK][0-9][0-9]}
# Force execution if not called by a runlevel directory.
test $link = $base && START_SMB=yes
test "$START_SMB" = "yes" || exit 0
if [ ! -x $SMB_BIN ] ; then
echo -n "SMB demon not installed ! "
exit 5
fi
if [ ! -x $NMB_BIN ] ; then
echo -n "NMB demon not installed ! "
exit 5
fi
# The echo return value for success (defined in /etc/rc.config).
#return=$rc_done
. /etc/rc.status
rc_reset
case "$1" in
start)
echo -n "Starting SAMBA nmbd :"
checkproc $NMB_BIN
if [ $? -eq 0 ] ; then
echo -n " Warning: nmbd already running ! "
else
[ -e $NMB_PID ] && echo -n " Warning: $NMB_PID exists ! "
fi
startproc $NMB_BIN -D
rc_status -v
echo -n "Starting SAMBA smbd :"
checkproc $SMB_BIN
if [ $? -eq 0 ] ; then
echo -n " Warning: smbd already running ! "
else
[ -e $SMB_PID ] && echo -n " Warning: $SMB_PID exists ! "
fi
startproc $SMB_BIN -D
rc_status -v
;;
stop)
echo -n "Shutting down SAMBA nmbd :"
checkproc $NMB_BIN || echo -n " Warning: nmbd not running ! "
killproc -TERM $NMB_BIN
rc_status -v
rm -f $NMB_PID
echo -n "Shutting down SAMBA smbd :"
checkproc $SMB_BIN || echo -n " Warning: smbd not running ! "
killproc -TERM $SMB_BIN
rc_status -v
rm -f $SMB_PID
;;
try-restart)
$0 stop && $0 start
rc_status
;;
restart)
$0 stop
$0 start
rc_status
;;
force-reload)
$0 reload
rc_status
;;
reload)
echo -n "Reloading SAMBA nmbd :"
checkproc $NMB_BIN || echo -n " Warning: nmbd not running ! "
killproc -HUP $NMB_BIN
# [ -e $NMB_PID ] && touch -c -m $NMB_PID
rc_status -v
echo -n "Reloading SAMBA smbd :"
checkproc $SMB_BIN || echo -n " Warning: smbd not running ! "
killproc -HUP $SMB_BIN
# [ -e $SMB_PID ] && touch -c -m $SMB_PID
rc_status -v
;;
status)
echo -n "Checking for SAMBA nmbd :"
checkproc $NMB_BIN
rc_status -v
echo -n "Checking for SAMBA smbd :"
checkproc $SMB_BIN
rc_status -v
;;
probe)
test $SMB_CONF -nt $SMB_PID && echo reload
test $SMB_CONF -nt $NMB_PID && echo reload
;;
*)
echo "Usage: $0 {start|stop|status|try-restart|restart|force-reload|reload|probe}"
exit 1
;;
esac
rc_exit
wie man im scriptz auch sehen kann, findet eine überprüfung der variable $START_SMB aus /etc/rc.config statt. wenn die auf "yes" steht, wird der server gestartet, sofern die programme sich auch an der richtigen stelle befinden!
#! /bin/sh
# Copyright (c) 2001 SuSE Gmbh Nueremberg, Germany. All rights reserved.
#
# <fedback@suse.de>
#
### BEGIN INIT INFO
# Provides: smb
# Required-Start: $network $remote_fs syslog
# Required-Stop:
# Default-Start: 3 5
# Default-Stop:
# Description: initscript for the SAMBA services
### END INIT INFO
#
# init.d/smb
. /etc/rc.config
SMB_BIN=/usr/sbin/smbd
NMB_BIN=/usr/sbin/nmbd
SMB_CONF=/etc/samba/smb.conf
SMB_PID=/var/run/samba/smbd.pid
NMB_PID=/var/run/samba/nmbd.pid
# Determine the base and follow a runlevel link name.
base=${0##*/}
link=${base#*[SK][0-9][0-9]}
# Force execution if not called by a runlevel directory.
test $link = $base && START_SMB=yes
test "$START_SMB" = "yes" || exit 0
if [ ! -x $SMB_BIN ] ; then
echo -n "SMB demon not installed ! "
exit 5
fi
if [ ! -x $NMB_BIN ] ; then
echo -n "NMB demon not installed ! "
exit 5
fi
# The echo return value for success (defined in /etc/rc.config).
#return=$rc_done
. /etc/rc.status
rc_reset
case "$1" in
start)
echo -n "Starting SAMBA nmbd :"
checkproc $NMB_BIN
if [ $? -eq 0 ] ; then
echo -n " Warning: nmbd already running ! "
else
[ -e $NMB_PID ] && echo -n " Warning: $NMB_PID exists ! "
fi
startproc $NMB_BIN -D
rc_status -v
echo -n "Starting SAMBA smbd :"
checkproc $SMB_BIN
if [ $? -eq 0 ] ; then
echo -n " Warning: smbd already running ! "
else
[ -e $SMB_PID ] && echo -n " Warning: $SMB_PID exists ! "
fi
startproc $SMB_BIN -D
rc_status -v
;;
stop)
echo -n "Shutting down SAMBA nmbd :"
checkproc $NMB_BIN || echo -n " Warning: nmbd not running ! "
killproc -TERM $NMB_BIN
rc_status -v
rm -f $NMB_PID
echo -n "Shutting down SAMBA smbd :"
checkproc $SMB_BIN || echo -n " Warning: smbd not running ! "
killproc -TERM $SMB_BIN
rc_status -v
rm -f $SMB_PID
;;
try-restart)
$0 stop && $0 start
rc_status
;;
restart)
$0 stop
$0 start
rc_status
;;
force-reload)
$0 reload
rc_status
;;
reload)
echo -n "Reloading SAMBA nmbd :"
checkproc $NMB_BIN || echo -n " Warning: nmbd not running ! "
killproc -HUP $NMB_BIN
# [ -e $NMB_PID ] && touch -c -m $NMB_PID
rc_status -v
echo -n "Reloading SAMBA smbd :"
checkproc $SMB_BIN || echo -n " Warning: smbd not running ! "
killproc -HUP $SMB_BIN
# [ -e $SMB_PID ] && touch -c -m $SMB_PID
rc_status -v
;;
status)
echo -n "Checking for SAMBA nmbd :"
checkproc $NMB_BIN
rc_status -v
echo -n "Checking for SAMBA smbd :"
checkproc $SMB_BIN
rc_status -v
;;
probe)
test $SMB_CONF -nt $SMB_PID && echo reload
test $SMB_CONF -nt $NMB_PID && echo reload
;;
*)
echo "Usage: $0 {start|stop|status|try-restart|restart|force-reload|reload|probe}"
exit 1
;;
esac
rc_exit
Re: Problem mit rc.config
Ich dachte immer, SuSE hätte an Runleveln
S für Single-User
1 Multiuser ohne Netz
2 Multiuser mit Netz
3 wie 2 mit X11
? Oder hat sich das jetzt mit SuSE7.3 geändert? Muss die CD aus dem Kofler noch mal hervorkramen...
Jochen
S für Single-User
1 Multiuser ohne Netz
2 Multiuser mit Netz
3 wie 2 mit X11
? Oder hat sich das jetzt mit SuSE7.3 geändert? Muss die CD aus dem Kofler noch mal hervorkramen...
Jochen
Re: Problem mit rc.config
Hi,
SuSE hat schon seit ewigkeiten 7 Runlevel:
0 - Systemhalt
1 - Singel User
2 - local multiuser
3 - multiuser + network
4 - not used
5 - multiuser + network + xdm
6 - reboot
Andre
SuSE hat schon seit ewigkeiten 7 Runlevel:
0 - Systemhalt
1 - Singel User
2 - local multiuser
3 - multiuser + network
4 - not used
5 - multiuser + network + xdm
6 - reboot
Andre
Re: Problem mit rc.config
Hallo,
vielen Dank erst einmal für die schnelle Hilfe !
Die Lösung des Problemes war denkbar einfach: Ich war in Runlevel 2 anstatt Runlevel 3 ! Unter rc3.d waren dann natürlich auch alle Links, die ich unter rc2.d vermisst hatte.
Das es unter SuSE-Linux 7 Runlevel gibt, war mir nicht bekannt. Ich war genau wie Jochen der Meinung, daß Runlevel 2 bereits Multiuser mit Netz ist.
Vielen Dank nochmals an alle, die mir hier geholfen haben.
Ich werde Euch in nächster Zeit bestimmt noch öfters "löchern" <img src="http://www.pl-forum.de/UltraBoard/Images/Wilk.gif" border="0" align="middle">
Viele Grüße
pl
vielen Dank erst einmal für die schnelle Hilfe !
Die Lösung des Problemes war denkbar einfach: Ich war in Runlevel 2 anstatt Runlevel 3 ! Unter rc3.d waren dann natürlich auch alle Links, die ich unter rc2.d vermisst hatte.
Das es unter SuSE-Linux 7 Runlevel gibt, war mir nicht bekannt. Ich war genau wie Jochen der Meinung, daß Runlevel 2 bereits Multiuser mit Netz ist.
Vielen Dank nochmals an alle, die mir hier geholfen haben.
Ich werde Euch in nächster Zeit bestimmt noch öfters "löchern" <img src="http://www.pl-forum.de/UltraBoard/Images/Wilk.gif" border="0" align="middle">
Viele Grüße
pl
Re: Problem mit rc.config
@Andre:
Na ja, wenn man's genau nimmt, sind's natürlich 11 Runlevel: Der Linux-Init kennt die Runlevel S und 0-9, wenn auch aus der UNIX-Historie nur S und 0-6 (also 8 <img src="http://www.pl-forum.de/UltraBoard/Images/Happy.gif" border="0" align="middle">) benutzt werden und von denen systemübergreifend eigentlich nur 0 und 6 gleich definiert sind. Alles andere ist sehr system- oder distri-eigen, daher rede ich auch meist nur über vom System definierte Runlevel.
Und was heisst "seit Ewigkeiten"? Ich könnte mir vorstellen, dass SuSE in der 7er-Serie im Vergleich zu 6er-Serie was geändert hat, aber ich bin doch ziemlich überzeugt, dass 'ne alte 6er-Version (6.1?) die oben von mir angeführte Definition hatte...
Aber egal. Wenigstens hat pl sein Problem gelöst!
Jochen
Na ja, wenn man's genau nimmt, sind's natürlich 11 Runlevel: Der Linux-Init kennt die Runlevel S und 0-9, wenn auch aus der UNIX-Historie nur S und 0-6 (also 8 <img src="http://www.pl-forum.de/UltraBoard/Images/Happy.gif" border="0" align="middle">) benutzt werden und von denen systemübergreifend eigentlich nur 0 und 6 gleich definiert sind. Alles andere ist sehr system- oder distri-eigen, daher rede ich auch meist nur über vom System definierte Runlevel.
Und was heisst "seit Ewigkeiten"? Ich könnte mir vorstellen, dass SuSE in der 7er-Serie im Vergleich zu 6er-Serie was geändert hat, aber ich bin doch ziemlich überzeugt, dass 'ne alte 6er-Version (6.1?) die oben von mir angeführte Definition hatte...
Aber egal. Wenigstens hat pl sein Problem gelöst!
Jochen
Re: Problem mit rc.config
seit 7.1 gibt's die grafik auf runlevel 5
Re: Problem mit rc.config
@Jochen
> ...von denen systemübergreifend eigentlich nur 0 und 6 gleich definiert sind.
Die Linux Standard Base definiert bis auf RunLevel 4 alle RunLevel. Wird RunLevel 4 nicht anderweitig durch den Administrator definiert, muss der RunLevel 4 sich genauso wie RunLevel 3 verhalten.
<a href="http://www.linuxbase.org/spec/refspecs/ ... evels.html" target="_blank"><!--auto-->http://www.linuxbase.org/spec/refspecs/ ... <!--auto-->
RunLevel 4 steht gem. o.g. Spezifikation zur eigenen Definition -- eben "reserved for local use" -- zur Verfügung. Alle anderen RunLevel sollen sich bei allen Distributionen immer gleich verhalten -- weswegen u.a. SuSE die Zuordnung der RunLevel angepasst hat um LSB-Konform zu sein.
> ...von denen systemübergreifend eigentlich nur 0 und 6 gleich definiert sind.
Die Linux Standard Base definiert bis auf RunLevel 4 alle RunLevel. Wird RunLevel 4 nicht anderweitig durch den Administrator definiert, muss der RunLevel 4 sich genauso wie RunLevel 3 verhalten.
<a href="http://www.linuxbase.org/spec/refspecs/ ... evels.html" target="_blank"><!--auto-->http://www.linuxbase.org/spec/refspecs/ ... <!--auto-->
RunLevel 4 steht gem. o.g. Spezifikation zur eigenen Definition -- eben "reserved for local use" -- zur Verfügung. Alle anderen RunLevel sollen sich bei allen Distributionen immer gleich verhalten -- weswegen u.a. SuSE die Zuordnung der RunLevel angepasst hat um LSB-Konform zu sein.
Re: Problem mit rc.config
@Thomas Mitzkatz:
Aha, hat mich meine Erinnerung also nicht ganz getrogen. Muss mir die SuSE 7.3 wohl wirklich noch mal genauer ansehen, was sich da alles geändert hat...
@Descartes:
LSB hin oder her (für so löblich und wichtig ich die LSB auch halte): Niemand ist gezwungen, eine LSB-konforme Distri zu bauen - in manchen Fällen wie Knoppix oder tomsrtbt oder so wäre es auch sinnfrei. Weiterhin gibt es neben Linux eben auch andere Unices, mit denen ich beruflich Kontakt habe: Solaris (wo beispielsweise Runlevel 3 als Ergänzung zu Runlevel 2 verstanden wird), Reliant Unix (ehemals Sinix), noch ein wenig AIX (sehr BSD-like), ... Eine der wichtigsten Tätigkeiten bei neuen Maschinen ist und bleibt ein prüfender Blick in die /etc/inittab und rc-Skripte. Sonst hätte ich beispielweise auch nie herausgekriegt, dass bei Debian Woody in den Runleveln 0 und 6 auch S*-Skripte mit Argument "stop" aufgerufen werden. <img src="http://www.pl-forum.de/UltraBoard/Images/Sad.gif" border="0" align="middle">
Jochen
Aha, hat mich meine Erinnerung also nicht ganz getrogen. Muss mir die SuSE 7.3 wohl wirklich noch mal genauer ansehen, was sich da alles geändert hat...
@Descartes:
LSB hin oder her (für so löblich und wichtig ich die LSB auch halte): Niemand ist gezwungen, eine LSB-konforme Distri zu bauen - in manchen Fällen wie Knoppix oder tomsrtbt oder so wäre es auch sinnfrei. Weiterhin gibt es neben Linux eben auch andere Unices, mit denen ich beruflich Kontakt habe: Solaris (wo beispielsweise Runlevel 3 als Ergänzung zu Runlevel 2 verstanden wird), Reliant Unix (ehemals Sinix), noch ein wenig AIX (sehr BSD-like), ... Eine der wichtigsten Tätigkeiten bei neuen Maschinen ist und bleibt ein prüfender Blick in die /etc/inittab und rc-Skripte. Sonst hätte ich beispielweise auch nie herausgekriegt, dass bei Debian Woody in den Runleveln 0 und 6 auch S*-Skripte mit Argument "stop" aufgerufen werden. <img src="http://www.pl-forum.de/UltraBoard/Images/Sad.gif" border="0" align="middle">
Jochen