linux 引导过程和服务控制

2023-07-10,,

目录

一、引导分区

二、服务控制

三、运行级别

四、systemd初始化

五、模拟错误

一、引导分区

  原理:引导分区是指在开机启动到进入系统这之间的过程

  引导分区的过程:1.开机自检

            自检顺序:BIOS,cup,内存,显卡,键盘

                  根据预设的顺序控制权交给硬盘(第一个硬盘或者光驱)

          2.mbr引导

            机器的硬盘启动系统,从第一个硬盘扇区的mbr主引导分区的位置开始

              主引导分区512字节,记录硬盘分区,是进入文件系统,设备,配置文件

                  硬盘结束交给grub分区

          3.grub菜单启动

            位置/boot/grub2/grub.cfg

            主要是显示系统选择

          4.加载内核

            目录位置:/boot/vmlinuz-3.10.0-693.e17.x8664

            编译好的特殊二进制文件,是硬盘和系统之间的连接,将内核和相关的系统镜像文件加载到内                           存中,交给进程初始化

          5.进程初始化

            目录位置:/sbin/init

             将/sbin/init中的程序(内核和硬件文件)加载到内存中,完成初始化

              完成初试化后可以进入系统

二、服务控制

  使用systemctl命令管理服务类型

    服务的目录:/user/lib/systemd

    服务命令:systemctl start开启服务

         systemctl stop关闭服务

         systemctl restart 重启服务

         systemctl reload重新加载服务配置文件

         systemctl status 查看服务状态

         systemctl enable开机自启

         systemctl disable 关闭开机自启

      

    systemctl status firewalld.service 查看防火墙的状态

    关闭防火墙

    命令:systemctl stop firewalld.service

       可以看到actice已经是dead了

    打开防火墙

    可以看到active已经是running了

      

三、运行级别

   原理:是指现在的系统页面是什么类型,可以是单用户,字符型用户

   使用runlevel查看当前运行级别和之前运行级别

    N代表之前没有改变,3表示当前运行级别是3字符界面

   运行级别分类:0:关机(target)

          1:单用户,在生产中只有系统维护时会进入单用户模式(rescue.target)

          2,3,4相当于字符页面(multi-user.target)

          5:图形化界面(graphical.target)

          6:  重启(reboot.target)

          

   便捷操作:init +数字

    可以看到init 5将当前页面改为5图形化界面

    

    默认级别:表示开机时默认进入哪个级别

        查看默认级别:systemctl get-defaults

        可以看到当前默认级别时字符界面,所以开机时自动进入字符页面

        修改默认级别过程:

          1.查看默认级别:systemctl get-default

          2.修改默认级别:systemctl set-default

            将其默认级别改为图形化界面(在这里必须使用graphical.target格式)

          3.关机重启

            查看默认级别,可以看到已经修改完成

四、进程初始化

    初试化区别:两种init和systemd

       init现在已经基本淘汰,init是串行启动,速度较慢

       systemd是centos中一种init软件,是并行启动,速度较快

  init:目录文件/sbin/init

  systemd:目录文件/lib/systemd/systemd

  systemd单元类型:

    1.service:启动管理系统服务

    2.target:系统运行级别状态

    3.socket:端口服务,提供网络套接字,为端到端之类的服务提供通信

    4.device:硬件管理服务

    5.path:管理文件和目录状态

五、模拟错误

  前提必须勾选,否则无法进入急救模式

  1.主分区引导错误

    假设sda主分区丢失或者误删

    一、用lsblk看一下磁盘状态

  二、计划故意将sda的主分区删除,所以提起将sda的主分区备份给一个正在挂载的sdb1

  首先将sdb5挂载

    通过dd if=/dev/sda of=/backup/mbr.bak bs=512 count=1

      从sda中到backup复制一个mbr.bak文件,大小512次数1次

      必须要在文件夹外输入命令,否则不能写入

     

 现在已经备份好,接下来让sda主分区文件损坏

      看一下要损坏512大小文件

      将一份512空文件写入sda,损坏文件

  重启后发现没有系统了,找不到了

  选择troubleshooting模式

    进入急救模式rescue a centos system

    

  选择continue(继续)

  1,回车在回车进入sh-4.2shell模式

    创建文件夹backupdir,并将备份文件所在硬盘挂载

  可以看到有文件,将这个文件

  重新写入sda,exit退出

  可以看到grup菜单又出来了,说明sda找到主分区了

  2.grup菜单错误

    删除grub文件,导致找不到系统

  重新进入会发现grup找不到

  重新启动,进入梣centos页面就点exc键,一定要速度快,否则无法选中。

  选从cd进入

    再次进入模式troubleshooting

    进入急救模式rescue

      切换到光盘映像根目录

      重新将grub引导程序文件安装到sda的mrb扇区

    重新构建grup的配置文件

  退出根目录,重启

  可以看到又进入了grup菜单

  3.修改root密码

  修改之前要关闭安全

  setenforce 0关闭安全机制

  同样进入sh-4.2#

    进入cd根目录,之间passwd ,将123456改为123

  直接可以重启,新密码进入

linux 引导过程和服务控制的相关教程结束。

《linux 引导过程和服务控制.doc》

下载本文的Word格式文档,以方便收藏与打印。