centos6和7运行级别和自启动管理

原文链接:https://blog.51cto.com/13434656/1984213?utm_source=oschina-app

文章目录

运行级别

1.centos6运行级别

centos6(init或systemv)
0 关机halt
1 单用户模式(用于维护,无需用户名、密码登录)
2 多用户模式(不启用网络功能)
3 多用户模式(带网络功能),命令行界面(CLI:command line interface)
4 未定义
5 图形界面(桌面环境)
6 重启reboot

2.centos7运行级别

centos7(systemd)
poweroff.target
rescue.target
multi-user.target
graphical.target
reboot.target

3.对应关系

centos6 centos7
runlevel0.target poweroff.target
runlevel1.target rescue.target
runlevel2.target multi-user.target
runlevel3.target multi-user.target
runlevel4.target multi-user.target
runlevel5.target graphical.target
runlevel6.target reboot.target

4.修改运行级别

centos6 centos7
查看默认运行级别 systemctl get-default
设置默认运行级别 修改/etc/inittab systemctl set-default TARGET.target
临时切换 init 数字 也可以init 数字

或者修改

ln -sf /lib/systemd/system/runlevel5.target /etc/systemd/system/default.target 更改相关级别的数字即可

开机自启动

以httpd为例

centos6 centos7
命令配置 chkconfig httpd on systemctl enable httpd
脚本方式 /etc/init.d/ , /etc/rc.d/rcX.d/,/etc/rc.d/rc.local /usr/lib/systemd/system/,/run/systemd/system/,/etc/systemd/system

1.centos7手动配置一个service

unit
After 说明此unit在哪个服务启动之后才启动的
Before 与上面相反,在那个服务之前启动
Requires 明确定义启动前的依赖服务
Documentation 文档资料
Wants 与require相反,规范这个unit之后还要启动其他服务
Conflicts 冲突的服务

一个service文件分为三部分:

Service
Type 启动的方式:simple(默认值),forking,oneshot,dbus,idle…
EnvironmentFile 可以指定启动脚本的环境配置文件
ExecStart 实际执行的指令或脚本程序
ExecStop 关闭服务时的指令
ExecReload 重载时…
Restart 重启时
TimeoutSec 无法正常关闭时,等待多少时间后强制关闭,毫秒

install部分:主要是wantedBy :一般都是挂在multi-user.target下。


[Unit]
Description=MariaDB database server
After=syslog.target
After=network.target

[Service]
Type=simple
User=mysql
Group=mysql

ExecStartPre=/usr/libexec/mariadb-prepare-db-dir %n
# Note: we set --basedir to prevent probes that might trigger SELinux alarms,
# per bug #547485
ExecStart=/usr/bin/mysqld_safe --basedir=/usr
ExecStartPost=/usr/libexec/mariadb-wait-ready $MAINPID

# Give a reasonable amount of time for the server to start up/shut down
TimeoutSec=300

# Place temp files in a secure directory, not /tmp
PrivateTmp=true

[Install]
WantedBy=multi-user.target


上一篇:django+vue+uwsgi+nginx部署


下一篇:小白零基础如何用阿里云模板来建网站(模板建站+定制建站)