一、Linux系统文件

1. /etc 初始化系统重要文件

    /etc/sysconfig/network-scripts/ifcfg-eth0 :网卡配置文件

    /etc/resolv.conf :Linux系统DNS客户端配置文件

    /etc/hostname:(CentOS 7)主机名配置文件

    /etc/sysconfig/network:(CentOS 6)主机名配置文件

    /etc/hosts:系统本地的DNS解析文件

    /etc/fstab:配置开机设备自动挂载的文件

    /etc/rc.local:存放开机自启动程序命令的文件

    /etc/inittab:系统启动设定运行级别等配置文件

    /etc/profile和/etc/bashrc:配置系统环境变量/别名等的文件

    /etc/profile.d:用户登录后执行的脚本所在的目录

    /etc/issue和/etc/issue.net:配置在用户登录终端前显示信息的文件【】

    /etc/init.d:软件启动程序所在目录(CentOS 6)

   /usr/lib/systemd/system :软件启动程序所在目录(CentOS 7)

   /etc/motd:配置用户登录系统之后显示提示内容文件

   /etc/redhat-release:声明Redhat版本号和名称信息文件

   /etc/sysctl.conf:Linux内核参数设置文件

   /etc/security/limits.conf :用户句柄数

   

linux开机启动dockerd Linux开机启动文件_加载

  

linux开机启动dockerd Linux开机启动文件_初始化_02

  

linux开机启动dockerd Linux开机启动文件_linux开机启动dockerd_03

  

linux开机启动dockerd Linux开机启动文件_初始化_04

 

linux开机启动dockerd Linux开机启动文件_linux开机启动dockerd_05

 

linux开机启动dockerd Linux开机启动文件_linux开机启动dockerd_06

2. /proc重要路径

   /proc/meminfo:系统内存信息

   /proc/cpuinfo:关于处理器的信息

   /proc/loadavg:系统负载信息,uptime的结果

   /proc/mounts:已加载的文件系统列表

 

linux开机启动dockerd Linux开机启动文件_初始化_07

linux开机启动dockerd Linux开机启动文件_CentOS_08

linux开机启动dockerd Linux开机启动文件_linux开机启动dockerd_09

3. /var 目录下文件

    /var/log:记录系统及软件运行信息文件日志所在的目录

    /var/log/message:系统级别日志文件

    /var/log/secure:用户登录信息日志文件

    /var/log/dmesg:记录硬件信息加载情况日志文件

linux开机启动dockerd Linux开机启动文件_初始化_10

二、Linux开机启动流程

linux开机启动dockerd Linux开机启动文件_CentOS_11

1.  bios自检,主要检查硬件是否健康。

2. bios—>post,bios进行加电自检(POST)过程 ,检测计算机各种硬件信息

3. MBR引导,读取所在磁盘的操作系统核心文件

4. GRUB引导,加载到内核

5. 加载内核,进行自身初始化。

6. 启动init进程,init启动的顺序:/sbin/init->/etc/init->/bin/init->/bin/sh

7. 读取/etc/inittab文件,文件里面定义了系统默认运行级别。初始化运行级别,系统初始化脚本,对应级别的脚本目录等。

8. 执行/etc/rc.d/rc.sysinit程序,系统初始化一些脚本,主要完成,设置主机名,设置欢迎信息等。

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

linux开机启动dockerd Linux开机启动文件_linux开机启动dockerd_12

  CentOS 6和CentOS 7启动流程差不多,只是到了init程序启动时,修改成了systemd。

  1. uefi或者bios初始化,开始post开机自检

  2. 加载mbr到内存

  3. 加载内核和inintamfs模块

  4. 内核开始初始化,使用systemd代替init程序

      执行initrd.target,包括挂载/etc/fstab文件中的系统,此时挂载后,就可以切换到根目录了

     从initramfs根文件系统切换到磁盘根目录

      systemd执行默认target配置