第十七章 Linux系统启动原理以及故障排除

本节所讲内容

17.1  centos6  系统启动过程中以及相关的配置文件

17.2  centos7  系统启动过程中相关配置文件

17.3  实战-加密grub 房子黑客通过但用户系统破解root

17.4   实战-通过liveCD  进入救模式-重装grub 修复损害的系统






17.2   centos7  系统启动过程中以及相关配置文件

Centos  引导顺序

1  UEFI  或者BIOS 初始化,运行POST开机自检

2  选择启动设备

3 引导装载程序,centos是grub2

4  加载装载的配置文件, /etc/grub.d/   /etc/default/grub   /boot/grub2/grub.cfg

5 加载内核选项

6 加载initramfs 始化伪文件系统

7 内核初始化,cento7  使用systemd 代替init  

8  执行initrd.target  所欲单元,包括挂载/etc/fstab   

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

10  systemd  执行默认target配置,配置文件/etc/systemd/system/default.target

11  systemd  启动multi-user.target  下的本机与服务器服务

12 systemd   执行multi-user.target  下的/etc/rc.d/rc/local

14  systemd  执行multi-user.target 下的、getty.target 以及服务

15  systemd  执行graphical   需要的服务

 1)首先打开 配置文件

[root@xueshen65 ~]# vim /boot/grub2/grub.cfg

2) 

[root@xueshen65 ~]# ls /boot/grub2/

device.map  fonts  grub.cfg  grubenv  i386-pc  locale

4)

[root@xueshen65 ~]# ls /boot/grub2/i386-pc/

acpi.mod              ehci.mod                http.mod                  offsetio.mod        spkmodem.mod

adler32.mod          elf.mod                iorw.mod                  ohci.mod            squash4.mod

affs.mod              eval.mod                iso9660.mod              part_acorn.mod      syslinuxcfg.mod

afs.mod              exfat.mod              jfs.mod

5)

[root@xueshen65 ~]# ls /boot/grub2/i386-pc/core.img

/boot/grub2/i386-pc/core.img

6)

[root@xueshen65 ~]# ll !$

ll /boot/grub2/i386-pc/core.img

-rw-r--r--. 1 root root 26703 3月  18 21:05 /boot/grub2/i386-pc/core.img

7)  [root@xueshen65 ~]# ll /boot/grub2/i386-pc/core.img -h

-rw-r--r--. 1 root root 27K 3月  18 21:05 /boot/grub2/i386-pc/core.img

 8

[root@xueshen65 ~]# ll /boot/grub2/i386-pc/boot.img

-rw-r--r--. 1 root root 512 3月  18 21:05 /boot/grub2/i386-pc/boot.im


当我们记不住服务的名字的时候可以使用一下命令

[root@xueshen65 ~]# cd /usr/lib/systemd/system

[root@xueshen65 system]# ls

el3.target

[root@xueshen65 system]# ls *Network*

NetworkManager-dispatcher.service  NetworkManager.service  NetworkManager-wait-online.service


假设  我们修改了NetworkManager  

1)[root@xueshen65 system]# vim NetworkManager.service

2)[root@xueshen65 system]# systemctl daemon-reload





 我们使用一下来看机器上游多少target  
[root@xueshen65 system]# ls /usr/lib/systemd/system/*.target


 systemctl list-unit-files --type target   查看所有target 的状态

[root@xueshen65 system]# systemctl list-dependencies runlevel3.target     #查看3级别Unit  的所有依赖


[root@xueshen65 system]# systemctl list-dependencies runlevel3.target | grep NetworkManager

● ├─NetworkManager.service


例2     在centos7  上切换到字符界面

systemctl  isolate  multi-user.target   


  1) [root@xueshen65 system]# systemctl set-default name.target     来修改我们的标志

我们看一下我们的默认目标究竟为何物

2 )[[root@xueshen65 system]# ll /etc/systemd/system/default.target

lrwxrwxrwx. 1 root root 36 3月  18 21:05 /etc/systemd/system/default.target -> /lib/systemd/system/graphical.target


1 )[root@xueshen65 system]# vim /etc/default/grub

2)

3)  打开这个查看有多少个内核

[root@xueshen65 system]# vim /boot/grub2/grub.cfg


 4)使用uname   -r     查看我们的内核


5)  加载内核

[root@xueshen65 system]# grub2-mkconfig -o /boot/grub2/grub.cfg



17.3   实战-加密grub  防治黑客通过单用户系统破解root密码

实战场景 :如何防治别人恶意通过单用户系统来破解root密码,进入系统窃取数据

 给grub 加密,不让别人通过grub 进入单用户

17.3.2   基于centos7   进行加密

生成密码

1) [root@xueshen65 ~]# grub2-mkpasswd-pbkdf2

输入口令:

Reenter password:

PBKDF2 hash of your password is grub.pbkdf2.sha512.10000.1DCB47DF2C836A0F78078E4A31BF2F5646F7AD48B504EEA57CD352E5E913CDB47D2EDC1A194356881E3D44CBDF079995BF60DE9DD71DDB877CB3B4A0C4B8490F.DF0BF1CB135262AFDFE5CF7067C1F740523B8AADDFBF24DC684EE45C69564F8C8EF9164EF76CCFEA9323293DF067AECDD894923E4F8BB16B6AE593ECAABB7048

打开以下

2 )[root@xueshen65 ~]# vim /etc/grub.d/00_header   

在  最后插入以下内容,主centos这个用户名可以换成自己的名字

cat <

set superusers='centos'

password_pbkdf2  centos  grub.pbkdf2.sha512.10000.1DCB47DF2C836A0F78078E4A31BF2F5646F7AD48B504EEA57CD352E5E913CDB47D2EDC1A194356881E3D44CBDF079995BF60DE9DD71DDB877CB3B4A0C4B8490F.DF0BF1CB135262AFDFE5CF7067C1F740523B8AADDFBF24DC684EE45C69564F8C8EF9164EF76CCFEA9323293DF067AECDD894923E4F8BB16B6AE593ECAABB7048


  更新以下内容
3)  [root@xueshen65 ~]# grub2-mkconfig -o /boot/grub2/grub.cfg    更新grub  内容


17.4   实战通过liveCD  进入救模式,重装grub   修复损害的系统

实战:使用系统光盘进入求救模式拯救环境的系统

实战场景:当系统坏了,进不去了,H还需要把里面的数据复制出来,怎么办

可以进入救援模式拷贝数据

修改BOIS 启动顺序,直接以光盘引导系统

cenos7  

17.4.2   实战-当MBR  引导记录损害后-重装grub  进行修复

第一步:在centos7 下破坏446  字节

[root@xueshen65 ~]# dd if=/dev/zero of=/dev/sda bs=1 count=446

记录了446+0 的读入

记录了446+0 的写出

446字节(446 B)已复制,0.000716926 秒,622 kB/秒


第二步   reboot,将centos7 系统光盘挂载到虚拟机光盘上,重启计算机,修改BIOS 引导顺序

,让光盘启动






然后就可以正常启动了

使用场景:修复MBR,主要出现在安装双系统时,后安装的系统把 原来系统的MBR 删除了,需要修复

删除grub2 

第一步 [root@localhost ~]# rm -rf /boot/grub2


第二步  关机然后开机


你可能感兴趣的:(第十七章 Linux系统启动原理以及故障排除)