- 进程管理
ps aux/-le: 查看系统中所有进程(BSD格式/Linux标准格式)
a: 显示一个终端的所有进程,除了会话引线
u: 显示进程的归属用户及内存的使用情况
x: 显示没有控制终端的进程
-l: 长格式显示详细信息
-e: 显示所有进程
pstree: 查看进程树
-p: 显示进程PID
-u: 显示进程的所属用户
top: 查看系统健康状态(每三秒动态刷新一次)
top - 10:04:50 up 13:21, 1 user, load average: 0.20, 0.37, 0.35
任务: 271 total, 1 running, 213 sleeping, 0 stopped, 0 zombie
%Cpu(s): 2.9 us, 1.2 sy, 0.0 ni, 95.8 id, 0.0 wa, 0.0 hi, 0.1 si, 0.0 st
KiB Mem : 12209124 total, 7231468 free, 2335704 used, 2641952 buff/cache
KiB Swap: 12494844 total, 12494844 free, 0 used. 9129872 avail Mem
当前系统时间 运行时间 登录用户 平均负载(cpu占比平均值 <核数 正常): 1分钟之前 5分钟之前 15分钟之前
进程数271 1个运行 213睡眠 0个停止 0个僵尸
cpu状态 用户模式占用百分比 系统 改变过优先级的用户进程占用百分比
空闲cpu的cpu百分比
内存
交换(
windows:虚拟内存
linux:swap分区
windows即使物理内存没有用完也会去用到虚拟内存,而Linux不一样 Linux只有当物理内存用完的时候才会去动用虚拟内存(即swap分区)
)
-1: 平滑重启
-9: 强制关闭
kill [信号] 进程号: 杀死重启单个进程
killall [信号][选项] 进程名: 按照进程名杀死重启一组进程
-i: 交互式询问
pkill [信号][选项] 进程名: 按照进程名杀死重启一组进程
-t 终端号: 按照终端号踢出用户
pkill -9 -t pts/1
w
使用w命令查询本机已登录用户
复制代码
- 工作管理
绑定当前终端/运行或暂定状态
jobs: 查看后台工作
-l: 显示工作的PID
把进程放入后台
&: 把命令放入后台,并在后台执行
ctrl+z: 放在后台暂停
默认为+
将后台暂停的工作恢复到前台执行
fg 工作号
将后台暂停的工作恢复到后台执行
bg 工作号
后台命令脱离终端(守护进程)
把需要后台执行命令加入/etc/rc.local文件
使用定时任务
使用nohup命令: nohup ~/for.sh &
复制代码
- 系统管理
vmstat [刷新延迟 刷新次数]: 监控系统资源
vmstat 1 3
procs -----------memory---------- ---swap-- -----io---- -system-- ----cpu-----
r b 交换 空闲 缓冲 缓存 si so bi bo in cs us sy id wa st
1 0 0 8293020 194436 2330868 0 0 24 25 172 640 7 2 89 1 0
procs: 进程信息字段:
r: 等待运行的进程,数量越大,系统越繁忙
b: 不可被唤醒的进程数量,数量越大,系统越繁忙
memory: 内存信息
swpd: 虚拟内存使用情况,单位KB
free: 空闲的内存容量
buff: 缓冲的内存容量
cache: 缓存的内存容量
缓存(cache): 用来加速数据从硬盘读取
缓冲(bufer): 用来加速数据写入硬盘
swap: 交换分区
si: 从磁盘中交换到内存中数据的数量
so: 从内存中交换到磁盘中数据的数量
此两个数越大,证明数据需要经常在磁盘和内存中交换,系统性能越差
io: 磁盘读写信息
bi: 从块设备读入数据的总量,单位是块
bo: 写到块设备的数据的总量
此两个数越大,代表系统的I/O越繁忙
systen: 系统信息
in: 每秒被中断的进程次数
cs: 每秒进行的事件切换次数
此两个数越大,代表系统与接口设备的通信十分繁忙
cpu:
us: 非内核进程消耗cpu运算时间的百分比
sy: 内核进程消耗cpu运算时间的百分比
id: 空闲cpu的百分比
wa: 等待I/O所消耗的CPU百分比
st: 被虚拟机所盗用的CPU占比
dmesg: 开机时内核检测信息
dmesg } grep CPU
free: 查看内存使用状态
free [-b|-k|-m|-g]: 以字节/KB默认/MB/GB为单位显示
cat /proc/cpuinfo: 查看cpu信息
uptime: 显示系统的启动命令和平均负载,也就是top命令的第一行.w命令也可以看到这个数据
uname: 查看系统与内核相关信息
-a: 查看系统所有相关信息
-r: 查看内核版本
-s: 查看内核名称
file /bin/ls: 判断当前系统位数
lsb_release -a: 系统发行版
lsof: 列出进程调用或打开的文件的信息
-c: 只列出以字符串开头的进程打开的文件
-u 用户名: 只列出某个用户的进程打开的文件
-p: pid: 列出某个PID进程打开的文件
lsof |more
lsof -c httpd 查看httpd进程调用了那些文件
lsof -u root 按照用户名,查询某用户的进程调用的文件
lsof /sbin/init 查询某个文件被那些进程调用
df [参数]: linux系统以磁盘分区为单位查看文件系统,可以加上参数查看磁盘剩余空间信息,
  sda1第一个硬盘第一个分区 sda2第一个硬盘第二个分区
-h:以可读性较高的方式来显示信息
-l:仅显示本地端的文件系统;
df -h
du [参数] [目录/文件]: 对文件和目录磁盘使用的空间的查看
-h: 以K,M,G为单位,提高信息的可读性。
-k: 以KB(1024bytes)为单位输出。
-m: 以MB为单位输出。
-s: 仅显示总计,只列出最后加总的值。
du -sh test/test.c
复制代码