引导过程与服务控制

目录

一、介绍

二、引导过程

 1、systemd初始化进程:

三、服务控制

3.1  服务控制命令systemctl

 3.1.1systemctl   status   firewalld.service 查看 firewalld.service 服务状态

3.1.2 systemctl   stop firewalld.service  停止firewalld.service

3.1.3 systemctl  start   firewalld.service开启服务

3.2  运行级别inti

四、模拟MBR主引导记录被删除

4.1添加一块新的硬盘

4.2创建fdisk分区,格式化,挂载

4.2备份

 4.3破坏MBR主引导记录

4.4修复

4.4.1修复选项

 4.4.2修复相关命令

五、模拟GRUB引导故障

5.1直接删除boot下的grub2/grub.cfg

[root@localhost ~]# rm  -rf  /boot/grub2/grub.cfg 5.2修复选项

重启主机,在加载界面按“esc”

 5.3修复命令

六、修改root密码


一、介绍

引导过程:开机自检,开机环境的部署

服务控制:开、关、重启、开机自启动,查看状态

二、引导过程

引导过程总览

  •  开机自检(BIOS):CUP、内存、显卡、键盘等设备初步检测,检测成功后,根据预设的启动顺序把系统的控制权转交给本机的硬盘。检测出第一个能够引导系统的设备,要么是硬盘,要么是光驱。
  • MBR引导:本机硬盘启动系统 ,从第一个硬盘的扇区中的MBR主引导记录的设置,系统控制前---包含操作系统引导文件的分区,或者直接根据MBR记录中引导信息调用启动菜单(grub)
  • grub:多系统引导程序,将显示启动的菜单给用户选择centos7。

       默认grub2引导程序

        路径  /boot/grub2/grub.cfg     控制权转交----内核。

  • 加载内核:  1./boot   内核文件,编译好的一个特殊二进制文件,它介于硬件资源和系统程序之间。

       总结:把内核和相关的系统镜像文件加载到内核存档中--进程初始化

  • init进程初始化:Linux内核将系统的/sbin/init/ 程序加载到内核当中,完成整个系统的初始化

         总结:加载硬件驱动,检测进入操作系统,必须要有的程序,加载到内存当中运行。

 1、systemd初始化进程:

systemd是Linux操作系统的一种init软件

centos7采用全新的systemd启动方式,取代传统的sysvinit

cenos7中运行的第一个init进程是/lib/sytemd/systemd 

systemd功能特性

  • 支持并行启动服务,提高系统启动速度;
  • 可以自动重启服务,确保服务的可靠性和稳定性;
  • 可以在服务运行期间动态调整服务参数和资源限制,提高系统的灵活性和可管理性;
  • 支持启动依赖关系和控制依赖关系,确保服务的正确启动和运行;
  • 支持多种服务管理方式,例如命令行工具、图形界面、Web 界面等。
systemd单元类型
单元类型扩展名说明
service.service描述一个系统服务
socket.socket描述一个进程间通信的套接字
device.device描述一个内核识别的设备文件
mount.mount描述一个文件系统的挂载点
automount.automount描述一个内存交换设备或交换机文件
swap.swap描述一个文件系统中文件或目录
path.path描述一个定时器(用于实现类似cron的调度任务)
timer.timer用于保存一个systemd的状态
snapshot.snapshot用于保存一个systemd的状态
scope.scope使用systemd的总线接口,以编程的方式创建外部进程
slice.slice描述基于Cgroup的一组通过层次组织的管理系统进程
target.targe描述一组systemd的单元

 init :是串行启动  --shell脚本

systemd:并行启动,按需启动

三、服务控制

3.1  服务控制命令systemctl

start:开启

stop:停止

restart:重启

reload:重新加载服务的配置文件

status:查看服务状态

enable:服务开机自启动

disable:关闭自启动

 3.1.1systemctl   status   firewalld.service 查看 firewalld.service 服务状态

3.1.2 systemctl   stop firewalld.service  停止firewalld.service

[root@localhost opt]# systemctl  stop   firewalld.service 
[root@localhost opt]# systemctl  status   firewalld.service 
● firewalld.service - firewalld - dynamic firewall daemon
   Loaded: loaded (/usr/lib/systemd/system/firewalld.service; enabled; vendor preset: enabled)
   Active: inactive (dead) since 三 2023-05-10 15:26:14 CST; 2s ago
     Docs: man:firewalld(1)
  Process: 753 ExecStart=/usr/sbin/firewalld --nofork --nopid $FIREWALLD_ARGS (code=exited, status=0/SUCCESS)
 Main PID: 753 (code=exited, status=0/SUCCESS)

5月 09 13:47:16 localhost.localdomain systemd[1]: Starting firewalld - dynamic firewall daemon...
5月 09 13:47:16 localhost.localdomain systemd[1]: Started firewalld - dynamic firewall daemon.
5月 09 13:47:16 localhost.localdomain firewalld[753]: WARNING: ICMP type 'beyond-scope' is not suppo...v6.
5月 09 13:47:16 localhost.localdomain firewalld[753]: WARNING: beyond-scope: INVALID_ICMPTYPE: No su...me.
5月 09 13:47:16 localhost.localdomain firewalld[753]: WARNING: ICMP type 'failed-policy' is not supp...v6.
5月 09 13:47:16 localhost.localdomain firewalld[753]: WARNING: failed-policy: INVALID_ICMPTYPE: No s...me.
5月 09 13:47:16 localhost.localdomain firewalld[753]: WARNING: ICMP type 'reject-route' is not suppo...v6.
5月 09 13:47:16 localhost.localdomain firewalld[753]: WARNING: reject-route: INVALID_ICMPTYPE: No su...me.
5月 10 15:26:14 localhost.localdomain systemd[1]: Stopping firewalld - dynamic firewall daemon...
5月 10 15:26:14 localhost.localdomain systemd[1]: Stopped firewalld - dynamic firewall daemon.
Hint: Some lines were ellipsized, use -l to show in full.

3.1.3 systemctl  start   firewalld.service开启服务

[root@localhost opt]# systemctl  start   firewalld.service 
[root@localhost opt]# systemctl  status   firewalld.service 
● firewalld.service - firewalld - dynamic firewall daemon
   Loaded: loaded (/usr/lib/systemd/system/firewalld.service; enabled; vendor preset: enabled)
   Active: active (running) since 三 2023-05-10 15:26:56 CST; 3s ago
     Docs: man:firewalld(1)
 Main PID: 8413 (firewalld)
   CGroup: /system.slice/firewalld.service
           └─8413 /usr/bin/python -Es /usr/sbin/firewalld --nofork --nopid

5月 10 15:26:56 localhost.localdomain firewalld[8413]: WARNING: COMMAND_FAILED: '/usr/sbin/iptables ...?).
5月 10 15:26:56 localhost.localdomain firewalld[8413]: WARNING: COMMAND_FAILED: '/usr/sbin/iptables ...?).
5月 10 15:26:56 localhost.localdomain firewalld[8413]: WARNING: COMMAND_FAILED: '/usr/sbin/iptables ...?).
5月 10 15:26:56 localhost.localdomain firewalld[8413]: WARNING: COMMAND_FAILED: '/usr/sbin/iptables ...me.
5月 10 15:26:56 localhost.localdomain firewalld[8413]: WARNING: COMMAND_FAILED: '/usr/sbin/iptables ...me.
5月 10 15:26:56 localhost.localdomain firewalld[8413]: WARNING: COMMAND_FAILED: '/usr/sbin/iptables ...?).
5月 10 15:26:56 localhost.localdomain firewalld[8413]: WARNING: COMMAND_FAILED: '/usr/sbin/iptables ...?).
5月 10 15:26:56 localhost.localdomain firewalld[8413]: WARNING: COMMAND_FAILED: '/usr/sbin/iptables ...?).
5月 10 15:26:56 localhost.localdomain firewalld[8413]: WARNING: COMMAND_FAILED: '/usr/sbin/iptables ...?).
5月 10 15:26:56 localhost.localdomain firewalld[8413]: WARNING: COMMAND_FAILED: '/usr/sbin/iptables ...?).
Hint: Some lines were ellipsized, use -l to show in full.

3.2  运行级别inti

init  0    关机

init  1    单用户模式

init   2 3 4  字符界面

init  5  图形化界面

init  6   重启

systemctl  get-default   查看系统默认运行级别

运行级别Systemd的target说明
0powerff.target关机状态,使用该级别时将会关闭主机
1rescue.target单用户模式,不需要密码验证即可登录系统,多用于系统维护
2 3 4multi-user.target用户定义域特定运行级别,默认等同于3,字符界面
5graphical.target图形界面
6reboot.target重启

四、模拟MBR主引导记录被删除

4.1添加一块新的硬盘

4.2创建fdisk分区,格式化,挂载

[root@localhost ~]# fdisk   /dev/sdb
欢迎使用 fdisk (util-linux 2.23.2)。

更改将停留在内存中,直到您决定将更改写入磁盘。
使用写入命令前请三思。

Device does not contain a recognized partition table
使用磁盘标识符 0x27095f75 创建新的 DOS 磁盘标签。

命令(输入 m 获取帮助):n
Partition type:
   p   primary (0 primary, 0 extended, 4 free)
   e   extended
Select (default p): 
Using default response p
分区号 (1-4,默认 1):
起始 扇区 (2048-41943039,默认为 2048):
将使用默认值 2048
Last 扇区, +扇区 or +size{K,M,G} (2048-41943039,默认为 41943039):
将使用默认值 41943039
分区 1 已设置为 Linux 类型,大小设为 20 GiB

命令(输入 m 获取帮助):w   
The partition table has been altered!

Calling ioctl() to re-read partition table.
正在同步磁盘。
[root@localhost ~]# lsblk
NAME            MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda               8:0    0   60G  0 disk 
├─sda1            8:1    0    5G  0 part /boot
└─sda2            8:2    0   54G  0 part 
  ├─centos-root 253:0    0   50G  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 
sr0              11:0    1  4.2G  0 rom  /mnt
[root@localhost ~]# mkfs.xfs  /dev/sdb1
meta-data=/dev/sdb1              isize=512    agcount=4, agsize=1310656 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=0, sparse=0
data     =                       bsize=4096   blocks=5242624, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
log      =internal log           bsize=4096   blocks=2560, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0
[root@localhost ~]# mkdir  /data
[root@localhost ~]# mount  /dev/sdb1  /data/
[root@localhost ~]# df  -h
文件系统                 容量  已用  可用 已用% 挂载点
/dev/mapper/centos-root   50G  4.5G   46G    9% /
devtmpfs                 977M     0  977M    0% /dev
tmpfs                    993M     0  993M    0% /dev/shm
tmpfs                    993M  9.1M  984M    1% /run
tmpfs                    993M     0  993M    0% /sys/fs/cgroup
/dev/sr0                 4.3G  4.3G     0  100% /mnt
/dev/sda1                5.0G  161M  4.9G    4% /boot
tmpfs                    199M  4.0K  199M    1% /run/user/42
tmpfs                    199M   32K  199M    1% /run/user/0
/dev/sdb1                 20G   33M   20G    1% /data

4.2备份

[root@localhost ~]# mkdir  /data
[root@localhost ~]# mount  /dev/sdb1  /data/
[root@localhost ~]# df  -h
文件系统                 容量  已用  可用 已用% 挂载点
/dev/mapper/centos-root   50G  4.5G   46G    9% /
devtmpfs                 977M     0  977M    0% /dev
tmpfs                    993M     0  993M    0% /dev/shm
tmpfs                    993M  9.1M  984M    1% /run
tmpfs                    993M     0  993M    0% /sys/fs/cgroup
/dev/sr0                 4.3G  4.3G     0  100% /mnt
/dev/sda1                5.0G  161M  4.9G    4% /boot
tmpfs                    199M  4.0K  199M    1% /run/user/42
tmpfs                    199M   32K  199M    1% /run/user/0
/dev/sdb1                 20G   33M   20G    1% /data
[root@localhost ~]# dd  if=/dev/sda   of=/data/mbr.bak  bs=512  count=1
记录了1+0 的读入
记录了1+0 的写出
512字节(512 B)已复制,0.000234602 秒,2.2 MB/秒
[root@localhost ~]# cd  /data
[root@localhost data]# ls
mbr.bak

 4.3破坏MBR主引导记录

[root@localhost data]# dd  if=/dev/zero  of=/dev/sda  bs=512  count=1
记录了1+0 的读入
记录了1+0 的写出
512字节(512 B)已复制,0.000143358 秒,3.6 MB/秒
[root@localhost data]# 

4.4修复

4.4.1修复选项

 

 

 4.4.2修复相关命令

五、模拟GRUB引导故障

要将磁盘挂载在/mnt

5.1直接删除boot下的grub2/grub.cfg

[root@localhost ~]# rm  -rf  /boot/grub2/grub.cfg 
5.2修复选项

重启主机,在加载界面按“esc”

 

 

 5.3修复命令

六、修改root密码

在急切模式下修改密码

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值