Linux开机启动流程及运行级别和常用组合键 == 第一次所学知识框架==

  1. 第一次写经验总结 望体谅

  2. linux开机启动过程总结=简化版

1)  加载bios,获取cpu,内存,硬盘

2)  读取MBR,获取bootloadergrub

3)  根据grub的内容加载内核

4)  内核执行/sbin/init,根据/etc/inittab完成初始化

5)  init执行 /etc/rc.d/rc.sysinit

6)  启动内核模块,根据/etc/modprobe.conf/etc/modprobe.d/目录下的的文件来加载模块

7)  根据运行级别不同,init执行/etc/rc.d/rcn.d下的启动脚本

8)  init执行 /etc/rc.d/rc.local

9)  执行/bin/login程序,等待用户登录

10)  登录之后开始各个shell控制主机

1.2         linux启动流程 详细点==

1)开机自检,加载bios

打开计算机电源,首先会加载bios信息(BIOS中包含了CPU的相关信息、设备启动顺序、硬盘、内存、时钟、pnp特性等)。读取bios之后,计算机就知道去读取哪一个硬件设备了。在bios将系统的控制权交给硬盘的第一个山区之后,就开始由linux控制计算机了。

2)读取MBR

硬盘上第0柱面0***1扇区被称为MBR,大小是512字节,里面存放了预启动信息、分区表信息和分区标志等

MBR 分两部分:第一部分为引导(PRE-BOOT)区,占了446字节;第二个部分为分区表(PARTITION PABLE),共有66字节,记录了磁盘分区信息(前64字节是分区表信息,后两个字节是分区结束的标志)。

3)读取Bootloader

bootloater就是在操作系统内核运行之前的一段小程序

常见的bootloader有grub,lilo和spfdisk等

4)加载kernel内核

根据bootloader,目前linux是grub设定的内核影响所在路径,系统读取内核,解压并加载

5)init进程根据inittab文件设定运行级别

内核被加载之后,第一个运行的程序就是/sbin/init,init进程读取/etc/inittab文件,进行初始化

6)init进程执行/etc/rc.d/rc.sysinit

设定了运行级别之后linux执行的第一个用户文件就是/etc/rc.d/rc.sysinit

7)启动内核模块

根据/etc/modprobe.conf(centos5.x),/etc/modprobe.d/下的文件来装在内核模块

8)执行不同运行级别的脚本文件

根据运行级别不同执行rc0.d至rc6.d下的文件

9)执行/etc/rc.d/rc.local

10)执行/bin/login程序启动mingetty,进入登录状态

 

1.3         7种运行模式

0关机

1单用户模式

2无网络服务的多用户模式

3多用户命令行模式

4保留

5图形界面

6重启

 

chkconfig的原理

ls /etc/rc.d/rc3.d

[root@moban oldboy]# ll /etc/rc.d/rc3.d/ |grep sshd

lrwxrwxrwx. 1 root root 14 Aug  8 14:42 S55sshd -> ../init.d/sshd

[root@moban oldboy]# chkconfig --list sshd

sshd            0:off   1:off   2:on    3:on    4:on    5:on    6:off

[root@moban oldboy]# chkconfig --level 3 sshd off

[root@moban oldboy]# ll /etc/rc.d/rc3.d/ |grep sshd      

lrwxrwxrwx. 1 root root 14 Aug  9 17:09 K25sshd -> ../init.d/sshd

 

[root@oldboylinux oldboy]# chkconfig --list sshd
sshd            0:off   1:off   2:off   3:on    4:off   5:off   6:off
[root@oldboylinux oldboy]# cd /etc/rc.d/rc3.d/
[root@oldboylinux rc3.d]# rm -f S55sshd 
[root@oldboylinux rc3.d]# ln -s ../init.d/sshd K25sshd
[root@oldboylinux rc3.d]# chkconfig --list sshd       
sshd            0:off   1:off   2:off   3:off   4:off   5:off   6:off
[root@oldboylinux rc3.d]# cd ../rc5.d/
[root@oldboylinux rc5.d]# rm -f K25sshd 
[root@oldboylinux rc5.d]# ln -s ../init.d/sshd S55sshd
[root@oldboylinux rc5.d]# chkconfig --list sshd       
sshd            0:off   1:off   2:off   3:off   4:off   5:on    6:off

 


  1. /etc/inittab文件的内容以及linux0-6运行级别总结

1)  id:3:initdefault: 设置系统默认的运行级别

:关机

:单用户模式

:无nfs的字符界面

:字符界面

:保留

:桌面环境

:重启


  1. inux 下常用快捷键命令的总结,例如:tab 补全命令等

1)  ctrl + e 回到字符界面当前行的行尾

2)  ctrl +a 回到命令行行首

3)  ctrl + f 按字符向右移

4)  ctrl + b 按字符向左移

5)  ctrl + xx  在命令行首和光标之间移动

6)  ctrl + u 从光标处删除至行首

7)  ctrl + k :从光标处删除至行尾

8)  ctrl + w 从光标处向前删除一个单词

9)  alt + d 从光标处向后删除一个单词

10)  ctrl + r 逆向搜索命令历史

11)  ctrl + g 从历史搜索模式退出 与上个命令互为一对


12)  ctrl + p :历史中的上一条命令  方向键  一致

13)  ctrl + n :历史中的下一条命令

14)  alt + .  :使用上一个 命令的最后一个参数

15)  ctrl + l 清屏

16)  ctrl + o 执行当前命令,并选择上一条命令

17)  ctrl +s  组织屏幕输出

18)  ctrl + q 允许屏幕输出

19)  ctrl + c 终止命令

20)  ctrl + z 挂起命令

21)  !! 执行上一条命令

22)  blah 执行最近的以blah开头的命令

23)  blah仅打印输出,不执行

24)  !$ :上一条命令的最后一个参数 alt + . 相同

25)  $打印输出!$的内同

26)  上一条敏力的所有参数

27)  *打印上一条命令的所有参数

28)  ^blah  删除上一条敏力中的blah

29)  ^blah^foo :将上一条命令中的blah替换为foo

30)  ^blah^foo& :将上一条命令中的blah全部替换为foo

  1. Centos6.5_x86_64 linux系统的安装与优化


本文出自 “Linux学习知识语录” 博客,请务必保留此出处http://transform.blog.51cto.com/9954601/1659596

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。