[linux-l] [Ubuntu] Textkonsole, Boot- &Login

Frank Reker frank at reker.net
Mi Okt 25 00:34:41 CEST 2006


Am Tue 24. Oct 2006 22:27 +0000 schrieb Norman Steinbach:

>Mein Rechner hat 800MHz, das nur am Rande. Aber auf einem 2000er ist es

man - das mit den kilohertz war ein scherz!


>grafischen oberfläche...naja, geht so...ich benutze trotzdem noch lieber
>die textkonsole.

dito! ich verwende guis nur wenn's notwendig ist, ansonsten mach ich
alles auf text-konsole.


>Frank Reker wrote:
>> tip: diese prozesse vielleicht mit sys anstatt syswait in
>> /etc/inittab starten.
>Dafür reicht mein Wissen leider nicht aus, aber in /etc/inittab kommt
>die Zeichenkette "wait" ohne sys davor, manchmal mit anderen worten
>davor (z.b. "powerwait"). was muss anstatt wait da stehen, z.b. in den
>Zeilen wo die start-/killscripte der einzelnen runlevels definiert sind
>mit "l2:0:wait:/etc/init.d/rc 2" ?

man inittab
ok - ganz kurz:
in /etc/inittab stehen eine reihe von zeilen der syntax:
<id>:<runlevel>:<event>:<befehl+args>
<id> ist eine ein oder zwei stellige alphanumerische id (einige
inits haben probleme mit einstelligen und/oder wenn die erste stelle
eine ziffer ist.
<runlevel> ist der runlevel in dem init gestartet wird. standardmaessig
wird die zeile
id:5:initdefault:
ausgeleses, was bedeutet, dass 5 der standard-runlevel ist.
man kann den runlevel auch per kernel-parameter aus dem boot-loader
mitgeben. in /etc/inittab koennen pro zeile mehrere runlevel angegeben
werden, z.b.:
x3:235:syswait:dosomthing
wuerde "dosomthing" in den runleveln 2, 3 oder 5 ausfuehren.
fuer die events gibt's ne reihe verschiedener events (siehe man inittab)
fuer das boot-prozeder sind folgende notwendig:
zuerst werden alle mit boot odor bootwait ausgefuehrt.
der unterschied ist der, dass die mit boot im hintergrund ausgefuehrt
werden, waehrend init bei den befehlen mit bootwait auf deren beendigung
wartet bevor der naechste befehl ausgefuehrt wird.
danach werden alle events mit sys und syswait ausgefuehrt (der 
unterschied ist aequivalent zu boot und bootwait). bei einigen init's
heissen sys auch once und syswait auch wait.
danauch werden alle events mit respawn gestartet. befehle mit respawn
werden nach deren beenden neu gestartet. wird der befehl mehr als n-mal
pro sekunde (i.d.r 5) respawnd wartet init n sekunden (i.d.r. 5), bevor
die prozedur von neuem beginnt. i.d.r. werden mit respawn die gettys
gestartet, die die jeweilien terminals (oder (virtuellen-) konsolen)
initialisieren und dort eine wilkommensnachricht schreiben und dann
ein login-prompt anzeigen. beim login wird das login programm
gestartet. dieses ueberprueft das passwort, und bei korrekter angabe
wird die in /etc/passwd konfigurierte shell gestartet. nach dessen
beenden (durch logout oder exit) wird von init entsprechendes getty
neu gestartet.

in modernen linuxen (ausser slackware) wird mit syswait (oder wait)
meist /sbin/init.d/rc <runlevel> oder /etc/init.d/rc <runlevel>
gestartet. in den meisten distris liegen die skripte in /sbin/init.d
/etc/init.d ist ein link auf /sbin/init.d und /etc/rc.d ist ein link
auf /etc/init.d. das skript rc startet dann alle programme in
rc<runlevel>.d (z.b: rc5.d) die mit S beginnen. nach dem S folgen meist
zwei ziffern, wodurch die reihenfolge bestimmt wird. alle mit K 
beginnenden skripte, werden beim verlassen des runlevels mit dem 
parameter "stop" aufgerufen.

zum optimieren kannst du alles (also /sbin/init.d/rc <runlevel>) mit
sys anstatt mit syswait (bzw. once anstatt wait) starten. dann 
erscheinen die login's sofort, aber es kann sein, dass nach dem login
noch nicht alle services zur verfuegung stehen. oder du splittest die
programme auf und rufst einige mit sys (once) und andere mit syswait
(wait) auf. 

events mit powerwait, powerfail haben damit zu tun, wenn deine usv oder
dein laptop ein powerfail signal erzeugt (also wenn der strom ausfaellt,
und das geraet auf batterie weiterlaeuft, oder die batterie schwach wird).

fuer weitere events siehe man inittab




-- 
Don't worry be happy ...
Ciao Frank
-------------- nächster Teil --------------
Ein Dateianhang mit Binärdaten wurde abgetrennt...
Dateiname   : nicht verfügbar
Dateityp    : application/pgp-signature
Dateigröße  : 189 bytes
Beschreibung: nicht verfügbar
URL         : <https://mlists.in-berlin.de/pipermail/linux-l-mlists.in-berlin.de/attachments/20061025/e546ba77/attachment.sig>


Mehr Informationen über die Mailingliste linux-l