客服微信
原文链接:Linux 目录结构与进程管理(新手必学) (qq.com)
Linux 目录结构及功能如下
/boot
:存放系统启动所需的核心文件
/sbin
:包含超级用户使用的系统命令,只有超级用户才有权限执行此目录下的命令
/bin
:包含普通用户常用的系统命令,例如ls
、cat
、kill
等等
/lib
:动态链接库,支持执行/bin
和/sbin
目录中的二进制文件
/home
:普通用户目录,每个普通用户在这个目录下都有一个对应的主工作目录
/root
:管理员主目录,超级用户专属的工作目录
/usr
:存放常用的应用程序,有点像 Windows 下的C:\Program Files
/opt
:存放第三方应用程序,有点像 Windows 下的D:\Software
/etc
:存放部分配置文件,包括系统配置和第三方应用程序配置,例如网络配置、用户信息配置等等
/dev
:存放接口设备文件,该目录包含所有在系统中使用的外部设备,例如磁盘、软驱等等
/tmp
:存放临时文件,一些系统产生的临时文件也会放在这个目录下
/sys
:记录与系统核心相关的信息
/mnt
:各项设备文件的默认挂载点
/var
:保存具有可变性质的程序文件
/srv
:包含系统存储服务的相关数据
/run
:保存从系统诞生到当前状态的系统信息
/proc
:保存系统运行 (内核相关) 和程序执行 (进程相关) 的信息
/lost+found
:当文件系统发生错误时,遗失的片段将放置在此目录下
在 Linux 中,每个执行的任务都被称为进程,每一个进程都有一个唯一的标识,称为PID(Process ID)
可以使用 ps
命令(process status)显示当前运行的进程,显示的内容如下:
PID
:进程的唯一标识
TTY
:登陆终端的编号
TIME
:此进程消耗的 CPU 时间
CMD
:正在执行的命令
添加 -l
参数(long format)可以显示更详细的信息,新增的内容包括:
S
:进程状态(Status)
UID
:进程执行者的唯一标识(User ID)
PPID
:父进程的唯一标识(Parent Process ID)
PRI
:进程的优先级(Priority),值越小,优先级越高
NI
:进程的 nice 值,值越小,优先级越高
SZ
:进程占用内存的大小(Size),单位为 KB
添加 -u
参数(user format)也能显示更详细的信息,新增的内容包括:
USER
:进程执行者
%CPU
:CPU 使用率
%MEM
:内存 使用率
VSZ
:占用虚拟内存的大小(Virtual Memory Size)
RSS
:占用物理内存的大小(Resident Set Size)
START
:进程开始执行的时间
可以先使用 ps
命令查看进程的唯一标识(PID),然后再使用 kill PID
命令终止指定的进程
若无法直接使用上述的命令终止进程,可以考虑加上以下参数:
-9
:发出 KILL
信号,强制终止进程,不会进行清理和保存工作
-15
:发出 TERM
信号,当进程有足够活力接收时才会被终止,在终止前能够清理和保存工作
此外,kill
命令还能加上以下参数:
-1
:发出 HUP
信号,挂起进程
-2
:发出 INT
信号,效果和直接用 Ctrl + C
相同
-18
:发出 CONT
信号,继续运行进程
-19
:发出 STOP
信号,暂停进程
每个进程在执行时,都会被赋予使用 CPU 的优先等级 (称为 nice),等级越高,能使用 CPU 的时间越长
优先级的取值范围在 -20 ~ 19 间的整数,其中 -20 最高,19 最低,优先级 -20 ~ -1 只有管理员才 nice
命令能在开始执行进程时设置进程的优先级,renice
命令能在正在执行进程时调整进程的优先级
若在启动进程时没有使用nice
,则优先级默认为 0;若使用nice
但没有显式指定优先级,则默认为 10
可以使用 top
命令动态显示进程状态,在 top
命令执行过程中,可以结合使用以下的指令完成特定的操作
P
:改变进程的排列顺序,按 CPU 使用时间排序
M
:改变进程的排列顺序,按内存使用量排序
J
:改变进程的排列顺序,按执行的时间排序
u
:监视指定用户产生的进程