Linux 引导过程和服务控制

1.引导过程在这里插入图片描述
2.CentOS7启动过程

POST(power on self test加电自检)→BootSequence→Bootloader→kernel+initranfs(initd)→rootfs→/sbin/init
注:BIOS(Basic Input Output System)

3.不同系统引导过程

* 

windowsbootloader:ntloader
*
Linuxbootloader:LILO/GRUB/grub2

4.linux内核:模块化

* 

内核文件:/boot/vmlinuxz-VERSION-realease
*
模块文件:/lib/modules/VERSION-realease/
*
注:kernel:内核 initranfs:初始化内存文件系统 initrd(ramdisk):内存硬盘

5.父引导进程

CentOS7父引导进程:/usr/lib/systemd/systemd-switche
CentOS6父引导进程:/sbin/init

6.MBR扇区(512字节)故障原因

* 

病毒,木马造成破坏(如硬盘炸弹)
*
不正确分区操作,硬盘读写误操作

7.故障现象

* 

找不到引导程序,启动中断
*
无法加载系统,开机黑屏

8.解决思路

* 

提前备份
*
开机光盘引导进入急救模式
*
从备份文件中恢复

9.模拟sda损坏并修复(前512字节)

fdisk /dev/sdb #创建主分区
mkfs.xfs /dev/sdb1 #格式化
mkdir /backup #创建备份目录
mount /dev/sdb1 /backup #硬盘挂载到目录
dd if=/dev/sda of=/backup/sda.mbr.bak bs=512 count=1 #拷贝sda前512字节到备份目录
dd if=/dev/zero of=/dev/sda bs=512 count=1 #模拟损坏sda前512字节
reboot #重启
进入急救模式
mkdir /aaa #创建目录
mount /dev/sdb1 /aaa #挂载硬盘
dd if=/aaa/sda.mbr.bak of=/dev/sda bs=512 count=1 #把之前拷贝内容复制到sda中
reboot #重启
在这里插入图片描述
在这里插入图片描述
10.GRUB引导故障

* 

故障原因:

                    1.MBR中的GRUB引导程序遭到破坏
                    2.grub.conf文件丢失,引导配置有误
* 

故障现象:系统引导停滞,显示“grub>”提示符
*
解决思路:

                    1.手动输入
                    2.进入急救模式,重建grub程序
                    3.若无MBR备份,进入急救模式,重新安装grub程序

在这里插入图片描述
在这里插入图片描述
11.GRUB引导故障

* 

前446字节损坏:重新写命令安装(chroot/mnt/sysimage,grub2install /dev/sda)或者使用dd命令将前446字节内容拷贝进sda前446字节中
*
无grub菜单:

                         1.手动输入命令(less /boot/grub2/grub.conf中的配置信息,)
      grub>insmod xfs
    grub>set root=(hd0,msdos1)
    grub>linux16 /vmlinuz-xxxxx root=/dev/mapper/centos-root
    grub>initrd16 /initramfs-.xxxxx.imggrub>boot
                         2.修改开机启动顺序,从备份文件中写入。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
12.Linux中各种密码设置

1.root密码:
*
CentOS6中进入单用户模式,口诀:e2e,空格1,回车再按B。 passwd,reboot
*
CentOS7中进入单用户模式,e,linux16一行中末尾加入 init=/bin/sh。按下control+X,

      mount -o remount,rw/ 以读写方式重新挂载根目录,passwd,exec /sbin/init 开启这个功能

在这里插入图片描述
2.grub密码:
*
CentOS6删除grub密码:进入单用户模式,/boot/grub/grub.conf中的passwd删除即可。
*
CentOS6设置grub密码:vi /boot/grub/gurb.conf ,在title上面写入passwordXXXXXXX。
*
CentOS7设置grub密码:cd/boot/grub2,grub2-setpassword。 cat /boot/grub2/ user.cfg
*
CentOS7删除grub密码: 删除密码配置文件即可

在这里插入图片描述
13.开机默认运行级别

CentOS6

Cat /etc/redhat-release
CentOS release 6.5 (Finanl) #是6.5版本
Vim /etc/inittab
在这里插入图片描述
在这里插入图片描述
CentOS7
在这里插入图片描述
14.服务控制及优化启动在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
15.systemctl 示例
显示所有单元状态
systemctl 或systemctl list-units
只显示服务单元的状态systemctl --type=service
显示sshd服务单元systemctl –l status sshd.service
验证sshd服务当前是否活动
systemctl is-active sshd
启动,停止和重启sshd服务
systemctl start sshd.servicesystemctl stop sshd.servicesystemctl restart sshd.service
重新加载配置
systemctl reload sshd.service
列出活动状态的所有服务单元
systemctl list-units --type=service
列出所有服务单元
systemctl list-units --type=service --all
查看服务单元的启用和禁用状态
systemctl list-unit-files --type=service
列出失败的服务
systemctl --failed --type=service
列出依赖的单元
systemctl list-dependencies sshd
验证sshd服务是否开机启动
systemctl is-enabled sshd
禁用network,使之不能自动启动,但手动可以
systemctl disable network
启用
networksystemctl enable network
禁用network,使之不能手动或自动启动
systemctl mask network
启用
networksystemctl unmask network

猜你喜欢

转载自blog.csdn.net/qq_39109226/article/details/109398355
今日推荐