【Linux常用命令-不断更新】

在 Linux 系统中,查看总剩余内存常用方法。

方法 1:使用 free 命令

free 是一个常用的命令,用于显示系统的总内存、已用内存、空闲内存和交换内存。

bash 复制代码
free -h
  • -h 参数表示以易读的格式(如 GB、MB)显示内存信息。

  • 输出示例:

    复制代码
               total        used        free      shared  buff/cache   available
    Mem:          15G        5.3G        2.1G        248M        8.2G        9.5G
    Swap:         2.0G          0B        2.0G
    • total:总物理内存。
    • used:已使用的内存。
    • free:完全空闲的内存。
    • available:实际可用的内存(free + buff/cache 中可用于程序的内存)。

方法 2:使用 vmstat 命令

vmstat 是一个更通用的系统性能监控工具,也可以用来查看内存信息。

bash 复制代码
vmstat -s
  • 输出示例:

    复制代码
    16384000 total memory
    5570560 used memory
    2129920 free memory
    8388608 buffers
    • total memory:总内存。
    • free memory:完全空闲的内存。
    • bufferscached:被系统缓存的内存,这些内存可以被程序使用。

方法 3:查看 /proc/meminfo 文件

/proc/meminfo 是一个虚拟文件,包含了系统的内存信息。你可以通过 cat 命令查看其内容。

bash 复制代码
cat /proc/meminfo
  • 输出示例:

    复制代码
    MemTotal:       16384000 kB
    MemFree:         2129920 kB
    MemAvailable:    9748480 kB
    Buffers:         8388608 kB
    Cached:          8388608 kB
    • MemTotal:总物理内存(以 KB 为单位)。
    • MemFree:完全空闲的内存。
    • MemAvailable:实际可用的内存。

方法 4:使用 tophtop 命令

tophtop 是常用的系统监控工具,它们可以动态显示系统的内存使用情况。

  • 运行 tophtop,然后查看内存相关的列(如 MemSwap)。

方法 5:使用 psutil(Python 脚本)

如果你熟悉 Python,可以使用 psutil 库编写脚本来查看内存信息。

python 复制代码
import psutil

mem = psutil.virtual_memory()
print(f"Total Memory: {mem.total / (1024 ** 3):.2f} GB")
print(f"Free Memory: {mem.free / (1024 ** 3):.2f} GB")
print(f"Available Memory: {mem.available / (1024 ** 3):.2f} GB")

总结

  • 如果你只需要快速查看内存信息,推荐使用 free -h
  • 如果你需要更详细的内存信息,可以查看 /proc/meminfo 文件或使用 vmstat
  • 如果你需要实时监控,可以使用 tophtop
相关推荐
光电的一只菜鸡8 分钟前
ubuntu之坑(二十)——VMware虚拟机系统无法正常进入如何处理
linux·运维·ubuntu
青 春 记 忆18 分钟前
Dify Docker Compose 通用无损升级指南:从备份、双版本预演到切换与回滚
运维·人工智能·python·docker·容器
Java王小怪2 小时前
Docker环境Redis没挂载保存数据
运维·docker·容器
你住过的屋檐2 小时前
【Nginx】linux上安装nginx
linux·运维·nginx
宵时待雨2 小时前
linux笔记归纳17:传输层协议UDP
linux·笔记·udp
大模型码小白3 小时前
Spring AI Tool 实现自然语言操作 MySQL 数据库详解
服务器·开发语言·数据库·人工智能·python·mysql·spring
晓晓_za8986684 小时前
开源 GEO 优化源码二次开发:贴牌改造与业务模块扩展实践
java·运维·服务器·开发语言·性能优化·开源
SCandL1524 小时前
k8s service
linux·容器·kubernetes
云计算DevOps-韩老师4 小时前
【MySQL运维DBA】【SQL基础系列002篇】
运维·mysql·dba
云贝教育-郑老师4 小时前
【麒麟服务器系统交付:一个DBA的六年信创实战笔记】
服务器·笔记·dba