linux使用systemd配置开机自动运行脚本 |
您所在的位置:网站首页 › linux脚本启动程序和手动启动程序的区别是什么 › linux使用systemd配置开机自动运行脚本 |
编写测试脚本
首先我们编写一个简单的测试脚本example.sh用于开机时自动执行,该测试脚本将当前时间写入用户目录下的start_time.txt。 example.sh脚本具体内容如下: #!/bin/sh date > ~/start_time.txt注意,第一行的#!/bin/sh是必须的,否则会报错Exec format error。 接着我们给example.sh添加执行权限: chmod +x example.sh我们可以先执行一下脚本看是否是我们预期的结果。 编写服务脚本然后前往 /etc/systemd/system目录,创建一个auto_start.service服务单元文件,内容如下: [Unit] Description=auto run example after starting [Service] ExecStart=~/example.sh [Install] WantedBy=multi-user.target其中Description简单描述了服务,WantedBy表示该服务所在的服务组。 这里的关键是在ExecStart参数中填入example.sh脚本的路径。 使服务生效完成服务脚本编写后,需要执行以下命令重新加载所有的systemd服务,否则会找不到auto_start.service服务。 sudo systemctl daemon-reload然后通过 systemctl 命令来控制服务启停,控制命令语法如下: # 管理服务 [使能自启动|启动|停止|重启|查看状态] sudo systemctl [enable|start|stop|restart|status] xxx.service现在可以执行下面命令启动auto_start.service服务。 sudo systemctl start auto_start.service查看start_time.txt检查服务是否正确启动。 Thur April 11 11:10:29 UTC 2024为了使每次启动后能自动执行服务,我们需要使能该服务,使用如下命令: sudo systemctl enable auto_start.service重启后查看start_time.txt检查服务是否正确自动启动。 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |