在 Linux 中,当使用top
来查看某个进程使用了多少内存时,如何强制它实际告诉您进程使用了多少内存(而不是通过给出派生的百分比来混淆实际值)?
答案1
如果您正在寻找以人性化数字表示的进程级内存使用情况,那么这top
可能不是您的解决方案。它在 Ubuntu(或 Fedora)上并不是特别通用。相反,您可能会发现它glances
更有用:
对于大多数人来说,Glances 可能有点过头了,但它确实提供了相当不错的系统概览。如果您有兴趣查看哪些进程消耗了最多的内存、CPU 或 I/O,可以按列排序。不过,它本身确实消耗了相当多的 CPU,尤其是当主机上运行 Docker 容器时。
这对于 Ubuntu 服务器和桌面都适用。
$ sudo apt install glances
如果这仅适用于 Ubuntu 桌面,那么两个系统监视器选项之一应该可以满足您的需求:
这些将以 MB/GB 为单位显示内存使用情况,并且具有更容易排序列。
答案2
自由的
free
将以 KiB 为单位提供总内存、已用内存、空闲内存、共享内存、缓冲/缓存内存和可用内存。它还显示交换空间和交换分区的总内存、已用内存和空闲内存。
free -h
total used free shared buff/cache available
Mem: 3.5G 775M 1.7G 86M 1.0G 2.4G
Swap: 0B 0B 0B
已用 = 总计 - 可用 - 缓冲区 - 缓存
free -h
将以 MB 和 GB 为单位提供内存详细信息。
免费手册页在这里:http://manpages.ubuntu.com/manpages/bionic/man1/free.1.html