我有一台配备 4GB RAM 的 Core 2 笔记本电脑。我用这台机器浏览网页、进行网络操作和进行简单的编程。(我偶尔会用这台机器托管一个小型 FTP 和 Web 服务器。)
拥有交换分区有什么好处吗?我的理解是,有了那么多内存,就没有必要为我的平庸使用而设置交换分区。事实上,内核将被迫使用我的内存,这样会更快。
它是否正确?
答案1
我需要一个交换分区吗?
你需要一个交换分区(不是交换文件)让您的工作站进入睡眠状态。
我怎样才能强制内核不使用交换?
sysctl vm.swappiness=0
另外要说的是:这与服务器管理有何关系?
答案2
这样做是有好处的。至于是否需要,还有待商榷。至少,交换可以为您提供安全网,以防发生意外情况。您的系统将进行交换,而不是开始出现程序崩溃或因 OOM 而终止的情况。
答案3
暂停至磁盘还需要足够的交换来保存内存内容(它可能会根据设置和版本使用压缩)。
因为它是一台笔记本电脑,所以您可能需要使用磁盘暂停功能。
答案4
事实上,内核将被强制使用我的 RAM,这样速度会更快。?
或许,很可能不会 - 现代操作系统在使用可用 RAM 方面非常智能(好吧,理智) - 即使是旧操作系统也相当不错。在我使用过的所有 Linux 机器上,交换计数一直保持在 0 字节,直到需要时才使用 - 除非被迫,否则操作系统没有理由使用交换。
仅当您耗尽物理内存时才会出现此问题。
- 如果没有任何交换空间,系统往往会冻结几分钟,OOM 杀手(内存不足)启动并开始终止进程,直到有足够的可用内存供系统主要部件运行。
- 有了交换空间,导致交换的应用程序可能会变慢一点(这很好地表明它达到了物理内存的限制),并且..没什么,它只是继续..