Modifying init to create /dev/console ?

Terry Barnaby terry1 at beam.ltd.uk
Wed Feb 28 09:46:22 UTC 2007


Denis Vlasenko wrote:
> On Tuesday 27 February 2007 22:53, Terry Barnaby wrote:
>> Denis Vlasenko wrote:
>>> On Tuesday 27 February 2007 10:22, Terry Barnaby wrote:
>>>> I am trying to create a basic Linux system based on Busybox and would 
>>>> like the ability to create the root file system as a normal user and 
>>>> without any /dev entries. The startup script would create the /dev 
>>>> entries as needed.
>>>> However, init and other programs obviously require /dev/console (and 
>>>> other /dev entries).
>>>>
>>>> I was wondering about adding an option to init where it would create a 
>>>> tmpfs file system, mount it on /dev and create a /dev/console node if no 
>>>> /dev/console was found. I guess it could do a bit more and function as 
>>>> udev as well.
>>> I think you are on the right track, but move in the wrong direction
>>> along that track. Code shouldn't be added to init, it should be removed.
>>>
>>> http://busybox.net/~vda/example_fs/README
>>> --
>>> vda
>> Hi Denis,
>>
>> But then you end up with init implemented in several shell scripts.
>> I guess it depends if you prefer 'C' or shell programs :)
> 
> Shell programs are easier to tailor for particular system without
> messing up with compiler and toolchain - exactly what you need
> for "I want to create /dev/console".
> --
> vda

Hi Denis,

I notice your http://busybox.net/~vda/example_fs has /dev/console and 
/dev/null nodes. Have you managed to get a busybox system to boot and 
run using shell scripts without these nodes ?

In my system the final rootfs will be a read-only NFS mount and I don't 
want to have a /dev/console in the NFS mounted file system. So I need to 
create this at boot time. My shell scripts do not appear to run from 
init if I do not have a /dev/console though ...

Terry



More information about the busybox mailing list