查看内存占用

ps -e -o 'pid,comm,args,pcpu,rsz,vsz,stime,user,uid' | grep oracle | sort -nrk5

在 Linux 中,可以使用以下方法查看**内存占用情况**(包括系统和进程级别): --- ### **1. 系统整体内存使用情况** #### **(1) `free` 命令** ```bash free -h # 人类可读格式(GB/MB) ``` - **关键指标**: - `total`:总内存 - `used`:已用内存(含缓存) - `free`:完全空闲内存 - `available`:实际可用内存(系统估算的可分配内存,含缓存回收部分) #### **(2) `vmstat` 命令** ```bash vmstat -s # 显示详细内存统计 ``` - 输出包括物理内存、交换分区(swap)使用情况。 --- ### **2. 查看指定进程的内存占用** #### **(1) `top` / `htop`** ```bash top -p <PID> # 实时监控指定进程 htop # 交互式查看(按 F4 过滤进程名) ``` - **关键列**: - `RES`:进程实际占用的物理内存(RSS,单位 KB/MB) - `%MEM`:占用内存的百分比 #### **(2) `ps` 命令** ```bash ps -p <PID> -o %mem,rss,cmd # 查看内存百分比和实际占用 ``` - **参数说明**: - `%mem`:内存占用百分比 - `rss`:实际物理内存(单位 KB) - `cmd`:进程命令 #### **(3) `pmap` 命令(详细内存映射)** ```bash pmap -x <PID> # 显示进程的内存分布 ``` - 输出包括堆(heap)、栈(stack)、共享库等内存占用细节。 --- ### **3. 监控工具** #### **(1) `pidstat`(动态监控)** ```bash pidstat -r -p <PID> 1 # 每秒刷新内存统计 ``` - **输出字段**: - `RSS`:物理内存占用(KB) - `%MEM`:内存占用百分比 #### **(2) `smem`(按用户/进程汇总)** ```bash smem -u # 按用户统计内存 smem -p # 按进程统计 ``` - 需安装:`sudo apt install smem`(Debian/Ubuntu) --- ### **4. 特殊场景** #### **(1) 查看共享内存** ```bash ipcs -m # 显示系统共享内存段 ``` #### **(2) 内存泄漏检测** ```bash valgrind --leak-check=yes ./your_program # 调试程序内存泄漏 ``` --- ### **示例:查找 `nginx` 进程的内存占用** ```bash pgrep nginx | xargs ps -o %mem,rss,cmd -p ```
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值