Debian/ubuntu系统中,开机自启有很多种实现方法,比如Startup Application、init.d开机脚本等,而systemd是目前Linux系统上主要的系统守护进程管理工具,由于init一方面对于进程的管理是串行化的,容易出现阻塞情况,另一方面init也仅仅是执行启动脚本,并不能对服务本身进行更多的管理。因此,我们一般都使用systemd对服务进行管理。有关systemd另行介绍,此处不做赘述,本文将gost配置为系统服务,从而实现开机自启。沿用前述文章中gost的启动参数,在/etc/systemd/system/目录下创建gost.service文件。
nano /etc/systemd/system/gost.service
gost.service文件内容如下:
[Unit] Description=GOSTv3-Server of GO simple tunnel Documentation=https://gost.run/ After=network.target [Service] Type=simple ExecStart=/usr/local/bin/gost/gost -L relay+wss://username:password@:port_num Restart=always [Install] WantedBy=multi-user.target
重新加载服务描述文件。
systemctl daemon-reload
设置gost开机自启动。此处的gost.service可省略为gost,下同。
systemctl enable gost.service #gost.service可省略为gost,下同
启动gost服务。
systemctl start gost.service
可通过status选项查看服务状态。
systemctl status gost.service
使用systemctl管理gost服务的完整用例如下:
# 开机启动 systemctl enable gost.service # 关闭开机启动 systemctl disable gost.service # 启动服务 systemctl start gost.service # 停止服务 systemctl stop gost.service # 重启服务 systemctl restart gost.service # 查看服务状态 systemctl status gost.service systemctl is-active gost.service # 结束服务进程(服务无法停止时) systemctl kill gost.service
文章评论