Linux 自定义系统服务

环境:Vmware Workstation 10,CentOS-7-x86_64-DVD-1511.iso,Xshell 4.0,ip:192.168.216.137.

以activemq为例:参考Linux_Activemq 安装笔记安装activemq。

[root@localhost ~]# systemctl status activemq.service

● activemq.service
Loaded: not-found (Reason: No such file or directory)
Active: inactive (dead)

[root@localhost ~]# vim /usr/lib/systemd/activemq.service

这里写图片描述

[root@localhost ~]# ll /usr/lib/systemd/activemq.service

-rw-r–r–. 1 root root 242 6月 22 12:57 /usr/lib/systemd/activemq.service

[root@localhost ~]# chmod 754 /usr/lib/systemd/activemq.service

[root@localhost ~]# ll /usr/lib/systemd/activemq.service

-rwxr-xr–. 1 root root 242 6月 22 12:57 /usr/lib/systemd/activemq.service

[root@localhost ~]# systemctl enable /usr/lib/systemd/activemq.service

Created symlink from /etc/systemd/system/multi-user.target.wants/activemq.service to /usr/lib/systemd/activemq.service.
Created symlink from /etc/systemd/system/activemq.service to /usr/lib/systemd/activemq.service.

[root@localhost ~]# systemctl start activemq.service

Job for activemq.service failed because the control process exited with error code. See “systemctl status activemq.service” and “journalctl -xe” for details.

[root@localhost ~]# systemctl status activemq.service

● activemq.service - activemq
Loaded: loaded (/usr/lib/systemd/activemq.service; enabled; vendor preset: disabled)
Active: failed (Result: exit-code) since 四 2017-06-22 13:01:36 CST; 6s ago
Process: 14641 ExecStart=/usr/local/activemq/bin/activemq start (code=exited, status=1/FAILURE)

6月 22 13:01:36 localhost systemd[1]: Starting activemq…
6月 22 13:01:36 localhost activemq[14641]: INFO: Loading ‘/usr/local/activemq//bin/env
6月 22 13:01:36 localhost activemq[14641]: ERROR: Configuration variable JAVA_HOME or JAVACMD is not defined correctly.
6月 22 13:01:36 localhost activemq[14641]: (JAVA_HOME=”, JAVACMD=’java’)
6月 22 13:01:36 localhost systemd[1]: activemq.service: control process exited, code=exited status=1
6月 22 13:01:36 localhost systemd[1]: Failed to start activemq.
6月 22 13:01:36 localhost systemd[1]: Unit activemq.service entered failed state.
6月 22 13:01:36 localhost systemd[1]: activemq.service failed.

[root@localhost ~]# vim /usr/local/activemq//bin/env

这里写图片描述

[root@localhost ~]# systemctl start activemq.service

[root@localhost ~]# systemctl status activemq.service

● activemq.service - activemq
Loaded: loaded (/usr/lib/systemd/activemq.service; enabled; vendor preset: disabled)
Active: active (running) since 四 2017-06-22 13:04:55 CST; 2s ago
Process: 14704 ExecStart=/usr/local/activemq/bin/activemq start (code=exited, status=0/SUCCESS)
Main PID: 14761 (java)
CGroup: /system.slice/activemq.service
└─14761 /usr/java/jdk1.8.0_131/bin/java -Xms64M -Xmx1G -Djava.util.logging.config.file=logging.properties -Djava.security.auth.logi…

6月 22 13:04:55 localhost systemd[1]: Starting activemq…
6月 22 13:04:55 localhost activemq[14704]: INFO: Loading ‘/usr/local/activemq//bin/env’
6月 22 13:04:55 localhost activemq[14704]: INFO: Using java ‘/usr/java/jdk1.8.0_131/bin/java’
6月 22 13:04:55 localhost activemq[14704]: INFO: Starting - inspect logfiles specified in logging.properties and log4j.properties to get details
6月 22 13:04:55 localhost activemq[14704]: INFO: pidfile created : ‘/usr/local/activemq//data/activemq.pid’ (pid ‘14761’)
6月 22 13:04:55 localhost systemd[1]: Started activemq.
Hint: Some lines were ellipsized, use -l to show in full.


示例二,systemctl管理tomcat

[root@localhost ~]# vim /usr/local/tomcat8/bin/setenv.sh

#!/bin/sh
#$CATALINA_BASE为tomcat安装的目录路径,将tomcat.pid指给了CATALINA_PID
CATALINA_PID="$CATALINA_BASE/tomcat.pid"
#设置tomcat启动的java内存参数,可选项
JAVA_OPTS="-server -XX:PermSize=256M -XX:MaxPermSize=1024m -Xms512M -Xmx1024M -XX:MaxNewSize=256m"

[root@localhost ~]# vim /usr/lib/systemd/system/tomcat.service

[Unit]
Description=Tomcat
After=syslog.target network.target remote-fs.target nss-lookup.target

[Service]
Type=forking
PIDFile=/usr/local/tomcat8/tomcat.pid
ExecStart=/usr/local/tomcat8/bin/startup.sh
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true

[Install]
WantedBy=multi-user.target

[root@localhost ~]# systemctl status tomcat.service

● tomcat.service - Tomcat
Loaded: loaded (/usr/lib/systemd/system/tomcat.service; disabled; vendor preset: disabled)
Active: inactive (dead)

[root@localhost ~]# systemctl start tomcat.service

[root@localhost ~]# systemctl status tomcat.service

● tomcat.service - Tomcat
Loaded: loaded (/usr/lib/systemd/system/tomcat.service; disabled; vendor preset: disabled)
Active: active (running) since 四 2017-11-16 18:46:09 CST; 3s ago
Process: 4034 ExecStart=/usr/local/tomcat8/bin/startup.sh (code=exited, status=0/SUCCESS)
Main PID: 4048 (java)
CGroup: /system.slice/tomcat.service
└─4048 /usr/bin/java -Djava.util.logging.config.file=/usr/local/tomcat8/conf/logging.properties -Djava.util.logging.manager=org.apa…

11月 16 18:46:09 localhost systemd[1]: Starting Tomcat…
11月 16 18:46:09 localhost startup.sh[4034]: Using CATALINA_BASE: /usr/local/tomcat8
11月 16 18:46:09 localhost startup.sh[4034]: Using CATALINA_HOME: /usr/local/tomcat8
11月 16 18:46:09 localhost startup.sh[4034]: Using CATALINA_TMPDIR: /usr/local/tomcat8/temp
11月 16 18:46:09 localhost startup.sh[4034]: Using JRE_HOME: /usr
11月 16 18:46:09 localhost startup.sh[4034]: Using CLASSPATH: /usr/local/tomcat8/bin/bootstrap.jar:/usr/local/tomcat8/bin/tomcat-juli.jar
11月 16 18:46:09 localhost startup.sh[4034]: Using CATALINA_PID: /usr/local/tomcat8/tomcat.pid
11月 16 18:46:09 localhost startup.sh[4034]: Tomcat started.
11月 16 18:46:09 localhost systemd[1]: Started Tomcat.
Hint: Some lines were ellipsized, use -l to show in full.

[root@localhost ~]# systemctl stop tomcat.service

[root@localhost ~]# systemctl status tomcat.service

● tomcat.service - Tomcat
Loaded: loaded (/usr/lib/systemd/system/tomcat.service; disabled; vendor preset: disabled)
Active: failed (Result: exit-code) since 四 2017-11-16 18:46:52 CST; 7s ago
Process: 4193 ExecStop=/bin/kill -s QUIT $MAINPID (code=exited, status=0/SUCCESS)
Process: 4034 ExecStart=/usr/local/tomcat8/bin/startup.sh (code=exited, status=0/SUCCESS)
Main PID: 4048 (code=exited, status=143)

11月 16 18:46:09 localhost startup.sh[4034]: Using JRE_HOME: /usr
11月 16 18:46:09 localhost startup.sh[4034]: Using CLASSPATH: /usr/local/tomcat8/bin/bootstrap.jar:/usr/local/tomcat8/bin/tomcat-juli.jar
11月 16 18:46:09 localhost startup.sh[4034]: Using CATALINA_PID: /usr/local/tomcat8/tomcat.pid
11月 16 18:46:09 localhost startup.sh[4034]: Tomcat started.
11月 16 18:46:09 localhost systemd[1]: Started Tomcat.
11月 16 18:46:51 localhost systemd[1]: Stopping Tomcat…
11月 16 18:46:52 localhost systemd[1]: tomcat.service: main process exited, code=exited, status=143/n/a
11月 16 18:46:52 localhost systemd[1]: Stopped Tomcat.
11月 16 18:46:52 localhost systemd[1]: Unit tomcat.service entered failed state.
11月 16 18:46:52 localhost systemd[1]: tomcat.service failed.
Hint: Some lines were ellipsized, use -l to show in full.

[root@localhost ~]# systemctl enable /usr/lib/systemd/system/tomcat.service

Created symlink from /etc/systemd/system/multi-user.target.wants/tomcat.service to /usr/lib/systemd/system/tomcat.service.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值