[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: Probleme mit einen Diskless-Client


Raphael H. Becker wrote:
> On Tue, Sep 06, 2005 at 05:54:29PM +0200, Alexander Dehoff wrote:
>> ich habs hingekriegt:
>> 
>> in die chroot Umgebung wechseln (die vorher mit debootstrap 
>> geschaffen wurde) und die beiden Befehle ausfuehren:
>> 
>> mknod /dev/console c 5 1
>> mknod /dev/tty1 c 5 1
>> 
>> Schon gehts!!!
> Ist das jetzt eine Loesung oder ein Workaround, der in deinem 
> Fall speziell funktioniert? Haette nicht gedacht, dass man 
> /dev heute noch irgendwo statisch verwendet, d.h. auf der 
> Platte anlegt.

/dev/console wird vom Kernel(!) geoeffnet, noch bevor die Init-Skripte
laufen. Deshalb muss zumindest /dev/console zu diesem fruehen Zeitpunkt
existieren, d.h. entweder auf dem Wurzeldateisystem oder in einem devfs,
welches beim Booten gemountet wird.

> Waere der Ansatz nicht, ein devfs nach /croot/umgebung/dev zu mounten?

devfs ist tot. Es ist seit drei Jahren unmaintained. Es ist gespickt mit
Race-Conditions, die sich ohne ein komplettes Rewrite nicht beheben
lassen. Noch schlimmer: es gibt anscheinend sogar Race-Conditions, die
sich aufgrund des Konzeptes von devfs ueberhaupt gar nicht beheben
lassen. Und last but not least: dieselbe Funktionalitaet kann besser,
einfacher und flexibler im Userspace implementiert werden, folglich hat
sie nichts im Kernel verloren. Der Termin fuer die Entfernung von devfs
aus Linus Torvalds' Kernel ist eigentlich schon ueberfaellig, ich schaetze,
dass es spaetestens in Linux 2.6.15 Geschichte sein wird.

Die offizielle Loesung fuer dynamische Geraetedateiverwaltung und
-bennenung ist udev von Greg Kroah-Hartmann, welches inzwischen Standard
in den meisten der grossen Distributionen und zumindest optional auch in
Debian verfuegbar ist.

Die inoffizielle Alternative ist nanodevfs, ebenfalls von Greg
Kroah-Hartmann, das dieser innerhalb von nur wenigen Stunden geschrieben
hat, weil ihn das jahrelange Gejammere ueber die Entfernung von devfs so
angekotzt hat.

jwm