Don Cavaiani wrote: > > Does anyone have a "document" or paragraph that they can cut and paste > and mail to me so that I will know what happens when Debian Linux starts > up ?? > > I am looking for the SEQUENCE of the start up, the PROGRAMS that are > executed, and the EXACT names of the configuration files (whether HIDDEN > or not). > > For example, I have NO IDEA where to go to set the DEFAULT window > manager to ICEWM (which I have found to my liking). > > Finally, is it possible to put a new icon on the window desktop so that > I can start a favorite program with just a click? > > Help will be greatly appreciated.
I don't know off-hand of any such document, although I'm sure they exist. The start-up sequence is considerably complex, especially for someone coming from the DOS/Windows world. But here's a rough outline: The Power-On-Self-Test (POST) runs from the BIOS when power is applied. Then the BIOS looks for the boot record on floppy, hard drive, or CD-ROM (or on the network, etc). It finds the LILO boot manager, and from there loads the kernel, named something like /boot/vmlinuz (although LILO usually points to /vmlinuz, which is a link to /boot/vmlinuz). The kernel loads, doing some testing of its own and setting up stuff that's compiled into the kernel (such as sound drivers, etc). Then the kernel run /etc/inittab. /etc/inittab basically tells the system what to run when entering a runlevel. Usually level 2 is defined early in this file as the default runlevel, and then later, run level 2 is defined to run /etc/init.d/rc with the paramater 2. The /etc/inittab also specifies such things as how many virtual terminals you have and starts a getty (a program that makes the virtual terminal "active"), and what happens when power is lost, and what happens when Ctrl-Alt-Delete is pressed, etc. But the big thing is that it runs /etc/init.d/rc with the appropriate run level passed to it as a parameter. So then you'd look at /etc/init.d/rc. This file simply runs the various scripts that are supposed to run when entering a runlevel. It checks to see if there's an init directory for the runlevel, and if so it then runs the scripts in that directory, starting with the "K" scripts (which kill processes), in order from lowest number to highest, and then it runs the "S" scripts (which start processes), again, in order from lowest number to highest. So in the case of runlevel 2 (normal operation), it looks for /etc/rc2.d. Finding that directory, it runs the scripts in there, starting with K[low-number] and ending with S[high-number]. In the case of my home box, I don't have any K scripts in this directory, but I do have a "S10sysklog" script, which starts the system and kernel log daemons, a bunch of other S scripts, and a final "S99wdm" script which starts the wdm X display manager. The "S99wdm" script starts X for me automatically so I don't have to log in at a console prompt and then manually start X with "startx". Starting up X is a separate process from booting up. The boot-up process is now finished, but the process of starting X is "tied" to the tail-end of the boot-up process with wdm. I have less of a clue about how X starts up, so I won't even try to go into that at the moment. However, to answer your question of how to specify which window manager to use: If you want to set the default wm for all users, you'd specify it on the first non-commented line in /etc/X11/window-managers. Just add, move, or change the lines in this file so the first line points to the wm of your choice. Each user can over-ride this default by creating/editting the ~/.xsession file. For example, my .xsession file looks like: xterm -geometry +2+2 & # icewm startkde This starts an xterm window that is offset from the top left corner just a smidgeon, and then starts the kde environment (which starts other stuff, like kaudio server, etc). If I want a leaner wm, I just comment out the "startkde" line and uncomment the "icewm" line. Some window managers will allow you to create desktop icons. I've never found icewm to be capable of this, which is why I'm currently running kde. Other than that, I usually prefer icewm to kde. Hope this helps answer some of your questions.