查看已启动的服务 systemctl list-units --type=service 查看是否设置开机启动 systemctl list-unit-files | grep enable 设置开机启动 systemctl enable test.service 关闭开机启动 systemctl disable test.service sudo systemctl daemon-reload #重载服务列表

方案一:通过systemd制作service(推荐)

1、 比如吧jumpserver服务设置为开机启动:

vi /usr/lib/systemd/system/jms.service [Unit] Description=jms After=network.target mariadb.service redis.service Wants=mariadb.service redis.service

[Service] Type=forking Environment="PATH=/opt/py3/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin" ExecStart=/opt/jumpserver/jms start all -d ExecReload= ExecStop=/opt/jumpserver/jms stop

[Install] WantedBy=multi-user.target

2、把nginx设置为开机启动:

vi /usr/lib/systemd/system/nginx.service [Unit] Description=nginx service After=network.target

[Service] Type=forking ExecStart=/usr/local/nginx/sbin/nginx ExecReload=/usr/local/nginx/sbin/nginx -s reload ExecStop=/usr/local/nginx/sbin/nginx -s quit PrivateTmp=true

[Install] WantedBy=multi-user.target sudo systemctl daemon-reload #重载服务列表

3、把其他shell脚本设置为开机启动: vi /usr/lib/systemd/system/jms_coco.service [Unit] Description=jms_coco After=network.target remote-fs.target nss-lookup.target

[Service] Type=forking ExecStart=/opt/jumpserver/jms_coco.sh

[Install] WantedBy=multi-user.target

方案二:通过chkconfig的方式(centos6.5系统才支持)。 1、先新建一个test.sh 的脚本,给a+x权限,然后添加 #chkconfig:   2345 50 50 #description:name 2、chkconfig --add test 3、chmod +x test 4、systemctl enable test

其中2345是默认启动级别,级别有0-6共7个级别。

 

  等级0表示:表示关机   

 

  等级1表示:单用户模式   

 

  等级2表示:无网络连接的多用户命令行模式   

 

  等级3表示:有网络连接的多用户命令行模式   

 

  等级4表示:不可用   

 

  等级5表示:带图形界面的多用户模式   

 

  等级6表示:重新启动

 

15是启动优先级,95是停止优先级,优先级范围是0-100,数字越大,优先级越低。

方案三:通过修改rc.local(centos6.5系统才支持)。 1、vi /etc/rc.local 添加 /etc/init.d/test start 2、chmod +x /etc/rc.local chmod +x /etc/init.d/test