Ubuntu系统下实现开机自启动应用脚本


以应用 sk 为例子

一、安装好或下载好应用软件

查看 sk 所在位置

whereis sk

二、编写应用启动脚本.sh

#!/bin/sh

/usr/local/sk<<EOF
bdfn33p2
EOF

echo 'ok'
'bdfn33p2' 为启动应用时需要的参数,需要看具体应用
<<EOF
参数
EOF

 为带参数启动的格式

三、配置自启动服务

#新建服务文件
sudo vim /lib/systemd/system/sk.service

加入以下代码

[Unit]
Description=sk
After=network.target
[Service]
Type=simple
# 这里填用户名,下同
User=ojb
EnvironmentFile=/home/sk    #文件所在位置,下同
ExecStart=/home/sk
ExecStop=/usr/bin/pkill     /home/sk
KillMode=process
Restart=on-failure
RestartSec=30s
[Install]
WantedBy=multi-user.target

保存后终端依次输入以下代码

sudo systemctl daemon-reload
sudo systemctl enable sk.service
sudo systemctl start sk.service

输入以下代码观察有无报错信息

systemctl status sk

配置成功的话jupyter-notebook已经添加进系统服务,同时满足开机自启与后台运行

四、其他常用控制命令

#移除sk服务
sudo systemctl disable sk.service

#重启jupyter服务
sudo systemctl restart sk.service

#停止jupyter服务
sudo systemctl stop sk.service

五、注意 ubuntu如果开启防火墙的话须开启8888端口

sudo ufw status                # 查看防火墙状态
sudo ufw allow 6789      # 开启6789端口