前言
运维过程中宿主机难免会宕机,如果系统中的一些基础服务没有设置开机启动是一件挺难受的事情。
1.写入系统启动脚本
很简单的方式写个脚本就成
如果软件的启动脚本比较简单,直接写入到rc.local
文件即可,如下:
##写入备注
echo "##启动ntp服务" >> /etc/rc.d/rc.local
##写入执行脚本
echo "systemctl start ntpd.service" >> /etc/rc.d/rc.local
##rc.local附执行权限
chmod +x /etc/rc.d/rc.local
如果启动脚本复杂就另写一个shell脚本,如下:
目录存放在 /opt/ntp.sh
#!/bin/bash
systemctl start ntpd.service
##新写的脚本赋予权限
chmod +x /opt/ntp.sh
##写入备注
echo "##启动ntp服务" >> /etc/rc.d/rc.local
##写入执行脚本
echo "/opt/ntp.sh" >> /etc/rc.d/rc.local
##rc.local附执行权限
chmod +x /etc/rc.d/rc.local
2.使用systemctl
较为优雅的方式,但是有风险有些服务之间有依赖,例如chronyd服务自启会影响ntp服务的自动启动
前往 cd /usr/lib/systemd/system
创建或修改unit
心态崩了,不想写这种方式了,脚本的多简单,了解一些常用的命令就行了。
常用命令如下:
#查看所有开机启动项的状态
systemctl list-unit-files
#查看指定服务是否已设置开机启动
systemctl list-unit-files|grep ‘服务名成’
#查看所有已设置开机启动的服务
systemctl list-unit-files|grep enable
#将服务设置为开机启动
systemctl enalbe 服务名称
# 加载服务配置 修改完文件后需要重新加载配置
systemctl daemon-reload
网友评论