Linux入门-系统管理--启动、登陆、注销、重启、关机

第一部分,启动html

分享自http://blog.chinaunix.net/uid-26495963-id-3066282.html,shell

做者:butbueatiful.blog.chinaunix.net小程序




启动第一步--加载BIOS

当你打开计算机电源,计算机会首先加载BIOS信息,BIOS信息是如此的重要,以致于计算机必须在最开始就找到它。这是由于BIOS中包含了CPU的相关信息、设备启动顺序信息、硬盘信息、内存信息、时钟信息、PnP特性等等。在此以后,计算机内心就有谱了,知道应该去读取哪一个硬件设备了。

启动第二步--读取MBR
众所周知,硬盘上 第0磁道第一个扇区被称为MBR,也就是Master Boot Record,即主引导记录,它的大小是512字节,别看地方不大,可里面却存放了预启动信息、分区表信息。
系统找到BIOS所指定的硬盘的MBR后,就会将其复制到0×7c00地址所在的物理内存中。其实被复制到物理内存的内容就是Boot Loader,而具体到你的电脑,那就是lilo或者grub了。

启动第三步--Boot Loader
Boot Loader 就是在操做系统内核运行以前运行的一段小程序。经过这段小程序,咱们能够 初始化硬件设备、创建内存空间的映射图,从而将 系统的软硬件环境带到一个合适的状态,以便 为最终调用操做系统内核作好一切准备
Boot Loader有若干种,其中Grub、Lilo和spfdisk是常见的Loader。
咱们以Grub为例来说解吧,毕竟用lilo和spfdisk的人并很少。
系统读取内存中的grub配置信息(通常为menu.lst或grub.lst),并依照此配置信息来启动不一样的操做系统。

启动第四步--加载内核
根据grub设定的内核映像所在路径,系统读取内存映像,并进行解压缩操做。此时,屏幕通常会输出“Uncompressing Linux”的提示。当解压缩内核完成后,屏幕输出“OK, booting the kernel”。
系统将解压后的内核 放置在内存之中,并 调用start_kernel()函数来启动一系列的初始化函数并初始化各类设备,完成Linux核心环境的创建。至此,Linux内核已经创建起来了,基于Linux的程序应该能够正常运行了。

启动第五步--用户层init依据inittab文件来设定运行等级
内核被加载后, 第一个运行的程序即是 /sbin/init,该文件会 读取/etc/inittab文件,并依据此文件来进行初始化工做。
其实/etc/inittab文件最主要的做用就是 设定Linux的运行等级,其设定形式是“:id:5:initdefault:”,这就代表Linux须要运行在等级5上。Linux的运行等级设定以下:
0:关机
1:单用户模式
2:无网络支持的多用户模式
3:有网络支持的多用户模式
4:保留,未使用
5:有网络支持有X-Window支持的多用户模式
6:从新引导系统,即重启
关于/etc/inittab文件的学问,其实还有不少

启动第六步--init进程执行rc.sysinit
在设定了运行等级后,Linux系统执行的 第一个用户层文件就是 /etc/rc.d/rc.sysinit脚本程序,它作的工做很是多,包括设定PATH、设定网络配置(/etc/sysconfig/network)、启动swap分区、设定/proc等等。若是你有兴趣,能够到/etc/rc.d中查看一下rc.sysinit文件,里面的脚本够你看几天的

启动第七步--启动内核模块
具体是依据 /etc/modules.conf文件或 /etc/modules.d目录下的文件来装载内核模块。

启动第八步--执行不一样运行级别的脚本程序
根据运行级别的不一样,系统会运行rc0.d到rc6.d中的相应的脚本程序,来完成相应的初始化工做和启动相应的服务。

启动第九步--执行/etc/rc.d/rc.local
你若是打开了此文件,里面有一句话,读过以后,你就会对此命令的做用一目了然:
# This script will be executed *after* all the other init scripts.
# You can put your own initialization stuff in here if you don’t
# want to do the full Sys V style init stuff.
rc.local就是在一切初始化工做后,Linux留给用户进行个性化的地方。你能够把你想设置和启动的东西放到这里。

启动第十步--执行/bin/login程序,进入登陆状态
此时,系统已经进入到了等待用户输入username和password的时候了,你已经能够用本身的账号登入系统了。:)
===
漫长的启动过程结束了,一切都清静了…
其实在这背后,还有着更加复杂的底层函数调用,等待着你去研究…本文就算抛砖引玉了:)
本文参考了以下文章,精炼荟萃而成:
http://bbs.chinaunix.net/thread-835918-1-1.html
http://hi.baidu.com/fembed/blog/item/b9f0881f51145866f624e4be.html
http://baike.baidu.com/view/9485.htm
 
第二部分,登陆
启动完成后,开始等待登陆,登陆程序login负责用户登陆。
a.认证用户身份
b.身份验证成功后,启动shell并初始化用户环境
c.检查电子邮件,并给与提示
d.成功登陆记录到/var/log/wtmp,失败登陆记录到/var/run/utmp。
PS1=“[\u@\H \w]\\\$” (\u 当前用户的帐号名称  \H完整的主机名称 \W工做目录名称,只会列出最后一个目录)
 root 提示符为#

普通用户提示符为$网络

第三部分,注销函数

1.exit(Linux窗口注销使用)ui

2.logout(secureCRT窗口注销使用)spa

第四部分,重启操作系统

1.reboot.net

-f 强制重启3d

reboot 能够不接参数(经常使用)

2.shutdown(不能单独用,至少2个参数)

shutdown -r 延时分钟数

shutdown -r now 

第五部分,关机

1.halt(能够不接参数)

-f 强制关机

-p 关机后,关闭电源

2.poweroff

3.init 0

4.shutdown (不能单独用,至少2个参数)

shutdown -h 延时分钟数

shutdown -h now

相关文章
相关标签/搜索