程序
程序:执行特定任务的一串代码,静态,存在硬盘中
进程
进程:运行中的程序,动态,存在内存中
管理进程:开启进程消耗资源(内存 硬盘 cpu使用率),硬资源消耗完了,卡顿
查看是多线程还是单线程
pstree
grep -i threads /proc/进程的PID/status
prtstat 进程pid号
进程分类:
守护进程:daemon,在系统引导过程中启动的进程,和终端无关进程 本机网络的服务程序
前台进程:跟终端相关,通过终端启动的进程
进程的状态:
运行态:running
就绪态:ready
僵尸态:zombie 结束进程,父进程结束前,子进程不关闭,杀死父进程可以关闭僵尸态 的子进程(pid号小的是父进程)
五大性能
内存使用率:free
cpu使用率:ps,top,w,iostat,uptime
硬盘容量:df
硬盘读写性能:iostat
网络宽带:iftop
ip地址:ip a ,ifconfig
磁盘分区:lsblk fdisk -l
进程命令
ps(静态)
可以查看进程当前状态的快照,默认显示当前终端中的进程
ps aux
a:显示当前终端下的所有进程信息,包括其他用户的进程。与“x”选项结合时将示系统中所有的进程信息
u:使用以用户为主的格式输出进程信息
x:显示当前用户在所有终端下的进程信息
USER:用户
PID:进程的id
%CPU:cpu的使用率
%MEM:内存的使用率
VSZ:虚拟内存
RSS:真实内存
TTY:登录终端
STAT:进程状态
-R:该进程正在运行 -S:该进程处于睡眠状态 -T:停止状态 -Z:僵尸进程
START:进程启动时间
TIME:进程占用cpu的时间
COMMAND:进程的命令名
ps aux | grep -v grep | grep Z 过滤僵尸进程
系统中毒该如何处理
先用ps/top命令去看系统的运行状态,如果查看到异常
先找到异常程序,
排查是否可以结束
如果可以结束 通过pid号 找到文件的具体位置,把他删除
如果再次生成,删除后 建立和病毒同名的文件 先站住位置 加特殊权限
结束进程
实在不行 重装系统 备份
top(动态)
top 命令可以动态地持续监听进程地运行状态
第一部分
第一行为任务队列信息
第二行为进程信息
第三行为 CPU 信息
第四行为物理内存信息
第五行为交换分区(swap)信息
第二部分
PID:进程的 ID。
USER:该进程所属的用户。
PR:优先级,数值越小优先级越高。
NI:优先级,数值越小、优先级越高。
VIRT:该进程使用的虚拟内存的大小,单位为 KB。
RES:该进程使用的物理内存的大小,单位为 KB。
SHR:共享内存大小,单位为 KB。
S:进程状态。
%CPU:该进程占用 CPU 的百分比。
%MEM:该进程占用内存的百分比。
TIME+:该进程共占用的 CPU 时间。
COMMAND:进程的命令名。
统计进程总数:
top | wc -l
ps aux | wc -l
pgrep 查看指定的进程
-u 指定用户
-l 显示进程名
pgrep -u zahngsan | wc -l 张三用户一共运行了多少程序
pidof
已知程序名不知pid号
pstree 命令进程树
以树形结构列出进程信息
-p 显示pid号
-H 高亮显示
lsof 列出打开的文件
过滤端口号
lsof -i :端口
lsof -p pid号 列出当前进程打开的所有文件
echo" " > 大文件
把大文件的内容变成一个空格
vmstat 监控系统资源
free 内存
free -h 查看
echo 3 > /proc/sys/vm/drop_caches 清除缓存
iostat IO性能状态数据
iotop 监视磁盘I/O
uptime 系统运行了多长时间
mpstat 显示cpu相关统计
dstat 系统资源统计
进程管理
前台执行:会影响当前的操作
后台执行:不会影响当前的操作
命令 &
jobs 查看后任务列表
结束进程
kill pid号
-数字
-单词
killall 程序名称
计划任务
at 一次性
atq 查看未执行的任务列表
atrm 数字 删除第几条任务
HH:MM YYYY-MM-DD
时 分 年 月 日
crontab 周期
-e 编辑计划任务
-l 查看计划任务
-r 删除计划任务
-u 指定用户
5 个 * + 执行的任务