1、启动电源,查询BIOS(Basic Input/Output System)信息,如CPU、内存、网卡、显卡等
2、读取MBR里的bootloader,它是在硬盘的第一个扇区里,有LILO和GRUB之分,现在一般的linux用的都是GRUB,如果你的机器装的是双系统,它也能识别到WIN系统的存在,双系统中WIN损坏,可以重装WIN,不需要重装linux只需修复下GRUB就可以了。
3、GRUB会指定内核的路径,这一步就是将内核加载到内存里,一般内核放在/boot里。
4、运行第一个程序/sbin/init,它的PID是1,是所有进程的父进程,它会去读inittab文件,定义了7种启动等级(run-level)
0 halt 1 single user mode 2 multi-user,without NFS 3 full multi-user mode 4 unused 5 X11 6 reboot |
5、知道了run-level后,系统就执行/etc/rc(run-level).d/下的服务,以S打头的表示开机启动,K打头的表示开机不启动,数字表示启动的顺序,数字越小,启动越早。这些服务都是链接到/etc/rc.d/init.d/下的相关文件。
6、启动相应服务后,系统会读取/etc/rc.d/rc.local文件,执行文件里指定的命令,你可以把需要开机自的服务写在这里面,非常方便。
7、接下来系统会执行getty进程,它会去读取/etc/issue文件,提示用户输入用户各及密码
8、启动login进程,根据/etc/passwd文件,判断用户名及密码是否正确,若正确,往下执行,若有误,返回步骤7
9、显示文件/etc/motd内容,这相当于一个欢迎语句,然后启动shell,这里面也包括.bash_profile和.bashrc的内容,之前的一篇文章里已经提过http://blog.chinaunix.net/u3/93196/showart.php?id=1973206。
阅读(1593) | 评论(0) | 转发(0) |