Centos7常用服务脚本(.service)

Centos7常用服务脚本(.service)

注意:Service中配置路径必须使用绝对路径。

启停:

systemctl { start | stop | restart | reload } xxx.service

自启动:

systemctl { enable | disable } xxx.service

nginx.service:

touch /usr/lib/systemd/system/nginx.service

chmod u+x /usr/lib/systemd/system/nginx.service

vi /usr/lib/systemd/system/nginx.service

内容如下:

Unit

Description=nginx daemon

After=network.target

Service

Type=forking

PIDFile=/usr/local/nginx/logs/nginx.pid

ExecStartPre=/usr/local/nginx/sbin/nginx -t

ExecStart=/usr/local/nginx/sbin/nginx

ExecReload=/bin/kill -s HUP $MAINPID

ExecStop=/bin/kill -s QUIT $MAINPID

PrivateTmp=true

Install

WantedBy=multi-user.target

启动服务&设置自启动:

systemctl start nginx

chkconfig nginx on

tomcat.service:

touch /etc/systemd/system/tomcat.service

chmod u+x /etc/systemd/system/tomcat.service

vi /etc/systemd/system/tomcat.service

内容如下:

Unit

Description=Apache Tomcat Web Application

After=syslog.target network.target

Service

Type=forking

Environment=JAVA_HOME=/usr/java/jdk1.8.0_371

Environment=CATALINA_HOME=/usr/local/tomcat/apache-tomcat-8.5.70

ExecStart=/usr/local/tomcat/apache-tomcat-8.5.70/bin/startup.sh

ExecStop=/usr/local/tomcat/apache-tomcat-8.5.70/bin/shutdown.sh

ExecReload=/bin/kill -s HUP $MAINPID

SuccessExitStatus=143

User=tomcat

Group=tomcat

PrivateTmp=true

Install

WantedBy=multi-user.target

这里配置指定的tomcat用户和组,注意目录对应的用户和用户组属性/权限(如果为 root:root 会导致启动失败),需要设置正确:chown -R tomcat:tomcat /usr/local/tomcat

mysql.service:

touch /usr/lib/systemd/system/mysqld.service

chmod u+x /usr/lib/systemd/system/mysqld.service

vi /usr/lib/systemd/system/mysqld.service

内容如下:

Unit

Description=MySQL Server

Documentation=man:mysqld(8)

Documentation=http://dev.mysql.com/doc/refman/en/using-systemd.html

After=network.target

After=syslog.target

Install

WantedBy=multi-user.target

Service

User=mysql

Group=mysql

ExecStart=/usr/local/mysql/bin/mysqld --defaults-file=/etc/my.cnf

LimitNOFILE = 5000

#Restart=on-failure

PrivateTmp=true

说明:

Restart=xxx 配置在服务进程退出,终止或超时时是否应重新启动服务

LimitNOFILE = 5000 进程最大打开文件数

PrivateTmp=true 表示给服务分配独立的临时空间

相关推荐
哥是强混1 小时前
Means:基于 .NET 10 打造的开源自部署 S3 兼容对象存储服务
网络·数据库·.net
ffqws_1 小时前
redis面试:如何保证双写一致
数据库·redis·缓存
啵啵鱼爱吃小猫咪1 小时前
Ubuntu 20.04 + ROS Noetic 源码安装 libfranka 0.8.0 和 franka_ros 0.8.0 完整教程
linux·运维·ubuntu
水无痕simon1 小时前
6 数据库同义词
数据库
杜子不疼.2 小时前
【Qt初识】信号槽(三):机制意义、断开连接与 Lambda 表达式
开发语言·数据库·qt
ljs6482739512 小时前
Linux运维实操:vi编辑器永久配置静态IP(CentOS系列)
linux·运维·编辑器
dddwjzx2 小时前
嵌入式Linux C应用编程入门——高级I/O
linux·嵌入式
BomanGe13 小时前
NSK W1501FA高速精密滚珠丝杠技术手册
数据库·经验分享·规格说明书
kiki-bf3 小时前
可用的mysql本地安装教程
数据库·mysql
Waay3 小时前
Linux 三个核心环境变量配置文件、作用域、生效方式完整梳理
linux·运维·学习·云原生·容器