引言
/etc/rc.local启动方法已不再适用。本文将向您展示如何将Shell脚本转换为Systemd服务,以便在CentOS环境中实现自动化管理,保持系统的高效运行。
操作步骤
编写Shell脚本
#!/usr/bin/env bash
sudo ip route del default via 192.168.1.254sudo ip route add 192.168.101.0/24 via 192.168.1.254 dev ens33
确保脚本具有执行权限:
sudo chmod +x /usr/local/bin/routeadd.sh
创建Systemd服务文件
/etc/systemd/system/目录下,并包含以下内容:
[Unit]
Description=routeadd
After=network.target
[Service]
Type=oneshot
ExecStart=/usr/local/bin/routeadd.sh
Restart=on-failure
[Install]
WantedBy=multi-user.target
赋予服务文件执行权限,并启用服务:
sudo chmod +x /etc/systemd/system/xx.service
sudo systemctl enable xx.service
现在,您可以通过查看启动服务列表来确认您的自定义服务已成功设置:

配置免密sudo
/etc/sudoers文件来实现:
# 对于sudo组中的所有用户生效
%sudo ALL=(ALL:ALL) ALL
%sudo ALL=(ALL:ALL) NOPASSWD: /usr/sbin/ip,/usr/bin/systemctl
# 如果只需要对特定用户生效,取消注释以下行并替换用户名
# test ALL=(ALL:ALL) ALL
# test ALL=(ALL:ALL) NOPASSWD: /usr/sbin/ip,/usr/bin/systemctl

结语
k8s核心实战课程星球
k8s核心实战课程星球,课程录制中,光课件就150多万字,课程2000节以上,时长400小时以上,讲解所有k8s核心api和一些扩展api,crd数量150个以上,讲解所有feature gate. 本星球会把录制的所有课程都放出来,包括后续要录的100多门云原生课程,费用首次只要200后续续费很便宜,相当于你买了一个的会员,就能享受到所有课程服务

- EOF -
看完本文有收获?请分享给更多人
推荐关注「Linux 运维进阶之路」,提升Linux技能

文章转载自Linux运维进阶之路,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




