openEuler系统管理- 课件 第8章-1 系统启动管理_第1页
openEuler系统管理- 课件 第8章-1 系统启动管理_第2页
openEuler系统管理- 课件 第8章-1 系统启动管理_第3页
openEuler系统管理- 课件 第8章-1 系统启动管理_第4页
openEuler系统管理- 课件 第8章-1 系统启动管理_第5页
已阅读5页,还剩15页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

系统启动与进程管理深入了解openEuler系统启动与进程管理01理解系统启动的重要性与原理系统启动管理在ARM架构中,UEFI的执行过程同样是先初始化硬件设备,引导EFI系统运行,然后找到GPT中的BootLoader并启动。BIOS的执行过程是先初始化硬件设备,获取主机的各项硬件配置,然后将MBR中的BootLoader读取到内存中,并将控制权交给BootLoader。BIOS一般会被写入主板ROM中,主要功能是初始化硬件,提供硬件的软件抽象。在硬件启动这一阶段,需要达成的目的是借助BIOS/UEFI将硬件的控制权转交给BootLoader,为后续的系统启动做好准备。启动目的硬件启动的目的是借助固定的程序,将硬件的控制权转交给BootLoader。因为操作系统由硬件上的不同文件组成,需要一个固定程序对接不同操作系统并启动主引导程序。BIOS执行UEFI执行硬件启动根据硬件的差别,硬件启动一般主要有两种方式,即BIOS和UEFI。在x86架构中,以BIOS为主;在ARM架构中,以UEFI为主。狭义的BIOS指BIOS本身,广义的BIOS包括UEFI,UEFI的生态更加开放。控制权转交启动方式GRUB2相比GRUBLegacy具有更多功能,如加密操作系统、恢复系统密码、定制开机画面等,为用户提供了更多的选择和便利。功能增强在这个阶段中,BootLoader会将控制权转交给内核,启动内核之后,接下来的任务将交由内核完成。控制权转交BootLoader是一类程序的总称,如LILO、GRUBLegacy等,一般也称为内核加载程序。GRUB2是GRUB的升级版,能实现选择不同的操作系统启动项、动态改变引导参数等更多功能。由于GRUBLegacy启动加载器当前已经难以维护,所以GRUB重写了代码,并在其基础上实现了模块化,增强了移植性。GRUB升级在openEuler操作系统启动过程中,BootLoader引导阶段的任务是加载Linux内核以及可选的初始RAM磁盘。它可以选择磁盘上多个操作系统内核中的一个进行启动,或从系统分区中选择特殊的内核配置。引导任务BootLoader引导程序总称阶段进入首个进程systemd具有启动速度快、按需启动服务、管理挂载点等多种优势,能够更好地实现系统的初始化和服务管理。内核引导由systemd或init完成相关的启动过程,包括启动服务、启动Shell等。systemd在系统初始化方面具有更多的优势和功能。随着技术的发展,systemd逐渐替代init成为主流的系统初始化工具,openEuler也顺应了这一趋势,采用systemd来提高系统的性能和管理效率。systemd优势在完成内核加载程序启动之后,就进入内核引导阶段。此时操作系统会将控制权由内核转交给运行中的进程systemd或init。openEuler操作系统启动过程中的第一个进程是PID为1的进程,它就是systemd或init。当前大部分的Linux发行版都采用systemd来代替init,openEuler也采用systemd来实现系统初始化功能。替代init启动过程14523启动某个target的时候,systemd就会启动里面所有的unit。用户可以通过修改unit文件自定义unit,并将多个unit设为一个target,按计划启动。启动方式systemd在系统初始化过程中起着关键的作用,它能够有效地管理和协调各个服务的启动,确保系统的正常运行。初始化主体系统初始化阶段由systemd完成。systemd启动之后,会根据预先设定的target运行相应的服务。系统初始化用户可以自定义启动单元或者修改启动顺序,以满足不同的使用需求。例如,用户可以根据自己的业务需求,调整某些服务的启动顺序。服务内容这些服务包括按/etc/fstab挂载目录、设定定时器、启动日志等。target是一个unit组,包含许多相关的unit。自定义启动systemd作用启动终端为用户提供了与系统进行交互的界面,用户可以在终端中输入命令,执行各种操作,实现对系统的管理和使用。启动终端启动完成终端切换至此,通过以上5个阶段,控制权从硬件一路转交至软件,最终传递到用户手中,openEuler操作系统启动完成。在控制台上,模拟这6个tty字符终端,分别对应/dev/tty1/~6,可以按“Alt+Fn”(Fn表示F1~F6)组合键来进行切换。/dev/tty0为桌面终端,也就是用户目前正在使用的终端。用户交互终端指的是用户交互界面或者接口。在系统完成初始化之后,首先会执行/sbin/mingetty开启6个tty字符终端。验证登录操作系统会比对/etc/nologin、/etc/passwd、/etc/shadow等文件进行验证登录。在登录成功后,屏幕将输出相关信息,并加载用户目录下设置的环境变量,等待用户输入。终端定义02了解systemd的特性与配置系统初始化配置systemd支持按需启动,系统运行状态动态变化,用户难以准确知道系统当前运行的服务。systemd快照功能提供了将当前系统运行状态保存并恢复的保障。挂载点管理systemd具有比UpStart强的并行启动能力,采用了socket和D-Bus激活等技术启动服务,启动速度更快。它的宗旨是尽可能减少不必要的进程,并且将更多的进程并行启动。事务性依赖管理系统启动过程中各工作可能存在依赖关系,systemd维护着“事务一致性”的概念,确保所有相关的服务都可以正常启动而不会出现互相依赖、死锁的情况。传统的Linux系统中,用户通过/etc/fstab文件维护固定的文件系统挂载点。而systemd内建了自动挂载服务,实现了动态挂载,同时兼容/etc/fstab文件,用户无须另外安装autofs服务。启动速度快按需启动服务系统快照与恢复systemd具有按需启动的能力,只有在某个服务被真正请求的时候才启动它。当该服务结束时,systemd可以关闭它,等待下次需要时再次启动,避免了服务启动时间过长以及系统资源的浪费。systemd特性unit查看路径systemd具有和SysV以及LSB初始化脚本兼容的特性。系统中已经存在的服务和进程无须修改,降低了系统向systemd迁移的成本,使得systemd替换现有初始化系统成为可能。当存在同名文件时,优先采用优先级较高的配置文件,确保系统使用正确的配置。systemd其他特性systemd开启和监督操作系统是基于unit的,unit的名称由一个与配置文件对应的名字和类型组成。unit有多种类型,如Serviceunit、Targetunit等。兼容性操作单位路径优先级systemd采用cgroup特性跟踪和管理进程的生命周期。cgroup主要用来实现系统资源配额管理,提供了类似文件系统的接口,使用方便。当进程创建子进程时,子进程会继承父进程的cgroup。所有可用的systemdunit可以通过3条路径查看,分别是/usr/lib/systemd/system/、/run/systemd/system/、/etc/systemd/system/,这3条路径的优先级自上而下递减。进程管理unit类型介绍systemd开启和监督操作系统是基于unit的,也就是说,systemd操作的基本单位是unit。unit的名称由一个与配置文件对应的名字和类型组成。例如name.serviceunit有一个具有相同名字的配置文件,是守护进程name的一个封装单元。unit查看与优先级所有可用的systemdunit可以通过以下3条路径查看:

在/usr/lib/systemd/system/目录下,可查看软件包安装时产生的systemdunit;

在/run/systemd/system/目录下,可查看运行时创建的systemdunit;

在/etc/systemd/system/目录下,可查看由root用户创建和管理的systemdunit。这3条路径的优先级自上而下递减,即存在同名文件时,优先采用优先级较高的配置文件。openEuler运行级别运行级别定义运行级别定义了服务器启动后的状态。在openEuler操作系统中,systemd用目标替代运行级别的概念,提供了更大的灵活性。常规运行级别目标描述0runlevel0.target、poweroff.target关闭系统1/s/singlerunlevel1.target、rescue.target单用户模式2、4runlevel2.target、runlevel4.target、multi-user.target用户定义/域特定运行级别。默认等同于33runlevel3.target、multi-user.target多用户,非图形化环境。用户可以通过多个控制台或网络登录5runlevel5.target、graphical.target多用户,图形化环境。通常为所有运行级别为3的服务外加图形化登录6runlevel6.target、reboot.target重启系统rescuerescure.target救援模式emergencyemergency.target紧急模式(紧急Shell)救援与紧急模式在救援模式下,将挂载所有本地文件系统,但不会启动正常服务,比如网络等,只会启动很少的服务。救援模式多用于系统无法正常启动的情况,此外,可以在救援模式下执行一些重要的救援操作,例如重置root密码。如需要改变当前系统为救援模式,可在root权限下执行如下命令:[root@openEuler~]#systemctlrescue命令执行后,窗口会有如下输出信息:Youareinrescuemode.Afterloggingin,type"journalctl-xb"toviewsystemlogs,"systemctlreboot"toreboot,"systemctldefault"or"exit"tobootintodefaultmode.Giverootpasswordformaintenance(orpressControl-Dtocontinue):假如此时想要从救援模式切换到正常模式,需要重启操作系统。与救援模式相比,紧急模式下不启动任何服务,不会挂载任何文件系统,用户只会打开一个原始的Shell。因此紧急模式多适用于调试目的和修复系统。如需要改变当前系统为紧急模式,可在root权限下执行如下命令:[root@openEuler~]#systemctlemergency命令执行后,窗口会有如下输出信息:Youareinemergencymode.Afterloggingin,type"journalctl-xb"toviewsystemlogs,"systemctlreboot"toreboot,"systemctldefault"or"exit"tobootintodefaultmode.Giverootpasswordformaintenance(orpressControl-Dtocontinue):假如此时想要从紧急模式切换到正常模式,同样需要重启操作系统。在openEuler中,systemd提供systemctl命令来运行、关闭、重启、显示、启用、禁用系统服务。与sysvinit命令功能类似,当前版本依然兼容service和chkconfig命令,但建议统一用systemctl进行系统服务管理。systemctl命令openEuler服务控制target是一组unit的集合,所以当用户想在systemd中自定义一些服务模块时,只需在相应的target目录下写入unit配置文件即可。每个unit对应一个.service文件(即服务),这些服务分为两类:系统服务和用户服务。系统服务是用户登录前运行的程序,而用户服务是用户登录后运行的程序。对于每个.service文件,需要配置3个字段:Unit代表启动顺序与依赖关系;Service代表启动行为,是必选字段;Install代表服务所在的target。openEuler服务控制以user.service为例,使自定义服务模块生效并设置自启动,有以下两种方法。

直接使用systemctl命令:[root@openEuler~]#systemctlenableusr.service

手动创建软连接:[root@openEuler~]#ln-s/usr/lib/systemd/system/user.service/usr/lib/systemd/

system/local-fs.target.wants/usr.service执行以下命令重新加载,使配置生效。[root@openEuler~]#systemctldaemon-reloadopenEuler服务控制以user.service为例,使自定义服务模块生效并设置自启动,有以下两种方法。

直接使用systemctl命令:[root@openEuler~]#systemctlenableusr.service

手动创建软连接:[root@openEuler~]#ln-s/usr/lib/systemd/system/user.service/usr/lib/systemd/

system/local-fs.target.wants/usr.service执行以下命令重新加载,使配置生效。[root@openEuler~]#systemctldaemon-reloadopenEuler服务控制【示例8-5】#查询服务是否被激活[root@openEuler~]#systemctlis-activename.serviceinactive选项is-active的返回结果及说明如表8-5所示。openEuler服务控制【示例8-6】#查询服务是否开机启动[root@openEuler~]#systemctlis-enabledfirewalld.servicedisabled选项is-enabled的返回结果及说明如表所示。返回结果说明enabled服务已经通过/etc/systemd/system/目录下的Alias=别名、.wants/或.requires/符号链接被永久启用enabled-runtime已经通过/run/systemd/system/目录下的Alias=别名、.wants/或.requires/符号链接被临时启用linked虽然单元文件本身不在标准单元目录中,但是指向此单元文件的一个或多个符号链接已经存在于/etc/systemd/system/永久目录中linked-runtime虽然单元文件本身不在标准单元目录中,但是指向此单元文件的一个或多个符号链接已经存在于/run/systemd/system/临时目录中masked已经被/etc/systemd/system/目录永久屏蔽(符号链接指向

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论