开开心心了解--------引导过程与服务控制

为什么要系统引导?

系统引导是操作系统运行的开始,在用户能够正常登陆到系统之前,linux的引导过程完成了一系列的初始化任务,并加载必要的程序和命令终端,为用户登录做好了准备。简单的来说 没有系统的引导你的电脑就开机不了。

引导过程

引导过程纵览

图形化理解:
在这里插入图片描述
(1)引导过程有这几个阶段:开机自检,MBR引导,GRUB菜单,加载Linux内核,init进程初始化。开机后,主板BIOS(基础输入输出系统)中的CPU,内存,显卡,键盘等设备进行初始化检测,并将大多数的控制权移交给本机硬盘。
(2)根据mbr的设置将系统控制权传递带包括超作系统的引导文件分区。
(3) GRUB是应用最广泛的系统引导程序,系统控制权给GRUB后,将会显示启动系统给用户选择,并根据选择(一般有默认值)加载linux内核文件,然后在将控制权给内核。
(4)linux内核是预先编译好的二进制文件,介于各种硬件资源与系统程序之间负责分配与调度。然后它掌握全部的的超作系统运行程序。。。一般在/boot/vmlinuz-…中。

init进程

每个进程有一个PID做身份标记,/sbin/init是内核第一个加载的程序,所以它的进程号总为1.在linux各进程中init也就成了父进程 其他的进程是它的子进程 最后形成进程树。。。。。注意:需要切换不同的系统运行状态时候,可以向init进程发起正确产数,由init完成相关操作

inittab配置文件

/etc/inittab-----------------------------配置默认运行级别
/etc/sysconfig/init--------------------控制tty终端的开启数量,终端颜色方案
/etc/inin/rsS.conf---------------------加载rc.sysinit脚本 完成初始化
/etc/init/rc.conf-----------------------兼容脚本,负责各运行基本的调用处理
/etc/init/rcR-sulogin.conf----------为单用户模式启动/sbin/sushell环境
/etc/init/control-alt-delete.conf—控制终端CRTL+ALT+DEL热键操作
/etc/init/start-ttys.conf--------------配置tty终端的开启数量和配置文件
/etc/init/tty.conf-----------------------控制tty终端的开启
可以用命令:cat /etc/inittab 查看配置文件
配置记录格式:标记:运行级别:动作类型:程序或者脚本
其功能级别如下:# 0 - 停机(千万不能把initdefault设置为0 )# 1 - 单用户模式# 2 - 多用户,没有 NFS# 3 - 完全多用户模式(标准的运行级)# 4 - 没有用到# 5 - X11 (xwindow)# 6 - 重新启动(千万不要把initdefault设置为6——把被你黑掉的linux的initdefault设置为0或6也算是拒绝服务攻击噢!)
简单理解就是:init 6 是重启命令

排除启动故障

排除启动故障

下面介绍下MBR扇区进行备份,模拟破坏,修复过程
(1)执行备份

新添加一个磁盘后 重启后
fdisk -l		##看下有没第二个硬盘
mkfs.xfs /dev/sdb	##格式化一下
mount /dev/sdb /opt	##挂载到/opt
dd if=/dev/sda of=/opt/mbr.bak bs=512 count=1	##将sda的扇区备份到sdb1中

(2)模拟扇区故障

dd if=/dev/zero of=/dev/sda bs=512 count=1	##从设备zero中读取512字节数据覆盖到sda,模拟破坏mbr扇区

出现这情况说明MBR坏了
在这里插入图片描述

(3)从备份中恢复MBR扇区数据
首先去挂光盘
在这里插入图片描述
然后 重启按F2选择光盘启动–按F10保存退出
在这里插入图片描述
进入急救模式在这里插入图片描述
在这里插入图片描述
然后启动别忘了把它调整为硬盘启动
这样MBR修复完成

电脑密码忘了解决方案:

一:进入光盘急救模式 按F10保存退出
在这里插入图片描述二、选择Troubleshooting救急

在这里插入图片描述
三、在这里插入图片描述
四、切根 重写密码

chroot /mnt/sysimage
passwd root
输入密码
eixt
reboot

在这里插入图片描述

五、记得将那个菜单改回去

服务控制及切换运行级别

服务控制与运行级别

控制脚本在/etc/init.d里面
start
stop
status ##查看
restart ##重启
reload ##重载
启动的两种方法
service httpd start
/etc/rc.d/init.d/postfix start
切换运行级别
runlevel ##会显示N 5等信息
显示的日字符会表示的是切换前的级别和当前的级别

优化启动过程

必须要要知道的常见的系统服务

crond 按预定周期执行任务 建议开启
irqbalance 多核心CUP处理的调度支持 建议开启
lvm2-monitor LVM逻辑卷管理与监控 建议开启
messagebus 发送系统相关事件的通知消息 建议关闭
netfs 范文控制文件夹等网络文件系统 建议开启
network 配置及适用网卡,网络地址 建议开启
smartd 监控本地硬盘状态及并发送故障报告 建议开启
sshd 提供远程登录和管理Linux主机的功能 建议开启
rsyslog 记录内核系统的日志消息 建议开启

优化开机自动加载服务

1、使用ntsysv工具优化
如执行ntsysv --level 35 打开ntsysv的管理程序(“【*】”表示启动 “【】” 表示关闭)
2、使用chkconfig工具
不提供交互式页面用于查询或设置系统服务的默认启动状态。
chkconfig --list ##查看所有服务的默认启动状态
chkconffig --list network ##检查network的默认启动状态
chkconfig --list 运行级别列表服务名称 on|off
chkconfig --level 3 postfix off ##指定postfix在进入字符模式的时候默认启动
chkconfig -list postfix ##确认运行级别3已经为关闭
chkconfig --level 2345 postfix off ##指定postfix在任意默认2345级别为不启动
chkconfig --list postfix

引导过程

在CentOS 7X版本中默认systemd为PID恒为 1的内核第一个加载进程

使用systemd管理系统

systemctl不是一个单独的命令而是一个集合体例如执行systemctl是管理系统的主要命令
systemd单元默认存放在/lib/systemd/system目录中
systemctl [options…] {command} 语法
关键字信息说明
loaded 配置文件被处理
actice(runing) 一个或多个进程在持续的运行
active(exited)成功完成一个“一次性” 配置
active(waiting)运行但等待事件
inactive 未运行
enabled 开启自动启动
disabled 不随开机自动启动
static 不能自动启动只能随着其他单元启动而启动
masked 该配置文件不允许建立自动启动关系
常见的一下命令
systemctl list-dependencies 查看依赖关系
systemctl mask NetworkManager 屏蔽网网管
systemctl unmask NetworkManager 取消屏蔽网管
服务配置文件
systemctl list-unit-files --type unit-type 可列出来systemd的所有配置文件及其状态
下面介绍一下Target类型单元
target就是一个单元组通过一连串的依赖关系将许多相关的systemd单元组织在一起
systemd list-unit-files --type target 查看当前系统所有的target
default.target 默认启动target
graphical.target 图形界面的target
multi-user.target 多用户字符界面的target
systemctl set-default 命令设置默认启动
systemctl isolate multi-user.target 默认不同的target之间切换
日志系统
systemd提供了自己的日志系统journal无需其他的安装
journalctl -b 输出本次启动后的所有日志信息
localectl list-locales 列出系统所支持的语言
localectl set-locale LANG=zh_CZ.UTF-8 设置语言为中文
时间相关的设置
timedatectl 查看当前的时间
timedatectl set-time YYYY-MM-DD设置系统日期
timedatectl set-time HH:MM:SS 设置系统时间
timedatectl set-time time_zone 设置系统时区
登录系统的用户信息
loginctl 等同于loginctl list-sessions命令 来查看当前登录用户的会话
loginctl list-users 列出当前登录系统的用户
启动耗时
systemd-analyze等同于systemctl-analyze time查看启动耗时
systemd-analyze blame 查看每个服务的启动耗时

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值