linux启动和内核管理

linux启动和内核管理:
1. 加载BIOS 的硬件信息,获取第一个启动设备
2. 读取第一个启动设备MBR 的引导加载程序(grub) 的启动信息
3. 加载核心操作系统的核心信息,核心开始解压缩,并尝试驱
动所有的硬件设备
4. 核心执行init 程序,并获取默认的运行信息
5.init 程序执行/etc/rc.d/rc.sysinit 文件
6. 启动核心的外挂模块
7.init 执行运行的各个批处理文件(scripts)
8.init 执行/etc/rc.d/rc.local
9. 执行/bin/login 程序,等待用户登录
10. 登录之后开始以Shell

ROM:主板上有一部分只读的内容,BIOS;等
     保存着有关计算机系统 最重要的基本输入输出程序,系统信息设置、 开机加电 自检程序和
系统启动自举程序等

RAM:CMOS 互补金属氧化物半导体,保存各项参数的设定按次序查找引导设备  
          第一个有引导程序的设备为本次启动设备

grup :引导程序加载器
      primary boot loader : 1st stage ,1.5 stage secondary boot loader  :2nd stage
      系统相关的文件都在 /boot/下面,里面还有grup文件
      1.5阶段引导;
MBR  :446: bootloader, 64: 分区表, 2: 55AA 

kernel: 内核开机运行的程序:
自身初始化:
探测可识别到的所有硬件设备
加载硬件驱动程序(可能借助于ramdisk 加载驱动)
以只读方式挂载根文件系统
运行用户空间的第一个应用程序:/sbin/init (内核定义的 开机自动去此目录寻找init)

ramdisk:
      内核中的特性之一:使用缓冲和缓存来加速对磁盘上的文件访问
            ramdisk –> ramfs    提高速度
      ramdisk 文件的制作:(initramfs 文件)
mkinitrd 命令
为当前正在使用的内核重新制作ramdisk文件
mkinitrd /boot/initramfs-$(uname -r).img $(uname -r)

系统启动流程:
 Upstart: init,CentOS 6
              配置文件:/etc/inittab, /etc/init/*.conf
 Systemd :systemd, CentOS 7
              配置文件:/usr/lib/systemd/system
                        /etc/systemd/system
运行级别:为系统运行或维护等目的而设定;0-6 :7 个级别
0 :关机
1 :单用户模式(root 自动登录), single,  维护模式
2:  多用户模式,启动网络功能,但不会启动NFS ;维护模式
3 :多用户模式,正常模式;文本界面
4 :预留级别;可同3 级别
5 :多用户模式,正常模式;图形界面
6 :重启
: 默认级别: 3, 5
   切换级别:init #
   查看级别:runlevel ; who -r
开机后按a 进入modify模式。在quite后面空格后加数字,表示临时启动哪个模式
chkconfig –level  :更改启动模式,

/etc/rc.d/rc.sysinit:  系统初始化脚本
(1)  设置主机名
(2)  设置欢迎信息
(3)  激活udev 和selinux
(4)  挂载/etc/fstab 文件中定义的文件系统
(5)  检测根文件系统,并以读写方式重新挂载根文件系统
(6)  设置系统时钟
(7)  激活swap 设备
(8)  根据/etc/sysctl.conf 文件设置内核参数
(9)  激活lvm 及software raid 设备
(10)  加载额外设备的驱动程序
(11)  清理操作

 chkconfig 命令
  查看服务在所有级别的启动或关闭设定情形:
     chkconfig [–list] [name]

瞬态(Transient )服务被xinetd 进程所管理
进入的请求首先被xinetd 代理
配置文件:/etc/xinetd.conf 、/etc/xinetd.d/<service>
与libwrap.so 文件链接
用chkconfig 控制的服务:
        chkconfig tftp on

原创文章,作者:shewei,如若转载,请注明出处:http://www.178linux.com/72052

(0)
sheweishewei
上一篇 2017-03-28 10:21
下一篇 2017-03-28 13:35

相关推荐

  • Ansible playbook

    目录 1.1        playbook简介… 1 1.2        Playbook使用场景… 1 1.3      &nbs…

    Linux干货 2015-12-06
  • BIND 配置DNS服务器以及子域授权

    1、安装bind      [root@www ~]# yum -y install bind 2、查看安装生成的文件      [root@www ~]# rpm -ql bind | less 3、程序路径     /var/named 4、配置…

    Linux干货 2016-03-22
  • 一个简单小例子来说一下Rescue营救模式

    昨天不小心将/lib64下的一个动态库文件libc.so.6(很多命令都依赖的)给移动到了/root下,然后除了一些内部命令可用外,其余命令都不能用了,然后就想着看看重启可不可以修复,结果重启后就再也开不了机了,心想着这可咋整,要不用最快的方式进行快照恢复吧,结果老师就说了,不能使用快照,让我们使用Rescue营救模式进行恢复,然后在恢复的过程中就发现一个问…

    Linux干货 2017-08-21
  • 【26期】Linux第五周学习小总结

        第五周的学习内容很丰富, 从查找到压缩打包,到软件包的管理,其中尤其是以压缩的内容最为丰富,而且庞大的选项让人绝望,那我今天就总结了一下压缩的一些东西,和大家一起分享。     为什么会产生压缩工具呢?因为我们的现在的很多文件会利用到的东西很多,电脑的读存速度也越来越快,一些大的文件在传输和使用上就会很麻烦,虽…

    2017-08-12
  • Jerry首作_linux基础

    一、计算机的组成及其功能 硬件 冯·洛伊曼体系 控制器(Control):是整个计算机的中枢神经,其功能是对程序规定的控制信息进行解释,根据其要求进行控制,调度程序、数据、地址,协调计算机各部分工作及内存与外设的访问等。 运算器(Datapath):运算器的功能是对数据进行各种算术运算和逻辑运算,即对数据进行加工处理。 存储器(Memory):存储器的功能是…

    Linux干货 2016-10-25
  • 10yum源的配置

    yum仓库使用起来特别方便,然而使用之前当然是要配置的啦。下面就介绍一下怎么从0 配置一个yum仓库。 首先要创建yum仓库,当然不能使只给一台服务器用,那要给多个服务器用的话,就需要网络服务。yum仓库支持的网络服务有两种,FTP和HTTP。用yum主要用到的是数据传输,因此FTP更适合创建yum仓库,下面就以FTP为例,说明一下yum仓库的配置。 第一步…

    Linux干货 2016-11-04