开机自启动流程2
开机启动流程2
救援模式
需要有系统盘才可以进入救援模式
要进入安装系统的界面才能进入救援模式
1.关机
init 0
halt
poweroff
shutdow -h now
2.将系统盘放入光驱中
3.进入BIOS
将系统启动的顺序该为从光盘启动
# 方法1
开机时,不断按F2
# 方法2
在电源里点击进入固件
选择boot
把CD-ROM启动顺序排到第一个
按F10保存退出 选择yes
进入安装系统界面
进入救援模式
选择选项1
案例1-损坏系统扇区 (前521字节)
# 手动损害系统扇区
dd </dev/zero >/dev/sda bs=1 count=446
扇区损害,进入救援模式修复扇区
# 1.修复扇区
grub2-install /dev/sda
# 2.退出root环境
exit
# 3.重启
reboot
修复grub菜单
# 1.模拟故障
rm -rf /boot/grub2/
# 2.重启
reboot
系统状态
# 3.重启后进入救援模式
# 4.修复扇区
grub2-install /dev/sba
# 5.重置grub.cfg配置文件
grub2-mkconfig -o /boot/grub2/grub.cfg
# 6.退出root环境
exit
# 7.重启
reboot
# 查看/boot/grub2是否修复
ls /boot/grub2
systemd管理服务
# systemd的由来
linux一直以来都是采用init来作为爸爸,但是init有两个缺点:
1.启动时间长,init进程是串行启动,只有前一个进程完成,才会启动下一个进程。
2.启动脚本复杂,初始化完成后。系统会加载很多脚本,脚本都会处理各自的情况,这会让脚本多而复杂
CentOs5是启动速度最慢的,串行启动过程,无论进程之间有无依赖关系
CentOS6相对启动速度有所改进,有依赖的进程之间依次启动而其他没有依赖关系的则并行启动
CentOS7所有进程无论有无依赖关系,都并行启动,当然有很多时候进程并没有真正启动,而是只有一个信号,在真正利用时才会真正启动
# 什么是systemd
systemd即为system daemon守护进程,systemd主要解决上文问题而诞生的,systemd的目标是,为系统的启动和管理提供一套完整的解决方案。
# systemd的优势
1.最新系统都采用systemd管理
2.CentOS7支持开机并行启动服务,开机速度快
3.CentOS7中关机值关闭真在运行的服务,而C6会想所有的服务全部都关一遍
4.C7服务启动与关闭不使用脚本进行管理
5.C7使用systemd解决原有的模式缺陷,如:原有service不会关闭程序的子进程
systend相关的配置文件
# 系统中所有服务启动脚本存放路径
C6 :etc/init.d
C7 : /usr/lib/systemd/system
# 系统运行级别相关目录
C6 :/etc/rc*.d
C7 : /etc/systemd/system
# 默认运行级别需要开机自启的服务存放目录
C6 :/etc/rc3.d
C7 : /etc/systemd/system/multi-user.target.wants/
systemd管理服务命令
1.启动服务
C6: /etc/init.d/服务名 start
service 服务名 star
C7:systemctl start 服务名
service 服务名 star
2.停止服务
C6 : /etc/init.d/服务名 stop
C7 : systemctl stop 服务名
3.服务重启:
C6 :/etc/init.d/服务名 restart
C7 :systemctl restart 服务名
4.服务重新加载:
C6 :/etc/init.d/服务名 reload
C7 : systemctl relod 服务名
5.检查服务启动状态:
C6 : /etc/init.d/服务名 status
C7 :systemctl status 服务名
# 只有C7有
6.判断服务是否在运行:
systemctl is-active 服务名
7.禁用指定的服务
systemctl mask 服务名
8.取消禁用指定的服务
systemctl unmask 服务名
开机自启动服务
1.查看开机自启动的服务有哪些
C6 :chkconfig
C7 :systemctl list-unit-files
2.设置开机自启动:
C6 : chkconfig 服务名 on
C7 : systemctl enable 服务名
3.关闭开机自启动:
C6 :chkconfig 服务名 off
C7 :systemctl disable 服务名
4.查看指定服务是否开机自启动
C6 :chkconfig --list 服务名
C7 :systemctl is-enabled 服务名
# 只有C7有
5.服务的启动脚本被修改,重新加载启动脚本
systemctl daemon-reload
systemctl服务状态说明
服务状态 | 状态说明 |
---|---|
loaded | 服务单元的配置文件已被处理 |
active(running) | 服务的一个或多个进程在运行 |
active (exited) | 一次性运行的服务成功被执行并退出(服务运行后完成任务,相关进程会自动退出) |
active(waiting) | 服务已经运行但在等待某个事件 |
inactive | 服务没有在运行 |
enable | 服务设定为开机运行 |
disabled | 服务设定为开机不运行 |
static | 服务不能被设定开机启动,但可以由其他服务启动该服务 |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!