centos6
源码编译安装下必须手动添加安装服务自启,yum安装可以自动自启
1、vi/etc/rc.d/rc.local 编辑etc目录rc.local文件控制自启
centos7下必须添加chmod +x /etc/rc.local
2、/etc/rc.d/下rc【0-6】.d 7个目录代表运行级别加载自启的服务目录
[root@team4 etc]# ls /etc/rc.d/rc3.d/
K02avahi-dnsconfd K89pand S25bluetooth
K02dhcdbd K89rdisc S25netfs
K02NetworkManager K91capi S25pcscd
K02NetworkManagerDispatcher K99readahead_later S26apmd
K05conman S04readahead_early S26hidd
当我们需要添加开机自启脚本或服务的时候可以将脚本放进 /etc/init.d目录下,然后在/etc/rc.d/rc[0-6]目录下建立软链接ln -s/etc/init.d/sshd /etc/rc.d/rc3.d/S100sshd
sshd服务S100sshd开头代表加载时自启动
先执行K开头的,后执行S开头的。所以S开头的服务会覆盖K开头的服务。
等级0表示:表示关机
等级1表示:单用户模式
等级2表示:无网络连接的多用户命令行模式
等级3表示:有网络连接的多用户命令行模式
等级4表示:不可用
等级5表示:带图形界面的多用户模式
等级6表示:重新启动
3、chkconfig on server_name (默认启动2345等级) 此脚本必须存放于**/etc/init.d/**
chkconfig --list [name]:显示所有运行自启服务(on或off)。
chkconfig --add name:增加一项新的服务。chkconfig确保每个运行级有一项启动(S)或者杀死(K)入口。如有缺少,则会从缺省的init脚本自动建立。
chkconfig --del name:删除服务,并把相关符号连接从/etc/rc[0-6].d删除。
chkconfig [–level levels] name:指定的运行级。
添加chkconfig服务时必须添加两行注释 然后注册启用
#chkconfig:345 85 15
#description:Start and stop the Apache HTTP Server
chkconfig -add server_name
chkconfig on server_name
centos7自启方式
1、查看已启动的服务:systemctl list-units --type=service
以树形列出正在运行的进程:systemd-cgls
systemctl enable nginx.service
systemctl disable nginx.service
vi /lib/systemd/system/nginx.service【将文件放置/lib/systemd/system/下serice服务模板按照自己的添加】
[Unit]##服务的说明
Description=nginx ##描述服务
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] ##运行级别下服务安装的相关设置,可设置为多用户,即系统运行级别为3
WantedBy=multi-user.target ##行级别下服务安装的相关设置,可设置为多用户,即系统运行级别为3
ln -s /lib/systemd/system/nginx.service /usr/local/systemd/system/nginx.service
systemctl enable nginx.service 启动服务即可
2、vi/etc/rc.d/rc.local 编辑etc目录rc.local文件控制自启
centos7下必须添加chmod +x /etc/rc.local