博客
关于我
ubuntu自定义一个service制作开机自启脚本,nacos开机自启
阅读量:560 次
发布时间:2019-03-09

本文共 1509 字,大约阅读时间需要 5 分钟。

Ubuntu没有自带其他linux版本自带的rc.local文件的开机自启动方法,所以要自己生成rc.local文件,其实就是自定义一个service服务

就像大家平时使用的service

service xxx start		# 尝试手动启动服务,看是否能正常运行service xxx status		# 查看服务运行状态service xxx stop		# 手动停止服务

第一步:编写service服务

sudo vim /etc/systemd/system/myselfTest.service # 编写service服务

myselfTest:文件名,可随意设置。

myselfTest.service文件内容

这里我以设置nacos服务开机自启为例

[Unit]# 描述,随你怎么写Description=Cclient desktop virtualization serviceAfter=network.target# 这里是关键[Service]# 后台运行模式,服务类型,具体可以自行百度,设置成自己想要的Type=forking# 所属用户#User=szyd# 所属组#Group=szyd# 重启#Restart=alwaysTimeoutSec=0# 配置重新启动服务之前的睡眠时间,重启频率,比如某次异常后,等待5(s)再进行启动,默认值0.1(s)#RestartSec=60# 这是服务运行的具体执行命令,可执行执行脚本的绝对路径,即对应的service start/stop/reloadExecStart=/home/ubuntu/installer/nacos/bin/startup.sh -m standaloneExecReload=/home/ubuntu/installer/nacos/bin/shutdown.shExecStop=/home/ubuntu/installer/nacos/bin/shutdown.sh[Install]# 这里你没太大要求可以不管WantedBy=multi-user.target

Type=forking,我这里的理解是通过ExecStart启动脚本后成功了,本身的myselfTest这个服务还会一直挂在后台,通过service myselfTest status可以看到active状态,而Type=simple则在ExecStart启动成功之后,就直接推出了,所以看myselfTest服务会是inactive状态.

在这里插入图片描述

关于Type=forking想进一步了解的话,可以看一下大佬的博客

第二步:编写shell脚本

下面是个假脚本,就是上面service中要执行的脚本,大家自己写就行了

在这里插入图片描述
nacos的话这里还要注意一点,在startup.sh脚本中要把jdk变量设置为绝对路径
在这里插入图片描述

第三步:设置为自启动服务

Ubuntu18.04版本之后,就采用了systemctl来控制开机自启动服务

sudo systemctl daemon-reload	#重新加载service服务sudo systemctl enable myselfTest.service		# 启用服务sudo systemctl is-enabled myselfTest.service		# 查看启用状态service myselfTest start		# 尝试手动启动服务,看是否能正常运行service myselfTest status		# 查看服务运行状态service myselfTest stop		# 手动停止服务

启动成功

转载地址:http://fwvpz.baihongyu.com/

你可能感兴趣的文章
MTD技术介绍
查看>>
MySQL
查看>>
MySQL
查看>>
mysql
查看>>
MTK Android 如何获取系统权限
查看>>
MySQL - 4种基本索引、聚簇索引和非聚索引、索引失效情况、SQL 优化
查看>>
MySQL - ERROR 1406
查看>>
mysql - 视图
查看>>
MySQL - 解读MySQL事务与锁机制
查看>>
MTTR、MTBF、MTTF的大白话理解
查看>>
mt_rand
查看>>
mysql -存储过程
查看>>
mysql /*! 50100 ... */ 条件编译
查看>>
mudbox卸载/完美解决安装失败/如何彻底卸载清除干净mudbox各种残留注册表和文件的方法...
查看>>
mysql 1264_关于mysql 出现 1264 Out of range value for column 错误的解决办法
查看>>
mysql 1593_Linux高可用(HA)之MySQL主从复制中出现1593错误码的低级错误
查看>>
mysql 5.6 修改端口_mysql5.6.24怎么修改端口号
查看>>
MySQL 8.0 恢复孤立文件每表ibd文件
查看>>
MySQL 8.0开始Group by不再排序
查看>>
mysql ansi nulls_SET ANSI_NULLS ON SET QUOTED_IDENTIFIER ON 什么意思
查看>>