在用户成功登录后,Linux系统运行的第一个程序是______。
A.login
B.trap
C.logout
D.shell
参考答案:D
解析:shell是一种具备特殊功能的程序,它是介于使用者和UNIX/Linux操作系统的核心程序(Kernel)间的一个接口。各种操作系统都有它自己的shell,以DOS为例,它的shell就是command.com文件。
让我们先了解一下Linux系统启动的过程。当引导程序(如LILO)加载Linux内核映像启动时,它先进行内核的初始化工作,主要是检测整个硬件环境。内核初始化完成后,系统就启动init进程,它是系统的第一个用户级进程。Linux系统具有许多运行级别,它由/etc/inittab文件决定,各级别的功能如下。
(1)0:终止或停止系统的运行。
(2)1:单用户模式。
(3)2:多用户模式,但无网络功能。
(4)3:多用户模式且有网络功能。
(5)4:保留,用户可以定义自己的启动模式。
(6)5:图形界面登录模式。
(7)6:重新启动系统。
init进程运行后,它会访问/etc/inittab文件,该文件确定系统运行于上面的哪个级别。
接着init进程又分别启动/etc/rc.d/rc.sysinit和与等级n相对应的/etc/rc.d/rcn.d目录里的初始化进程,最后init会运行用户登录程序,这时在终端上就会显示login:的登录信息,用户登录成功后会启动shell程序,shell启动后,它会读取并执行文件/etc/profile、/etc/bashrc,以及用户主目录下的文件.bashrc,这些文件负责建立用户自己的环境。