Linux引导过程和服务

一、Linux操作系统引导过程

1.引导过程

bios 加电自检——mbr——grub——加载内核——启动进程

        加电后BIOS程序回自检硬件,硬件无故障后,会根据第一次启动项去找内核,一般来说第一启动项是硬盘,找到硬盘后,会根据mbr指引找到完整的grub程序,再根据grub的配置文件找到内核文件具体位置,然后将内核文件加载到内存中运行内存加载好会启动第一个程序。

BIOS:检测硬件是否正常,然后根据BIOS中的启动项设置,去找内核文件

mbr:应为grub太大第一个扇区存不下所有的grub程序,所以分为两部分指引硬件找到内核文件

grub:根据grub配置文件中记录的位置,找到内核文件

加载内存:把内核运行在内存中

启动进程:启动第一个祖宗进程centos 6:init   centos 7:systend

区别

init :串行启动后续的程序一个一个按顺序启动

systemd: 是并行启动程序全部一起启动

二、服务排除启动类故障

2.1  systemd服务

systemd 是系统级的程序 代为管理系统上的服务程序

systemd 保姆级 

yum以及rpm安装的软件可以直接使用systemctl去启动关闭,重启开机自启等功能编译安装,不可直接使用systemctl 命令去管理程序,需手写一个配置文件

2.2  Linux设置运行级别

格式:init   数字   runlevel  当前等级

Linux操作系统有运行级别

0:关机
1:单用户模式(root自动登录), single, 维护模式
2:多用户模式,启动网络功能,但不会启动NFS;维护模式
3:多用户模式,正常模式;文本界面
4:预留级别;可同3级别
5:多用户模式,正常模式;图形界面
6:重启

2.3  修复mbr分区

        MBR位于第一块硬盘(/dev/sda)的第一个物理扇区处,总共512字节,前446个字节是GRUB程序,后面64个字节是分区表。

故障原因

病毒、木马的等造成的破坏;

不正确的分区操作、磁盘读写误操作等。

故障现象

找不到引导程序,启动中断;

无法加载操作系统,开机后黑屏

①备份mbr引导扇区到其他磁盘

②模拟破坏mbr引导扇区

③引导镜像急救模式进行mbr扇区恢复

练习1:模拟破坏mbr和分区表然后修复

第一步:新加一块硬盘,将文件备份到新盘

第二步:备份mbr分区表

第三步:模拟破坏

然后进入急救模式:选项3、2、1 

ip a a 192.168.100.100 dev ens33
配置IP地址
scp 192.168.100.100:/mbr.bak .
dd if=./mbr.bak of=/dev/sda bs=512 count=1


mkdir /bak
mount /dev/sdb1 /bak
dd if=/bak/mbr.bak of=/dev/sda


#备份MBR分区表
dd if=/dev/sda of=/data/dpt.img bs=1 count=64 skip=446
scp /data/dpt.img 10.0.0.102:
#破坏MBR分区表
[root@centos8 ~]#dd if=/dev/zero of=/dev/sda bs=1 count=64 seek=446
#无法启动
[root@centos8 ~]#reboot
#用光盘启动,进入rescue mode,选第3项skip to shell
#配置网络
#ifconfig ens33 10.0.0.8/24
#ip a a 10.0.0.8/24 dev ens33
#scp 10.0.0.102:/root/dpt.img ./
#恢复MBR分区表
#dd if=dpt.img of=/dev/sda bs=1 seek=446
#reboot

2.4  修复grub分区

故障原因

MBR中的GRUB引导程序(1-446字节)遭到破坏

grub.cfg文件丢失,引导配置有误,文件位置/boot/grub2/grup.cfg

故障现象

系统引导停滞,显示grub >提示符

第一步: 模拟破坏grub.cfg 配置文件

mv  /boot/grub2/grub.cfg/opt

第二步:重启今日急救模式 3、2、1

第三步:先切换根,从光盘的根切换到自己系统的根

chroot  /mnt/sysimage 

第四步:重新安装grub 2 程序在sda磁盘里

grub2 -install   /dev/sda

第五步:重新生成配置文件

grub2  -mkconfig  -o  /boot/grub/grub.cfg

exit

reboot

2.5 破解密码

有光驱

chroot  /mnt/sysimage              切换根目录

passwd                                      修改密码

无光驱

进入系统再选择  内核界面选择带一个选项按e

将光标移动到 Linux 开头行的最后,添加rd.break

ctrl +x   运行

进入单用户

重新挂载mount  -o  remount.rw /sysroot  添加读写权限

chroot  /sysroot  切换到真正的根

passwd      修改密码

touch /.autorelabel         如果你开启了selinux要重新打上标记

三、服务控制及切换运行级别

3.1 系统服务控制

Systemctl

格式:

Systemctl   控制类型   服务名称

start 启动
stop 停止
restart 重新启动
reload 重新加载
status 查看服务状态

你可能感兴趣的:(linux,运维,服务器)