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 表示给服务分配独立的临时空间

相关推荐
weixin_471525783 小时前
【gdb/sqlite3移植/mqtt】
linux·运维·服务器
大聪明-PLUS3 小时前
TCP/IP 协议族—理论与实践(一)
linux·嵌入式·arm·smarc
稚辉君.MCA_P8_Java5 小时前
JVM第二课:一文讲透运行时数据区
jvm·数据库·后端·容器
阳光明媚sunny6 小时前
Room持久化库中,@Transaction注解的正确使用场景是?
android·数据库
北极糊的狐6 小时前
MySQL常见报错分析及解决方案总结(15)---Can’t connect to MySQL server on ‘localhost‘ (10061)
数据库·mysql
迎風吹頭髮6 小时前
Linux内核架构浅谈2- Linux内核与硬件交互的底层逻辑:硬件抽象层的作用
linux·架构·交互
濑户川6 小时前
Django5 与 Vue3 表单交互全解析:从基础到实战
数据库
weixin_438077496 小时前
langchain官网翻译:Build a Question/Answering system over SQL data
数据库·sql·langchain·agent·langgraph
我是好小孩7 小时前
【Android】六大设计原则
android·java·运维·服务器·设计模式
孙同学要努力7 小时前
《Linux篇》进程状态——浅度、深度睡眠状态、僵尸状态、运行状态
linux·运维