第八章 Linux传导过程与服务控制

目录

一、Linux操作系统引导过程

1、引导过程总览

         2、系统初始化进程

(1)init进程

(2)Systemd

3、Systemd单元类型

4、运行级别所对应的Systemd目标

二、排除启动类故障

1、修复MBR扇区故障

(1)故障原因

(2)故障现象

(3)解决思路

三、服务控制及切换运行级别

1、Linux关系的运行级别

2、系统服务控制

(1)系统服务控制

(2)控制类型

3、Linux系统的运行级别

(1)查看运行级别

(2)临时切换运行级别

(3)设置永久运行级别

四、优化启动过程

1、系统服务的启动和控制

(1)查看系统服务的启动状态

(2)设置系统服务的启动状态


一、Linux操作系统引导过程

1、引导过程总览

a、开机检测:检测硬件设备,找到能够引导系统的设备,比如硬盘

b、MBR引导:运行MBR扇区里的主引导程序GRUB

c、CRUB菜单:系统读取GRUB配置文件(/boot/grub2/grub.cfg)获取内核的设置和位置,并在屏幕显示GRUBN菜单页面

d、加载linux内核:把内核加载到内存,将系统控制权交接给内核

e、INIT进程初始化:内核将init进程加载到内存中运行,并把init进程作为系统的第一个进程

f、系统初始模块:启动内核模块,执行级别的启动脚本,执行/etc/rc.d/rc.local文件里的命令

2、系统初始化进程

(1)init进程

a、有Linux内核加载运行/sbin/init程序

b、init进程是系统中第一个进程,是所有进程的父进程

c、init进程的PID(进程标记)号永远为1

init进程 文件位于 /sbin/init -> /lib/systemd , init进程PID号为固定为 1 ,是系统中其他所有进程的父进程

(2)Systemd

a、Systemd是Linux操作系统的一种init软件

b、CentOS7中采用全新的Systemd启动方式,取代传统的SysVinit

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

进程启动方式

3、Systemd单元类型

套接字文件:应用程序直接的数据连接文件

套接字格式:ip:port                ftp    192.168.80.20:21

4、运行级别所对应的Systemd目标

二、排除启动类故障

1、修复MBR扇区故障

(1)故障原因

a、病毒、木马等造成的破坏

b、不正确的分区操作、磁盘读写误操作

(2)故障现象

a、找不到引导程序,启动中断

b、无法加载操作系统,开机后黑屏

(3)解决思路

a、应提前做好备份文件

b、已安装光盘引导进入急救模式

c、从备份文件中

启动类故障恢复
MBR   主引导程序 1~446字节   硬盘分区表 447~510字节
如果是 MBR 整个扇区数据被破坏了,需要进入到急救模式将备份的MBR数据导入还原
备份命令:dd if=/dev/sda  of=备份文件  bs=512  count=1
还原命令:dd if=备份文件  of=/dev/sda
  
如果是 MBR 的GRUB主引导程序被破坏了
1)在急救模式下使用备份文件恢复          dd if=备份文件  of=/dev/sda  bs=446  count=1
2)在急救模式下重建MBR的GRUB主引导程序   chroot /mnt/sysimage   ->   grub2-install /dev/sda
      
如果是GRUB配置文件被删了
在急救模式下重建GRUB配置文件  chroot /mnt/sysimage   ->   grub2-mkconfig -o /boot/grub2/grub.cfg

如果是root密码忘记了
1)在急救模式下   先切换系统根环境 chroot /mnt/sysimage   ->  passwd root
2)在GRUB菜单按 e 键,修改内容 
在 linux16 /vmlinuz-3.10.0-1160.71.1.el7.x86_64 root=UUID=a99fd431-dc10-4233-a655-3c4b8d710624 ro rhgb quiet LANG=zh_CN.UTF-8 这行后面追加配置
rw single init=/bin/bash ,再按 ctrl + x 重启系统
再在bash界面输入 passwd root 修改密码  ->  touch /.autorelabel  -->   exec /sbin/init

三、服务控制及切换运行级别

1、Linux关系的运行级别

运行级别 功能 对应的systemd单元      切换
0关机 poweroff.target        
 

init 0    

 systemctl isolate poweroff.target

1单用户模式rescue.target        

  init 1    

 systemctl isolate rescue.target

2字符界面的多用户模式(无网络)multi-user.target
 
3字符界面的多用户模式(完整的,有网络)multi-user.target      

init 3      

systemctl isolate multi-user.target

4字符界面的多用户模式(保存) multi-user.target
 
5图形界面的多用户模式 graphical.target      

 init 5    

 systemctl isolate graphical.target

6 重启

reboot.target          

init 6    

 systemctl isolate reboot.target

2、系统服务控制

(1)系统服务控制

systemctl 控制类型 服务名称

(2)控制类型

a、start:启动

b、stop:停止

c、restart:重新启动

d、reload:重新加载

e、status:查看服务状态

服务管理操作
systemctl start|stop|restart|reload|status|is-active 服务名[.service]   #要确保在 /usr/lib/systemd/system/ 目录中有相关服务的 XXX.service 文件

service 服务名 start|stop|restart|reload|status                         #要确保在 /etc/init.d/ 目录中有相关服务的管理脚本文件

服务开机自启管理
systemctl enable|disable [--now] 服务名[.service]       # --now选项可实现立即开启|关闭服务
systemctl is-enabled 服务名[.service]

3、Linux系统的运行级别

(1)查看运行级别

a、runlevel命令  (runlevel只能查看切换运行级别与当前运行级别)

b、systemctl工具   (systemctl时能查看默认的运行级别)

(2)临时切换运行级别

a、init命令  (init的命令参数是运行级别所对应的数字)

b、systemctl工具   (systemctl的命令参数是具体的target)

(3)设置永久运行级别

runlevel         #查看上一次的运行级别 和 当前的运行级别

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

systemctl set-default multi-user.target|graphical.target      #设置默认运行级别
等效于 ln -s -f /usr/lib/systemd/system/multi-user.target|graphical.target  /etc/systemd/system/default.target

四、优化启动过程

1、系统服务的启动和控制

(1)查看系统服务的启动状态

systemctl is-enabled 服务器名称

(2)设置系统服务的启动状态

systemctl enable 服务名称         //开启开机自启动

systemctl disable 服务名称        //关闭开机自启动

一个命令开机自启

关闭开机自启

ntsysv    #图形化管理开机自启

chkconfig --add 服务名                             #服务名就是 /etc/init.d/ 目录下的脚本文件名
chkconfig --level 运行级别列表  服务名  on|off     #开启|关闭服务在哪些运行级别下开机自启
chkconfig --list 服务名                            #查看自启状态

runlevel         #查看上一次的运行级别 和 当前的运行级别

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

systemctl set-default multi-user.target|graphical.target      #设置默认运行级别
等效于 ln -s -f /usr/lib/systemd/system/multi-user.target|graphical.target  /etc/systemd/system/default.target


字符集编码
ASCII  127个字符   
GBK    中国字符集编码   
UTF-8  万国字符集编码

hostnamectl set-hostname XXX
localectl set-locale LANG=语言.字符集
 

  • 24
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值