Linux(CentOS7)配置系统服务以及开机自启动

目录

前言

两种方式

/etc/systemd/system/ 

进入 /etc/systemd/system/ 文件夹

创建 nginx.service 文件

重新加载 systemd 配置文件

​编辑 配置开机自启

/etc/init.d/

进入 /etc/init.d/ 文件夹

创建 mysql 文件

编写脚本内容

添加/删除系统服务

配置开机自启

查看 chkconfig 下的开机自启动服务

​编辑总结

文件模板

脚本模板


前言

在服务器上安装各种软件,比如 nginx,mysql,redis 等等,如果没有配置环境变量,每次启动都需要进入到对应的安装目录下执行命令来启动。即使配置了环境变量,在启动时可能也需要指定某些启动参数,需要额外得输入,相对麻烦。

针对以上的问题,可以将制作成系统服务,通过 service 命令 或者 systemctl 命令来启动

service 服务名称 startsystemctl start 服务名称

两种方式

  1. /etc/systemd/system/ 
  2. /etc/init.d/

第一种即是在 /etc/systemd/system/ 文件夹下创建服务文件

第二种即是在 /etc/init.d/ 文件夹下创建服务文件

详情如下

/etc/systemd/system/ 

以创建 nginx 系统服务为例子

进入 /etc/systemd/system/ 文件夹

cd /etc/systemd/system/

创建 nginx.service 文件

vim nginx.service

写入以下内容

注意:路径需要替换成自己的安装路径

[Unit]
Description=Nginx HTTP Server
After=network.target

[Service]
Type=forking
ExecStart=/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
ExecReload=/usr/local/nginx/sbin/nginx -s reload -c /usr/local/nginx/conf/nginx.conf
ExecStop=/usr/local/nginx/sbin/nginx -s stop
PrivateTmp=true

[Install]
WantedBy=multi-user.target

重新加载 systemd 配置文件

systemctl daemon-reload

重新加载后,就能通过 service 或者 systemctl 来启动服务了

#启动服务
systemctl start nginx
#停止服务
systemctl stop nginx
#重启服务
systemctl restart nginx
#查看服务状态
systemctl status nginx

 配置开机自启

#开启开机自启动
systemctl enable nginx
#关闭开机自启动
systemctl disable nginx

/etc/init.d/

以创建 mysql 系统服务为例子

进入 /etc/init.d/ 文件夹

cd /etc/init.d/

创建 mysql 文件

vim mysql

编写脚本内容

脚本可以自己写,在此例中用的mysql,mysql 有提供一个启动脚本,直接复制即可

官方下载 mysql 包下,安装目录下的 support-files 下有一个 mysql.server 脚本

复制 mysql.server 内容到 /etc/init.d/mysql 

cp -a /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql

授权

chmod +x /etc/init.d/mysql

添加/删除系统服务

#添加系统服务
chkconfig --add mysql
#删除系统服务
chkconfig --del mysql

添加服务后,就能通过 service 或者 systemctl 名来来启动服务了 

配置开机自启

#开启开机自启动
chkconfig mysql on
#关闭开机自启动
chkconfig mysql off

查看 chkconfig 下的开机自启动服务

chkconfig --list

总结

两种方式都可以配置服务

第一种配置方式相对简单,只需在 /etc/systemd/system/ 文件夹下创建文件,复制模板后修改下命令,写入文件后重新加载下就行了

文件模板

[Unit]
Description=服务名称
After=network.target

[Service]
Type=forking
ExecStart=启动命令
ExecReload=重启命令
ExecStop=停止命令
PrivateTmp=true

[Install]
WantedBy=multi-user.target

第二种配置方式大同小异,在 /etc/init.d/ 文件夹下创建脚本,需要自己写启动脚本,更加地灵活,如果启动服务需要用到动态的启动参数,那么就可以用第二种方式来配置

脚本模板

#!/bin/bashcase $1 instart)#启动命令echo "service is started";;stop)#关闭命令echo "service is stop";;restart)#重启命令echo "service is started";;*)echo "start|stop|restart";;  
esac
exit 0

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/784763.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【MySQL笔记】SELECT COUNT(*) 的时候,加不加where条件有差别吗?

文章目录 前言实验结论 前言 这部分很多帖子都只在问题里罗列下,好像也没详细解答 其实就是跟InnoDB优先走二级索引的优化有关,前面也提到了”优化的前提是查询语句中不包含where条件和group by条件“ 还不太了解这个优化的朋友可以看上一篇帖子 实验 …

编曲知识13:弦乐技法应用 合成器应用 声场摆位

弦乐技法 技法分类 Sustain(长音)类: Legato、Port、Gliss、Tremolo、Trills Staccato(短音)类: Staccato、Pizzicato、Spiccato Legato:连奏 Port:滑音 Gliss:慢速滑音 Tremolo:震音 Trills:颤音 Staccato:顿弓 Pizzicato:拨奏 Spiccato:跳弓 长音类技法 主…

从0到1:兼职招聘小程序开发笔记(一)

可行性分析 兼职招聘小程序:为雇主和求职者提供便利的平台,旨在帮助雇主招聘兼职员工,并让求职者寻找合适的兼职工作。提供简单、快捷的方式来匹配兼职岗位和候选人,节省了招聘和求职的时间和精力。其主要功能模块包括&#xff1…

C练习题(1)

变种水仙花(来自牛课网) 题目 变种水仙花数 - Lily Number:把任意的数字,从中间拆分成两个数字,比如1461 可以拆分成(1和461),(14和61),(146和1),如果所有拆…

力扣刷题Days29-128.最长连续数列(js)

目录 1,题目 2,代码 2.1自己实现 2.2哈希表 3,学习与收获 枚举思想: 遍历的核心逻辑 碎碎念 本题 先是想到利用数组排序,从而简化遍历处理逻辑,再在提交错误提醒的情况下,考虑到数组中存…

基于FreeRTOS系统的STM32简易遥控器设计

项目说明 该项目是一个基于FreeRTOS系统的Stm32遥控器设计。使用该项目主要是自己学习FreeRTOS的使用,以及模块化编程的思想。这个项目应该长期会有更新。 项目开源 github:https://github.com/snqx-lqh/Stm32RemoteControl gitee:https://gitee.com/snqx-lqh/S…

Github 2024-04-01 开源项目月报 Top20

根据Github Trendings的统计,本月(2024-04-01统计)共有20个项目上榜。根据开发语言中项目的数量,汇总情况如下: 开发语言项目数量Python项目9TypeScript项目2非开发语言项目2Jupyter Notebook项目2HTML项目1CSS项目1C#项目1Shell项目1Lua项目1JavaScript项目1C项目1Java项目…

了解 LoadRunner 性能测试软件及其基础使用

目录 一、了解LoadRunner 1、什么是Loadrunner? 2、Loadrunner包括什么组件? (1)前台组件 (2)后台组件 二、LoadRunner三大组件 1、VuGen(虚拟用户脚本生成器) (…

详细分析Mysql中的STR_TO_DATE基本知识(全)

目录 前言1. 基本知识2. Demo3. 实战Demo4. Sql彩蛋4.1 LPAD函数4.2 SUBSTRING_INDEX函数 5. Java彩蛋 前言 对于该知识点,主要因为数据库类型为String(类似2024-03-26),放置于后端操作后,需要自定义比较,…

【QT+QGIS跨平台编译】054:【exiv2lib_int+Qt跨平台编译】(一套代码、一套框架,跨平台编译)

点击查看专栏目录 文章目录 一、exiv2lib_int介绍二、文件下载三、文件分析四、pro文件五、编译实践一、exiv2lib_int介绍 exiv2lib_int是 exiv2 这个开源的图像元数据库中的一个组件。 Exiv2是一个开源的C++库,用于读取、编辑和写入图片和视频文件的元数据。它可以处理各种类…

选择Six Sigma咨询公司,看准这几点不踩坑!

在如今的市场环境中,Six Sigma作为一种追求卓越的管理方法,受到了越来越多企业的青睐。然而,面对众多的Six Sigma咨询公司,企业往往感到困惑:究竟哪家公司更适合自己?今天,我们就来聊聊如何挑选…

ES2024即将发布!5个可能大火的JS新方法

文章目录 01:Promise.withResolvers02:Object.groupBy()03:Temporal04:Records 和 Tuples05:装饰器(Decorators)其他 ECMAScript 2024(ES15) 即将发布(2024年…

【数字IC/FPGA】手撕代码:模3检测器(判断输入序列能否被3整除)

今天我们来手撕一个常见的笔试题,使用的方法是三段式Moore状态机。 题目描述: 输入端口是串行的1bit数据,每个时钟周期进来一位新数据后,实时检查当前序列是否能整除3,若能则输出1,否则输出0。 例如&#…

“花小钱”解决竞赛训练“大问题”,赛宁首发竞赛专项练习本AdBook

想在网络安全竞赛上取得好成绩的你,还在为下面这些问题犯难吗? 1-专业竞赛平台价格过高,没有充足预算购买! 2-现有练习平台和竞赛比赛平台不一样,没法提前去现场训练! 3-题海战术费事费力,没法…

Java 面试宝典:请说下你对 Netty 中Reactor 模式的理解

大家好,我是大明哥,一个专注「死磕 Java」系列创作的硬核程序员。 本文已收录到我的技术网站:https://skjava.com。有全网最优质的系列文章、Java 全栈技术文档以及大厂完整面经 回答 Reactor 模式是一种高效处理并发网络事件的设计模式&…

【IntelliJ IDEA】运行测试报错解决方案(附图)

IntelliJ IDEA 版本 2023.3.4 (Ultimate Edition) 测试报错信息 命令行过长。 通过 JAR 清单或通过类路径文件缩短命令行,然后重新运行 解决方案 修改运行配置,里面如果没有缩短命令行,需要再修改选项里面勾选缩短命令行让其显示&#x…

STM32八种I/O口模式

STM32八种I/O口模式 文章目录 STM32八种I/O口模式前言一、stm32八种I/O类型二、区别1.模拟输入2.浮空输入3.上拉输入4.下拉输入5.推挽输出6.开漏输出7.复用推挽输出8.复用推挽输出 总结 前言 作为两年嵌入式软件攻城狮,还没仔细去理解过STM32的GPIO的八种使用模式&…

5G无线接入网和接口协议

**部分笔记** 4.3无线协议架构 NR无线协议分为两个平面:用户面和控制面。 用户面(UP):协议栈及用户数据采用的协议 控制面(Control Plane,CP)协议栈即系统的控制信令传输采用的协议簇。 虚线标注的是信令数据的流向。一个UE在…

宁波ISO22000认证:食品安全管理的国际标杆

🍎宁波ISO22000认证:🍉食品安全管理的国际标杆 随着全球化🌍的不断深入,食品安全问题👨‍👩‍👧越来越受到人们的👩‍👩‍👦‍👦关注…

Servlet Response的常用方法 缓存和乱码处理

前言 Servlet Response相关的信息,在service方法中使用的是HttpServletResponse,它继承自ServletResponse,扩展了Http协议相关的内容,下面简单记录一下它的基本用法。 一、response组成内容 以下是一个常见response响应的内容&…