Centos7 设置开机自启的几种方式
一、系统服务的方式
1. 前提
(1)首先要将需要自启的软件或应用注册成系统服务,下面提供常用的软件注册系统服务的案例
- nginx.service
创建服务文件
vi /usr/lib/systemd/system/nginx.service
[Unit]
Description=nginx
After=network.target remote-fs.target nss-lookup.target[Service]
Type=forking
ExecStart=/usr/local/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
ExecReload=/usr/local/sbin/nginx -s reload
ExecStop=/usr/local/sbin/nginx -s stop
ExecQuit=/usr/local/sbin/nginx -s quit
PrivateTmp=true[Install]
WantedBy=multi-user.target
- redis.service
创建服务文件
vi /usr/lib/systemd/system/redis.service
[Unit]
Description=Redis6.2.5
After=network.target[Service]
PIDFile=/var/run/redis_6379.pid
ExecStart=/usr/local/redis/bin/redis-server /usr/local/redis/conf/redis.conf
ExecReload=kill -s HUP $MAINPID
ExecStop=kill -s QUIT $MAINPID
PrivateTmp=true[Install]
WantedBy=multi-user.target
nacos.service(这种是基于shell脚本执行的案例,需要将你的执行脚本授予执行权限,如:chmod +x /usr/local/nacos/bin/startup.sh)
创建服务文件
vi /usr/lib/systemd/system/nacos.service
[Unit]
Description=nacos-server-2.0.3
After=network.target[Service]
Type=forking
ExecStart=/usr/local/nacos/bin/startup.sh -m standalone
ExecReload=/usr/local/nacos/bin/shutdown.sh
ExecStop=/usr/local/nacos/bin/shutdown.sh
PrivateTmp=true[Install]
WantedBy=multi-user.target
- 其他的脚本类型的可以参考nacos 那种方式,先创建启动应用和停止应用的脚本,再给脚本授权执行权,最后创建服务
服务的文件存放在 /usr/lib/systemd/system 如下:
/usr/lib/systemd/system/nacos.service
/usr/lib/systemd/system/nginx.service
/usr/lib/systemd/system/redis.service
2. 配置描述
Description -描述服务
After -描述服务类别
[Service] -服务运行参数的设置
Type=forking -是后台运行的形式
ExecStart -为服务的具体运行命令
ExecReload -为重启命令
ExecStop -为停止命令
PrivateTmp=True - 表示给服务分配独立的临时空间
注意:[Service]的启动、重启、停止命令全部要求使用绝对路径
[Install] -运行级别下服务安装的相关设置,可设置为多用户,即系统运行级别为3
3. 全部命令
#重载服务单元
systemctl daemon-reload #启动redis服务
systemctl start redis.service #设置开机自启动 systemctl enable redis.service#停止开机自启动
systemctl disable redis.service #查看服务当前状态
systemctl status redis.service #重新启动服务
systemctl restart redis.service #查看所有已启动的服务
systemctl list-units --type=service
二、 系统自带启动
1. 写好自己应用的启动脚本,例如:
# 创建脚本
vi /home/myShell/startup.sh
添加脚本内容
#!/bin/bash# 后台启动java应用
nohup java -Dserver.port=8858 -jar /usr/local/sentinel/sentinel-dashboard-1.8.2.jar >> logs/start.log 2>&1 &
授执行权限
chmod +x /home/myShell/startup.sh
2. 添加自启
编辑自启的系统文件
# /etc/rc.d/rc.local 这个文件是系统自带的启动文件
vi /etc/rc.d/rc.local
添加下面我们要自启的脚本
/home/myShell/startup.sh
3. 在centos7中,/etc/rc.d/rc.local的权限被降低了,所以需要执行如下命令赋予其可执行权限
chmod +x /etc/rc.d/rc.local
三、利用系统 /etc/rc.d/init.d 自启
1. 创建自己的脚本 (参考方式二的第一点创建脚本)
2. 将执行的脚本放在到/etc/rc.d/init.d目录下
3. 添加脚本到开机自动启动项目中
# 切换到这个目录下
cd /etc/rc.d/init.d# 添加我们的脚本
chkconfig --add startup.sh# 设置自启执行
chkconfig startup.sh on
注意:所有需要执行的文件都需要授予执行权限
授权命令: chmod +x [脚本的绝对路径]
Centos7 设置开机自启的几种方式相关推荐
- linux系统中开机自启的三种方式
有时候我们需要Linux系统在开机的时候自动加载某些脚本或系统服务 主要用三种方式进行这一操作: ln -s 在/etc/rc.d/rc*.d目录中建立/etc/init.d/服务的软链接(*代表0- ...
- Linux开机自启的三种方式
1.在/etc/rc.local文件中添加自启动命令 2.在/etc/init.d目录下添加自启动脚本 Linux开机的时候,会加载运行/etc/init.d目录下的程序,因此我们可以把 ...
- CentOS7设置静态ip地址的两种方式
一.修改配置文件 网卡配置文件目录在:/etc/syconfg/network-scripts中 进入网卡配置目录,由于我的是虚拟机,所以网卡名字为ens33 vim命令编辑ens33文件,修改ipa ...
- 使用VS2017将我的c++项目打包成安装程序,并设置开机自启,卸载,图标等
大体上打包分为两步 目录 一.将编译后的exe可执行文件及其各种依赖dll.lib.图标.配置文件等先打包放到一个目录中 (1)dumpbin指令查看可执行文件的dll依赖包 (2)windeploy ...
- Linux安装redis并设置开机自启以及利用小红桶连接(命令行方式)
1. 安装 首先在/usr/local目录下创建redis目录,然后进入到该目录下: mkdir /usr/local/rediscd /usr/local/redis 进入redis目录后,执行下面 ...
- Ubuntu20.04设置开机自启脚本、开机自启命令(ubuntu自启,ubuntu开机自启)rc(run command)(systemd)(/etc/rc.local)(开机启动原理)开机自启动
注意:ubuntu18.04也适用! 文章目录 Linux/Ubuntu开机启动原理 Linux的开机启动顺序 Ubuntu 20.04 设置开机自启脚本 使用 rc-local.service 1. ...
- Ubuntu 20.04 设置开机自启脚本
Linux的开机启动顺序 要想整明白后面的开机启动的设置方法,最好不要只知其然而不知其所以然,这里要先从Linux的开机启动顺序开始说起. 下面介绍三种添加开机自启脚本的方法,所测试的系统为 Ubun ...
- centos7设置开机启动
centos7设置开机启动 systemctl命令列出所有服务 一.systemctl CentOS7开始使得以往老版本系统服务的/etc/init.d的启动脚本的方式就此改变,在CentOS7中所有 ...
- windows中如何设置开机自启tomcat,nginx,jdk等应用服务的解决办法
下面使用tomcat为例 一般手动启动tomcat的话,需要找到startup.bat双击启动.所以下面先找到此程序. 找到tomcat的安装目录,点击bin文件夹进入 然后找到startup.bat ...
最新文章
- js解析json字符串数组
- memcache的深度解析(转)
- 知云文献翻译_工具推荐 | 知云学术翻译,让外文文献阅读不再难
- 带哨兵节点的链_BNC公链 | IPFS:区块链“不可能三角”的可能解
- ADO.NET_05_OracleDataReader
- Android Studio导入so文件到项目中
- v-if与v-show
- js 日期操作 (转载:http://blog.sina.com.cn/s/blog_699d2e170101q6iz.html)
- fiddler软件抓包工具超详细配置方法
- docker 停止、启动、删除镜像指令操作总结
- 多个excel工作簿合并_如何使用Excel VBA将多个工作簿的全部工作表合并到一个工作簿中...
- steam服务器连接不稳定WIN10,小编操作win10系统steam连接不稳的解决步骤
- 每一篇博文都是与自己的一次对话
- 力扣刷题 DAY_76 贪心
- 涉密台式计算机密码可以输入几次,涉密打印机、扫描仪等与涉密计算机之间不采用无线方式连接 - 作业在线问答...
- 2022年Spark基础学习笔记
- 戴尔sc系列存储阵列柜服务器,入门级SCv2000!戴尔扩大存储产品组合
- UDDI和WSDL的关系
- 页面加载时间过长的解决
- Windows查看WiFi密码的命令
热门文章
- MyBatis基础篇
- C语言 输入三个字符串,由小到大输出
- 俄罗斯“扎克伯格”:创建区块链版“微信” 27岁身价已达2.5亿美元
- RK3568烧录系统
- 北航计算机学院王华峰,计算机前沿科学与技术分论坛第二场宣讲会
- app ui设计规范
- c# 的取负数_关于C#:如何对负数*向下*进行整数除法?
- Qiskit中的barrier()是干啥的
- 爆改YOLOV7的detect.py制作成API接口供其他python程序调用(超低延时)
- STM32 SPI NSS大揭秘