dyne startup sequence

The startup sequence is the flow of scripts being called at system boot. In dyne the init(8) process is configured (see /etc/inittab) to call the script /etc/rc.S first (single user mode) and, once that is succesfully executed, the script /etc/rc.M (multi user mode).

1st step: rc.S - single user mode

The rc.S script operates only within the RamDisk (without the /usr being mounted) and it accomplishes to the task of autodetecting all attached storage devices and loading all needed drivers in order to access them.

By doing so, it writes down a list of devices found:

At the very end of the detection and, eventually, after having prompted the user for selecting the dock to be used, the single user mode script exports environmental variables to point out where the UsrSystem has been found and which one to be mounted:

Once the above environmental variables are set, the init process can proceed into multi user mode. TIP if the flag volatile=true is set as a kernel parameter, then you'll be dropped into an interactive shell at this point of the startup sequence, which can be useful for debugging purposes, to manually mount a system device, etc. for more information see VolatileMode?.

2nd step: rc.M - multi user mode

The rc.M script automatically mount the dynebol.sys that is found in the system device selected during the previous startup step. The dynebol.sys is nothing else than a squashfs read-only filesystem enclosed in a file: it is mounted loopback over the system directory /usr to complete the running system with all the user space tools needed.

After a succesful mount of the UsrSystem, the multi user mode proceeds with an advanced autodetection of all peripherals connected, which is handled by the init scripts included in /etc/init.d :

Once this is all done it is the turn for the graphical mode startup to run, so rc.X is called.

/!\ if the flag ascii=true is set as a kernel parameter, you'll be left into a text console prompt, with full access to all the user tools mounted, simply the graphical X desktop won't be started up. For more information see AsciiMode?.

DyneBolic2StartupSequence (last edited 2008-07-17 10:50:21 by jaromil)