Linux开机自启动

Linux系统开机自启动配置(多方案)

方案一(以nginx为例):

  - 说明:直接使用Linux系统自带开机管理方式(systemctl)。

  1、在系统服务目录里创建nginx.service文件

    vi /etc/systemd/system/nginx.service
    (或者:vi /usr/lib/systemd/system/nginx.service,两者有区别详细看这里:https://blog.csdn.net/lcczpp/article/details/105534329)

  2、写入内容如下:

[Unit]
Description=nginx
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
ExecStop=/usr/local/nginx/sbin/nginx -s quit
PrivateTmp=true
  
[Install]
WantedBy=multi-user.target

  说明:

[Unit]:服务的说明
  Description:描述服务
  After:描述服务类别
[Service]:服务运行参数的设置
  Type=forking是后台运行的形式
  ExecStart为服务的具体运行命令
  ExecReload为重启命令
  ExecStop为停止命令
  PrivateTmp=True表示给服务分配独立的临时空间
  注意:[Service]的启动、重启、停止命令全部要求使用绝对路径
[Install]:运行级别下服务安装的相关设置,可设置为多用户,即系统运行级别为3

 

   3、重新载入systemd服务和设置开机自启动,完成

[root@localhost~]# systemctl daemon-reload
[root@localhost~]# systemctl enable nginx

  4、查看nginx状态

[root@localhost~]# systemctl status nginx.service
# 查看是否为开机自启动
[root@localhost~]# systemctl is-enable wgcloudAgent

 

方案二(以wgcloud为例):

  - 说明:使用自己写的脚本。

   ① 以Ubuntu 18为例,新建/etc/systemd/system/wgcloudAgent.service文件,
[root@localhost~]# vim /etc/systemd/system/wgcloudAgent.service

  内容如下,将下列内容复制到/etc/systemd/system/wgcloudAgent.service文件

[Unit]
Description=auto Start Wgcloud Agent
After=network.target syslog.target

[Service]
Type=forking
ExecStart=/etc/wgcloudAgent.local 
    
[Install]
WantedBy=multi-user.target

  ② 创建文件/etc/wgcloudAgent.local

[root@localhost~]# vim /etc/wgcloudAgent.local

  内容如下

#!/bin/sh -e
# 
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.
# 命令后边可以插入其他脚本文件,按顺序执行!! /usr/local/wgcloud-v3.3.5/agent/start.sh exit 0

  注意:/usr/local/wgcloud-v3.3.5/agent/start.sh改为自己的agent实际部署路径

  ③ 给/etc/wgcloudAgent.local加可执行权限

[root@localhost~]# chmod +x /etc/wgcloudAgent.local

  ④ 最后两步,重新载入systemd服务和设置开机自启动,完成

[root@localhost~]# systemctl daemon-reload
[root@localhost~]# systemctl enable wgcloudAgent
# 查看是否为开机自启动
[root@localhost~]# systemctl is-enable wgcloudAgent

 

* 写在最后,还有一种方案没试过,可以了解一下:https://blog.csdn.net/Fenglin6165/article/details/86479383

 

 参考:

  1.https://www.jianshu.com/p/ca5ee5f7075c

  2.https://www.wgstart.com/help/docs38.html

 

posted @ 2023-03-15 18:23  iSunXiaoXiao  阅读(846)  评论(0编辑  收藏  举报