Linux速通06 系统的初始化服务和监控
Linux系统引导的顺序
# 掌握 Linux系统引导的顺序
* BIOS的工作是检查计算机的硬件设备,如CPU、内存和风扇速度等
* MBR会在启动盘的第一个块中,大小为512B,其中前446B是引导信息,中64B是分区信息,后2B是结束标志位
* kernel主要是装载计算机设备的驱动程序以便操作系统可以控制计算机上的设备,并且以只读的方式挂载根文件系统,也就是说此时的操作系统只能读到根文件系统所在的分区
* init程序的进程 id为1,即 Linux操作系统执行的第一个程序
BIOS的初始化和引导加载程序
# BIOS的定义:BIOS(Basic Input/Output System 基本输入输出设备),是硬件和软件之间的接口
GRUB程序和 grub.conf文件
# GRUB的定义:GRUB是 Grand Unified Bootloader(多重操作系统启动管理器)的缩写
# GRUB的配置文件:grub.conf
* 设置 grub Md5加密命令 grub-MD5-crypt
* Password = 明文或 Password = 密文(编辑 grub配置文件的密码)
* Title red hat 标题
* Password = 明文或 Password = 密文(加载内核系统引导必须的密码)
内核的初始化和 init的初始化
# init的配置文件:/etc/inittab
# 了解 init程序要做的工作:
* 决定预设(默认)要使用哪个 run levels(运行级别)
* 执行一些系统初始化的脚步(程序)来初始化操作系统
* 根据 run level的设置来执行所对应目录中的程序,以决定要启动哪些服务
* 设定某些组合键
* 定义 UPS不间断电源系统,即当电源出现问题时或电源恢复时要执行哪些程序
* 产生6个virtual consoles,也就是 tty1~tty6
run level(运行级别)
# 所有的运行级别及每个运行级别对应的功能
* 在 /etc/inittab文件中设置默认的启动级别
run level | 功能 |
0 | 关机,不能设置为 initdefault(默认运行级别) |
1 | 单用户模式,只有root用户可以登录,用于系统维护 |
2 | 多用户模式,但是没有启动网络的功能 |
3 | 多用户模式,启动了网络功能,时文字界面 |
4 | 多用户自定义模式,默认与 run level 3相同 |
5 | 与 run level 3相同,但是启动了 X11(图形界面) |
6 | 重新启动系统,不能设置为initdefault |
关闭系统及重启系统
# 常用的可以关闭系统的命令:
* shutdown -h now
* halt
* poweroff
* init 0
# 常用的可以重启系统的命令:
* shutdown -r now
* reboot
* init 6
* ctrl + alt + delete
单用户模式
# 在开机读秒界面任意按键,进入如下界面
# 按 e 进入选择界面
# 选择 kernel 按 e
# 输入 空格 和 1(表示 init 1 的模式开机),回车后按 b,进入到单用户模式
GRUB加密
# 在 /etc/grub.conf文件下新增一行:password=密码内容
* 密码可用 grub-md5-crypt加密,将加密后内容复制到密码内容中也可以
# 加密后再想进入 GRUB就需要先按 p输入密码,再按 e
破解 GRUB加密
# 在开机界面按 F2进入 BIOS界面,设置成 CD/DVD引导或外部存储引导
# 选择救援模式
# 一路点击 OK,原系统文件被挂载到了 /mnt/sysimage目录下
# 修改 grub.conf文件,删除密码
# 重启后改回 BIOS即可正常进入 GRUB界面
BIOS加密
# 重启后 按 F2 进入BIOS界面
# 设置 supervisor password
# 再次进入 BIOS后就会要求用户输入密码
系统进程监视工具
# top 命令:top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器
# 使用 top命令显示的系统状态(默认每5秒刷新一下屏幕上的显示结果)
* 第一行:任务队列信息
信息 | 含义 |
20:41:23 | 当前时间 |
up 1 min | 系统运行时间,格式为 时 :分 |
1 user | 当前登录用户数 |
load average:0.12, 0.05, 0.02 | 系统负载,三个数值分别时 1分钟、5分钟、15分钟前到现在的平均值 CPU负载 <=1:能正常运行 CPU负载 > 1:超负荷运转 多核CPU,load average <= CPU核数 * 0.7 |
* 第二三行:进程和CPU信息
信息 | 含义 |
Tasks:74 total | 进程总数 |
1 running | 正在运行的进程数 |
73 sleeping | 睡眠的进程数 |
0 stopped | 停止的进程数 |
0 zombie | 僵尸状态的进程数 |
Cpu(s):0.0%us | 用户空间占用CPU百分比 |
0.3%sy | 内核空间占用CPU百分比 |
0.0%ni | 用户进程空间内改变过优先级的进程占用CPU百分比 |
99.7%id | 空闲CPU百分比 |
0.0%wa | 等待输入输出的CPU时间百分比 |
0.0%hi | 硬件中断占用CPU时间的百分比 |
0.0%si | 软件中断占用CPU时间的百分比 |
* 第四五行:内存信息
* 进程信息
信息 | 含义 |
PID | 进程 id |
PPID | 父进程 id |
RUSER | Real User Name |
UID | 进程所有者的用户 id |
USER | 进程所有者的用户名 |
GROUP | 进程所有者的组名 |
TTY | 启动进程的终端名,如果不是从终端启动的进程则显示为? |
PR | 优先级 |
NI | nice值,负值表示高优先级,正值表示低优先级 |
P | 最后使用的CPU,仅在多CPU环境下有意义 |
%CPU | 上次更新到现在的CPU时间占用百分比 |
TIME | 进程使用的CPU时间总计,单位秒 |
TIME+ | 进程使用的CPU时间总计,单位 1/100 秒 |
%MEM | 进程使用的物理内存百分比 |
VIRT | 进程使用的虚拟内存总量,单位 kb,VIRT = SWAP + RES |
SWAP | 进程使用的虚拟内存中,被换出的大小,单位 kb |
RES | 进程使用的虚拟内存中,未被换出的大小,单位 kb,RES = CODE + DATA |
CODE | 可执行代码占用的物理内存大小,单位 kb |
DATA | 可执行代码以外的部分(数据段 + 栈)占用的物理内存大小,单位 kb |
SHR | 共享内存大小,单位 kb |
nFLT | 页面错误次数 |
nDRT | 最后一次写入到现在,被修改过的页面数 |
S | 进程状态,D=不可中断的睡眠状态,R=运行状态,S=睡眠状态,T=跟踪/停止,Z=僵尸进程 |
COMMAND | 命令行/命令名 |
WCHAN | 若该进程在睡眠,则显示睡眠中的系统函数名 |
Flags | 任务标志,参考 sched.h |
系统进程控制工具 - free
# free 命令:显示内存的使用状态
# 各个字段含义:
* 物理内存 FO[2][1] = 1906280KB
* 物理内存中被使用的内存 FO[2][2] = 171396KB
* 可以使用内存 FO[2][3] = 1734884KB
* 等式:FO[2][1] = FO[2][2] + FO[2][3]
* 共享内存 FO[2][4] = 224KB,表示几个进程共享的内存(数据共享)
* 已分配但仍未使用的 buffers 大小 FO[2][5] = 6132KB
* 已分配但仍未使用的 cached 大小 FO[2][6] = 41040KB
* buffer的解释:A buffer is something that has yet to be "written" to dis
* cached的解释:A cache is something that has been "read" from the disk and stored for later use.
* 也就是说,buffer 时用于存放要输出到 disk(块设备)的数据的,而 cache是存放从 disk上读出的数据。二者提高了 I/O性能,并由OS管控
# free命令的所有输出值都是从 /proc/meminfo 中读出的
系统中进程的监控 - ps 命令
# 进程的定义:进程是程序的一次动态执行
# 守护进程的定义:守护进程是在后台运行并提供系统服务的一些进程
# 父进程、子进程的定义:当一个进程创建另一个进程时,第一个进程被称为新进程的父进程,新进程被称为子进程。
# ps 命令的功能:用来显示当前进程的状态
* 例:ps -aux :显示所有的与用户相关的完整信息
pstree命令
# 功能:以树状图显示程序
# 举例:
* 列出PID为4729的进程的进程状态数的命令:pstree 4729
kill 命令
# 功能:把一个信号发送给一个或多个进程,默认发送终止信号
# 举例:
* 杀死 PID为3906的进程的命令:kill -9 3906
pgrep命令
# 功能:通过名称或属性查找进程
# 举例:
* 查找名为 firefox的进程的命令:pgrep firefox
pkill 命令
# 功能:通过名称或其他属性发送信号给进程
# 举例:
* 杀死名为 firefox的进程的命令:pkill firefox
Linux速通06 系统的初始化服务和监控的更多相关文章
- Linux速通 随笔整理
Linux速通 随笔整理 为了方便阅读,特整理了相关的学习笔记 零.大纲 一.系统安装 二.命令格式 三.文件管理 四.用户群组 五.文件处理 六.系统初始化及监控 七.硬盘初始化 八.网络原理
- Linux学习笔记06—系统用户及用户组的管理
一.认识/etc/passwd和/etc/shadow 1./etc/passwd 由 ‘:’ 分割成7个字段,每个字段的具体含义是: 用户名 存放账号的口令:现在存放在/etc/shadow下,在这 ...
- Linux速通 大纲
1.Linux操作系统安装及初始化配置(熟悉) 2.Linux操作系统目录组成结构及文件级增删改查操作(重点) 3.Linux操作系统用户.权限管理(重点) 4.开源软件及Linux下软件包的管理(重 ...
- Linux速通07 硬盘分区、格式化及文件系统管理
硬件设备与文件名的对应关系 # 在Linux系统中,每个设备都被当作一个文件来对待 # 各种设备在Linux中的文件名 设备 设备在Linux内的文件名 IDE硬盘 /dev/hd[a-d] SCSI ...
- Linux速通08 网络原理及基础设置、软件包管理
使用 ifconfig命令来维护网络 # ifconfig 命令:显示所有正在启动的网卡的详细信息或设定系统中网卡的 IP地址 # 应用 ifconfig命令设定网卡的 IP地址: * 例:修改 et ...
- Linux速通01 操作系统安装及简介
操作系统 # a)操作系统的定义:操作系统是一个用来协调.管理和控制计算机硬件和软件资源的系统程序,它位于硬件和应用程序之间. # 操作系统分为 系统调用接口 和 系统内核 # b)操作系统内核的定义 ...
- Linux速通02 命令格式
命令的格式 # 格式:命令 [选项][参数] * 命令:告诉 Linux操作系统执行什么 * 选项:说明命令运行的方式(可以改变命令的功能).以 "-"字符开始 * 参数:说明命令 ...
- Linux速通03 目录文件的浏览、管理和维护
Linux文件系统的层次结构 # 树状结构:在Linux或Unix操作系统中,所有的文件和目录都被组织成一个以根节点开始的倒置的树状结构. # 目录的定义:目录相当于Windows中的文件夹,目录中存 ...
- Linux速通04 用户、群组、权限
用户及passwd文件 # /etc/passwd文件的功能:存储所有用户的相关信息,实际上是存放用户信息的数据库(database) # 各个字段的含义: * 第一个字段(列)记录的是这个用户的名字 ...
随机推荐
- Codeforces Round #646 (Div. 2) C、Game On Leaves
题目链接:C.Game On Leaves 题意: 给你一个n个节点的无根树,你每次可以删除一个叶节点.如果谁先删除x号节点谁就赢了.两个人轮流操作 题解: 如果x号节点本身就是一个叶节点,那么谁先走 ...
- Codeforces Round #652 (Div. 2) B. AccurateLee(思维)
题意: 给你一个01字符串,现在你可以删除其中的一些子序列,要求如下:当遇到1 0的俩个连续子字符串后,可以删除其中的一个字符,现在要求把他删到尽量最短并且字典序最小,输出最后的字符串 题解: 刚开始 ...
- js实现一棵树的生长
参考链接:https://blog.csdn.net/u010298576/article/details/76609244 HTML网页源码: 1 <!DOCTYPE html> 2 & ...
- [POJ 2585] Window Pains 拓朴排序
题意:你现在有9个2*2的窗口在4*4的屏幕上面,由于这9这小窗口叠放顺序不固定,所以在4*4屏幕上有些窗口只会露出来一部分. 如果电脑坏了的话,那么那个屏幕上的各小窗口叠放会出现错误.你的任务就是判 ...
- nuoyanli 520 Let‘s play computer game
H题 描述 xxxxxxxxx在疫情期间迷上了一款游戏,这个游戏一共有nnn个地点(编号为1--n1--n1--n),他每次从一个地点移动到另外一个地点需要消耗 一定的能量,每一个地点都有一些珠宝,输 ...
- (20002, b'DB-Lib error message 20002, severity 9:\nAdaptive Server connection failed (127.0.0.1:3306)\n')
使用python 3.7 pymssql 连接本地mysql 5.6 报错 解决:参考 https://www.cnblogs.com/springbrotherhpu/p/11503139.html ...
- Vue2.0 多种组件传值方法-不过如此的 Vuex
码文不易啊,转载请带上本文链接呀,感谢感谢 https://www.cnblogs.com/echoyya/p/14404397.html 在vue项目中了解组件间通讯很重要,也是最基础的面试题,可以 ...
- vue & this.$router.resolve
vue & this.$router.resolve gotoAutoUpdate (query = {}) { const { href } = this.$router.resolve({ ...
- docker-compose All In One
docker-compose All In One docker-compose 多容器应用 $ docker-compose -h Define and run multi-container ap ...
- Tailwind CSS in Action
Tailwind CSS in Action Tailwind CSS是一个高度可定制的低级CSS框架,它为您提供了构建定制设计所需的所有构造块,而无需烦恼要覆盖的烦人的自以为是的样式 https:/ ...