引导过程
按下电源,设备开启一直到进入登陆界面,系统开机的过程
服务的过程
开
关
重启
查看状态
systemctl
系统的运行级别为图形化界面
引导过程就是开机过程
开机自检(bios)
服务器开启之后,根据BIOS设置,对一系列的硬件设备进行初步检测。
检测成功之后,系统会根据预设的启动顺序,移交系统的控制权,绝大多数都是移交硬盘
MBR引导:
根据第一个硬盘第一个扇区的MBR(主引导记录),找出操作系统的所在分区
把系统控制权移交给包含系统引导文件的分区,调用grup菜单
控制权移交grup菜单
grup菜单
多系统的引导器程序。
系统的控制权移交grup之后,显示启动菜单供用户选择
选择完系统之后,系统的控制权会交给所选系统的内核文件
centos7使用的grup2启动引导器
/boot/grup2/grup.cfg
获取内核文件的设置和路径
加载内核
内核在/boot目录中。
linux内核文件是事先编译好的可执行的二进制文件
介于各种引荐资源和系统程序之间
作用为调度以及分配资源,给进程使用。
把一切相关的配置操作和启动文件放到内存中然后系统移交init进程
init进程初始化:
初始化:把刚才加载到内存中的处理配置和处理进程一并执行生效。
到初始化时开机过程结束,等待用户登录
主要流程为
bios自检(检查硬件)--mbr(找操作系统)--grup(选择操作系统)--加载内核(处理配置,处理开机启动程序)--init(系统配置生效,运行开机启动程序,等待用户登录)
init:init初始化已经被淘汰了。
串行:它是把系统中配置的脚本和启动程序脚本,按照顺序一个一个执行。
centos7:systemd取代传统的init方式,并行。并行就是一起运行。
systemd也是linux中所有进程中的第一个进程,所有其他进程都是systemd的子进程。
pid进程号,systemd的进程号是1
systemd的控制方式:
控制方式:控制单元unit来进行描述和控制系统服务和资源
单元类型:
.service:指的就是服务,进程提供的特定功能就是服务
.sorket:通信套接字,提供端口通信服务
.target:一组服务的集合,描述的是系统的运行级别。
systemctl:系统服务控制命令
systrmctl 控制类型 服务名称。
控制类型:
start 开启
ststus:状态
restart:重启
reload:重新加载
stop:停止
enable:开机自启
disable:关闭开机自启
restart:改配置文件一定要把服务重新加载
重启尽量用reload,reload不需要关闭进程
running:运行状态
dead:停止运行
failed:服务有异常,配置文件有问题
tail -f /var/log/messages
messages:系统日志,所有的系统运行,控制记录都在这个文件当中
系统的运行级别:
linux
- 关机
- 单用户模式,不需要密码即可登录,用于系统维护
- 字符界面
- 字符界面
- 字符界面
- 图形化界面
- 重启
查看系统运行级别:runlevel
N表示系统之前没有切换过系统的运行级别
5表示系统的运行级别是图形化界面
init 0 关机
poweroff 关机
init 6 重启系统
reboot 重启系统
修复MBR扇区故障
chroot:加载光盘镜像,进入系统根环境
chroot /mnt/
进程管理:进程的真正执行者是线程
就是linux的任务管理器
静态查看进程
动态查看进程
父进程—子进程
父进程先启动,是由父进程给子进程分配资源,子进程运行。
结束运行:子进程先结束—父进程会回收资源。然后父进程才会结束
父进程先结束,子进程就会变成僵尸进程。
PS:
静态进程的统计信息:
a:显示当前终端上的所有进程,包括其他用户的进程
u:列出所有进程的用户
x:显示所有终端的进程信息
user:进程的所属用户
PID:进程的id号唯一。也是一个标的,标的对应的进程名,进程ID,杀进程就是杀pid
%CPU:进程占用cpu的百分比
%MEM:进程占用物理内存的百分比
VSZ:进程占用的虚拟内存
RSS:进程占用的物理内存量(KB)
TTY:启动的终端名(?:不是从终端打开的进程,是系统自启动的进程·)
stat:进程状态:
S:休眠状态
D:不可中断的休眠状态
R:运行当中的进程
T:停止状态
Z:僵尸进程
s:该进程拥有子进程
<:表示高优先级
N:低优先级
+:表示是一个前台运行的进程
l:表示该进程有多个线程
TIME:占用CUP的时间
COMMAND:表示该进程启动的命令
计划任务管理:怎么创建定时执行任务
僵尸进程:僵尸进程无法被强制结束,占用的资源非常小,对系统没有太大的影响,僵尸进程太多只能重启,重启后全部消失。
pstree:以树型结构列出进程信息(线程)
-a:显示进程所有的完整的信息 -p:查看进程的线程 -u:查看进程所属的用户