重启(rc-local)
由于DC(软重启)期间需要开机自动登录以加载环境变量,并且重启测试是利用rc-local服务开机自启的特点,所以从三个方面进行介绍“如何实现重启“,即桌面环境、systemd 和 rc-local.service。
桌面环境
进行DC的稳定性测试时,需要让系统起来后自动进入桌面环境,这是为了加载系统及用户的环境变量验证系统每次DC都能正常启动且桌面环境正常。为了实现开机用户自动登录,可以利用“桌面环境”实现。
常见的桌面环境有:GNOME / MATE / KDE
这三种桌面环境分别实现自动登录的方式如下:
- GNOME
进入/etc/gdm目录,若没有此目录,则检查是否安装gdm(如果没有该目录的话,那么此时桌面环境也不是GNOME),安装命令为:yum install gdm -y
使用 vim custom.conf 修改配置文件内容如下(修改完成后保存,重启即可):
[daemon]
AutomaticLoginEnable=True # 这里的True的T是大写,有的gnome环境可能是true小写的
AutomaticLogin=root
TimedLoginEnable=True
[security]
AllowRoot=True
- MATE
- 修改“/etc/lightdm/lightdm.conf”文件
- 找到“#autologin-user=”这一行,将注释"#“去掉,”="后面跟上要自动登录的用户名,重启即可。
- KDE
- 修改“/etc/sysconfig/displaymanager”文件
- 找到“DISPLAYMANAGER_AUTOLOGIN=”这一行,在其“=”后面跟上要自动登录的用户名,重启即可。
systemd
Systemd是一个系统管理守护进程、工具和库的集合。Systemd的功能是用于集中管理和配置类UNIX系统。
Systemctl是一个systemd工具,主要负责控制systemd系统和服务管理器。
在终端中输入 ps ax | grep systemd,看到第一行,它的进程号是1,也就是说它是 Linux 内核发起的第一个程序。即内核一旦检测完硬件并组织好了内存,就会运行 /usr/lib/systemd/systemd 可执行程序,这个程序会按顺序依次发起其他程序,启动各项enable的单元(服务、设备、挂载点和操作系统其他方面信息的配置文件)。也正是利用这一点来实现开机自动执行重启脚本的目的。systemd具体的启动顺序可使用“systemd-analyze plot > boot.html”查看。
systemctl的常用命令如下:
命令 | 解释 |
---|---|