源码出售网站,触屏手机网站设计,wordpress主题手机端,网站设计psd目录 
一、Linux引导过程 
1、引导过程概述 1.1、BIOS开机自检 
1.2、MBR读取 
1.3、加载引导加载程序#xff08;GRUB#xff09; 
1.4、内核加载 
1.5、初始化进程#xff08;init#xff09; 
二、服务 
2.1、服务类型 
2.2、服务管理工具 
三、运行级别 
四、systemd 
…目录 
一、Linux引导过程 
1、引导过程概述 1.1、BIOS开机自检 
1.2、MBR读取 
1.3、加载引导加载程序GRUB 
1.4、内核加载 
1.5、初始化进程init 
二、服务 
2.1、服务类型 
2.2、服务管理工具 
三、运行级别 
四、systemd 
4.1、systemd主要功能 4.2、systemd单元类型 
4.3、systemctl命令 
五、系统引导故障排除 
5.1、修复MBR分区 
5.1.1、备份MBR引导扇区到其他磁盘 5.1.2、模拟mbr故障 
5.1.3、重启进入急救模式进行备份恢复操作 
5.2、修复GRUB分区 
5.2.1、模拟GRUB故障 
5.2.2、进入急救模式 
5.2.3、重新安装grub配置文件 
5.3重置用户密码 
5.3.1重启并执行内核参数 
5.3.2、重置密码 一、Linux引导过程 
1、引导过程概述 1.1、BIOS开机自检 
按下开机键后BIOS进行硬件自检检查硬件是否正常。加载硬盘的MBR主引导记录。 
1.2、MBR读取 
MBR存储在硬盘的第一个扇区0扇区包含引导程序GRUB和分区表。BIOS将控制权交给MBR中的引导程序GRUB。 
1.3、加载引导加载程序GRUB 
GRUB通过读取配置文件/boot/grub2/grub.cfg获取内核和镜像文件系统的设置与路径位置。 
1.4、内核加载 
GRUB加载并启动操作系统的内核Linux kernel。内核是操作系统的核心负责硬件管理、进程调度、文件系统管理等。内核被加载到内存中并开始初始化系统。 
1.5、初始化进程init 
加载硬件驱动程序内核将init进程加载到内存中运行内核启动第一个用户空间进程initPID1它负责启动和管理所有的系统服务和守护进程。 
二、服务 
服务Service是指后台运行的程序或进程服务通常在系统启动时自动启动并运行负责提供特定的功能或服务。 
2.1、服务类型 
系统服务系统启动时启动负责提供基础的系统功能如网络、日志记录、硬件管理等。应用服务提供特定的应用功能通常由应用程序启动和停止。如nginx、mysql等。守护进程后台运行的服务不需要用户干预。通常在系统启动时启动并持续运行直到系统关闭。如httpd、ntpd等。网络服务提供网络相关的功能。如dnsmasq、apache等。 
2.2、服务管理工具 
initUnix与Linux系统中传统的服务管理器依赖于串行执行脚本来管理服务导致效率低下系统启动速度较慢。systemd现代Linux系统中最常用的服务管理工具它负责启动、停止和管理服务并通过systemctl命令于服务进行交互。它能够将更多的服务进程并行启动可按需启动服务使得启动更少进程从而提高系统启动速度。 
三、运行级别 
Linux系统中运行级别Runlevel是指在系统启动过程中进入的不同状态。每个运行级别代表系统的不同工作状态决定了哪些服务和进程会被启动。 
init 0 关机关闭所有服务并关机init 1 单用户模式用于修复文件系统、恢复丢失的密码或修复系统问题仅限root用户登录不启动网络服务init 3 多用户模式多用户模式命令行界面的服务器支持网络服务init 5 多用户模式支持图形界面的多用户模式init 6 重启执行完整的关机过程然后重新启动 
四、systemd systemd是现代Linux系统中的初始化系统和系统管理守护进程取代了传统的SysVinit和Upstart系统。它负责启动系统服务的同时还管理系统的启动过程、进度调度、日志记录、设备管理等任务。 
4.1、systemd主要功能 
并行启动并行启动系统服务大幅提高系统启动速度。服务管理通过单独的服务单位unit管理服务和进程可以启动、停止、重启、查询服务状态。日志管理包含journald日志系统集成日志收集、查看和分析简化了日志管理。所有系统日志、服务日志可通过journalctl工具查看。目标Target通过目标代替传统的运行级别。依赖关系管理支持服务之间的依赖关系确保服务按正确的顺序启动和关闭。并发和资源控制通过资源控制和调度器优化系统资源的使用提供更高效的服务管理。 4.2、systemd单元类型 
systemd使用单元unit来表示管理的不同资源。每个单元都有一个配置文件定义了该单元的属性和行为常见的单元类型包括 
service管理服务进程例如 Web 服务器、数据库等。target表示运行级别或目标状态。例如multi-user.target表示多用户模式graphical.target表示图形界面模式。socket管理套接字Socket服务通常用于延迟启动服务。mount管理挂载点定义系统如何挂载文件系统。timer用于管理定时任务类似于cron。device管理设备表示系统中可用的设备。 
4.3、systemctl命令 
system control的缩写功能是管理系统服务。 
语法格式systemctl 参数 动作 服务名 
start启动服务disable取消服务开机自启stop 停止服务 status查看服务状态restart重启服务list显示所有已启动服务enable设置服务开机自启 
参考示例 
[rootlocalhost ~]# systemctl start sshd
[rootlocalhost ~]# systemctl status sshd
● sshd.service - OpenSSH server daemonLoaded: loaded (/usr/lib/systemd/system/sshd.service; enabled; vendor preset: enabled)Active: active (running) since 一 2025-02-10 22:34:33 CST; 49min agoDocs: man:sshd(8)man:sshd_config(5)Main PID: 1167 (sshd)Tasks: 1CGroup: /system.slice/sshd.service└─1167 /usr/sbin/sshd -D2月 10 22:34:32 localhost.localdomain systemd[1]: Starting OpenSSH server daemon...
2月 10 22:34:33 localhost.localdomain sshd[1167]: Server listening on 0.0.0.0 port 22.
2月 10 22:34:33 localhost.localdomain sshd[1167]: Server listening on :: port 22.
2月 10 22:34:33 localhost.localdomain systemd[1]: Started OpenSSH server daemon.
Hint: Some lines were ellipsized, use -l to show in full.
[rootlocalhost ~]# systemctl restart sshd
[rootlocalhost ~]# systemctl stop sshd
[rootlocalhost ~]# systemctl status sshd
● sshd.service - OpenSSH server daemonLoaded: loaded (/usr/lib/systemd/system/sshd.service; enabled; vendor preset: enabled)Active: inactive (dead) since 一 2025-02-10 23:24:54 CST; 3s agoDocs: man:sshd(8)man:sshd_config(5)Process: 3335 ExecStart/usr/sbin/sshd -D $OPTIONS (codeexited, status0/SUCCESS)Main PID: 3335 (codeexited, status0/SUCCESS)2月 10 23:24:43 localhost.localdomain systemd[1]: Stopped OpenSSH server daemon.
2月 10 23:24:43 localhost.localdomain systemd[1]: Starting OpenSSH server daemon...
2月 10 23:24:43 localhost.localdomain sshd[3335]: Server listening on 0.0.0.0 port 22.
2月 10 23:24:43 localhost.localdomain sshd[3335]: Server listening on :: port 22.
2月 10 23:24:43 localhost.localdomain systemd[1]: Started OpenSSH server daemon.
2月 10 23:24:54 localhost.localdomain systemd[1]: Stopping OpenSSH server daemon...
2月 10 23:24:54 localhost.localdomain systemd[1]: Stopped OpenSSH server daemon.
Hint: Some lines were ellipsized, use -l to show in full.五、系统引导故障排除 
5.1、修复MBR分区 
5.1.1、备份MBR引导扇区到其他磁盘 
[rootlocalhost ~]# mount /dev/sdb1 /mnt                //挂载备份用硬盘
[rootlocalhost ~]# lsblk
NAME            MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda               8:0    0   60G  0 disk 
├─sda1            8:1    0    1G  0 part /boot
└─sda2            8:2    0   14G  0 part ├─centos-root 253:0    0   10G  0 lvm  /└─centos-swap 253:1    0    4G  0 lvm  [SWAP]
sdb               8:16   0   20G  0 disk 
└─sdb1            8:17   0   20G  0 part /mnt            //挂载成功
sr0              11:0    1  4.4G  0 rom  /run/media/root/CentOS 7 x86_64
[rootlocalhost ~]# dd if/dev/sda of/mnt/mbr.bak count1 bs512    //备份mbr
记录了10 的读入   //    输入         输出            块个数   块大小
记录了10 的写出
512字节(512 B)已复制0.000218308 秒2.3 MB/秒
[rootlocalhost ~]# ls /mnt
mbr.bak5.1.2、模拟mbr故障 
[rootlocalhost ~]# dd if/dev/zero of/dev/sda count1 bs512    //用0覆盖mbr扇区数据
记录了10 的读入
记录了10 的写出
512字节(512 B)已复制0.000164001 秒3.1 MB/秒
[rootlocalhost ~]# hexdump -C -n512 /dev/sda            //破坏mbr扇区完成
00000000  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
*
00000200
[rootlocalhost ~]#reboot        //重启 
5.1.3、重启进入急救模式进行备份恢复操作 5.2、修复GRUB分区 
5.2.1、模拟GRUB故障 
[rootlocalhost ~]# ls /boot/grub2/
device.map  fonts  grub.cfg  grubenv  i386-pc  locale
[rootlocalhost ~]# rm -rf /boot/grub2/grub.cfg        //删除grub配置文件
[rootlocalhost ~]# ls /boot/grub2/
device.map  fonts  grubenv  i386-pc  locale
[rootlocalhost ~]# reboot                             //重启 5.2.2、进入急救模式 5.2.3、重新安装grub配置文件 5.3重置用户密码 
5.3.1重启并执行内核参数 5.3.2、重置密码