Linux<十> 开机关机启动与多重启动

开机流程分析

  • Linux的开机流程
    1. 加载 BIOS 的硬件信息,并取得第一个开机装置的代号;
    2. 读取第一个开机装置的 MBR 的 boot Loader (亦即是 lilo, grub, spfdisk 等等) 的开机信息;
    3. 加载 Kernel 操作系统核心信息, Kernel 开始解压缩,并且尝试驱动所有硬件装置;
    4. Kernel 执行 init 程序并取得 run-level 信息;
    5. init 执行 /etc/rc.d/rc.sysinit 档案;
    6. 启动核心的外挂模块 (/etc/modprobe.conf);
    7. init 执行 run-level 的各个批次档( Scripts );
    8. init 执行 /etc/rc.d/rc.local 档案;
    9. 执行 /bin/login 程序,并等待使用者登入;
    10. 登入之后开始以 Shell 控管主机。
  • boot loader
    整个主机在开机的时候,第一个被读取的地方, 就是 BIOS ( Basic Input Output System ),它是第一个被计算机加载的数据。这个 BIOS 里面记录了主机板的芯片组与相关的设定。读取了 BIOS 设定值之后,系统会根据 BIOS 的数据,进行开机自我测试 (power on self test, POST),
  • 内核执行 init并由/etc/inittab取得系统登入状态
    加载内核后,由内核第一个执行的程序便是/sbin/init,该程序的第一个目标是确定主机以怎样的模式登入,此时/sbin/init加载/etc/inittab的信息。在此文件中可以看出共有0~6种的登入状态。较常见的是3(文字界面登入)和5(图形界面登入)。不要设定我0(关机)和6(重新启动),不然系统会一直不停的关机或重新启动。
  • init的第一个执行内容/etc/rc.d/rc.sysinit
    确定登入状态后,接下来把主机的信息读入Linux系统。而Linux读入的第一个数据内容就是/etc/rc.d/rc.sysinit,可以进去看看,记录了Linux系统的基本信息,主要工作很多,基本都是设定一些参数及系统相关等等。
  • init执行运行级的各脚本
    由于不同的run-level需要加载的模块并不相同,所以系统为不同的run-level设定了一些批处理文件来做。在/etc/rc.d目录中,目录rc.0~rc.6分别代表着各个run-level的脚本,这些目录中的文件都以K(以K开头代表杀死该服务)或S(开始….)打头,后接两位数字(数字代表启动顺序,当然这些顺序的指定是有原因的)与该服务的名称。这些文件都是链接文件,都指向/etc/rc.d/init.d这个目录,而/etc/rc.d/init.d目录则是以Linux的RPM安装方法时用于设定一些服务的启动目录。举个例子,如果要想重新启动sendmail,且你的sendmail是以RPM方式安装的,那么输入 /etc/rc.d/init.d/sendmail restart就可以直接重新启动sendmail。
    因此,当你的run-level内的脚本要启动哪些服务时,就将文件链接到该 init.d目录下的文件并启动即可,也就是若以为3来启动系统,说启动Linux时,经过BIOS、MBR、Kerbel、init和/etc/rc.sysinit 之后,就进入/etc/rc.d/rc3.d来启动一些服务。
  • init执行/etc/rc.d/rc.local
    在Linux系统执行完大部分的启动程序后,接下来就是执行你的Linux主机的个性化设定了。简单的说,无论你在启动时候需要写进什么指令,都可以将这在此文件写入。
    在主机执行完上面的步骤之后,开机流程就启动完毕。
  • 启动配置文件/etc/sysconfig
    在启动过程中使用最多的配置文件大都放在/etc/sysconfig目录下。
    下面说几个比较重要的:
    1. clock设定时间
    2. i18n设定语言的
    3. Keyboard 和 mouse 用于设定键盘和鼠标
    4. network可以设定主机名称和GATEWAY这两个重要信息
    5. network-scripts用于设定网卡。
  • 变换默认的登入模式
    主要修改/etc/inittab文件,Linux共提供了6个终端界面与1个图形界面,Ctrl+Alt+F1~F6组合来切换不同的文字登入点,Ctrl+Alt+F7切换图形界面
  • Grub
    • 配置文件/etc/grub/menu.lst
      待续。。。。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值