Linux:系统引导过程与服务控制

目录

一、linux 系统引导过程

1.1、引导过程总览 

1.2、系统初始化进程 (centos 6和7 的区别)

1.2.1、centos 6 的引导过程  init 进程

1.2.2、centos 7(systemd进程)

二、MBR、GRUB菜单、忘记密码故障修复

2.1、修复MBR扇区故障

模拟故障

重启,进入急救模式

数据恢复操作 

2.2、GRUB的故障恢复

模拟故障

重启、进入急救模式

进行故障恢复

2.3、忘记密码的故障恢复

重启、进入急救模式

修改密码操作

三、系统服务控制和运行级别

3.1、系统服务控制

3.2、系统的运行级别

四、优化启动过程

五、扩展


一、linux 系统引导过程

1.1、引导过程总览 

开机自检:检测出第一个能够引导系统的设备

MBR 引导:运行放在MBR扇区里的启动GRUB引导程序

GRUB 菜单:GRUB引导程序通过读取GRUB配置文件/boot/grub2/grub.cfg,来获取内核和镜像文件系统的设置和路径位置

加载 Linux 内核:把内核和镜像文件系统加载到内存中

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

1.2、系统初始化进程 (centos 6和7 的区别)

1.2.1、centos 6 的引导过程  init 进程

1. 加载BIOS的硬件信息,获取第一个启动设备

2. 读取第一个启动设备MBR的引导加载程序(grub)的启动信息

3. 加载核心操作系统的核心信息,核心开始解压缩,并尝试驱动所有的硬件设备

4. 核心执行init程序,并获取默认的运行信息

5. init程序执行/etc/rc.d/rc.sysinit文件,重新挂载根文件系统

6. 启动核心的外挂模块

7. init执行运行的各个批处理文件(scripts)

8. init执行/etc/rc.d/rc.local

9. 执行/bin/login程序,等待用户登录

10. 登录之后开始以Shell控制主机

1.2.2、centos 7(systemd进程)

1. UEFi 或 BIOS 初始化,运行 POST 开机自检
2. 选择启动设备
3. 引导装载程序, centos7 是 grub2
4. 加载装载程序的配置文件:/etc/grub.d/

5. 加载内核选项
6. 加载 initramfs 初始化伪文件系统

7. 内核初始化,centos7 使用 systemd 代替 init
8. 执行 initrd.target 所有单元,包括挂载/etc/fstab
9. 从 initramfs 根文件系统切换到磁盘根目录
10. systemd 执行默认 target 配置,配置文件/etc/systemd/system/default.target
11. systemd 执行 sysinit.target 初始化系统及 basic.target 准备操作系统
12. systemd 启动 multi-user.target 下的本机与服务器服务  init 3
13. systemd 执行 multi-user.target 下的/etc/rc.d/rc.local
14. Systemd 执行 multi-user.target 下的 getty.target 及登录服务
15. systemd 执行 graphical 需要的服务   init 5

二、MBR、GRUB菜单、忘记密码故障修复

2.1、修复MBR扇区故障

MBR位于第一块硬盘( /dev/sda) 的第一个物理扇区处,总共512字节

mount /dev/sdb1 /mnt       ##挂载

dd if=/dev/sda  of=/mnt/sda.bak bs=512 count=1  ##将sda中的文件备份到mnt下的sda.bak

模拟故障

dd if=/dev/zero of=/dev/sda bs=512 count=1   ##利用/dev/zero将/dev/sda里的内容覆盖

重启,进入急救模式

init 6  ##重启

选择  Troubleshooting  

进入  Rescue a centos system    ##急救模式

写入1进入”安全模式“   回车

数据恢复操作 

mkdir  /backupdir   ##创建一个用来挂载目录

mount /dev/sdb1 /backupdir  ##将之前备份的盘挂载到sdabak上

 dd if=/backupdir/sda.bak of=/dev/sda bs=512 count=1 

 ##将备份的完整的MBR引导数据覆盖到sda

exit   ##退出安全模式,系统将会重启

2.2、GRUB的故障恢复

模拟故障

重启、进入急救模式

进行故障恢复

chroot /mnt/sysimage   ##加载光盘镜像,切换到系统根环境

grub2-install /dev/sda

##重新将GRUB引导程序安装到第一块盘的MBR扇区,如果有多个分区可省略

grub2-mkconfig -o /boot/grub2/grub.cfg   ##重新构建GRUB菜单的配置文件

exit    ##退出chroot

reboot   ##再重启

2.3、忘记密码的故障恢复

重启、进入急救模式

init 6  或者  reboot 

进入下面的界面后要按c

按c进入下面的模式

exit   ##输入exit进入下图模式

修改密码操作

chroot /mnt/sysimage    ##加载光盘镜像,切换到系统根环境

passwd root  ##修改root密码

exit   ##退出系统根环境

init 6   ##重启

三、系统服务控制和运行级别

3.1、系统服务控制

systemctl  控制类型 服务名称

控制类型
start:启动
stop:停止
restart:重新启动
reload:重新加载
status:查看服务状态

3.2、系统的运行级别

显示结果中的两个字符分别表示切换前的目标、当前的目标。若之前尚未切换过运行级别,则第 1 列将显示“N”
[root@localhost ~]# runlevel 
3 5

查看系统默认的运行级别
systemctl get -default     #查看当前模式

设置永久运行级别

ln -sf /lib/systemd/system/multi-user.target /etc/systemd/system/default.target

或者:systemctl set -default multi-user.target

切换为视图模式

systemctl isolate multi-user.target  或 init 3

systemctl isolate graphical.target   或init 5

扩展:
永久修改主机名
hostnamectl set-hostname newname
查看主机名的状态
hostnamectl status
设置系统语言为中文
localectl set-locale LANG=zh_CN.utf8
查看当前系统使用的语言
localectl [status ]

四、优化启动过程

systemctl 控制选项 服务名称

enable:开机自动启动。 

disable:开机自动关闭。 
is-enable:查看开机启动状态。

systemctl list-unit-files --type=service   ##查看所有已经激活的系统服务

systemctl list-unit-files |grep enabled  ##查看所有开机自启动的服务器

五、扩展

chkconfig --list [服务名称]     ##查看服务列表

chkconfig --add 服务名称
chkconfig --level 级别列表服务名on/off
chkconfig --add httpd
chkconfig --level 35 httpd on

##     --level x:x为运行级别。默认情况下,on和off开关只对运行级2,3,4,5有效,reset可以对所有运行级有效。

on、off、reset:用于改变service的启动信息。 on表示开启,off表示关闭,reset表示重置。

运行级别:

等级0表示:表示关机

等级1表示:单用户模式

等级2表示:无网络连接的多用户命令行模式

等级3表示:有网络连接的多用户命令行模式

等级4表示:不可用

等级5表示:带图形界面的多用户模式

等级6表示:重新启动

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/34853.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

迭代器模式观察者模式

文章目录 1.引出迭代器模式1.展示院系结构2.传统方式 2.迭代器模式解决院系结构展示问题1.基本介绍2.原理类图3.类图4.代码实现1.Department.java 存储信息的对象2.College.java 被迭代的类型接口3.ComputerCollege.java 被迭代的具体实现类,存储数据并将其在创建迭…

CNware虚拟化平台功能介绍:虚拟机业务连续性保护,确保核心业务持续运行,构筑稳健的数字防线

全球数字化转型的大潮中,虚拟化技术已成为企业IT架构的基石。据Gartner预测,到2026年,全球90%以上的组织将采用某种形式的虚拟化技术。虚拟化环境的广泛应用,不仅提升了资源利用率、降低了成本,更极大地增强了业务灵活…

“管式加热炉简单控制系统和串级控制系统设计与Matlab仿真”,高分资源,匠心制作,下载可用。强烈推荐!!!

“管式加热炉简单控制系统和串级控制系统设计与Matlab仿真”毕业设计,高分资源,匠心制作,下载可用。强烈推荐!!! 1.控制目标 加热炉的任务是把原油加热到一定温度,以保证下道工艺的顺利进行。…

企业如何通过数据资产入表与融资加速数字化转型

数据作为五大生产要素之一,是数字经济发展的基础。如何对数据资产进行确权、核算和变现,已成为数字经济时代的难点和热点。随着“数据资产入表”的提出与实践,这一领域迎来了新的变化与机遇。 一、什么是数据资产入表 在我国,数据…

二种方法轻松提取音频中的钢琴声音

在音乐制作、音频编辑或是纯粹的音乐爱好者的世界里,有时我们需要从复杂的音乐编排中抽取出特定乐器的声音,比如那悠扬的钢琴旋律。这不仅能帮助我们更好地理解音乐的结构,还能在创作过程中提供灵感。本文将介绍两种简单有效的方法&#xff0…

如何在Windows 11上设置默认麦克风和相机?这里有详细步骤

如果你的Windows 11计算机上连接了多个麦克风或网络摄像头,并且希望自动使用特定设备,而不必每次都在设置中乱动,则必须将首选设备设置为默认设备。我们将向你展示如何做到这一点。 如何在Windows 11上更改默认麦克风 有两种方法可以将麦克…

第 28 篇 : SSH秘钥登录

1 生成秘钥 ssh-keygen -t rsa ls -a ./.ssh/一直回车就行了 2. 修改配置 vi /etc/ssh/sshd_config放开注释 公钥的位置修改 关闭密码登录 PubkeyAuthentication yes AuthorizedKeysFile .ssh/id_rsa.pub PasswordAuthentication no3. 下载id_rsa私钥, 自行解决 注意…

selenium爬取boss直聘招聘岗位数据

selenium爬取boss直聘招聘岗位数据 一、爬取流程二、完整代码一、爬取流程 先来看一下爬取到的数据情况: 再来看一下boss直聘的页面,这时需要我们已经完成了城市的选择,将岗位名称输入到搜索框中,点击搜索之后切换到第2页。这时我们将url复制。第2页的url为:https://www.…

Mybatis 系列全解(2)——全网免费最细最全,手把手教,学完就可做项目!

Mybatis 系列全解(2) 1. ResultMap结果集映射2. 日志2.1 日志工厂2.2 log4j 3. 分页3.1 实现SQL分页3.2 RowBounds 分页3.3 分页插件 4. 使用注解开发4.1 面向接口编程4.2 使用注解4.3 Mybatis 详细执行过程4.4 CRUD 增删改查 5. Lombok 1. ResultMap结果…

2-17 基于matlab的改进的遗传算法(IGA)对城市交通信号优化分析

基于matlab的改进的遗传算法(IGA)对城市交通信号优化分析。根据交通流量以及饱和流量,对城市道路交叉口交通信号灯实施合理优化控制,考虑到交通状况的动态变化,及每个交叉口的唯一性。通过实时监测交通流量&#xff0c…

【Text2SQL 论文】MCS-SQL:利用多样 prompts + 多项选择来做 Text2SQL

论文:MCS-SQL: Leveraging Multiple Prompts and Multiple-Choice Selection For Text-to-SQL Generation ⭐⭐⭐ arXiv:2405.07467 一、论文速读 已有研究指出,在使用 LLM 使用 ICL 时,ICL 的 few-shot exemplars 的内容、呈现顺序都会敏感…

设备智能化:中国星坤线缆组件的解决方案!

在当今快速发展的电子行业中,产品小型化和成本效益是制造商追求的两大目标。中国星坤端子电缆组件以其灵活性和高效性,为电子设备制造商提供了一种理想的解决方案。本文将探讨星坤端子电缆组件的优势以及其在不同电子设备中的应用。 端子线:小…

数学建模--Matlab求解线性规划问题两种类型实际应用

1.约束条件的符号一致 (1)约束条件的符号一致的意思就是指的是这个约束条件里面的,像这个下面的实例里面的三个约束条件,都是小于号,这个我称之为约束条件符号一致; (2)下面的就是上…

我的3次软考高项通关之旅

1、缘起 初次听说软考是在2022年下半年了,软考的高级分为很多种,我起先想报考高级架构师,但是架构师一年才考一次,如果一次考不过得再准备一年,时间对我来说太长了,于是我决定报考一年考两次的高项。对于国…

iPhone怎么恢复删除的数据?几款顶级iPhone数据恢复软件

从iOS设备恢复数据。 对于任何数据恢复软件来说,从iOS设备恢复数据都是一项复杂的任务,因为Apple已将众多数据保护技术集成到现代iPhone和iPad中。其中包括硬件加密和文件级加密。iOS 上已删除的数据只能通过取证文件工件搜索来找到,例如分析…

抖音集团基于 Apache Doris 的实时数据仓库实践

作者:字节跳动数据平台 在直播、电商等业务场景中存在着大量实时数据,这些数据对业务发展至关重要。而在处理实时数据时,我们也遇到了诸多挑战,比如实时数据开发门槛高、运维成本高以及资源浪费等。 此外,实时数据处…

用谷歌Gemini免费批量生成微信公众号图书带货文章

谷歌Gemini 的api现在是免费的,功能很强大。可以在其官网简单几步操作申请到API:https://ai.google.dev/pricing 以上是一些Excel表格中的图书名称,现在要通过谷歌Gemini来批量生成这些图书的带货推广文章。 ChatGPT中输入提示词&#xff1a…

java对word文档预设参数填值并生成

目录 (1)定义word文档模板 (2)模板二次处理 处理模板图片,不涉及图片可以跳过 处理模板内容 (3)java对word模板填值 (4)Notepad的XML Tools插件安装 工作上要搞一个…

C#与工业自动化结合还有搞头吗?

在开始前刚好我有一些资料,是我根据网友给的问题精心整理了一份「c#的资料从专业入门到高级教程」, 点个关注在评论区回复“666”之后私信回复“666”,全部无偿共享给大家!!!当然有搞头!C#是一…

Java 8 新特性:Lambda表达式让你的代码焕然一新——掌握它,让编程变得轻松又高效!

前言 Java 8 是 Java 发展史上的一次重要里程碑。作为企业级开发语言,它在性能和功能上做了巨大的提升。这其中,Lambda表达式是一个关键的新特性,它为 Java 语言带来了函数式编程的概念。本篇文章将深入探讨Lambda表达式,并结合热…