引导过程
- 开机自检
- 服务器主机开机以后,将根据主板 BIOS 中的设置对 CPU(Central Processing Unit, 中央处理器)、内存、显卡、键盘等设备进行初步检测,检测成功后根据预设的启动顺序移交系统控制权,大多时候会移交给本机硬盘
- MBR引导
- 当从本机硬盘中启动系统时,首先根据硬盘第一个扇区中 MBR(Master Boot Record, 主引导记录)的设置,将系统控制权传递给包含操作系统引导文件的分区;或者直接根据MBR 记录中的引导信息调用启动菜单(如 GRUB)
- 故障:
- 备份MBR(添加一个硬盘,完成后格式化)
- 创建一个目录mkdir /backup
- 挂载到创建的目录mount /dev/sdb1 /backup/
- 备份MBR到挂载目录
- dd if=/dev/sda of=/backup/sda.mbr.bak bs=512 count=1
- 查看是否有如图sda.mbr.bak文件
- 覆盖扇区(毁掉扇区)
- 修复
- 重启后立刻按↓
- 选择如图指示
- 选择如图选项
- 静待执行如图步骤后输入1
- 回车后显示输入行时创建目录存放挂载日志
- 如图执行命令
- 显示如图一样后退出重启机器
- 备份MBR(添加一个硬盘,完成后格式化)
- GRUB菜单
- 对于 Linux 操作系统来说,GRUB(GRand Unified Bootloader,统一启动加载器)是使用最为广泛的多系统引导器程序。系统控制权传递给 GRUB 以后,将会显示启动菜单给用户选择,并根据所选项(或采用默认值)加载 Linux 内核文件,然后将系统控制权转交给内核。需要注意的是,CentOS 7 采用的是 GRUB2 启动引导器
- 加载内核
- Linux 内核是一个预先编译好的特殊二进制文件,介于各种硬件资源与系统程序之间, 负责资源分配与调度。内核接过系统控制权以后,将完全掌控整个 Linux 操作系统的运行过程。在 CentOS 系统中,默认的内核文件位于“/boot/vmlinuz-3.10.0-514.el7.x86_64
- init进程初始化
- 为了完成进一步的系统引导过程,Linux 内核首先将系统中的“/sbin/init”程序加载到内存中运行(运行中的程序称为进程),init 进程负责完成一系列的系统初始化过程,最后等待用户进行登录
- 由Linux内核加载运行 /sbin/init程序
- init进程是系统中第一个进程
- init进程的pid(进程标记)号永远为1
Systemd
- Systemd是Linux操作系统的一种init软件
- CentO S7中采用全新的Systemd启动方式,取代传统的SysVinit
- CentOS7中运行的第一个init进程是/lib/systemd/systemd
运行级别 | Systemd的target | 说明 |
0 | target | 关机状态,使用该级别是将会关机 |
1 | rescue.target | /单用户模式,不需要密码验证即可登录系统,多用于系统维护 |
2 | multi-user.target | 用户定义/域特定运行级别。默认等同于3 |
3 | multi-user.target | 用户定义/域特定运行级别。默认等同于3 |
4 | multi-user.target | 字符界面的完整多用户模式,大多数服务器主机运行在此级别 |
5 | graphical.target | 图形界面的多用户模式,提供了图形桌面操作环境 |
6 | reboot.target | 重新启动,使用该级别时将会重启主机 |
命令
- runlevel 查看当前级别(N后面是多少就是几级别)
- 最小化安装桌面版的包()
- systemctl get-default 查看系统默认系统级别
- 修改默认级别
- 最小化转回桌面版
- ln -sf /lib/systemd/system/graphical.target /etc/systemd/system/default.target
- 根据条件查看设置是否开机自启动
- systemctl is-enabled firewalld
- systemctl 动作 服务名称
-
动作
- start 启动
- stop 关闭
- restart 重启
- reload 重载
- status 查看状态
- enable 开机自启动
- disable 开机不会自动启动
-
服务
更改账户密码
- 开机进入group菜单,等待的时候按e进入编辑
- 在如图位置增加指令
- 执行完后CTRL+X
- ls查看是否有sysroot文件
- 挂载文件权限,修改为读写权限
- 编辑sysroot文件
- 输入如图命令,修改密码
- 修改完成后输入exit退出,退出两次
菜单加密(用来加密更改账户密码)
进入虚拟机终端执行 grub2-setpassword 命令
输入两次密码