Linux系统的启动过程:内核的引导 >
运行init
> 系统初始化 > 建立终端 > 用户登录系统
运行init
init 进程是系统所有进程的起点;
主要功能:
- 准备软件执行的环境,包括主机名、网络设定、语言、文件系统格式及其他服务等;
配置文件
对于CentOS6及以前: /etc/inittab
- 默认的 Run Level (开机运行级别)。
通过设定 runlevel 来启动不同级别所需要的服务,分配Linux 的使用环境;
Level | 贷方 |
---|---|
0 | 关机 |
1 | 单用户 |
2 | 无网络的命令行级别 |
3 | 命令行级别 |
4 | 保留级别 |
5 | 图形化级别 |
6 | 重启 |
- 修改默认启动
以root身份登录,vim打开/etc/inittab文件,在文件最后添加一行
id:3:initdefault:
``
像这样即可默认进入命令模式
#### 对于CentOS 7
centos7 中采用了最新的系统管理软件systemd,因此我们再修改 ```/etc/inittab``` 文件就不生效了;
另外,systemd中也不再使用 runlevel 这个概念,而是引用了一个全新的概念:**target**。
Systemd目标含义:
| Sysv运行级别 | Systemd目标 | 解释 |
| :------: | :------ | :------ |
| 0 | runlevel0.target,poweroff.target | 中断系统(halt) |
| 1 | runlevel1.target,rescue.target | 单用户模式 |
| 2,4 | runlevel2.target,runlevel4.target,multi-user.target | 用户自定义运行级别,通常识别为运行级别3 |
| 3 | runlevel3,multi-user.target | 多用户,字符界面 |
| 5 | runlevel5,graphical.target | 多用户,图形界面 |
| 6 | runlevel6,reboot.target | 重启 |
| emergency | emergency.target | 救援模式 |
* 查看target
ll /lib/systemd/system/runlevel?.target
发现都是以软连接的形式指向的。
* 查看默认target
ll /etc/systemd/system/default.target
* 切换target
systemctl isolatemulti-user.target // 切换到运行级别3
systemctl isolaterunlevel3.target // 切换到运行级别3
systemctl isolategraphical.target // 切换到运行级别5
systemctl isolaterunlevel5.target // 切换到运行级别5
* 修改默认级别:
**方法一:**
// 设置默认字符界面启动
ln –sf /lib/systemd/system/multi-user.target /etc/systemd/system/default.target
// 设置默认图形界面启动
ln –sf /lib/systemd/system/graphical.target /etc/systemd/system/default.target
**方法二:**使用systemctl命令
systemctl enable graphical.target // 图形界面
systemctl enable multi-user.target // 字符界面
** 方法三:
systemctl set-default multi-user.target // 字符界面
详解参考博客:[http://blog.51cto.com/11939788/1919175](http://blog.51cto.com/11939788/1919175)