当我打开 RAM 密集型应用程序(VirtualBox 设置为 2GB RAM)时,通常会使用一些交换空间,具体取决于我当时打开的其他内容。
但是,当我退出最后一个应用程序时,会释放 2GB 的 RAM,但仍然使用相同的交换空间。
例如,现在,在关闭 VirtualBox 大约两个小时后,我有 1.6GB 的可用 RAM,交换中仍有 770MB。
如何告诉 Ubuntu 停止使用该交换并恢复使用 RAM?
我认为交换的全部本质是在 RAM 已满时充当临时存储安全网,但即使有时我有多达 3GB 的空闲 RAM,我的交换分区也一直在使用。这是正常的吗?
有没有办法增加我现有的“交换文件”而不必销毁和重新创建它?我想将我的交换空间从 1GB 增加到 2GB。目前它是这样设置的:
$ sudo swapon -s
Filename Type Size Used Priority
/swapfile file 1048572 736640 -1
$ ls -lh /swapfile
-rw------- 1 root root 1.0G Nov 9 2016 /swapfile
Run Code Online (Sandbox Code Playgroud)
我正在使用 Ubuntu 14.04。
我经常读到不应将交换分区放在 SSD 驱动器上,因为这可能会损坏设备。这是真的?你能解释一下原因吗?
因为否则我会认为将交换放在 SSD 上是最好的选择,因为它比 HDD 快得多,因此将 RAM 内容交换到 SSD 并不像使用 HDD 那样慢......
kswapd0 占用了我 99.9% 的 CPU,正如 top 显示的那样,今天玩游戏时出现问题,第一次在 6 分钟后消失,现在已经持续了大约 20 分钟。这是如何修复的,是什么原因造成的?
我的系统越来越慢,尤其是当我使用 Firefox / Chromium 和虚拟机等浏览器时。我注意到我至少有 3.2 GB 的可用 RAM(使用 Gnome 系统监视器)并且没有交换。
我现在所做的是swapoff -a,系统系统性能提高了 30%。所以我的问题是:使用安全swapoff吗?我的电脑重新启动是否安全swapoff?

多年来,我的小型 Ubuntu 配置一直遇到同样的问题:使用的交换空间随着时间的推移而增加。我的印象是,这主要是因为即使有足够的空间,分配的内存也永远不会返回到 RAM,除非用户操作如禁用交换。
我做了一个简短的cron命令来自动化这个,我有很好的结果:
#! /bin/sh
echo "* */1 * * * root swapoff -a && swapon -a" >> /etc/crontab
Run Code Online (Sandbox Code Playgroud)
但是因为它更像是一个技巧而不是这个问题的真正解决方案,我想知道它可能是一个坏主意的潜在原因,或者我如何改进这个脚本以使其更聪明一点?
我在 CPU 4 上使用 Ubuntu 18.04 和 4GB RAM。我没有太多内存,所以我的计算机运行缓慢并崩溃。你会建议我从目录中删除什么?或者其他一些命令apt autoremove,apt autoclean因为这还不够。我没有什么可以从 Ubuntu 软件中卸载的,因为只剩下最重要的东西了。请帮忙 :(
调查此问题的第一步应该是什么?在哪里查找任何日志/崩溃报告?
我刚刚在配备 1.7Ghz Pentium M 和 1Gbyte 内存的戴尔笔记本电脑上安装了 Ubuntu 14.04。
图形为 Intel® 852GM/855GM x86/MMX/SSE2,操作系统类型为 32 位。
整个系统非常慢。例如,当我启动应用程序管理器时,我需要等待才能看到我输入的字母出现!
就好像 CPU 过载并且没有可用内存,但我只运行 Firefox。
如何让系统运行更流畅?它曾经安装了 Windows XP,并且运行良好。
swap ×7
kernel ×2
performance ×2
18.04 ×1
command-line ×1
crash ×1
cron ×1
delete ×1
files ×1
hard-drive ×1
memory-usage ×1
ram-usage ×1
ssd ×1
storage ×1
uninstall ×1