Questions tagged «swap»

Linux将其物理RAM(随机访问内存)划分为称为页面的内存块。交换是将一页内存复制到硬盘上预先配置的空间(称为交换空间)以释放该页内存的过程。物理内存(RAM)和交换空间的组合大小是可用的虚拟内存量。Linux有两种形式的交换空间:交换分区和交换文件。


6
交换分区与文件以提高性能?
什么对性能更好?靠近磁盘内部的分区访问速度较慢,我们必须等待驱动器在操作系统分区和交换分区之间切换。 另一方面,交换分区绕过所有文件系统,允许直接写入磁盘,这可能比文件快。 性能折衷是什么? 固定大小的交换文件有多少不同? 切换到交换分区是否需要更长的时间,但是如果它位于交换分区上,则性能会更好(如果它曾经是交换文件)?

10
Linux:如何显式取消所有可能的交换?
我发布的东西占用了很多内存,现在一切都滞后了很多。我想所有应用程序的内存都已交换,以便为内存密集型进程释放一些空间,现在访问时一切都缓慢返回RAM。 有没有办法将所有可能的内容从交换显式移回RAM?也许不是全部,而只是某些特定的过程数据?
59 linux  memory  swap 


4
在Linux中禁用交换的最佳方法
我正在运行一个自定义的已编译3.18.9内核,我想知道在系统上禁用交换的最佳方法。如果有区别,我也会使用init。 在注释掉或删除掉交换行/etc/fstab以防止交换在启动时无法正常工作/挂载是否足够?我是否应该重新编译内核,而不必Support for paging of anonymous memory (swap)百分百确定它没有启用? 我运行加密分区,并希望防止意外泄漏到硬盘上。我的系统规格也足够出色,可以在无交换环境中生存。
53 linux  kernel  swap  init 


4
为什么在Kubernetes上禁用交换
从Kubernetes 1.8开始,看来我需要在节点上禁用交换(或设置--fail-swap-on为false)。 我找不到Kubernetes坚持禁用交换的技术原因。这是出于性能原因吗?安全原因?为什么没有记录此原因?
35 kubernetes  swap 

4
如何确定我的Windows服务器是否正在交换?
我正在使用Process Explorer监视Windows Server,同时它重建了一些数据。这主要是一个占用大量CPU的进程,但是我想确保它没有交换。如何确定它是否正在使用Process Explorer?我最初的猜测是在“系统信息”窗口中,它是“分页文件写入增量”。是?没有?我是个白痴? *截屏不是服务器的……只是一个例子。 替代文字http://www.malwareinfo.org/bootcamp/img/ProcessExplorer2.jpg
29 windows  swap  pagefile 

6
如何使Linux OOM杀手不杀死我的进程?
当物理内存不足但有足够的交换空间时,如何使Linux OOM杀手程序不杀死我的进程? 我已禁用OOM杀死功能并使用sysctl vm.overcommit_memory = 2来过量使用。 VM具有3 GB的绝对免费的无碎片交换,并且被OOM杀死的进程的最大内存使用量小于200MB。 我知道长期交换对于性能而言将是可怕的,但是我现在需要使用交换来在内存需求更大的valgrind下进行功能测试。 Mar 7 02:43:11 myhost kernel: memcheck-amd64- invoked oom-killer: gfp_mask=0x24002c2, order=0, oom_score_adj=0 Mar 7 02:43:11 myhost kernel: memcheck-amd64- cpuset=/ mems_allowed=0 Mar 7 02:43:11 myhost kernel: CPU: 0 PID: 3841 Comm: memcheck-amd64- Not tainted 4.4.0-x86_64-linode63 #2 Mar 7 02:43:11 myhost kernel: Hardware name: …
28 linux  swap  oom 

6
什么是交换内存?
此问题已从堆栈溢出迁移,因为可以在服务器故障时回答。 迁移 10年前。 我正在使用RAM存储一些数据库表,而其他存储在硬盘中。 今天,我知道我的进程正在使用交换内存。现在什么是交换内存,我如何才能检测到哪个进程正在使用交换内存,如何阻止他们使用交换内存?
26 swap 


8
我应该完全关闭Linux Web服务器的交换吗?
最近,我的朋友告诉我,关闭具有足够内存的linux Web服务器上的交换是个好主意。我的服务器有12 GB,当前在峰值负载下使用4GB(不计算缓存和缓冲区)。 他的观点是,在正常情况下,服务器将永远不会使用其所有RAM,因此,它可能遇到OutOfMemory情况的唯一方法是由于某些bug / ddos​​ / etc。因此,如果关闭交换,系统将耗尽内存,最终将使程序占用内存(很可能是Web服务器进程)以及其他一些进程崩溃。在交换的情况下打开的它会同时吞噬RAM和交换空间,最终将导致相同的崩溃,但是在此之前,它将卸载sshd之类的关键进程进行交换,并开始执行大量交换操作,从而导致严重的速度下降。这种方式在ddos系统下可能会由于巨大的延迟而进入完全无法使用的状态,并且我可能将无法登录并杀死Web服务器进程或拒绝所有传入流量(除ssh之外的所有流量)。 这是正确的吗?我是否缺少某些东西(例如即使我有足够的RAM,交换分区在某种程度上还是很有用的事实)?我应该关闭它吗?

3
如何在ESXi中禁用交换文件?
我们正在ESXi上运行一些Solaris / Linux VM,其中包含非常敏感的加密数据,这些数据最终会根据内存中的要求进行解密。 一切都很好,除了ESXi交换文件可能存储一些解密的数据外,最重要的是在主机崩溃的情况下这些文件不会被删除。 有什么办法可以完全禁用这些文件? 我们已经尝试过为每个VM保留分配给VM的全部已分配RAM,但是仍会创建文件。 要完全禁用整个主机或仅某些虚拟机的ESXi交换,会发生什么情况?

4
如何增加掉期规模?
最近,我在服务器中添加了更多内存,现在总共有24GB的RAM。最初,我将操作系统设置为具有2GB的交换大小。 /dev/sdc1 1 281 2257101 82 Linux swap / Solaris /dev/sdc2 * 282 60801 486126900 83 Linux 当前已为交换分配了2GB的空间,但阅读它似乎并不多。对于24GB的系统,我正在考虑分配至少10GB的交换空间。 我的问题是:操作系统运行时可以执行此操作吗?我需要重新安装吗?我正在使用OpenSuse 11.3
17 linux  swap 


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.