e2fsck 运行时什么在使用内存?

e2fsck 运行时什么在使用内存?

由于内存限制,我无法运行 e2fsck,详情请参阅这个问题在调查的过程中,我发现了一些可能更具有普遍意义的东西,所以我将把它放在它自己的问题中。

运行 e2fsck 时,机器的内存使用率上升到 99% 左右。还开始进行一些交换。然而,奇怪的是,这是输出的开始top -M

top - 14:09:37 up 1 day,  4:14,  3 users,  load average: 1.00, 1.00, 0.92
Tasks: 127 total,   2 running, 125 sleeping,   0 stopped,   0 zombie
Cpu(s): 12.4%us,  1.8%sy,  0.0%ni, 81.1%id,  4.6%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:  1004.961M total,  987.484M used,   17.477M free,  664.469M buffers
Swap:   21.953G total,   72.574M used,   21.882G free,   68.512M cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND                                                                                                                                                                                                         
 7627 root      20   0  164m 152m  61m R 100.0 15.2  49:18.25 e2fsck                                                                                                                                                                                                          
 8340 root      20   0  2696  996  752 R  2.0  0.1   0:00.01 top                                                                                                                                                                                                              
    1 root      20   0  2896    8    4 S  0.0  0.0   0:01.87 init

因此,即使总体内存使用率达到 99%,e2fsck 也仅显示使用了 15.2%,并且没有其他占用大量内存的程序在运行。

所有内存都去哪儿了?这是 e2fsck 独有的行为吗?还是“正常”的(虽然不可取,但可以理解)。我不知道除了正在运行的进程之外,其他任何东西还能使用内存。

答案1

这是正常的。Linux 使用空闲内存来缓冲磁盘访问。

为什么 Linux 会奇怪地报告“可用”内存?

相关内容