您当前的位置: 首页 >  ubuntu
  • 1浏览

    0关注

    284博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

ubuntu20.04利用systemctl命令实现开机自启服务

区块链(Web3)开发工程师 发布时间:2021-12-13 17:15:54 ,浏览量:1

编写服务service文件(以test.service)为例 新建test.service
[Unit]
Description=My Test App
After=syslog.target

[Service]
#ExecStart=mkdir /home/zhaohy/Desktop/test
ExecStart=/home/zhaohy/myspace/shell/sh/test.sh
SuccessExitStatus=143

[Install]
WantedBy=multi-user.target

ExecStart表示服务执行的命令,可以直接是shell命令也可以是shell脚本,这里以shell脚本为例 新建/home/zhaohy/myspace/shell/sh/test.sh

#!/bin/bash
mkdir /home/zhaohy/Desktop/test
cd /home/zhaohy/Desktop/test
touch test.md
echo 'hello world!' >> test.md

上面简单的在桌面新建了一个test文件夹,文件夹里面新建一个test.md,然后test.md里面追加输出了hello world字符串。 新建好了之后在终端运行:

systemctl enable /home/zhaohy/myspace/shell/test.service

终端出输出以下文字

Created symlink /etc/systemd/system/multi-user.target.wants/test.service → /home/zhaohy/myspace/shell/test.service.
Created symlink /etc/systemd/system/test.service → /home/zhaohy/myspace/shell/test.service.

可以看到实际上是做了软链接 这样就能开机自启动了。

立即启动命令:systemctl start test.service 立即结束命令:systemctl stop test.service 查看服务状态:systemctl status test.service 查看服务是否在运行中:systemctl is-active test.service 移除开机自启:systemctl disable test.service(删除软连接)

如果是想启动java服务的话,只需要更改service文件:

#!/bin/bash
java -jar xxx.jar &

然后 systemctl daemon-reload test.service 重新载入一下即可生效 利用这个也可以做到开机自动备份等,也可以借助java程序定时跑什么任务,比如定时备份home目录,也是可以做的。

关注
打赏
1665194163
查看更多评论
立即登录/注册

微信扫码登录

0.0410s