Ubu18开机自启动-Systemd
参考链接:
https://blog.csdn.net/qq_16268979/article/details/114771854
本文内容为个人测试记录,具体文件目录请以读者自己电脑为准,此处只是提供参考
个人学习难免有所疏漏,如有错误请包容并指出
看新的吧
https://www.cnblogs.com/guapilsh/p/15927452.html
1.准备程序
服务:autoRun.service
[Unit]
Description=AutoStart #z自定义服务名称,可选
After=network.target
[Service]
Type=simple
User=root
# 服务启动时执行的脚本,
### 使用sh命令包括其他Linux系统命令时都要使用全路径,/bin/sh等,包括.sh文件也需要使用绝对路径,才能找到。
ExecStart=/bin/sh /root/auto/start.sh
# 服务停止时执行的脚本
ExecStop=/bin/sh /root/auto/stop.sh
#Restart=on-failure
RestartSec=5s
[Install]
WantedBy=multi-user.target
服务启动脚本:start.sh, 这里选择用python做一个测试程序
#!/bin/bash
echo $! > /root/auto/autoRun.pid
python3 /root/auto/test.py
测试程序:test.py
#将当前时间输出到dd.log文件
from cmath import log
import os,time
while True:
time.sleep(1)
os.system("date >> /root/auto/dd.log ")
服务停止脚本:stop.sh
#/bin/bash
PID=$(cat /root/auto/autoRun.pid)
kill -9 $PID
rm -fr /root/auto/autoRun.pid
Demo程序和脚本准备完成
2.文件部署
将服务文件autoRun.service放到/lib/systemd/system目录下
sudo cp autoRun.service /lib/systemd/system/
将开始脚本start.sh、停止脚本stop.sh和测试程序test.py放到/root/auto/目录下
3.测试
注:为方便测试,我这里直接切换到root用户进行操作,实际操作请以个人为准(autoRun后的.service看个人喜好,可加可不加)
首先重新加载服务
systemctl daemon-reload
启动脚本(这里启动autoRrun是因为前面autoRun.service的命名)
systemctl start autoRun
查看服务状态
systemctl status autoRun
停止服务
systemctl stop autoRun
设置开机自启动
systemctl enable autoRun
4.预期结果
这里我是在云服务器+vscode-cnblog插件写的博客,图片上传没太搞明白,后续有机会补上
查询状态
root@Ubu18:~/auto# systemctl status autoRun
● autoRun.service - MicroAutoStart
Loaded: loaded (/lib/systemd/system/autoRun.service; enabled; vendor preset:
Active: active (running) since Wed 2022-01-26 01:57:53 CST; 10min ago
Main PID: 3393 (sh)
Tasks: 2 (limit: 4006)
CGroup: /system.slice/autoRun.service
├─3393 /bin/sh /root/auto/start.sh
└─3394 python3 /root/auto/test.py
1月 26 01:57:53 Ubu18 systemd[1]: Started MicroAutoStart.
检查python测试程序运行情况
root@Ubu18:~/auto# ps aux|grep test
kernoops 2173 0.0 0.0 56944 424 ? Ss 01:38 0:00 /usr/sbin/kerneloops --test
root 3394 0.0 0.2 31476 9536 ? S 01:57 0:00 python3 /root/auto/test.py
root 5304 0.0 0.0 16184 1084 pts/0 S+ 02:13 0:00 grep --color=auto test
root@Ubu18:~/auto#
查看dd.log记录:
root@Ubu18:~/auto# cat dd.log
2022年 01月 26日 星期三 02:14:27 CST
2022年 01月 26日 星期三 02:14:28 CST
2022年 01月 26日 星期三 02:14:29 CST
root@Ubu18:~/auto# ^C
root@Ubu18:~/auto# cat dd.log
2022年 01月 26日 星期三 02:14:27 CST
2022年 01月 26日 星期三 02:14:28 CST
2022年 01月 26日 星期三 02:14:29 CST
2022年 01月 26日 星期三 02:14:30 CST
2022年 01月 26日 星期三 02:14:31 CST
2022年 01月 26日 星期三 02:14:32 CST
2022年 01月 26日 星期三 02:14:33 CST
2022年 01月 26日 星期三 02:14:34 CST
2022年 01月 26日 星期三 02:14:35 CST
2022年 01月 26日 星期三 02:14:36 CST
2022年 01月 26日 星期三 02:14:37 CST
2022年 01月 26日 星期三 02:14:38 CST
2022年 01月 26日 星期三 02:14:39 CST
2022年 01月 26日 星期三 02:14:40 CST
2022年 01月 26日 星期三 02:14:41 CST
2022年 01月 26日 星期三 02:14:42 CST
2022年 01月 26日 星期三 02:14:43 CST
root@Ubu18:~/auto#
5.开机自启动服务部署成功
Ubu18开机自启动-Systemd的更多相关文章
- linux 服务开机自启动systemd方式 (Centos7)
linux 服务开机自启动systemd方式 (Centos7) 1.编写一个 /opt/hello.sh 脚本 [root@jws-ftp prometheus]# cat /opt/hello.s ...
- Ubu18开机自启动
Ubu开机自启动 简单示例 在/etc/init.d/目录下新建启动脚本Test #!/bin/bash ### BEGIN INIT INFO # Provides: Test # Required ...
- 【centos7】设置开机自启动服务--systemd
centos7使用systemd管理开机自启动服务,不提倡rc.local. 假设现在有2个服务,分别为: my111: my222: 希望在开机时自动启动my222服务,但是my222启动需要my1 ...
- Centos7系统下编写systemd脚本设置redis开机自启动
今天想设置redis开机自启动,我觉得这样子比较好,但是在网上找了很长时间发现大家都是基于chkconfig的写法来设置的,并不能由systemd进程来统一管理,所以这里我自己编写了一个,希望大家可以 ...
- Fedora 16设置开机自启动程序与Ubuntu的区别
Ubuntu设置开机自启动脚本的方法是:修改/etc/init.d/rc.local这个文件,添加需要启动的程序即可,相关函数如下: void SetSysAutoBoot() { ] = {}; ; ...
- Fedora 22(15以上版本)开机自启动脚本
前段时间做了一个网站btdog磁力与btdog电视直播.DHT爬虫需要消耗比较多的资源,原来的服务器不够用了,于是自己使用电脑搭了一台服务器,使用Fedora22系统.在Fedora22中自动写了些开 ...
- nginx启动、开机自启动、重启、关闭
yum -y install nginx # yum info nginx Loaded plugins: fastestmirror Loading mirror speeds from cach ...
- Linux系统环境下Tomcat8、httpd、mysql8开机自启动配置
Linux系统环境下Tomcat8.httpd.mysql8开机自启动配置: 相关命令:chkconfig 参考链接:https://jingyan.baidu.com/article/6525d4b ...
- centos7 设置nginx和php开机自启动
nginx开机自启动 首先我是源码安装的,需要手动建立nginx.service服务文件 cd /lib/systemd/system touch nginx.service nginx.servic ...
随机推荐
- 【Rust】使用HashMap解决官方文档中的闭包限制
问题概述 值缓存是一种更加广泛的实用行为,我们可能希望在代码中的其他闭包中也使用他们.然而,目前 Cacher 的实现存在两个小问题,这使得在不同上下文中复用变得很困难. 第一个问题是 Cacher ...
- Unity-Adressable打包热更
Addressable是Unity推出的打ab包方案,自动依赖: 不需要手动写AB打包方案,不需要关心依赖; 提供本地远程服务异步加载: 打包粒度可调节: 1.Group Addressable打包需 ...
- 【低码】asp.net core 实体类可生产 CRUD 后台管理界面
前言介绍 喜欢小规模团队的"单打独斗",有的时候即使在大公司,也经常做着3-5个人团队的小项目,相信很多人有类似的经历. 本文介绍如何将项目中已存在的[实体类],直接生产出 CRUD 后台管理界面. ...
- MAC系统下破解WIFI密码(亲测可用,含wifi密码字典)
出差第二天,住的小区因为疫情被封,宿舍又没有wifi,看着附近满满的WIFI信号列表,wifi万能钥匙却一个都连接不上,心中一万匹CNM...于是电脑连上手机热点,然后各种折腾,终于破解了一个隔壁的w ...
- 【多线程】线程优先级 Priority
线程优先级 Priority Java提供一个线程调度器来监控程序中启动后进入就绪状态的所有线程,线程调度 器按照优先级决定应该调度哪个线程来执行. 线程的优先级用数字表示,范围从1~10. Thre ...
- 139_Power BI之某制造企业HR相关数据年度复盘
博客:www.jiaopengzi.com 焦棚子的文章目录 请点击下载附件 一.背景 最近在忙一个关于制造企业HR年度数据复盘分析:数据已脱敏. 先来看看效果. 1.视频效果 [video widt ...
- 向sqlserver 数据库插入emoji 表情包
1.emoji 属于特殊字符 所以我们必须使用utf-8 的编码格式进行保存 不过好在sqlserver 默认支持utf-8 2.将需要存储emoji的字段必须设置为nvarchar 类型 因为v ...
- 关于『HTML5』第一弹
关于『HTML5』:第一弹 建议缩放90%食用 祝各位国庆节快乐!!1 经过了「过时的 HTML」.「正当时的 Markdown」的双重洗礼后,我下定决心,好好学习HTML5 这回不过时了吧(其实和 ...
- 如何为Java面试准备项目经验
1 提出问题 应届生朋友或Java程序员在找Java方面的工作时,一定会需要准备Java项目经验,但事实上不少求职者,是没有项目经验,或者只具有开源社区等的学习项目经验,这样的话,就很有可能在面试时无 ...
- python爬虫之JS逆向
Python爬虫之JS逆向案例 由于在爬取数据时,遇到请求头限制属性为动态生成,现将解决方式整理如下: JS逆向有两种思路: 一种是整理出js文件在Python中直接使用execjs调用js文件(可见 ...