Hinweis: Das Forum wird geschlossen! Neue Registrierungen sind nicht mehr möglich!

 Zurück zu Pro-Linux   Foren-Übersicht   FAQ     Suchen    Mitgliederliste
init startlevel per bootloader kommandozeile definieren?

 
Neuen Beitrag schreiben   Auf Beitrag antworten    Pro-Linux Foren-Übersicht -> Software
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
torvalds
Gast





BeitragVerfasst am: 20. Nov 2006 2:02   Titel: init startlevel per bootloader kommandozeile definieren?

hallo hobbyfrickler !
Very Happy kleiner scherz...

wie aus dem topic hoffentlich schon zu entnehmen ist , suche ich eine möglichkeit ,
möglichst mit GRUB (9x) , über einen befehl den startlvl als parameter in der kommandozeile
einzugeben . also unabhängig von bestimmten einträgen , als allgemeiner kommandozeilenbefehl . habe leider in der GRUB dokumentation nichts passendes gefunden , aber ich kann mir irgendwie nicht vorstellen und akzeptieren , dass es soetwas elementar wichtiges wirklich nicht geben sollte - beim besten willen nicht . ich wäre auch offen für andere bootloader , die mehr möglichkeiten bieten , habe eigentlich immer mit grub gearbeitet und war größtenteils zufrieden , bis auf mit der offziellen doku Sad
es sollten nach möglichkeit auch die skripte für die standardstartlvl über nummern (z.b. init=3) als parameter aufgerufen werden , damit man nicht den villeicht geänderten skriptpfad für ein runlvl wissen muss .
mal abgesehen dass ich eine initlvl definition durch den bootloader für wichtig halte ,
würde ich damit auch gerne in einen textmodus starten , damit ich ein kaputtes X11 system reparieren kann , ohne dass ich das über ein externenes system machen muss...

mfg
 

Janka



Anmeldungsdatum: 11.02.2006
Beiträge: 3569

BeitragVerfasst am: 20. Nov 2006 11:46   Titel:

Ob GRUB oder LILO: Den Runlevel kannst du einstellen, indem du an die Kernel-Kommandozeile (hinten an kernel= dranhängen bei GRUB, bzw. append=... bei LILO) eine 3 etc. dranhängst.

Alles, was der Kernel nicht versteht, (z.B. die 3) wertet er nicht aus. Die Kommandozeile ist nach dem Laden des Kernels und mounten von /proc unter /proc/cmdline auslesbar. Dort gucken init (und wenn du willst auch deine eigenen Skripte) nach, ob sie etwas finden, was sie verstehen.

Janka
_________________
Ich vertonne Spam immer in /dev/dsp statt /dev/null.
Ich mag die Schreie.
 
Benutzer-Profile anzeigen Private Nachricht senden

torvalds
Gast





BeitragVerfasst am: 20. Nov 2006 15:54   Titel:

danke für deine aufschlussreiche erklärung dazu Smile , habe gestern noch durch zufall
das mit den initzahlen gesehen Rolling Eyes , aber jetzt ist es wenigstens klar , wie das abläuft - fast zumindest Wink
weisst du zufällig noch , was es für prioritäten bei den skriptstartfolge gibt bzw
in welchem format/verzeichnissen die stehen müssen/dürfen ?

mfg
 

Janka



Anmeldungsdatum: 11.02.2006
Beiträge: 3569

BeitragVerfasst am: 20. Nov 2006 18:43   Titel:

SysV-Init (Linux-Standard) arbeitet beim Wechsel von einem Runlevel in den anderen (also beim Booten z.B. von 0 auf 3) /etc/init.d/rcX.d an, und schaut dort, welche Skripte ausgeführt werden sollen. Die Startskripte müssen Snn..., die Killskripte Knn... heißen. Sie werden einfach in der Reihenfolge der Zahlen nn ausgeführt.

Janka
_________________
Ich vertonne Spam immer in /dev/dsp statt /dev/null.
Ich mag die Schreie.
 
Benutzer-Profile anzeigen Private Nachricht senden

torvalds
Gast





BeitragVerfasst am: 20. Nov 2006 22:49   Titel:

joar , das mit dem runlvl und zugehörigem verzeichnis wusste ich ,
aber wie soll man das verstehen , die in der grub kommandozeile an den kernel übergebenen befehle werden dann geprüft , sobald runlvl 1 eintritt ? oder ist es möglich auch davor befehle/skripte verarbeiten zu lassen ?

mfg
 

Janka



Anmeldungsdatum: 11.02.2006
Beiträge: 3569

BeitragVerfasst am: 21. Nov 2006 0:46   Titel:

Du kannst auf der Kernel-Kommandozeile keine Shellbefehle angeben, das ist ja schließlich keine Shell-Kommadozeile.

Bau dir ein eigenes Skript aus einer der Vorlagen in /etc/init.d/, in denen du /proc/cmdline auswertest, leg' das in /etc/init.d/ ab, verlinke es in /etc/init.d/rc3.d und /etc/init.d/rc5.d usw. passend. Schon wird es beim Hochfahren aufgerufen.

Wenn dein Skript ganz am Anfang von init aufgerufen werden soll, kannst du es auch in der /etc/inittab unter dem Label "si" ablegen. Allerdings ist dann nicht einmal /proc gemoutet, das musst du dann alles selbst machen.

Janka
_________________
Ich vertonne Spam immer in /dev/dsp statt /dev/null.
Ich mag die Schreie.
 
Benutzer-Profile anzeigen Private Nachricht senden

torvalds
Gast





BeitragVerfasst am: 22. Nov 2006 0:34   Titel:

danke für die tips , mal sehen was sich da machen lässt Smile
 

jochen
prolinux-forum-admin


Anmeldungsdatum: 14.01.2000
Beiträge: 699
Wohnort: Jülich

BeitragVerfasst am: 26. Nov 2006 21:59   Titel:

Detail am Rande: Gibt einfach mal ein
Code:
cat /proc/cmdline
ein. Dort siehst Du die Parameter, die der Kernel beim Booten durch den Bootloader mitgegeben bekommen hat. Einige Distributionen mutzen diese Mittel, um eigene Boot-Optionen zu erstellen. Unter Gentoo bespielsweise kann man an der Bootzeile ein "gentoo=..." angeben, was einige Bootskripte dann parsen und darauf reagieren können. Das funktioniert, da der Kernel alle Argumente, die er nicht versteht, ignoriert. Daher auch die Möglichkeit, einen Runlevel am Bootprompt mit angeben zu können: Dem Kernel ist's egal, aber der init versteht's!

Jochen
_________________
Die grösste Lüge der EDV? "Mal eben..."
 
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen

Janka



Anmeldungsdatum: 11.02.2006
Beiträge: 3569

BeitragVerfasst am: 27. Nov 2006 8:25   Titel:

Hm. Ich meinte, das hatte ich bereits geschrieben, Jochen. Partielle Blindheit? Wink

Janka
_________________
Ich vertonne Spam immer in /dev/dsp statt /dev/null.
Ich mag die Schreie.
 
Benutzer-Profile anzeigen Private Nachricht senden

jochen
prolinux-forum-admin


Anmeldungsdatum: 14.01.2000
Beiträge: 699
Wohnort: Jülich

BeitragVerfasst am: 27. Nov 2006 14:47   Titel:

*blinzel* Au weh.. Dabei war ich erst vor kurzem beim Augenarzt! Rolling Eyes Embarassed

Sorry,
Jochen
_________________
Die grösste Lüge der EDV? "Mal eben..."
 
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen

Beiträge vom vorherigen Thema anzeigen:   
     Pro-Linux Foren-Übersicht -> Software Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehen Sie zu:  

Powered by phpBB © phpBB Group
pro_linux Theme © 2004 by Mandaxy