home *** CD-ROM | disk | FTP | other *** search
/ Chip 2000 May / Chip_2000-05_cd2.bin / docu / ascii / suselxde / slxde-17.txt < prev    next >
Text File  |  2000-02-29  |  51KB  |  965 lines

  1.                                                                                     Kapitel 17
  2.                    Das SuSE Linux-Bootkonzept
  3.  
  4. Das Booten und die Initialisierung eines UNIX-Systems bereiten selbst ei-
  5. nem erfahrenen System-Administrator ein leichtes Kribbeln. Dieses Kapitel
  6. gibt eine kurze Einfⁿhrung in das Bootkonzept von SuSE Linux. Dieses Kon-
  7. zept ist komplexer, aber auch wesentlich flexibler als das der meisten an-
  8. deren Linux-Systeme. Es ist auf dem Bootkonzept einer modernen System
  9. V-Workstation begrⁿndet, wie es zum Beispiel in [Fri93] beschrieben ist.
  10. Mit den lapidaren Worten "Uncompressing Linux..." ⁿbernimmt
  11. der so genannte Kernel das Regiment ⁿber die gesamte Hardware des Sys-
  12. tems. Er prⁿft und setzt die Konsole1, um danach die Einstellungen im
  13. BIOS zu lesen und die elementaren Schnittstellen des Mainboards zu initia-
  14. lisieren. In den nΣchsten Schritten  proben" die einzelnen Treiber ¡ die ja
  15. Bestandteil des Kernels sind ¡ die vorhandene Hardware, um sie gegebe-
  16. nenfalls zu initialisieren. Nach dem  Partitionscheck" und dem Mounten des
  17. Root-Dateisystems2 startet der Kernel das Programm /sbin/init, welches das
  18. eigentliche System mit seinen vielen Dienstprogrammen und deren Konfigu-
  19. ration hochfΣhrt3. Der Kernel verwaltet weiterhin das gesamte System, also
  20. Rechenzeit der einzelnen Programme und deren Hardware-Zugriffe.
  21.  
  22.  
  23. 17.1 Das init-Programm
  24.  
  25. Das Programm /sbin/init ist der fⁿr die korrekte Initialisierung des Systems
  26. zustΣndige Prozess; es ist sozusagen der  Vater aller Prozesse" im System.
  27. Unter allen Programmen nimmt init eine Sonderrolle ein: init wird direkt vom
  28. Kernel gestartet und ist immun gegen das Signal 9, mit dem normalerweise
  29. jeder Prozess  gekillt" werden kann. Alle weiteren Prozesse werden entweder
  30. von init selbst oder von einem seiner  Kindprozesse" gestartet.
  31. Konfiguriert wird init zentral ⁿber die Datei /etc/inittab; hier werden
  32. die so genannten  Runlevel" definiert (mehr dazu im nΣchsten Abschnitt)
  33. und es wird festgelegt, was in den einzelnen Levels geschehen soll. Ab-
  34. hΣngig von den EintrΣgen in /etc/inittab werden von init verschiede-
  35. ne Skripten gestartet, die aus Grⁿnden der ▄bersichtlichkeit im Verzeichnis
  36. /sbin/init.d zusammengefasst sind.
  37.  
  38. 1 Genauer die BIOS-Register der Graphikkarte und das Ausgabeformat auf den Bildschirm.
  39. 2 Anbinden der Root-Partition an das Verzeichnis /.
  40. 3 UNIX-Jargon :-)
  41.  
  42.                                                                                             439
  43.  
  44.  
  45.  
  46. 17. Das SuSE Linux-Bootkonzept
  47.  
  48.                Der gesamte Hochlauf des Systems ¡ und natⁿrlich auch das Herunterfahren
  49.                ¡ wird somit einzig und allein vom init-Prozess gesteuert; in diesem Sinne
  50.                lΣsst sich der Kernel quasi als  Hintergrundprozess" betrachten, dessen Auf-
  51.                gabe darin besteht, die gestarteten Prozesse zu verwalten, ihnen Rechenzeit
  52.                zuzuteilen und den Zugriff auf die Hardware zu erm÷glichen und zu kontrol-
  53.                lieren.
  54.  
  55.                17.2 Die Runlevel
  56.                Unter Linux existieren verschiedene so genannte Runlevel, die definieren,
  57.                welchen Zustand das System haben soll. Der Standard-Runlevel, in dem das
  58.                System beim Booten hochfΣhrt, ist in der Datei /etc/inittab durch den
  59.                Eintrag initdefault festgelegt. Fⁿr gew÷hnlich ist dies 2 oder 3 (siehe
  60.                Tabelle 17.1). Alternativ kann der gewⁿnschte Runlevel beim Booten (z. B.
  61.                am Boot-Prompt) angegeben werden; der Kernel gibt Parameter, die er nicht
  62.                selbst auswertet, unverΣndert an den init-Prozess weiter.
  63.                Um zu einem spΣteren Zeitpunkt in einen anderen Runlevel zu wechseln,
  64.                kann einfach init mit der Nummer des zugeh÷rigen Runlevels aufgerufen
  65.                werden; natⁿrlich kann das Wechseln des Runlevels nur vom  Systemad-
  66.                ministrator veranlasst werden.
  67.                Beispielsweise gelangt man durch das Kommando
  68.                      root@erde:/ > init S
  69.                in den so genannten single user mode, der der Pflege und Administration des
  70.                Systems dient. Nachdem der Systemadministrator seine Arbeit beendet hat,
  71.                kann er durch
  72.                      root@erde:/ > init 2
  73.                das System wieder in den normalen Runlevel hochfahren lassen, in dem alle
  74.                fⁿr den Betrieb erforderlichen Programme laufen und sich die einzelnen User
  75.                beim System anmelden k÷nnen.
  76.                Die Tabelle 17.1 gibt einen ▄berblick ⁿber die zur Verfⁿgung stehenden Run-
  77.                level. Runlevel 1 sollte auf einem System, dessen /usr-Partition via NFS
  78.                gemountet ist, nicht verwendet werden!
  79.  
  80.  
  81.                 Runlevel Bedeutung
  82.                 0           Halt
  83.                 S           Single User Mode
  84.                 1           Multi User ohne Netzwerk
  85.                 2           Multi User mit Netzwerk (Standard)
  86.                 3           Multi User mit Netzwerk und Xdm
  87.                 4           Frei
  88.                 5           Frei
  89.                 6           Reboot
  90.  
  91.                           Tabelle 17.1: Liste der gⁿltigen Runlevel unter Linux
  92.  
  93.                Daraus folgt insbesondere, dass Sie das System auch durch
  94.  
  95. 440
  96.  
  97.  
  98.  
  99.                                                                                17.3. Wechsel des Runlevels
  100.  
  101.     root@erde:/ > init 0
  102. anhalten, bzw. durch
  103.     root@erde:/ > init 6
  104. neu starten k÷nnen.
  105. Wenn Sie auf Ihrem Rechner das X Window System bereits korrekt konfigu-
  106. riert haben (Abschnitt 8.1 auf Seite 236) und m÷chten, dass sich die Benutzer
  107. direkt an der grafischen OberflΣche beim System anmelden, so k÷nnen Sie
  108. den Standard-Runlevel in /etc/inittab einfach auf 3 Σndern. Bevor Sie
  109. dies tun, sollten Sie erst einmal durch Eingabe von
  110.     root@erde:/ > init 3
  111. testen, ob das System so wie von Ihnen gewⁿnscht funktioniert.
  112.  
  113.  Eine zerst÷rte /etc/inittab kann dazu fⁿhren, dass das System nicht
  114.  mehr korrekt hochgefahren wird. Gehen Sie bei VerΣnderungen dieser
  115.  Datei deshalb mit ganz besonderer Sorgfalt vor. ¡ Als Notnagel k÷nnen
  116.  Sie in einem solchen Fall versuchen, am LILO-Prompt den Parameter
  117.  init=/bin/sh zu ⁿbergeben, um direkt in eine Shell zu booten (vgl.
  118.  auf Seite 118); also in dieser Art:
  119.  boot: linux init=/bin/sh
  120.  
  121. 17.3 Wechsel des Runlevels
  122. Generell passieren bei einem Wechsel des Runlevels folgende Dinge: Die so
  123. genannten Stopp-Skripten des gegenwΣrtigen Runlevels werden ausgefⁿhrt
  124. ¡ dabei werden typischerweise verschiedene, in diesem Level laufende Pro-
  125. gramme beendet ¡ und die Start-Skripte des neuen Runlevels werden ausge-
  126. fⁿhrt. WΣhrend eines solchen Vorgangs werden in den meisten FΣllen einige
  127. Programme gestartet.
  128. Um dies zu verdeutlichen, betrachten wir an einem Beispiel, den Wechsel von
  129. Runlevel 2 nach Runlevel 3:
  130.  
  131.  * Der Administrator (`root') teilt dem init-Prozess mit, dass der Runle-
  132.     vel gewechselt werden soll:
  133.          root@erde:/ > init 3
  134.  
  135.  * init konsultiert die Konfigurationsdatei /etc/inittab und stellt fest,
  136.     dass das Skript /sbin/init.d/rc mit dem neuen Runlevel als Para-
  137.     meter aufgerufen werden muss.
  138.  * Nun ruft rc alle Stopp-Skripten des gegenwΣrtigen Runlevels auf, fⁿr
  139.     die im neuen Runlevel kein Start-Skript existiert; in unserem Beispiel
  140.     sind dies alle Skripte, die sich im Verzeichnis /sbin/init.d/rc2.d
  141.     befinden (der alte Runlevel war 2) und mit einem `K'4 beginnen. Die
  142.     nach dem `K' folgende Zahl gewΣhrleistet, dass hierbei eine bestimmte
  143.     Reihenfolge eingehalten wird, da unter UmstΣnden manche Programme
  144.     von anderen abhΣngig sind.
  145. 4 Die Namen der Stopp-Skripten beginnen immer mit `K' (engl. kill), die der Start-Skripten mit
  146. `S' (engl. start).
  147.  
  148.                                                                                                       441
  149.  
  150.  
  151.  
  152. 17. Das SuSE Linux-Bootkonzept
  153.  
  154.                     * Als letztes werden die Start-Skripten des neuen Runlevels aufgerufen;
  155.                       diese liegen in unserem Beispiel unter /sbin/init.d/rc3.d und
  156.                       beginnen mit einem `S'. Auch hierbei wird eine bestimmte Reihenfolge
  157.                       eingehalten, die durch die dem `S' folgende Zahl festgelegt ist.
  158.                   Wenn Sie in denselben Runlevel wechseln, in dem Sie sich bereits befinden,
  159.                   liest init nur seine /etc/inittab ein, prⁿft sie auf VerΣnderungen und
  160.                   nimmt bei Bedarf die entsprechenden Ma▀nahmen vor; beispielsweise das
  161.                   Starten eines getty auf einer weiteren Schnittstelle.
  162.  
  163.                   17.4 Die Init-Skripten
  164.         Konzept Die Skripten unter /sbin/init.d unterteilen sich in zwei Kategorien:
  165.                     * Skripte, die direkt von init aufgerufen werden: Dies ist nur beim Boo-
  166.                       ten der Fall sowie bei einem sofortigen Herunterfahren des Systems (bei
  167.                                                                                             
  168.                       Stromausfall oder durch Drⁿcken der Tastenkombination  Strg  
  169.                                                                                         +  Alt  +
  170.                                
  171.                        Entf  durch den Anwender).
  172.                     * Skripte, die indirekt von init aufgerufen werden: Das geschieht bei ei-
  173.                       nem Wechsel des Runlevels; hier wird generell das ⁿbergeordnete Skript
  174.                       /sbin/init.d/rc ausgefⁿhrt, das dafⁿr sorgt, dass die relevanten Skripten in
  175.                       der korrekten Reihenfolge aufgerufen werden.
  176.                   Alle Skripten befinden sich unter /sbin/init.d. Die Skripten fⁿr das
  177.                   Wechseln des Runlevels befinden sich ebenfalls in diesem Verzeichnis, wer-
  178.                   den jedoch grundsΣtzlich als symbolischer Link aus einem der Unterverzeich-
  179.                   nisse /sbin/init.d/rc0.d bis /sbin/init.d/rc6.d aufgerufen.
  180.                   Dies dient der ▄bersichtlichkeit und vermeidet, dass Skripten mehrfach vor-
  181.                   handen sein mⁿssen, etwa weil sie in verschiedenen Runlevels verwendet
  182.                   werden sollen. Da jedes dieser Skripten sowohl als Start- wie auch als Stopp-
  183.                   Skript aufgerufen werden kann, mⁿssen sie alle die beiden m÷glichen Para-
  184.                   meter start und stop verstehen.
  185.          Beispiel Beim Verlassen des Runlevels 2 wird /sbin/init.d/rc2.d/K40network
  186.                   aufgerufen; /sbin/init.d/rc ruft das Skript /sbin/init.d/
  187.                   network mit dem Parameter stop auf. Beim Eintritt in Runlevel 3 wird
  188.                   letztlich das gleiche Skript gestartet, diesmal jedoch mit dem Parameter
  189.                   start.
  190.                   Die Links in den einzelnen Runlevel-spezifischen Unterverzeichnissen dienen
  191.                   somit also nur dazu, eine Zuordnung der einzelnen Skripten zu bestimmten
  192.                   Runlevels zu erm÷glichen.
  193.        Boot und Im folgenden finden Sie eine kurze Beschreibung der ersten Boot- und der
  194.        Shutdown letzten Shutdown-Skripten sowie des Steuerskripts:
  195.                     * boot
  196.                       Wird beim Start des Systems ausgefⁿhrt und direkt von init gestartet. Es
  197.                       ist unabhΣngig vom gewⁿnschten Default-Runlevel und wird nur genau
  198.                       ein einziges Mal ausgefⁿhrt. Hier wird der Kernel-Daemon gestartet, der
  199.                       das automatische Laden von Kernel-Modulen ⁿbernimmt. Es werden die
  200.                       Dateisysteme geprⁿft, etwaige ⁿberflⁿssige Dateien unter /var/lock
  201.                       gel÷scht und das Netzwerk fⁿr das Loopback-Device konfiguriert, sofern
  202.  
  203. 442
  204.  
  205.  
  206.  
  207.                                                                       17.4. Die Init-Skripten
  208.  
  209.    dies in /etc/rc.config eingetragen ist. Weiterhin wird die System-
  210.    zeit gesetzt und Plug-and-Play-Hardware wird mit den isapnp-Tools
  211.    konfiguriert (vgl. Abschnitt 10.2.1 auf Seite 290).
  212.    Tritt beim Prⁿfen und automatischen Reparieren der Dateisysteme ein
  213.    schwerer Fehler auf, hat der Systemadministrator nach Eingabe des Root-
  214.    Passwortes die M÷glichkeit, manuell eine L÷sung des Problems herbei-
  215.    zufⁿhren.
  216.    Diesem Skript ist des Weiteren das Verzeichnis /sbin/init.d/
  217.    boot.d zugeordnet; alle in diesem Verzeichnis gefundenen Skripte,
  218.    die mit `S' beginnen, werden automatisch beim Hochlauf des Systems
  219.    ausgefⁿhrt. Dies ist die richtige Stelle fⁿr eigene Erweiterungen, die nur
  220.    einmal beim Start aktiviert werden sollen.
  221.    Schlie▀lich wird als letztes das Skript boot.local ausgefⁿhrt.
  222.  * boot.local
  223.    Hier k÷nnen weitere Dinge eingetragen werden, die beim Start gesche-
  224.    hen sollen, bevor das System in einen der Runlevels eintritt; es kann
  225.    von der Funktion her quasi mit der vielleicht von DOS her gewohnten
  226.    AUTOEXEC.BAT verglichen werden.
  227.  * boot.setup
  228.    Grundlegende Einstellungen, die beim ▄bergang vom single user mode
  229.    in irgendeinen Runlevel vorgenommen werden mⁿssen.
  230.    Hier werden die Tastaturbelegung und die Konsolenkonfiguration gela-
  231.    den.
  232.  * halt
  233.    Dieses Skript wird nur beim Eintritt in den Runlevel 0 oder 6 ausgefⁿhrt.
  234.    Dabei wird es entweder unter dem Namen halt oder dem Namen reboot
  235.    aufgerufen. AbhΣngig davon, wie halt aufgerufen wurde, wird das System
  236.    neu gestartet oder ganz heruntergefahren.
  237.  * rc
  238.    Das ⁿbergeordnete Skript, das bei jedem Wechsel des Runlevels aufge-
  239.    rufen wird. Es fⁿhrt die Stopp-Skripten des gegenwΣrtigen Runlevels aus
  240.    und danach die Start-Skripten des neuen.
  241.  
  242. Eigene Skripten lassen sich anhand dieses Konzepts hinzufⁿgen; ein Ge- Eigene Skripte
  243. rⁿst ist in /sbin/init.d/skeleton vorbereitet. Um die Ausfⁿhrung
  244. eines eigenen Skripts ⁿber die /etc/rc.config zu steuern, sollte ei-
  245. ne <START_>-Variable dort hinterlegt und dann im eigenen Skript ab-
  246. gefragt werden; zusΣtzliche Parameter sollten nur im begrⁿndeten Einzel-
  247. fall in der /etc/rc.config eingetragen werden (vgl. z. B. das Skript
  248. /sbin/init.d/gpm).
  249. Nun sind Links von dem jeweiligen rc-Verzeichnis auf das neue Skript an-
  250. zulegen, damit das Skript ¡ wie oben beschrieben (Abschnitt 17.3 auf Sei-
  251. te 441) ¡ beim Wechsel des Runlevels ausgefⁿhrt wird; die Namengebung fⁿr
  252. die Links wird ebendort beleuchtet. Die technischen Details werden in der
  253. Manual-Page von init.d (man 7 init.d) dargestellt.
  254.  
  255.                                                                                          443
  256.  
  257.  
  258.  
  259. 17. Das SuSE Linux-Bootkonzept
  260.  
  261.                 Beim Erstellen eigener Skripten ist Vorsicht geboten ¡ ein fehlerhaf-
  262.                 tes Skript ist in der Lage, den Rechner  aufzuhΣngen"; vgl. oben Ab-
  263.                 schnitt 17.2 auf Seite 440, falls einmal nichts mehr gehen sollte ...
  264.  
  265.                17.5 /etc/rc.config und SuSEconfig
  266.                Praktisch die gesamte Konfiguration von SuSE Linux kann ⁿber die zentra-
  267.                le Konfigurationsdatei /etc/rc.config vorgenommen werden. In die-
  268.                ser Datei werden eine Reihe von Umgebungsvariablen gesetzt, die unter an-
  269.                derem von den Init-Skripten ausgewertet werden; jedes der Skripten unter
  270.                /sbin/init.d lΣdt ( sourcet") als erstes die Datei /etc/rc.config,
  271.                um die aktuell gⁿltigen Werte der einzelnen Variablen zu ⁿbernehmen.
  272.  
  273.                 Seit SuSE Linux 6.0 lagern Pakete mit umfangreichen Einstellungsm÷g-
  274.                 lichkeiten ihre Variablen in einzelne Dateien in das Verzeichnis /etc/
  275.                 rc.config.d aus; dies ist z. B. bei Paket sendmail oder Paket i4l
  276.                 (ISDN) der Fall.
  277.                 Im Folgenden wird jedoch vereinfachend zumeist nur von /etc/rc.
  278.                 config gesprochen, auch wenn mitunter eine ausgelagerte Datei vorhan-
  279.                 den ist!
  280.  
  281.                Darⁿber hinaus k÷nnen viele weitere Konfigurationsdateien des Systems
  282.                in AbhΣngigkeit von /etc/rc.config generiert werden; diese Aufga-
  283.                be wird von /sbin/SuSEconfig erledigt. So wird beispielsweise nach einer
  284.                ─nderung der Netzwerkkonfiguration die Datei /etc/resolv.conf neu
  285.                erzeugt, da sie abhΣngig von der Art der Konfiguration ist.
  286.                Wenn Sie ─nderungen an /etc/rc.config vornehmen, mⁿssen Sie nach-
  287.                folgend immer SuSEconfig aufrufen, um sicherzustellen, dass Ihre Einstel-
  288.                lungen auch an allen relevanten Stellen wirksam werden. VerΣndern Sie die
  289.                Konfiguration mit YaST, brauchen Sie sich darum nicht explizit zu kⁿmmern;
  290.                YaST startet automatisch SuSEconfig, wodurch die betroffenen Dateien auf
  291.                den aktuellen Stand gebracht werden.
  292.                Dieses Konzept erm÷glicht es, grundlegende ─nderungen an der Konfigura-
  293.                tion des Rechners vornehmen zu k÷nnen, ohne die Maschine neu booten zu
  294.                mⁿssen. Da manche Einstellungen sehr tiefgreifend sind, mⁿssen jedoch un-
  295.                ter UmstΣnden einige Programme neu gestartet werden, um die ─nderungen
  296.                wirksam werden zu lassen. Diese Vorgehensweise wurde zum Beispiel bei der
  297.                Konfiguration des Netzwerks beschrieben (siehe Abschnitt 5.2 auf Seite 154),
  298.                wo durch Verwendung der Kommandos
  299.                   erde: # /sbin/init.d/network stop
  300.                   erde: # /sbin/init.d/network start
  301.                erreicht wurde, dass die von der ─nderung betroffenen Programme neu ge-
  302.                startet wurden. Wie Sie sehen, k÷nnen die Init-Skripten auch von Hand auf-
  303.                gerufen werden.
  304.                Generell ist fⁿr das Konfigurieren des Systems folgender Weg zu empfehlen:
  305.  
  306.                 * Bringen Sie das System in den  single user mode":
  307.                       erde: # init S
  308.  
  309. 444
  310.  
  311.  
  312.  
  313.                       17.6. Die /etc/rc.config-Variablen ¡ Konfiguration des Systems
  314.  
  315.    Alternativ k÷nnen Sie auch den Runlevel 1 verwenden, bei dem Sie zu-
  316.    sΣtzlich die M÷glichkeit haben, sich auf mehreren Konsolen einzuloggen:
  317.        erde: # init 1
  318.  * Nehmen Sie die gewⁿnschten ─nderungen an der Konfigurationsdatei
  319.    /etc/rc.config vor. Dies kann mit einem beliebigen Editor ge-
  320.    schehen oder mit YaST unter dem Punkt `Konfigurationsdatei
  321.    verΣndern' (siehe Abschnitt 17.6).
  322.  * Fⁿhren Sie SuSEconfig aus, um die ─nderungen in die verschiedenen
  323.    weiteren Konfigurationsdateien eintragen zu lassen. Dies geschieht au-
  324.    tomatisch, wenn Sie die Datei /etc/rc.config mit YaST geΣndert
  325.    haben.
  326.  * Bringen Sie das System in den vorherigen Runlevel zurⁿck:
  327.        erde: # init 2
  328.  
  329. Diese Vorgehensweise ist natⁿrlich nur bei sehr weitreichenden ─nderungen
  330. an den Einstellungen des Systems erforderlich (z. B. Netzwerkkonfiguration);
  331. bei einfachen Aufgaben ist es nicht erforderlich, fⁿr die Administration in
  332. den  single user mode" zu wechseln; jedoch stellen Sie damit sicher, dass
  333. auch wirklich alle von der ─nderung betroffenen Programme neu gestartet
  334. werden.
  335.  
  336.  Um die automatische Konfiguration via SuSEconfig grundsΣtzlich abzu-
  337.  schalten, kann die Variable <ENABLE_SUSECONFIG> in der /etc/
  338.  rc.config gesetzt werden (vgl. aber die Warnung auf dieser Seite);
  339.  es ist auch m÷glich, mittels geeigneter rc.config-Variablen die Auto-
  340.  Konfiguration nur gezielt zu  disablen".
  341.  
  342. 17.6 Die /etc/rc.config-Variablen
  343. Im Folgenden werden die einzelnen Parameter des Systems und ihre Ein-
  344. stellungen kurz beschrieben. Wenn Sie /etc/rc.config, die Konfigura-
  345. tionsdatei, nicht mit YaST bearbeiten, achten Sie darauf, dass Sie einen leeren
  346. Parameter als zwei aufeinanderfolgende Anfⁿhrungszeichen schreiben (z. B.
  347. KEYTABLE="") und Parameter, die Leerzeichen enthalten, in Anfⁿhrungs-
  348. striche einschlie▀en. Bei Variablen, die nur aus einem Wort bestehen, sind die
  349. Anfⁿhrungszeichen nicht n÷tig.
  350. In der folgenden Beschreibung hat jeder Parameter einen Wert, um anhand
  351. eines Beispiels die m÷glichen Einstellungen zu verdeutlichen:
  352.  
  353. Grundeinstellungen
  354.  * ENABLE_SUSECONFIG=yes
  355.    Legt fest, ob SuSEconfig der Konfiguration vornehmen soll. Bitte auf kei-
  356.    nen Fall ausschalten, falls Sie Installationssupport in Anspruch nehmen
  357.    wollen ;-)
  358.  * MAIL_REPORTS_TO=tux
  359.    Festlegen, an wen SuSEconfig Reporte zur System-Administration per
  360.    E-Mail schicken soll.
  361.  
  362.                                                                                    445
  363.  
  364.  
  365.  
  366. 17. Das SuSE Linux-Bootkonzept
  367.  
  368.                 * GMT=-u
  369.                    Wenn Ihre Hardware-Uhr auf GMT (Greenwich Mean Time) eingestellt
  370.                    ist, setzen Sie diese Variable auf -u5, anderenfalls lassen Sie die Variable
  371.                    leer. Diese Einstellung ist relevant fⁿr das automatische Umstellen von
  372.                    Sommer- auf Winterzeit und umgekehrt.
  373.                 * TIMEZONE=CET
  374.                    Die Zeitzone, in der Sie wohnen bzw. den Rechner betreiben. Diese Ein-
  375.                    stellung ist auch wichtig fⁿr die automatische Umstellung von Sommer-
  376.                    auf Winterzeit und umgekehrt.
  377.                 * LANGUAGE="german"
  378.                    Wird von YaST gesetzt, wenn mit `Sprache festlegen' eine ─n-
  379.                    derung vorgenommen wird (vgl. Abschnitt 3.3.1 auf Seite 82). Dieser
  380.                    Wert gilt auch als Fallback, wenn LANG bzw. die LC_*-Variablen nicht
  381.                    gesetzt sind (s. u.); in einem solchen Fall wird der hier eingetragene Wert
  382.                    ⁿber die Datei /usr/share/locale/locale.alias aufgel÷st.
  383.                 * RC_LANG="de_DE"
  384.                    Setzt LANG fⁿr locale; hiermit kann fⁿr die lokalen Benutzer eine Vorga-
  385.                    be eingestellt wird. Dieser Wert kommt solange zum Tragen, wie keine
  386.                    speziellen RC_LC_*-Variablen benutzt werden.
  387.                    Die einschlΣgigen rc.config-Variablen lauten: RC_LC_ALL (hiermit
  388.                    kann man die LC_* wie auch LANG ⁿberschreiben!), RC_LC_MESSAGES,
  389.                    RC_LC_CTYPE, RC_LC_MONETARY, RC_LC_NUMERIC, RC_LC_TIME
  390.                    und RC_LC_COLLATE.
  391.                    Vgl. Manual-Page von locale (man 5 locale).
  392.                 * ROOT_USES_LANG="no"
  393.                    Sollen auch fⁿr `root' die locale-Einstellungen verwendet werden?
  394.                 * INIT_SCRIPT_USE_LANG="no"
  395.                    locale in init-Skripten verwenden? Besser nicht ;-)
  396.                 * ENABLE_SYSRQ="no"
  397.                    Interna des Kernels betrachten. Vor Anwendungen bitte unbedingt /usr/
  398.                    src/linux/Documentation/sysrq.txt lesen!
  399.  
  400.                Lokale Hardware initialisieren (Tastatur, Modem, Maus, PCMCIA etc.)
  401.                 * KEYTABLE=de-latin1-nodeadkeys
  402.                    Definiert die Tastaturbelegung.
  403.                 * KBD_NUMLOCK=no
  404.                                  
  405.                     NumLock  beim Booten nicht einschalten.
  406.                 * KBD_CAPSLOCK=no
  407.                                   
  408.                     CapsLock  beim Booten nicht einschalten.
  409.                 * KBD_TTY="tty1 tty2 tty3 tty4 tty5 tty6"
  410.                                                      
  411.                     NumLock  und  CapsLock  kann auf bestimmte TTYs beschrΣnkt werden;
  412.                    gequoted steht fⁿr alle TTYs.
  413.                 * KBD_RATE=30
  414.                    Bestimmt die Geschwindigkeit der automatischen Tastaturwiederholung.
  415.                    M÷gliche Eingaben sind von zweimal bis zu 30 mal pro Sekunde. Damit
  416.                5 Das -u ist ein Kⁿrzel fⁿr universal time.
  417.  
  418. 446
  419.  
  420.  
  421.  
  422.                   17.6. Die /etc/rc.config-Variablen ¡ Konfiguration des Systems
  423.  
  424.  diese Einstellung wirkt, muss gleichfalls die Dauer der Verz÷gerung (vgl.
  425.  KBD_DELAY) festgelegt werden!
  426. * KBD_DELAY=250
  427.  Hier k÷nnen Sie die Verz÷gerung einstellen, nach der die automatische
  428.  Wiederholfunktion einsetzt. Der Wert ist in Millisekunden, das Raster ist
  429.  jedoch nicht sehr genau. Sie mⁿssen auch KBD_RATE einstellen!
  430. * CONSOLE_FONT=mr.fnt
  431.  Der Font, der fⁿr die Konsole geladen wird. Nicht alle Fonts un-
  432.  terstⁿtzen die deutschen Umlaute! Mit YaST k÷nnen Sie bequem
  433.  die Fonts durchprobieren und denjenigen einstellen, der Ihnen am
  434.  besten gefΣllt. Zusatzeinstellungen sind: CONSOLE_SCREENMAP,
  435.  CONSOLE_UNICODEMAP und CONSOLE_MAGIC.
  436. * MODEM=/dev/ttyS1
  437.  Die Schnittstelle, an der das Modem angeschlossen ist. Von YaST bzw.
  438.  SuSEconfig wird ein Link von /dev/modem auf das angegebene Device
  439.  angelegt.
  440. * MOUSE=/dev/ttyS2
  441.  Die Schnittstelle, an der die Maus angeschlossen ist. Von YaST bzw.
  442.  SuSEconfig wird ein Link von /dev/mouse auf das angegebene Device
  443.  angelegt.
  444. * START_GPM=yes
  445.  Steuert, ob der Maus-Support fⁿr die Konsole gestartet wird; damit kann
  446.  zwischen verschiedenen virtuellen Konsolen mit der Maus Text ausge-
  447.  tauscht werden. Gpm ist problematisch im Zusammenhang mit manchen
  448.  BusmΣusen; haben Sie bei der Verwendung von X Probleme mit der
  449.  Maus, sollten Sie das Starten des gpm unterbinden. Oder verwenden Sie
  450.  gleich den xdm; denn in Runlevel 3 wird gpm grundsΣtzlich nicht gestar-
  451.  tet.
  452. * GPM_PARAM=" -t logi -m /dev/mouse"
  453.  Die Startparameter fⁿr den gpm; normalerweise von YaST versorgt.
  454. * PCMCIA=i82365
  455.  Dient der Festlegung des Chipsets; gⁿltige Werte sind i82365 oder
  456.  tcic. Wenn die Variable auf "" gesetzt wird, wird das PCMCIA-
  457.  Subsystem nicht gestartet. Feineinstellungen sind ⁿber die Variablen
  458.  PCMCIA_PCIC_OPTS und PCMCIA_CORE_OPTS m÷glich.
  459. * START_ISAPNP=yes
  460.  ISA PnP beim Booten initialisieren.
  461. * INITRD_MODULES="aic7xxx"
  462.  Die Namen der Module, die wΣhrend des Bootens des Kernels geladen
  463.  werden mⁿssen, um beispielsweise auf die Festplatte zugreifen zu k÷n-
  464.  nen. Sinnvolle und notwendige EintrΣge werden wΣhrend der Installation
  465.  bzw. des Updates vorgenommen; Vgl. Abschnitt 16.2 auf Seite 417.
  466. * START_KERNELD=yes
  467.  Diese Variable steuert, ob beim Booten des Kernels 2.0.xx automatisch
  468.  der Kernel-Daemon gestartet wird. Dieser Daemon sorgt dafⁿr, dass bei
  469.  Bedarf automatisch ben÷tigte Kernel-Module geladen werden. Beim jet-
  470.  zigen Standardkernel 2.2.xx wird kerneld nicht mehr ben÷tigt! ¡ Eine
  471.  
  472.                                                                               447
  473.  
  474.  
  475.  
  476. 17. Das SuSE Linux-Bootkonzept
  477.  
  478.                    kurze Einfⁿhrung in das Modulkonzept finden Sie in Abschnitt 13.2 auf
  479.                    Seite 355.
  480.  
  481.                Netz- und lokale Dienste starten und konfigurieren
  482.  
  483.                 * START_LOOPBACK=yes
  484.                    Legt fest, ob quasi ein Mini-Netzwerk eingerichtet werden soll, indem
  485.                    das so genannte Loopback-Device konfiguriert wird. Da viele Programme
  486.                    diese FunktionalitΣt ben÷tigen, sollte es unbedingt aktiviert werden.6
  487.                 * CHECK_ETC_HOSTS=yes
  488.                    Legt fest, ob SuSEconfig die /etc/hosts ⁿberprⁿfen und ggf. Σndern
  489.                    soll.
  490.                 * BEAUTIFY_ETC_HOSTS=no
  491.                    Falls /etc/hosts sortiert werden soll.
  492.                 * SETUPDUMMYDEV=no
  493.                    Legt fest, ob das Dummy-Device eingerichtet werden soll; nⁿtzlich bei
  494.                    non-permanenten Netzwerk-Verbindungen (z. B. SLIP oder PPP). Wenn
  495.                    Sie eine Ethernet-Karte haben, ist es bisweilen st÷rend.
  496.                 * CREATE_HOSTCONF=yes
  497.                    Legt fest, ob SuSEconfig die /etc/host.conf ⁿberprⁿfen und ggf.
  498.                    Σndern soll.
  499.                 * CREATE_RESOLVCONF=yes
  500.                    Legt fest, ob SuSEconfig die /etc/resolv.conf ⁿberprⁿfen und ggf.
  501.                    Σndern soll. Wenn auf yes gesetzt und eine der Variablen SEARCHLIST
  502.                    oder NAMESERVER leer ist, dann wird angenommen, dass kein DNS ge-
  503.                    wollt ist und /etc/resolv.conf gel÷scht werden kann. Wenn auf no
  504.                    gesetzt, wird /etc/resolv.conf unverΣndert gelassen.
  505.                 * NETCONFIG=_0
  506.                    Gibt an, wie viele Netzwerkkarten (oder sonstige Netz-Devices) der
  507.                    Rechner besitzt. Dies ist das Beispiel fⁿr eine Netzwerkkarte (sie werden
  508.                    mit 0 beginnend nummeriert); bei einer Maschine mit zwei Karten mⁿss-
  509.                    te der Eintrag NETCONFIG="_0 _1" lauten. Bei einem Rechner ohne
  510.                    Netzwerkkarte bleibt der Eintrag leer.
  511.                 * IPADDR_0=193.141.17.202
  512.                    Die IP-Adresse fⁿr die erste Netzwerkkarte.
  513.                 * NETDEV_0=eth0
  514.                    Der Name des ersten Netzwerk-Devices (ⁿblicherweise eine Ethernet-
  515.                    Netzwerkkarte, daher der Eintrag eth0. Weitere m÷gliche EintrΣge sind
  516.                    str1 oder plip1. Verfⁿgt der Rechner ⁿber mehr als eine Netzwerk-
  517.                    karte, werden analog die Variablen NETDEV_1 bis NETDEV_3 versorgt.
  518.                 * IFCONFIG_0="193.141.17.205 broadcast 193.141.17.255
  519.                    netmask 255.255.255.192"
  520.                    Das Konfigurationskommando fⁿr das erste Netzwerk-GerΣt. Die n÷tigen
  521.                    Einstellungen lassen sich komfortabel mit YaST vornehmen. Besitzen
  522.                    Sie mehr als eine Netzwerkkarte, tragen Sie hier entsprechend in die
  523.                    weiteren Variablen die Befehlszeilen ein.
  524.                6 Natⁿrlich muss auch der Kernel Netzwerkunterstⁿtzung bieten!
  525.  
  526. 448
  527.  
  528.  
  529.  
  530.                   17.6. Die /etc/rc.config-Variablen ¡ Konfiguration des Systems
  531.  
  532. * CLOSE_CONNECTIONS=false
  533.  Falls auf true gesetzt ist und der  Runlevel" 0 oder 6 ist (halt oder
  534.  reboot), sendet /sbin/init.d/route allen Prozessen, die eine
  535.   remote tcp"- oder  udp"-Verbindung offen haben, ein SIGTERM.
  536. * IP_DYNIP=no
  537.  Den  dynamic IP patch" beim Booten aktivieren; bei yes gibt das
  538.  Skript /sbin/init.d/boot diesen Patch durch einen Eintrag in das
  539.  /proc-Dateisystem frei.
  540. * IP_TCP_SYNCOOKIES=yes
  541.  Schutz vor  Syn Flooding" (engl. syn flood protection) aktivieren.
  542. * IP_FORWARD=no
  543.  Wenn der Rechner ⁿber zwei Netzwerk-Interfaces weiterleiten soll, ist
  544.  IP_FORWARD auf yes zu setzen; dies ist bei einen  Router" oder bei
  545.   Masquerading" in der Regel erwⁿnscht bzw. notwendig. Das Skript
  546.  /sbin/init.d/boot schaltet  IP-Forwarding" durch einen Eintrag
  547.  in das /proc-Dateisystem frei.
  548. * FQHOSTNAME=erde.kosmos.all
  549.  Der voll qualifizierte Name des Rechners;  voll qualifiziert" bedeutet
  550.  hierbei  vollstΣndig", d. h. der komplette Name, zusammengesetzt aus
  551.  Rechner- und Domainname.
  552. * SEARCHLIST=kosmos.all
  553.  Dieser Eintrag wird verwendet, um einen nicht voll qualifizierten Hostna-
  554.  men zu vervollstΣndigen. Wird beispielsweise der Rechnername venus
  555.  verwendet, wird geprⁿft, ob venus.kosmos.all ein gⁿltiger Rechner-
  556.  name ist. Diese Variable muss versorgt werden, wenn Sie DNS verwenden
  557.  m÷chten! Geben Sie hier zumindest Ihren Domain-Namen an. Sie k÷nnen
  558.  bis zu drei EintrΣge in der  searchlist" vornehmen, die durch Leerzeichen
  559.  voneinander getrennt sind.
  560. * NAMESERVER=192.168.0.1
  561.  Die Adresse des Name-Servers, der befragt werden soll, wenn ein Rech-
  562.  nername in eine IP-Adresse umgewandelt werden muss. Sie k÷nnen bis
  563.  zu drei Nameserver angeben, deren Adressen durch Leerzeichen vonein-
  564.  ander getrennt sind.
  565.  Wenn Sie einen Nameserver verwenden m÷chten, mⁿssen Sie auch die
  566.  Variable SEARCHLIST versorgen!
  567. * ORGANIZATION="Duesentrieb, Entenhausen"
  568.  Der hier eingetragene Text erscheint in jedem News-Posting, das von dem
  569.  betreffenden Rechner abgeschickt wird.
  570. * NNTPSERVER=sonne.kosmos.all
  571.  Die Adresse des News-Servers; beziehen Sie Ihre News per UUCP und
  572.  werden sie lokal gespeichert, sollten Sie hier localhost eintragen.
  573. * IRCSERVER=sonne.kosmos.all
  574.  Hier k÷nnen Sie mehrere IRC-Server (Internet Relay Chat) angeben. Die
  575.  Namen der einzelnen Server werden durch Leerzeichen voneinander ge-
  576.  trennt.
  577. * START_INETD=yes
  578.  Aktiviert den inetd-Superdaemon. Dieser Daemon reagiert auf Verbin-
  579.  dungswⁿnsche anderer Rechner und startet abhΣngig vom gewΣhlten Port
  580.  
  581.                                                                               449
  582.  
  583.  
  584.  
  585. 17. Das SuSE Linux-Bootkonzept
  586.  
  587.                   den zugeh÷rigen Dienst. Sie ben÷tigen dies, wenn Sie sich per telnet oder
  588.                   rlogin auf den Rechner einloggen m÷chten. ¡ Setzen Sie START_INETD
  589.                   jedoch auf no, wenn der xinetd zum Einsatz kommen soll (vgl. auf dieser
  590.                   Seite).
  591.                 * START_XINETD=no
  592.                   Aktiviert den xinetd-Superdaemon, den erweiterten inetd (vgl. auf der
  593.                   vorherigen Seite). Wenn dieser  extended Internet services daemon" be-
  594.                   nutzt werden soll, muss START_INETD auf no gesetzt werden.
  595.                 * SENDMAIL_xxxx=
  596.                   Die sendmail-Variablen sind in Abschnitt 6.8 auf Seite 200 dokumentiert.
  597.                 * START_POSTFIX=no
  598.                   Aktiviert den Mail-Server postfix. Zugeh÷rig sind die Variablen
  599.                   POSTFIX_CREATECF, POSTFIX_RELAYHOST,
  600.                   POSTFIX_MASQUERADE_DOMAIN und POSTFIX_LOCALDOMAINS.
  601.                 * SMTP=no
  602.                   Legt fest, ob ein Sendmail-Daemon laufen soll. Wenn Sie Ihre E-Mail
  603.                   ausschlie▀lich via UUCP empfangen, brauchen Sie dies nicht, vorausge-
  604.                   setzt, Sie rufen nach jedem Pollen sendmail -q auf (das von UUCP
  605.                   aufgerufene rmail stellt die Mail nur in die Empfangswarteschlange,
  606.                   stellt sie jedoch nicht zu). In einem Netz, in dem die Mail-Spool-Ver-
  607.                   zeichnisse via NFS gemountet sind und der einzelne Rechner somit nur
  608.                   abgehende Mail hat, kann diese Variable ebenfalls auf no stehen; das glei-
  609.                   che gilt bei Verwendung eines  Relay Hosts".
  610.                 * START_PORTMAP=no
  611.                   Legt fest, ob der Portmapper gestartet werden soll. Sie ben÷tigen den
  612.                   Portmapper, wenn der Rechner als NFS-Server dienen soll (siehe Ab-
  613.                   schnitt 5.5 auf Seite 163); ohne den Portmapper k÷nnen die Daemonen
  614.                   rpc.mountd und rpc.nfsd nicht laufen; deshalb wird der Portmapper auch
  615.                   dann gestartet, wenn diese Variable auf no steht, aber NFS_SERVER ein-
  616.                   geschaltet ist! Auch fⁿr die Verwendung von NIS (siehe Abschnitt 5.4 auf
  617.                   Seite 162) ist der Portmapper erforderlich!
  618.                 * NFS_SERVER=no
  619.                   Wenn der Rechner als NFS-Server dienen soll, ist diese Variable auf
  620.                   yes zu setzen. Dadurch wird bewirkt, dass die Daemonen rpc.nfsd und
  621.                   rpc.mountd gestartet werden. Fⁿr eine weitergehende Beschreibung ei-
  622.                   nes NFS-Servers (zum Beispiel die Festlegung der zu exportierenden Ver-
  623.                   zeichnisse) lesen Sie bitte Abschnitt 5.5 auf Seite 163.
  624.                 * REEXPORT_NFS=no
  625.                   Setzen Sie die Variable auf yes, um gemountete NFS-Verzeichnisse oder
  626.                   NetWare-Volumes zu re-exportieren.
  627.                 * NFS_SERVER_UGID=yes
  628.                   Wenn der Daemon (rcp.ugidd) fⁿr die Umsetzung von User- und Group-
  629.                   ID gestartet werden soll; dieser Dienst muss auf dem jeweiligen NFS-
  630.                   Client gestartet werden.
  631.                 * USE_KERNEL_NFSD="no"
  632.                   Wenn das Paket knfsd installiert ist, kann der kernel-basierte NFS-
  633.                   Daemon benutzt werden. Mit diesem NFS-Daemon ist Locking m÷glich.
  634.                   Vgl. die dazugeh÷rige Variable USE_KERNEL_NFSD_NUMBER.
  635.  
  636. 450
  637.  
  638.  
  639.  
  640.                     17.6. Die /etc/rc.config-Variablen ¡ Konfiguration des Systems
  641.  
  642. * START_AMD=no
  643.  Automounter starten; wenn keine zwingenden Grⁿnde vorliegen, sollte
  644.  man jetzt das autofs-Kernelmodul bevorzugen (vgl. unten auf dieser Sei-
  645.  te).
  646. * START_AUTOFS=no
  647.  Mit diesem Daemon ist es m÷glich, sowohl ⁿber NFS erreichbare Ver-
  648.  zeichnisse als auch lokale Verzeichnisse (CD-ROM-Laufwerke, Disketten
  649.  etc.) automatisch zu mounten. Das Paket autofs, Serie n muss instal-
  650.  liert und konfiguriert sein.
  651. * START_RWHOD=no
  652.  Legt fest, ob der rwhod gestartet werden soll. Achtung, der rwhod sendet
  653.  regelmΣ▀ig  Broadcasts"; das kann dazu fⁿhren, dass bei On-Demand-
  654.  Verbindungen (ISDN und/oder diald) diese aufgebaut werden ¡ und Kos-
  655.  ten verursachen k÷nnen!
  656. * START_ROUTED=no
  657.  Der Route-Daemon ist nur notwendig fⁿr dynamisches Routen (vgl.
  658.  Manual-Page von routed (man routed)). Achtung, dieser Dienst
  659.  verursacht alle 30 Sekunden Netzverkehr; wenn der Rechner mit dem
  660.  Internet ⁿber Dialup verbunden ist (z. B. ISDN), dann macht es keinen
  661.  Sinn, diese Variable auf yes zu setzen.
  662. * START_NSCD=yes
  663.  NSCD (engl. Name Service Caching Daemon) beim Booten initialisieren.
  664. * START_NAMED=no
  665.  Legt fest, ob der Name-Daemon gestartet werden soll.
  666. * CREATE_YP_CONF=yes
  667.  Legt fest, ob SuSEconfig abhΣngig von den beiden folgenden EintrΣgen
  668.  automatisch die n÷tigen Dateien fⁿr die Verwendung von YP (siehe Ab-
  669.  schnitt 5.4 auf Seite 162) erzeugen soll. Weiterhin werden die Dateien
  670.  /etc/passwd und /etc/group angepasst, soweit noch erforderlich.
  671. * YP_DOMAINNAME=kosmos.all
  672.  Der YP-Domainname des Rechners. Fⁿr detailliertere Informationen le-
  673.  sen Sie bitte Abschnitt 5.4 auf Seite 162.
  674. * YP_SERVER=sonne.kosmos.all
  675.  Der Name des NIS-Servers.
  676. * USE_NIS_FOR_RESOLVING=no
  677.  NIS fⁿr die Aufl÷sung der Rechnernamen verwenden.
  678. * START_CIPED=no
  679.  CIPE-Daemon fⁿr einen IPIP-Tunnel starten.
  680. * START_DHCPD=no
  681.  Server fⁿr DHCP (engl. Dynamic Host Configuration Protocol) starten.
  682.  Dazu geh÷ren die Variablen DHCPD_INTERFACE, START_DHCRELAY
  683.  und DHCRELAY_SERVERS.
  684. * START_LDAP=no
  685.  LDAP-Server starten.
  686. * START_RADIUSD=yes
  687.  Radius-Accounting und Authentication Service starten. Dieser Service
  688.  
  689.                                                                               451
  690.  
  691.  
  692.  
  693. 17. Das SuSE Linux-Bootkonzept
  694.  
  695.                   wird z. B. von bestimmten Dialin-Servern benutzt, um die Benutzer-
  696.                   Authentifizierung durchzufⁿhren; vgl. die Dokumentation unter /usr/
  697.                   doc/packages/radiusd.
  698.                 * START_LPD=yes
  699.                   lpd (engl. Line Printer Daemon) starten; fⁿr das Drucken in der Regel
  700.                   notwendig.
  701.                 * START_NNTPD=yes
  702.                   nntpd starten; notwendig, wenn Zugriff ⁿber NNTP auf die lokalen News
  703.                   gewΣhrleistet werden soll.
  704.                 * START_INN=no
  705.                   Newsserver INN starten.
  706.                 * START_ATD=yes
  707.                   Legt fest, ob der AT-Daemon gestartet werden soll. Dieser Daemon ge-
  708.                   stattet es, bestimmte Jobs zu einem vorgegebenen Zeitpunkt ausfⁿhren zu
  709.                   lassen. Im Gegensatz zum Cron-Daemon geht es um das einmalige Aus-
  710.                   fⁿhren einer bestimmten Aktion.
  711.                 * START_HTTPD=yes
  712.                   Gibt an, ob der Apache http-Daemon gestartet werden soll.
  713.                 * START_HTTPSD=yes
  714.                   Gibt an, ob der Apache httpsd ( sicherer" Webserver) mit SSL und PHP3
  715.                   gestartet werden soll.
  716.                 * START_SQUID=no
  717.                   Gibt an, ob Squid gestartet werden soll.
  718.                 * DOC_HOST=""
  719.                   Wenn ein zentraler Dokumentations-Server benutzt werden soll, der das
  720.                   SuSE-Hilfesystem vorhΣlt, dann sollte hier der Name des Servers einge-
  721.                   tragen werden; z. B. "sonne.kosmos.all ".
  722.                 * DOC_SERVER=no
  723.                   Auf dem Dokumentations-Server soll diese Variable auf yes gesetzt wer-
  724.                   den. Dann wird zum einen nach den Angaben in DOC_ALLOW (s. u.) der
  725.                   Zugriff auf http-rman freigegeben und zum anderen werden die Index-
  726.                   Dateien fⁿr den HTTP-Server entsprechend umgesetzt; sie zeigen dann
  727.                   statt auf http://localhost auf http://`hostname-f`.
  728.                 * DOC_ALLOW="LOCAL"
  729.                   Liste der Rechner/Domains als Pattern fⁿr /etc/hosts.allow, denen
  730.                   der Zugriff auf den Dokumentations-Server erlaubt wird. Diese Variable
  731.                   wird nur ausgewertet, wenn DOC_SERVER auf yes gesetzt ist. Hier kann
  732.                   auch eine Subdomain (z. B. mit ".kosmos.all ") eingetragen wer-
  733.                   den.
  734.                 * HTTP_PROXY=""
  735.                   Einige Programme (z. B. lynx, arena oder wget) k÷nnen Proxy-Server
  736.                   benutzen, wenn diese Umgebungsvariable entsprechend gesetzt ist;
  737.                   SuSEconfig kann diese in /etc/SuSEconfig/* setzen (vgl. in
  738.                   der SDB http://sdb.suse.de/sdb/de/html/lynx_proxy.
  739.                   html). Beispiel:
  740.                   "http://proxy.provider.de:3128/".
  741.                 * FTP_PROXY=""
  742.                   Proxy fⁿr FTP. Beispiel: "http://proxy.provider.de:3128/".
  743.  
  744. 452
  745.  
  746.  
  747.  
  748.                       17.6. Die /etc/rc.config-Variablen ¡ Konfiguration des Systems
  749.  
  750. * GOPHER_PROXY=""
  751.  Proxy fⁿr Gopher. Beispiel: "http://proxy.provider.de:3128/".
  752. * NO_PROXY=""
  753.  Mittels dieser Variable lassen sich (Sub-)Domains vom Proxy ausschlie-
  754.  ▀en. Beispiel: "www.me.de, do.main, localhost".
  755. * START_HYLAFAX=no
  756.  Startet Hylafax. Bevor diese Variable auf yes gesetzt wird, muss faxsetup
  757.  ausgefⁿhrt werden.
  758. * START_SMB=no
  759.  Samba-Server starten; Windows Datei- und Druckerserver.
  760. * START_MARSNWE=no
  761.  Gibt an, ob die Novell-Server-Emulation gestartet werden soll.
  762. * START_SSHD=yes
  763.  Den  Secure Shell Daemon" starten; stellen Sie vor dem Starten sicher,
  764.  dass ein  host key" existiert ¡ vgl. dazu die Dokumentation unter /usr/
  765.  doc/packages/ssh sowie die Manpages.
  766. * START_XNTPD=yes
  767.  Startet den  Network Time Protocol (NTP) Daemon" aus dem Paket
  768.  xntp; die Konfiguration selbst geschieht ⁿber die Datei /etc/ntp.
  769.  conf.
  770.  Funkuhren haben Adressen in der Form 127.127.T.U; dabei steht T
  771.  fⁿr den Typ der Uhr und U ist die  unit number" im Bereich von 0 bis 3. ¡
  772.  Die meisten dieser Uhren ben÷tigen eine serielle Schnittstelle oder einen
  773.  speziellen Bus. Die dafⁿr vorgesehene GerΣtedatei ( Device) wird nor-
  774.  malerweise durch einen symbolischen Link /dev/device-U auf die
  775.  tatsΣchliche Hardware angegeben; dabei hat U mit der zuvor erwΣhnten
  776.   unit number" ⁿbereinzustimmen. Vgl. auch /usr/doc/packages/
  777.  xntp/html/refclock.htm.
  778.  Beispiel: Wer eine Funkuhr hat, die an eine serielle Schnittstelle ange-
  779.  schlossen ist, der ben÷tigt auch einen entsprechenden Symlink. Wie der
  780.  zu hei▀en hat, erfΣhrt man ⁿber refclock.htm. ¡ Fⁿr die ⁿblichen
  781.  DCF77-EmpfΣnger, ist der  PARSE"-Treiber zustΣndig:
  782.  ## Type 8 Generic Reference Driver (PARSE)
  783.  ## Address:               127.127.8.u
  784.  ## Serial Port: /dev/refclock-u
  785.  Wer also ⁿber einen ntp.conf-Eintrag den server 127.127.8.0
  786.  wΣhlt, der braucht auch einen Symlink von /dev/refclock-0 auf
  787.  ttySx ¡ dabei steht x fⁿr die Schnittstelle, an die die Funkuhr ange-
  788.  schlossen ist.
  789. * XNTPD_INITIAL_NTPDATE=""
  790.  Liste der NTP-Server, von denen die Zeit geholt werden kann, bevor der
  791.  lokale Server gestartet wird; z. B. "sonne.kosmos.all ". Falls mehre-
  792.  re Server eingetragen werden, sind diese durch ein Leerzeichen vonein-
  793.  ander zu trennen.
  794. * DISPLAYMANAGER=""
  795.  Beschreibt, wie das Login erfolgen soll, ob in der Textkonsole oder gra-
  796.  
  797.                                                                                 453
  798.  
  799.  
  800.  
  801. 17. Das SuSE Linux-Bootkonzept
  802.  
  803.                   fisch unter dem X Window System. M÷gliche Werte sind xdm (Standard-
  804.                   Displaymanager des X Window System), kdm (Displaymanager von
  805.                   KDE) oder ""; im letzten Fall wird angenommen, dass kein grafisches
  806.                   Login gewⁿnscht ist und der Rechner wird im Runlevel 2 (Textkonsole)
  807.                   gestartet. Dies ist die Voreinstellung.
  808.                 * KDM_SHUTDOWN=root
  809.                   Gibt an, welche Benutzer den Rechner ⁿber kdm herunterfahren dⁿrfen
  810.                   (Reboot oder Shutdown). M÷gliche Werte sind root (`root' muss sich
  811.                   mit Passwort identifizieren), all (alle Benutzer), none (niemand darf
  812.                   den Rechner ⁿber kdm herunterfahren) und local (der Rechner darf nur
  813.                   heruntergefahren werden, wenn der Benutzer sich lokal und nicht ⁿber
  814.                   das Netz einloggt). Wenn die Variable auf "" steht, wird der Wert root
  815.                   als Voreinstellung genommen.
  816.                 * CONSOLE_SHUTDOWN=reboot
  817.                   Gibt an, wie der init-Prozess auf das Drⁿcken der Tastenkombination
  818.                                           
  819.                    Strg  
  820.                         +  Alt  +  Entf  reagiert. M÷gliche Werte sind reboot (der Rech-
  821.                   ner fΣhrt herunter und bootet erneut), halt (der Rechner fΣhrt herunter
  822.                   und bleibt dann stehen) und ignore (das Drⁿcken der Tastenkombinati-
  823.                   on hat keinen Effekt). Voreinstellung ist reboot.
  824.                 * START_AXNET=no
  825.                   Server fⁿr Applixware.
  826.                 * START_MYSQL=no
  827.                   Server fⁿr MySQL.
  828.                 * START_ADABAS=no
  829.                   Server fⁿr Adabas. Die folgenden Variablen geh÷ren zu Adabas:
  830.                   DBROOT, DBNAME, DBUSER und DBCONTROL ¡ vgl. die entsprechenden
  831.                   Kommentare in der rc.config.
  832.                 * START_DB2=no
  833.                   Server fⁿr DB2.
  834.                 * START_ARKEIA=no
  835.                   Arkeia-Backupserver starten.
  836.                 * START_ARGUS=no
  837.                   Server fⁿr Argus (Netzwerkmonitor).
  838.                 * ARGUS_INTERFACE=eth0
  839.                   Das von Argus zu ⁿberwachende Interface.
  840.                 * ARGUS_LOGFILE="/var/log/argus.log"
  841.                   Die Argus-Logdatei. Diese Datei kann sehr gro▀ werden!
  842.                 * CRON=yes
  843.                   Steuert den Start und das Beenden des Cron-Daemons. Dieser Daemon
  844.                   startet zu vorgegebenen Zeiten automatisch gewisse Programme. Der
  845.                   Cron wird nur in den Runlevels 2 und 3 gestartet! Seine Aktivierung ist
  846.                   auf Rechnern, die rund um die Uhr laufen, dringend zu empfehlen. Eine
  847.                   Alternative bzw. ErgΣnzung ist der AT-Daemon; vgl. auf Seite 452).
  848.  
  849.                 Es gibt eine Reihe von Optionen, die es erfordern, dass regelmΣ▀ig be-
  850.                 stimmte Programme gestartet werden. Daher sollte auf jedem System der
  851.                 Cron-Daemon aktiviert werden.
  852.  
  853. 454
  854.  
  855.  
  856.  
  857.                        17.6. Die /etc/rc.config-Variablen ¡ Konfiguration des Systems
  858.  
  859. Sicherheit und lokale Wartungsdienste
  860.  * RUN_UPDATEDB=yes
  861.    Legt fest, ob einmal pro Nacht die Datenbank fⁿr locate (locate)
  862.    aktualisiert werden soll; locate dient dem schnellen Auffinden von Da-
  863.    teien im System. Ein Fein-Tuning des updatedb kann ⁿber die Variablen
  864.    RUN_UPDATEDB_AS, UPDATEDB_NETPATHS, UPDATEDB_NETUSER
  865.    und UPDATEDB_PRUNEPATHS erreicht werden (vgl. die Kommentare
  866.    in der rc.config). ¡ Diese Aktualisierung wird m÷glicherweise kurz
  867.    nach dem Booten durchgefⁿhrt, wenn Sie den Rechner nicht ununterbro-
  868.    chen laufen haben; vgl. Abschnitt 16.6.1 auf Seite 435.
  869.  * REINIT_MANDB=yes
  870.    Wenn die Manpage-Datenbank von cron.daily tΣglich erneuert werden
  871.    soll.
  872.  * CREATE_INFO_DIR=yes
  873.    Legt fest, ob automatisch die Datei /usr/info/dir erstellt werden
  874.    soll, die gleichsam einen Index fⁿr alle vorhandenen Info-Seiten bildet.
  875.    Dies ist etwa nach der Installation eines Paketes sinnvoll, das eine Info-
  876.    Seite enthΣlt. Beachten Sie, dass fⁿr die Verwendung dieses Features perl
  877.    installiert sein muss!
  878.  * CHECK_PERMISSIONS=set
  879.    Legt fest, ob die Datei-Rechte anhand der Datei /etc/permissions
  880.    ⁿberprⁿft werden sollen. Mit set werden falsche Einstellungen berich-
  881.    tigt, mit warn werden nur  Warnungen" hergestellt, no wird dieses Fea-
  882.    ture abgestellt.
  883.  * PERMISSION_SECURITY="easy local"
  884.    In /etc/permissions.paranoid, /etc/permissions.secure
  885.    und /etc/permissions.easy sind drei Sicherheitsstufen vorberei-
  886.    tet. Tragen Sie hier easy, secure oder /etc/permissions.paranoid;
  887.    eigene Einstellungen k÷nnen Sie z. B. in /etc/permissions.
  888.    local vornehmen und dann die Erweiterung local als Wert hinzu-
  889.    fⁿgen.
  890.  * RPMDB_BACKUP_DIR=/var/adm/backup/rpmdb
  891.    Legt fest, wohin cron.daily Backups der RPM-Datenbank schreiben soll;
  892.    wenn keine Backups gewⁿnscht werden, diese Variable auf "" setzen.
  893.  * MAX_RPMDB_BACKUPS=5
  894.    Legt die Anzahl der Backups der RPM-Datenbank fest.
  895.  * DELETE_OLD_CORE=yes
  896.    Corefiles sind Abbilder der Speicherbelegung von Programmen, die we-
  897.    gen einer Speicherschutzverletzung abgebrochen wurden; diese Abbilder
  898.    dienen der Fehlersuche. Hier k÷nnen Sie einstellen, dass regelmΣ▀ig nach
  899.    etwaigen alten Corefiles gesucht wird und diese automatisch gel÷scht
  900.    werden.
  901.  * MAX_DAYS_FOR_CORE=7
  902.    Legt fest, wie alt Corefiles maximal werden dⁿrfen (in Tagen), bevor sie
  903.    automatisch gel÷scht werden.
  904.  * MAX_DAYS_FOR_LOG_FILES=365
  905.    Wenn eine Log-Datei (vornehmlich unter /var/log) eine bestimmte
  906.  
  907.                                                                                  455
  908.  
  909.  
  910.  
  911. 17. Das SuSE Linux-Bootkonzept
  912.  
  913.                   Gr÷▀e erreicht hat, wird sie automatisch komprimiert und archiviert und
  914.                   eine entsprechende Mail unterrichtet root davon. Mit diesem Parame-
  915.                   ter k÷nnen Sie festlegen, wie lange derartige Sicherungsdateien behal-
  916.                   ten werden, bevor sie automatisch gel÷scht werden. Setzen Sie den Wert
  917.                   auf 0, findet keinerlei Komprimierung und Archivierung statt; die Datei-
  918.                   en werden dann unbegrenzt fortgeschrieben und k÷nnen eine beachtliche
  919.                   Gr÷▀e erreichen! Die komprimierten Sicherungsdateien k÷nnen Sie sich
  920.                   jederzeit mit less ansehen.
  921.                 * MAX_DAYS_IN_TMP=30
  922.                   Es wird tΣglich geprⁿft, ob es in den tmp-Verzeichnissen Dateien gibt, auf
  923.                   die lΣnger als angegeben nicht zugegriffen wurde (in Tagen). Wurde auf
  924.                   eine Datei in einem dieser Verzeichnisse lΣnger nicht mehr zugegriffen,
  925.                   wird sie automatisch gel÷scht.
  926.                 * TMP_DIRS_TO_CLEAR="/tmp /var/tmp"
  927.                   Angabe derjenigen Verzeichnisse, die tΣglich automatisch nach alten Da-
  928.                   teien durchsucht werden sollen.
  929.                 * OWNER_TO_KEEP_IN_TMP="root bs"
  930.                   Die Dateien der hier angegebenen Systembenutzer sollen auch dann nicht
  931.                   aus den tmp-Verzeichnissen gel÷scht werden, wenn auf sie lΣnger als
  932.                   angegeben nicht mehr zugegriffen wurde.
  933.                 * CWD_IN_ROOT_PATH=no
  934.                   Aktuelles Verzeichnis (engl. current working directory) im Pfad von
  935.                   `root'.
  936.                 * ROOT_LOGIN_REMOTE=no
  937.                   Wenn das Login fⁿr `root' per telnet oder rlogin erlaubt werden soll,
  938.                   ist diese Variable auf yes zu setzen. Zu Sicherheitsaspekten dieser Varia-
  939.                   blen vgl. auf Seite 469.
  940.                 * SUSEWM_UPDATE=yes
  941.                   Legt fest, ob SuSEconfig die systemweiten Konfigurationsdateien fⁿr die
  942.                   Windowmanager in AbhΣngigkeit von den installierten Software-Paketen
  943.                   anpassen soll. Feintuning ist m÷glich ⁿber die Variablen SUSEWM_WM,
  944.                   SUSEWM_MWM, SUSEWM_XPM, SUSEWM_ADD und SUSEWM_COMPAT.
  945.  
  946.  
  947.  
  948.  
  949.  
  950.  
  951.  
  952.  
  953.  
  954.  
  955.  
  956.  
  957.  
  958.  
  959.  
  960.  
  961. 456
  962.  
  963.  
  964.  
  965.