17-1 systemd的服务service文件实现(系统启动和内核管理)17-2 target管理和grub2故障排查

发布时间 2023-07-06 15:50:44作者: 最拉的刺客

一、systemd特性

编写service需要在cd /lib/systemd/system 里面新增执行文件
systemctl daemon-reload  需要加到内存中,编写完service
 tail -f /var/log/messages 看到实时日志

ubuntu系统service编辑stop一行需要绝对路径
tail -f /var/log/syslog   看日志路径

如果不写service文件,需要在/etc/rc.local 文件可以直接写入

写service文件格式:
[Unit]
Description=hello word
[Service]
TimeoutStartSec=0
ExecStart=/bin/sh -C ""
ExecStop=kill sh
[Install]
WantedBy=multi-user.target


需要新建/etc/rc.local 文件 编辑完后需要加执行权限 chomd +x /etc/rc.local 开机启动
例如:
#!/bin/bash
echo -e '\E[31;1m starting rest service\E[0m'
sleep 10

二、运行级别 target  就是资源集合

[root@centos8 ~]#grub2-mkconfig > /boot/grub2/grub.cfg 重新生成grub2文件
修复grub2 install
[root@centos8 ~]#systemd-analyze plot > boot.html  开机启动顺序 sz boot.html 导出生成html文件查看

三、破解centos7和8root密码

出现linux开机字样后 按e键进入
找到linux哪一行,移动到末尾添加:rd.break
ctrl+x启动
需要重新挂载执行权限:mount -o remount,rw /sysroot
重新设置密码:passwd root

如果SELinux是启用的情况下:touch /.autorelabel 命令


使用grub2进行密码保护

grub2-setpassword  会在/boot/grub2/生成一个user.cfg文件,不想使用grub2密码保护,直接上次user.cfg文件
find /lib/modules/6.4.1-liujinxi-magedu/ -name "*.ko" 搜索编译安装内核的文件
rm -rf /lib/modules/6.4.1-liujinxi-magedu/ 删除
rm -rf /boot/*6.4.1*
find /boot -name "*6.4.1*" -delete 删除干净
grub2-mkconfig -o /boot/grub2/grub.cfg 在重新生成grub2

grub2-set-defsult 1 设置内核启动,0为救援模式。

四、删除boot下所有文件救援模式修复步骤

chroot /mnt/sysimage 需要切到真正的根目录下
grub2-install /dev/sda 生成grub2
安装kernel
mount /dev/sr0 /mnt  挂载光驱
rpm -ivh /mnt/Packages/kernel-3.10.0-1062.e17.x86.rpm --force 安装内核包并强制安装
修复grub
grub2-mkconfig -o /boot/grub2/grub.cfg
立即写磁盘生效
sync