Linux 启动管理

1、启动流程  

    (01)、运行级别

        

     
    (02)、运行级别命令

         (01)、运行级别命令  =>  runlevel

        (02)、#改变运行级别命令 =>  init  运行级别

    (03)、#系统开机后直接进入哪个运行级别   =>  vim /etc/inittab

         id:3:initdefault :  系统默认运行级别

          

    (04)、启动流程图

        

    (05)、initramfs内存文件系统

        CentOS 6.x中使用initramfs内存文件系统 取代了CentOS 5.x中的initrd RAM Disk。

        他们的作用类似,可以通过启动引导程序 加载到内存中,然后加载启动过程中所需 要的内核模块,

        比如USB、SATA、SCSI 硬盘的驱动和LVM、RAID文件系统的驱动

        mkdir /tmp/initramfs
        #建立测试目录
        cp /boot/initramfs-2.6.32-279.el6.i686.img /tmp/initramfs/
        #复制
        initramfs文件 cd /tmp/initramfs/ file initramfs-2.6.32-279.el6.i686.img mv initramfs-2.6.32-279.el6.i686.img initramfs-2.6.32-279.el6.i686.img.gz
        #修改文件的后缀名为.gz
        gunzip initramfs-2.6.32-279.el6.i686.img.gz
        #解压缩
        file initramfs-2.6.32-279.el6.i686.img cpio -ivcdu < initramfs-2.6.32-279.el6.i686.img
        #解压缩

     (06)、调用/etc/init/rcS.conf配置文件

        主要功能是两个:

           先调用/etc/rc.d/rc.sysinit,然后由 /etc/rc.d/rc.sysinit配置文件进行Linux系统初 始化。

           然后再调用/etc/inittab,然后由/etc/inittab配 置文件确定系统的默认运行级别。

    (07)、由/etc/rc.d/rc.sysinit初始化

          1、获得网络环境

          2、挂载设备

          3、开机启动画面Plymouth(取替了过往的 RHGB)

          4、判断是否启用SELinux

          5、显示于开机过程中的欢迎画面

          6、初始化硬件

          7、用户自定义模块的加载

          8、配置内核的参数

          9、设置主机名

          10、同步存储器

          11、设备映射器及相关的初始化

          12、初始化软件磁盘阵列(RAID)

          13、初始化 LVM 的文件系统功能

          14、检验磁盘文件系统(fsck)

          15、设置磁盘配额(quota)

          16、重新以可读写模式挂载系统磁盘

          17、更新quota(非必要)

          18、启动系统虚拟随机数生成器

          19、配置机器(非必要)

          20、清除开机过程当中的临时文件

          21、创建ICE目录

          22、启动交换分区(swap)

          23、将开机信息写入/var/log/dmesg文件中

    (07)、调用/etc/rc.d/rc文件

          运行级别参数传入/etc/rc.d/rc这个脚本之 后,由这个脚本文件按照不同的运行级别 启动/etc/rc[0-6].d/目录中的相应的程序

             /etc/rc3.d/k??开头的文件(??是数字),会 按照数字顺序依次关闭

             /etc/rc3.d/S??开头的文件(??是数字),会 按照数字顺序依次启动

2、启动引导程序-Grub配置文件

    (01)、grub中分区表示

        

    (02)、grub配置文件   =>   vi /boot/grub/grub.conf

          default=0 默认启动第一个系统

          timeout=5 等待时间,默认是5秒

          splashimage=(hd0,0)/grub/splash.xpm.gz   这里是指定grub启动时的背景图像文件的保存位置的

          hiddenmenu 隐藏菜单

          title CentOS (2.6.32-279.el6.i686)   title就是标题的意思

          root (hd0,0)       是指启动程序的保存分区

          kernel /vmlinuz-2.6.32-279.el6.i686 ro root=UUID=b9a7a1a8-767f-4a87-8a2b-a535edb362c9 rd_NO_LUKS KEYBOARDTYPE=pc KEYTABLE=us rd_NO_MD crashkernel=auto     

            LANG=zh_CN.UTF-8 rd_NO_LVM rd_NO_DM rhgb quiet   定义内核加载时的选项

          initrd /initramfs-2.6.32-279.el6.i686.img     指定了initramfs内存文件系统镜像文件的所在位置

     (03)、grub加密   =>    grub-md5-crypt         #生成加密密码串

    (04)、编辑文件  =>    vi /boot/grub/grub.conf

          default=0

          timeout=5

          password --md5 $1$Y84LB1$8tMY2PibScmuOCc8z8U35/      (就让这句话就可以) #password选项放在整体设置处。

          splashimage=(hd0,0)/grub/splash.xpm.gz hiddenmenu

3、单用户模式常见的错误修复

    遗忘root密码

    修改系统运行级别

  grup密码破解方式:通过光盘启动,把从光盘启动绕过硬盘启动

    重要系统文件丢失,导致系统无法启动

      bash-4.1# chroot /mnt/sysimage

      #改变主目录

      sh-4.1# cd /root

      sh-4.1# rpm -qf /etc/inittab

      #查询下/etc/inittab文件属于哪个包。

      sh-4.1# mkdir /mnt/cdrom #建立挂载点

      sh-4.1# mount /dev/sr0 /mnt/cdrom #挂载光盘

      sh-4.1# rpm2cpio /mnt/cdrom/Packages/initscripts-8.45.3-1.i386.rpm | cpio -idv ./etc/inittab

      #提取inittab文件到当前目录

      sh-4.1# cp etc/inittab /etc/inittab

      #复制inittab文件到指定位置

 4、Linux安全性

    

原文地址:https://www.cnblogs.com/patriot/p/7942391.html