[centos]centos引导流程

 1.引导流程
 
 [1] 固件 firmware(CMOS/BIOS)	-> POST加电自检
 
 [2] 自检程序 BootLoader(GRUB)	-> 载入内核
 
 [3] 载入内核 Kernel   			-> 驱动硬件
 
 [4] 启动init	
 
 [5] 读取执行配置文件/etc/initab
 
 2.固件作用
 
 [1] 安全设置
 
 [2] 可引导介质列表
 
 [3] 可引导介质搜索顺序
 
 [4] 启动细节显示
 
 [5] .....
 
 3.。固件时钟和软件时钟同步实例
 
 [1] hwclock
 
 [2] date
 
 [3] 思路: 查看帮助(hwclock --help)选项
 
 [4] hwclock --set --date="25/9/2012 16:45:05"
 
 [5] date MMDDhhmm[[CC]YY][.ss]
 
 4. Master boot record
 
 [1] 446bytes Bootloader 
 
 [2] 64bytes partition table [partion1/partion2/partion3/partion4] -> [Partion flag/Start CHS/Partion byte/END CHS/Start LBA/Size]
 
 [3] 2bytes Magic Number
 
 5.GRUB
 
 [1] 主要作用是载入内核
 
 [2] vi /etc/grub.conf --> 2.6.18 版本号 6:偶数为正式版,奇数为测试版
 
 [3] 查看内核: ls /boot

 6.内核的作用
 
 [1] 驱动硬件(源码中最多的是驱动程序)
 
 [2] 启动进程init
 
 7.init进程
 
 [1] init启动后读取inittab文件,执行缺省运行级别,从而继续引导过程
 
 [2] UNIX系统中,init时第一个可以存在的进程,PID恒为1,但它必须向一个更高级的功能负责(PID为0的内核调度器Kernel scheduler),从而获的CPU的时间
 
 [3] 父进程结束,子进程必须结束,如果意外原因,子进程没有结束,则把父进程设为init进程
 
 8.linux运行级别
 
 [1] l0 - l6 : 7个级别
 
 [2] 7 modes
  #  0 - halt (Do NOT set initdefault to this)
  #  1 - Single user mode (没有图形界面,只有root能登陆)
  #  2 - Multiuser, without NFS (The same as 3, if you do not have networking) (没有图形界面)
  #  3 - Full multiuser mode (没有图形界面)
  #  4 - unused (没有在使用的,用户自定义)
  #  5 - X11	 (x window 图形界面,缺省运行级别)
  #  6 - reboot (Do NOT set initdefault to this)
  
 [3] NFC: network file system (unix系列文件共享服务)

 [4] 更换运行级别 查看:runlevel 更改:init [0123456Ss] telinit [0123456Ss]
 
 [5] 查看目录 ls -l `which telinit`
 
 9. inittab文件
 
 [1] grep -v "^#" /etc/inittab | more (查看非注释的行)
 
 [2] man inittab 查看配置文件
 
 [3] inittab条目格式 - id:run-levels:action:precess
 
 [4] id: 标识符,一般为两位字母或数字
 
 [5] run-levels - 指定运行级别,可以指定多个
 
 [6] action 	- 指定运行状态
 
 [7] process 	- 指定要运行的脚步命令
 
 10. action的取值
 
 [1] initdefault - 指定系统启动默认运行级别
 
 [2] sysint - 系统启动执行process中指定的命令
 
 [3] wait - 执行process中指定的命令,并等其结束再运行其他命令
 
 [4] once - 执行process中指定的命令,不等待其结束
 
 [5] ctrlaltdel - 按下Ctrl+Alt+Del时执行process指定的命令
 
 [6] powerfail - 当出现电源错误时执行process指定的命令,不等待其结束
 
 [7] powerokwait - 当电源恢复时执行process执行的命令
 
 [8] respawn - 一旦process指定的命令终止,便重新运行该命令
 
 11. si:sysint:/etc/rc.d/rc.sysinit
 
 [1] 启动脚步/etc/rc.d/rc.sysint,完成系统服务程序启动,如系统环境变量设置、设置系统时钟、加载字体、检查加载文件系统、生成系统启动信息日志文件等
 
 [2] 查看 - vi /etc/rc.d/rc.sysinit 每次系统启动都执行
 
 12. 判断默认运行级别,调用/etc/rc.d/rc脚步,执行相应运行级别目录中的服务程序,完成相应运行级别的初始化设置
 
 [1] /etc/rc.d/rc/rc[0123456].d 目录下保存了全部的运行级别目录
 
 [2] /etc/rc.d/rc/rc3.d -> S12syslog  -> S-start K-kill 用于切换级别,通过K开头关闭相应的服务
 
 [3] S12syslog -> 数字: 执行顺序 名称
 
 13. 大体流程:firmware -> BootLoader -> Kernel -> init -> /etc/inittab -> initdefault -> /etc/rc.d/rc.sysint -> /etc/rc.d/rc -> /etc/rc.d/rcN.d (n=0-6) -> username password
 
 14. 切换运行级别 ctrl + F1-F6 F7:回到x window
 
 15. ca::ctrlaltdel:/sbin/shutdown -t3 -r now 设置执行任何运行级别时,按下组合键执行重启
 
 16. 启动终端 Ctrl + F1-F6
 1> 1:2345:respawn:/sbin/mingetty tty1
 2> 2:2345:respawn:/sbin/mingetty tty2
 3> 3:2345:respawn:/sbin/mingetty tty3
 4> 4:2345:respawn:/sbin/mingetty tty4
 5> 5:2345:respawn:/sbin/mingetty tty5
 6> 6:2345:respawn:/sbin/mingetty tty6
 
 17. x:5:respawn:/etc/X11/prefdn -nodeemon 启动X window
 
 18. ls -ld /etc/rc3.d -> /etc/rc.d/rc3.d 软链接
 
 19. /etc/rc.d/init.d 所有的服务启动都在这个目录下

 20. /etc/rc.d/init.d/ntpd [start|stop|restart|reload] 手动|启动关闭对应的服务

 21.lrwxrwxrwx. 1 root root 11 Aug 12 18:34 /etc/init.d -> rc.d/init.d 

 22.设置自启动程序
 
 [1] ls -s
 
 [2] chkconfig
 
 [3] ntsysv
 
 23. 设置
 
 [1] date >> /etc/msg.today
 
 [2] free >> /etc/mem.today
 
 [3] who  >> /etc/who.today
 
 [4] vi /etc/rc.d/init.d/msg.script
 
 [5] chmod u+x /etc/rc.d/init.d/msg.script
 
 [6] ls -s /etc/rc.d/init.d/msg.script /etc/rc.d/rc3.d/S100msg.script
 
 24.chkconfig
 
 [1] chkconfig --list 所有安装服务
 
 [2] chkconfig [--level <levels>] <name> <on|off>
 
 25.ntsysv 更改当前启动级别设置
 
 [1] ntsysv --level 3
 
 24.dmesg 查询系统错误信息
 
 [1]dmesg | grep eth0  查看网卡信息
 
 [2]dmesg 
 
 25.grep syslog /var/log/messages
 
 26.硬件查看
 
 [1] 首先在固件中查看,是否能够识别
 
 [2] 在日志文件中看能否识别

 

猜你喜欢

转载自liu86th.iteye.com/blog/1689398