Problem mit rc.config

Post Reply
Message
Author
pl
Posts: 2
Joined: 09. Jan 2002 12:06

Problem mit rc.config

#1 Post by pl »

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

Andre

Re: Problem mit rc.config

#2 Post by Andre »

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

Jochen

Re: Problem mit rc.config

#3 Post by Jochen »

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

gewitter
Posts: 1354
Joined: 09. Apr 2001 9:03

Re: Problem mit rc.config

#4 Post by gewitter »

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

Jochen

Re: Problem mit rc.config

#5 Post by Jochen »

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

Andre

Re: Problem mit rc.config

#6 Post by Andre »

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

pl
Posts: 2
Joined: 09. Jan 2002 12:06

Re: Problem mit rc.config

#7 Post by pl »

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

Jochen

Re: Problem mit rc.config

#8 Post by Jochen »

@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

gewitter
Posts: 1354
Joined: 09. Apr 2001 9:03

Re: Problem mit rc.config

#9 Post by gewitter »

seit 7.1 gibt's die grafik auf runlevel 5

Descartes

Re: Problem mit rc.config

#10 Post by Descartes »

@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.

Jochen

Re: Problem mit rc.config

#11 Post by Jochen »

@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

Post Reply