设置WGCloud开机自动启动服务
在init.d目录中创建新脚本
在/etc/rc.d/init.d中创建一个新的启动脚本wgcloudstart.sh,其内容如下
#!/bin/bash
#chkconfig: 35 20 80分别代表运行级别、启动优先级和关闭优先级。这行代码必须
#描述:wgcloud服务器
/bin/echo $(/bin/date+% F _ % T)& gt;& gt/tmp/wgcloud.log
/usr/local/WG cloud-v 3 . 3 . 3/server/start . sh
/usr/local/WG cloud-v 3 . 3 . 3/server/start . sh是自己代理的实际路径。
2.添加可执行权限
chmod +x wgcloudstart.sh
测试以下脚本是否可以成功启动服务器。
。/wgcouldstart.sh
[root @ localhost ~]# CD/etc/RC . d/init . d
[root @ localhost ~]# chkconfig–add wgcouldstart . sh
[root @ localhost ~]# chkconfig wgcouldstart . sh on
#关闭并启动。
[root @ localhost ~]# chkconfig start agent . sh off
#从chkconfig管理中删除startAgent.sh
[root @ localhost ~]# chkconfig-del start agent . sh
#查看chkconfig管理
[root @ localhost ~]# chkconfig-list start agent . sh
使用systemctl管理创建自动启动服务
Systemd目录
根据Systemd协议,单元文件应该放在三个指定的系统目录之一。这三个目录具有优先级,如下所示。优先级越高,优先级越高。因此,当三个目录中存在同名文件时,将只使用优先级最高的目录中的文件。
/etc/systemd/system:系统或用户定义的配置文件。
/run/systemd/system:软件运行时生成的配置文件。
Usr/lib/systemd/system:安装系统或第三方软件时添加的配置文件(常用目录)。
cd /usr/lib/systemd/system/
[root @ rocky Linux system]# vim WG cloud . service
[单位]
Description=wgcloud服务
After=syslog.target
[服务]
类型=分叉
ExecStart =/usr/local/WG cloud-v 3 . 3 . 3/server/start . sh
ExecStop =/usr/local/WG cloud-v 3 . 3 . 3/server/stop . sh
PrivateTmp=true
用户=root
SuccessExitStatus=143
[安装]
WantedBy =多用户.目标
设置引导并启动服务。
[root @ rocky Linux system]# system CTL enable WG cloud . service
[root @ rocky Linux system]# system CTL start WG cloud . service
systemd的常用命令
Systemctl重新启动服务名称#重新启动服务
Systemctl启动服务名称#启动服务
Systemctl停止服务名称#停止服务
Systemctl状态服务名称#查看服务的当前状态
Systemctl enable service name #设置服务在启动时启动。
Systemctl disable service name #设置服务在不启动的情况下自动启动。
服务文件内容描述
[单位]
描述:给出当前服务的简要描述。
文档:给出文档的位置。
After:服务服务后要启动的。
之前:之前要启动的:服务服务。
[服务]
类型:启动类型,可以设置为以下值:
Simple(默认值):由ExecStart字段启动的进程是主进程。
Forking:ExecStart字段将以fork()模式启动,此时父进程退出,子进程成为主进程(后台运行)。
Oneshot:类似于simple,但只执行一次。Systemd将在启动其他服务之前等待它完成。
Dbus:类似于simple,但它会等待D-Bus信号后再启动。
Notify:类似于simple,启动后发出通知信号,然后Systemd启动其他服务。
Idle:类似于simple,但是该服务在所有其他任务完成后才会启动。一个使用场合是让这个服务的输出不与其他服务的输出混合)
PrivateTmp=true:创建私有内存临时空
User=root:以什么用户身份运行?
SuccessExitStatus=143:成功退出状态。
pifile =/opt/web/mybase/jetty . PID:PID文件存储位置
[安装]
Install块,它定义了如何安装这个配置文件,也就是如何引导。
WantedBy字段:指示服务所在的目标。
有两个常用的目标:
Multi-user.target:表示多用户命令行状态;
Graphical.target:指示图形用户状态,这取决于多用户目标
目标意味着服务组,也就是一组服务。当执行systemctl enable sshd.service命令时,sshd.service的符号链接将放在/etc/systemd/system目录下的multi-user.target.wants子目录中。
以下是jetty服务的一个例子。
[单位]
描述=Jetty Web应用服务器
After=syslog.target
[服务]
类型=分叉
ExecStart =/data/SCM/jetty/jetty-distribution-9 . 4 . 31 . v 20200723/bin/jetty . sh start
exec reload =/data/SCM/jetty/jetty-distribution-9 . 4 . 31 . v 20200723/bin/jetty . sh重新启动
ExecStop =/data/SCM/jetty/jetty-distribution-9 . 4 . 31 . v 20200723/bin/jetty . sh
PrivateTmp=true
用户=root
SuccessExitStatus=143
[安装]
WantedBy =多用户.目标
下面是nginx的一个服务例子。
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。
作者:美站资讯,如若转载,请注明出处:https://www.meizw.com/n/290912.html