查看系统资源占用:
- top:查看CPU、内存使用情况,类似 windows 的任务管理器
- 默认 5秒刷新一次
- 语法:
- 直接输入 top
- 按 q 或 ctrl + c 退出
- 内容详解:
- 第一行:
- top:命令名称 -系统时间
- up 23:57 min :运行时间
- 3 user:3 个用户登录
- load average:1 ,5,15 分钟负载
- 第二行:
- tasks:308 个进程
- 2 running:2 个子进程在运行
- 306 sleeping:306 个进程在休眠
- 0 stopped:0 个停止进程
- 0 zombie:0 个僵尸进程
- 第三行:
- %Cpu(s):CPU 使用率
- us:用户 CPU 使用率
- sy:系统 CPU 使用率
- ni:高级优先进程占用 CPU 时间
- id:空闲 CPU 率
- wa:IO 等待 CPU 占用率
- hi:CPU 硬件终端率
- si:CPU 软件终端率
- st:强制等待占用 CPU 率
- 第四、五行:
- Kib Mem:物理内存
- total:总量
- free:空闲
- used:使用
- buff/cache:buff 和 cache 占用
- KibSwap:虚拟内存(交换时间)
- 第一行:
- 详解:
- PID:进程 id
- USER:进程所属用户
- PR:进程优先级,越小越好
- NI:负值表示高优先级,正表示低优先级
- VIRT:进程使用虚拟内存,单位 KB
- RES:进程使用物理内存,单位 KB
- SHR:进程使用共享内存,单位 KB
- S:进程休眠(S休眠,R运行,Z僵死状态,N负数优先级,I 空闲状态)
- %CPU:进程占用 CPU 率
- %MEM:进程占用内存率
- TIME+:进程使用 CPU 时间总计,单位 10 毫秒
- COMMAND:进程的命令或名称或程序文件的文件路径
- 命令选项:
- -p:只显示某个进程的信息
- -d:设置刷新时间,默认是 5s
- -c:显示生产进程的完整命令,默认是进程名
- -n:指定刷新次数,比如: top -3,刷新输出 3 次后退出
- -b:以非交互非全屏模式,以批次的方式执行 top,一般配合 -n 指定输出几次统计信息,将输出重定向到指定文件,比如: top -b -n 3 > /tmp/top.tmp
- -i:不显示任何限制(idle) 或无用(zombie) 的进程
- -u:查找特定用户启动的进程
- 交互式选项:当 top 以交互式运行(非 -b 选项启动)
- h键:会显示帮助画面
- c键:会显示产生进程的完整命令,等同于 -c 参数,再次按下 c键,变为默认显示
- f 键:可以选择需要展示的项目
- M键:根据驻留内存大小(RES)排序
- P 键:根据 CPU 使用百分比大小进行排序
- T 键:根据时间 / 累计时间进行排序
- E 键:切换顶部内存显示的单位
- e 键:切换进程内存显示单位
- l (小写 L)键:切换显示平均负载和启动时间信息
- i 键:不显示闲置或无用的进程,等同于 -i 参数,再次按下,变为默认显示
- t 键:切换显示 CPU 状态信息
- m 键:切换显示内存信息
磁盘信息监控:
- df:查看硬盘的使用情况
- 语法:
df [-h]
- -h:以更佳人性化的单位显示
- 语法:
- iostat:查看 CPU、磁盘的相关信息
- 语法:
iostat [-x] [num1] [num2]
- -x:显示更多信息
- num1:刷新间隔
- num2:刷新次数
- 参数详解:
- tps:该设备每秒传输次数
- 一次传输的意思是:一次 I/O 请求
- 多个逻辑请求可能会被并为"一次 I/O 请求"
- "一次传输请求","一次传输":请求里面的大小是未知的
- tps:该设备每秒传输次数
- -x:显示更多信息详解:
- rrqm/s:每秒设备相关的读取请求有多少被 Mergele(当系统调用需要读取数据的时候,VFS 将请求发到各个 FS,如果 FS 发现不同的读取请求读取的是相同的 Block 的数据,FS 会将这个请求合并 Merge,提高 IO 利用率,避免重复使用)
- wrqm/s:每秒这个设备相关的写入请求有多少被 Mergele
- rsec/s:每秒读取的扇区(sectors)
- wsec/s:每秒写入的扇区数
- rKB/s:每秒发送到设备的读取请求数
- wKB/s:每秒发送到设备的写入请求数
- avgrq-sz:平均请求扇区的大小
- avgqu-sz:平均请求队列的长度。队列长度越短越好
- await:每一给 IO 请求的处理平均时间(单位是微秒,毫秒)
- svctm:表示平均每次设备 I/O 操作的服务时间(以毫秒为单位)
- %util:磁盘利用率
- 语法:
网络状态监控:
- sar:查看网络的相关统计(sar命令非常复杂,这里仅用于统计网络)
- 语法:
sar -n DEV num1 num2
- -n:查看网络
- DEV:查看网路接口
- num1:刷新间隔(不填就查看一次结束)
- num2:查看次数(不填不限次查询)
- 语法:
- 信息解读:
- IFACE:本地网卡接口的名称
- rxpck/s:每秒钟接收的数据包
- expck/s:每秒钟发送的数据包
- rxKB/s:每秒钟接收的数据包大小,单位为KB
- txKB/s:每秒钟发送的数据包大小,单位为KB
- rxcmp/s:每秒钟接收的压缩数据包
- txcmp/s:每秒钟发送的压缩包
- rxmcst/s:每秒钟接收的多种数据包
- 环境变量:
- 环境变量:是操作系统在运行的时候,记录的一些关键性信息,用于辅助系统运行
- 环境变量是一种 Key Value 型结构,即名称和值
- PATH:记录了系统执行任何命令的搜索路径(路径之间用 :隔开)
- evn:查看当前系统中记录的环境变量
- $:取"变量"的值
- 语法:$环境变量
- 当和其它内容混合在一起的时候,可以用过 {} 来标注取的变量是谁
- $:取"变量"的值
- 自行设置环境变量:
- 临时设置:
- 语法:export 变量名 = 变量值
- 永久生效:
- 针对当前用户生效,配置在当前用户的: ~/bashrc 文件中
- 针对所有用户生效,配置在系统的:/etc/profile 文件中
- 立即生效语法:
source 配置文件名称#或者重新登录
- 临时设置:
- rz - sz:文件的上传和下载:
- 安装:
yum -y install lrzsz
- rz:进行上传,直接输入命令即可
- sz:进行下载
- 语法:
sz 要下载的文件名称
- 文件会自动下载到桌面的:fsdownload 文件夹中
- 语法:
- 安装:
- tar:压缩和解压缩
- Linux 和 Mac 系统常用 2 种压缩格式,后缀名分贝是:
- .tar:称之为 tarball,归档文件,即简单的文件组装到一个 .tar 的文件内,并没有太多文件体积的减少,仅仅是简单的分装
- .gz:也常见为 .tar.gz,gzip格式压缩文件,即使用 gzip 压缩算法将文件压缩到一个文件内,可以极大的减少压缩后的体积
- 语法:
tar [-c -v -x -f -z -C]参数1 参数2 …… 参数n
- -c:创建压缩文件,用于压缩格式
- -v:显示压缩、解压过程,用于查看进度
- -x:解压模式
- -f:要创建的文件或要解压的文件,-f 选项必须在所有选项中处于最后一个
- -z:gzip 模式
- 如果使用的话,一般处于选项位第一个
- 不使用 -z 就是普通的 tarball 格式
- -C:选择解压的目的地,用于解压模式
- 单独使用和解压需要的其他参数分开
- Linux 和 Mac 系统常用 2 种压缩格式,后缀名分贝是:
- zip:压缩文件为 zip 压缩包
- 语法:
zip [-r] 参数1 参数2 …… 参数N
- -r:被压缩的包含文件夹的时候,需要使用 -r 选项,和 rm、cp 等命令的 -r 效果一致
- 语法:
- unzip:解压 zip 压缩包(同名内容会被替换)
- 语法:
unzip [-d] 参数
- -d:指定要解压去的位置,同 tar 的 -C 选项
- 语法:
- 目录:
- etc:安装目录
- .sh:启动脚本
- 方法1:
sh 脚本名
- 方法2:
./脚本名
- 方法1: