内存一半为空,而交换文件已满

内存一半为空,而交换文件已满

htop显示已使用内存 1gb/2gb 和已使用交换内存 512mb/512mb。

cat /proc/sys/vm/swappiness显示 10 并cat /proc/swaps显示

文件名 类型 大小 使用

/dev/null 分区 524288 524288

grep VmSwap /proc/*/status | sort -n -r --key=2.1 | head -5节目

/proc/25760/status:VmSwap:        333976 kB
/proc/2769/status:VmSwap:         149664 kB
/proc/798/status:VmSwap:           17852 kB
/proc/800/status:VmSwap:           16460 kB
/proc/3725/status:VmSwap:           9648 kB

什么占用了这么多交换空间?swappiness 10 意味着只在真正需要时(内存不足)才使用交换空间,那么为什么没有发生这种情况?是否建议创建更大的交换空间?

谢谢

编辑:(free -m交换后突然释放,不确定为什么以及如何)

total        used        free      shared  buff/cache   available
Mem:           2048        1311         184           3         552         733
Swap:           512         220         291

答案1

您的 RAM 容量很少,而且交换空间也相当小。

这意味着如果你打开了很多程序,甚至一个带有 5-6 个标签的浏览器,它都会填满 RAM。这会导致更换不常用的东西的压力。

为了更好地理解,您应该检查您列出的 PID 后面隐藏着哪些程序。可以使用它进行检查,ps aux -q pidno它还会显示该进程、用户等的总内存使用情况。

当某些东西被替换掉后,没有必要在需要之前再次读入它。一些名义上在您的计算机上运行的软件实际上可能完全没有使用。替换这样的软件是有意义的。

在我的笔记本电脑上,目前我有 8GiB 的 RAM、4GiB 的可用空间和 1.5GiB 的交换空间。Mysql 是为我交换的东西之一,这是有道理的;我每周使用它进行一次开发,而不是每天。

就你的情况而言,内存量和交换量都很小。至少在你的情况下,我会将交换量增加到与内存量相同的程度。这样内核就可以更好地管理内存。

有些软件(例如浏览器)需要大量 RAM。Chrome(带有十个 Ask Ubuntu 标签)和打开 Facebook 在我的笔记本电脑上消耗了近 3GiB 的内存。

要添加更多交换,您只需使用以下命令:

sudo dd if=/dev/zero of=/swapfile bs=1M count=2048
sudo chmod 600 /swapfile
sudo mkswap /swapfile
echo "/swapfile    none    swap    sw    0   0" | sudo tee -a /etc/fstab
sudo swapon -a

swapon -s现在应该会显示您的新交换文件。bs=1M count=2048将创建一个 2048MiB 文件。请根据您的需要进行修改。

答案2

查看此文章来源:文章链接

Webmin:如何更改 Swap 的大小?

2020 年 1 月 6 日类别:Linux 管理标签:linux、swap、virtualmin、webmin 即使在互联网上搜索后,我仍找不到更改交换大小的方法。各种在线教程仅向我们展示了如何创建交换空间,但没有明确说明如何使用 Webmin 更改交换空间的大小。当然,本教程不使用 Webmin,而是使用针对服务器的命令。

先决条件/假设

Swap space already exists
/swapfile is the file created for swap space
I am changing the /swapfile from 270MB to 1GB

调整交换空间大小的命令

sudo swapoff /swapfile
sudo fallocate -l 1G /swapfile
ls -lh /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
free

命令解释

Turns off/unmounts current swap
Resizes swap file to 1G (or your desired size)
Verifies the file size and permission. (Make sure permission is -rw——-)
Marks this file as swap file. Without this command, system will use previous size
Turns on swap file
check free space

相关内容