引导启动和服务控制

1.引导过程

1.1开机自检

加电检测硬件是否有故障,如果无故障直接就去bios中设置的第一启动项找操作系统

1.2MBR引导

当从本机硬盘中启动系统时,首先根据硬盘第一个扇区中 MBR(Master Boot Record, 主引导记录)的设置,将系统控制权传递给包含操作系统引导文件的分区;或者直接根据 MBR 记录中的引导信息调用启动菜单(如 GRUB)。 总结:运行放在MBR扇区里的启动 GRUB引导程序

1.3 GRUB

grub会根据grub.cfg配置文件找到操作文件,找到根

1.4加载Linux内核 (操作系统)调度硬件

Linux 内核是一个预先编译好的特殊二进制文件,介于各种硬件资源与系统程序之间, 负责资源分配与调度。内核接过系统控制权以后,将完全掌控整个 Linux 操作系统的运行过 程。

1.5 启动init进程

加载硬件驱动程序,内核把init进程加载到内存中运行

传统init依赖于串行执行Shell 脚本启动服务,导致效率低下,系统启动速度较慢 排队 systemd能够将更多的服务进程并行启动,并且具有提供按需启动服务的能力,使得启动更少进程,从而提高系统启动速度 大家一起

2.服务

systemd是保姆级的进程,代为管理所有的进程

2.1systemd服务

Systemd新特性

  • 系统引导时实现服务并行启动
  • 按需启动守护进程
  • 自动化的服务依赖关系管理
  • 同时采用socket式与D-Bus总线式激活服务
  • socket与服务程序分离
  • 向后兼容sysv init脚本
  • 使用systemctl 命令管理,systemctl命令固定不变,不可扩展,非由systemd启动的服务,
  • systemctl无法与之通信和控制
  • 系统状态快照

systemd单元类型

image.png

运行级别多对应的systemd目标

image.png

init 0-6 就可以切换到对应的运行级别

2.2系统服务控制

格式:systemdctl 控制类型 服务名称(程序名)

控制类型有:start , stop ,status,reload,restart , enable ,disable

3.修复MBR扇区故障实验

3.1实验内容

把MBR前512字节文件修复完成,需要光盘引导进入急救模式

3.2实验步骤

1.先将文件备份到别的硬盘中,这样我们破坏环境后可以直接从比别的盘中恢复

image.png

2.模拟破坏MBR引导扇区

image.png

3.进入引导界面进入急救模式,从备份文件中恢复MBR 扇区数据
先加载好光盘镜像,重启操作系统

image.png

之后是第二个,进入急救模式

image.png

4.输入1进入,回车

image.png

image.png

5.在这个操作系统下建立文件,并将sdb1盘挂载到建立的文件夹下。

image.png

6.使用备份文件恢复mbr扇区

image.png

  1. 退出重启

image.png
能成功重启就算修复成功

4.修复GRUB故障

4.1实验内容

如果grub文件损坏导致启动不了,使用MRB扇区重建grub程序

4.2实验操作

1.MBR位于第一块硬盘(/dev/sda)的第一个物理扇区处,总共512字节,前446字节是主引导记,所以先建立备份

image.png

2.模拟对MRB中的GRUB引导程序的破坏,但并不破坏分区表

image.png

3.与mbr文件损坏一样,先进入急救模式,然后把第二块备份的盘挂载到mnt目录下

image.png
4.将备份文件覆盖sda盘

image.png
5.重启之后能正常开启就算成功

5.修改root密码

5.1实验一:

5.1.1实验内容

使用光驱进行密码修改,

5.1.1实验操作

1.先进入光驱,在电脑重启的一瞬间按一下esc进入,选择光驱

image.png

2.进入急救模式选项与上面两个实验一样

image.png
3.输入chroot /mnt/sysimage 进入系统根环境,去修改密码

image.png
4.输入修改密码命令

image.png

5.之后重启,如果成功的话我们自己的x-shell会让我们重新输入密码

image.png

5.2实验二:

5.2.1实验内容:

不使用光驱进行修改root密码,使用单用户修改密码

5.2.2实验操作:

1.先进入到grub文件下。

image.png
2.输入命令,添加内核参数 rd.break

image.png
3.输入ctrl x重启,进入单用户模式

image.png

4.输入命令,重新挂载

image.png

5.输入命令,进入根

image.png

6.修改密码

image.png
7.退出重启
如果x-shell让重输入密码就修改成功

6.systemctl服务的建立

6.1实验内容

使用编译安装nginx 之后创建systemctl的service快捷服务,可以查看进程并正常使用

6.2具体操作流程

1.根据安装包去解压到源文件

image.png

2.使用./configure 去设置安装目录并指定安装位置

image.png
等待安装完成后

3.进行编译

image.png

4.安装软件

image.png
5.去规定的文件夹下创建.service格式下的文件

image.png

6.按照规定格式去写文件

[Unit]
Description=The nginx HTTP and reverse proxy server     描述信息

[Service]
PIDFile=/apps/nginx/logs/nginx.pid    
ExecStart=/apps/nginx/sbin/nginx                 开始命令
ExecReload=/usr/bin/kill    -s HUP   $MAINPID     重新加载
ExecStop=/usr/bin/kill      -s TERM  $MAINPID     关闭命令

[Install]
WantedBy=multi-user.target                 弱依赖,被哪些units所依赖
~                            

image.png

检查无误后保存退出

7.刷新systemclt下的文件

image.png

8.使用systemctl命令启动nginx,并关闭

image.png

© 版权声明
THE END
喜欢就支持一下吧
点赞0

Warning: mysqli_query(): (HY000/3): Error writing file '/tmp/MYM6RNgA' (Errcode: 28 - No space left on device) in /www/wwwroot/583.cn/wp-includes/class-wpdb.php on line 2345
admin的头像-五八三
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

图形验证码
取消
昵称代码图片