1、ps 查看进程工具 常用的参数:a: 显示跟当前终端关联的所有进程 u: 基于用户的格式显示(U: 显示某用户 ID 所有的进程)x: 显示所有进程,不以终端机来区分
[root@Centos83 ~]# ps -aux | more # ps常用的参数
最后一列[xxxx] 使用方括号括起来的进程是内核态的进程。 没有括起来的是用户态进程。
上面的参数输出每列含意:
USER: 启动这些进程的用户
PID: 进程的 ID
%CPU 进程占用的 CPU 百分比;
%MEM 占用内存的百分比;
VSZ:进程占用的虚拟内存大小(单位:KB)
RSS:进程占用的物理内存大小(单位:KB)
STAT:该程序目前的状态,Linux 进程有 5 种基本状态:
R :该程序目前正在运行,或者是可被运行;
S :该程序目前正在睡眠当中 (可说是 idle 状态啦!),但可被某些讯号(signal) 唤醒。
T :该程序目前正在侦测或者是停止了;
Z :该程序应该已经终止,但是其父程序却无法正常的终止他,造成 zombie (疆尸) 程序的状态
D :不可中断状态.
5 个基本状态后,还可以加一些字母,比如:Ss、Ssl,如下图:
它们含意如下:
Hardware IRQ: The amount of time the CPU has been servicing hardware interrupts. | | 2.0 si | 软中断,占用 CPU 百分比。1. 通常,软中断是一些对 I/O 的请求。这些请求会调用内核中可以调度 I/O 发生的程序。对于某些设备,I/O 请求需要被立即处理,而磁盘 I/O 请求通常可以排队并且可以稍后处理。根据 I/O 模型的不同,进程或许会被挂起直到 I/O 完成,此时内核调度器就会选择另一个进程去运行。I/O 可以在进程之间产生并且调度过程通常和磁盘 I/O 的方式是相同。# si -> Software Interrupts.: The amount of time the CPU has been ervicingsoftware interrupts. |
| Mem : 941.5 total | 物理内存总量 |
| 89.3 free | 空闲内存总量 |
| 408.1 used | 使用的物理内存总量 |
| 444.0 buff/ca | 用作内核缓存的内存量。和 free -k 一个意思 |
| Swap: 4096.0 total | 交换区总量 |
| 4077.3 free | 空闲交换区总量 |
| 18.7 used. | 使用的交换区总量 |
| 371.8 avail Mem | 总的可利用内存是多少 | 注:如果 swap 分区,被使用,那么你的内存不够用了。 PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
| 列名称 | 说明 |
| ------- | ------------------------------------------------------------ |
| PID | 进程 id |
| USER | 进程所有者的用户名 |
| PR | 优先级(由内核动态调整),用户不能 |
| NI | 进程优先级。 nice 值。负值表示高优先级,正值表示低优先级,用户可以自己调整 |
| VIRT | 虚拟内存,是进程正在使用的所有内存(ps 中标为 VSZ)VIRT:virtual memory usage 虚拟内存 |
| RES | 是进程所使用的物理内存。实际实用内存(ps 中标为 RSS)RES:resident memory usage 常驻内存1、进程当前使用的内存大小,但不包括 swap out2、包含其他进程的共享3、如果申请 100m 的内存,实际使用 10m,它只增长 10m,与VIRT 相反4、关于库占用内存的情况,它只统计加载的库文件所占内存大小 |
| SHR | 共享内存大小,单位 kbSHR:shared memory 共享内存1、除了自身进程的共享内存,也包括其他进程的共享内存2、虽然进程只使用了几个共享库的函数,但它包含了整个共享库的大小3、计算某个进程所占的物理内存大小公式:RES – SHR4、swap out 后,它将会降下来 |
| S | 进程状态。D=不可中断的睡眠状态R=运行中或可运行S=睡眠中T=已跟踪/已停止Z=僵停 |
| %CPU | 上次更新到现在的 CPU 时间占用百分比 |
| %MEM | 进程使用的物理内存百分比 |
| TIME+ | 进程使用的 CPU 时间总计,单位 1/100 秒 |
| COMMAND | 命令名/命令行 | top 快捷键:默认 3s 刷新一次,按 s 修改刷新时间 按空格 :立即刷新。q 退出 P:按 CPU 排序M:按内存排序 T 按时间排序p: 进程 pid,查看某个进程状态 数字键 1:显示每个内核的 CPU 使用率,展示 cpu 数量,再按下,就收起来了u/U:指定显示的用户 h:帮助 使用 TOP 动态只查看某个或某些进程的信息找到进程 PID
[root@Centos83 ~]# ps aux | grep vim
root 3176 0.0 0.7 49652 7640 pts/0 T 13:01 0:00 vim test.txt
root 6955 0.0 0.1 12344 1044 pts/1 S+ 20:11 0:00 grep --color=auto vim
[root@Centos83 ~]# top -p 3176
[root@xuegod63 ~]# screen #进入
[root@xuegod63 ~]# vim a.txt #执行命令, 或执行你自己需要运行的备份命令
此时想离开一段时间,但还想让这个命令继续运行
[root@xuegod63 ~]# #在 screen 当前窗口键入快捷键 Ctrl+a+d
[detached from 15885.pts-1.Centos83] #分离出来独立的一个会话
detached [dɪˈtætʃt] 分离,独立
[root@Centos83 ~]# screen -ls #查看已经建立的会话 ID
There is a screen on:
15885.pts-1.Centos83 (Detached)
1 Socket in /run/screen/S-root.
[root@Centos83 ~]# screen -r 15885
[root@Centos83 ~]# exit #不想使用 screen 会话了,执行:exit 退出
exit
[screen is terminating]