sof*_*ter 28 linux swap installation
我打算安装 Ubuntu 9.04 版本。我应该为交换分区分配多少空间。我记得我在很久以前安装时将其设置为 RAM 大小的两倍。当时我的内存是 256 MB。所以我将交换分区设置为 512 MB。
Axx*_*err 16
我想说一个好的经验法则确实就像上面提到的那样。2 倍的物理内存。这里需要考虑的是,虽然可以使用较小的交换分区,并且在大多数正常情况下就足够了,如果您希望这个系统非常稳定,我确实会遵循 8 GB 的建议。事实上,我建议使用 2 * RAM + 1 MB,这样绝对有空间换出 2 个完整的内存副本。这避免了可能对性能产生负面影响的“壳牌游戏”场景。如果您的系统遇到异常事件,这将为您保证一定程度的弹性。
我见过应用程序在无人照管的环境中表现不佳的情况,并且在您意识到之前,您的系统开始减速以至爬行。
根据您在做什么,您甚至可以完全省去交换文件。一次运行多个应用程序时,操作系统的额外空间非常方便。但是,如果您只想运行几个进程,则不打算与 GUI 交互,禁用交换文件可能是合适的。
但是如果你要交换文件,我总是使用下面的大小公式。
[(2 x RAM) + 1 MB] = Swap File Size
Run Code Online (Sandbox Code Playgroud)
我还建议尽可能将交换文件放在单独的磁盘上,因为这将提高性能,因为操作系统可以在从数据磁盘读取/写入的同时交换进出。
我希望这是有帮助的。
Dav*_*ett 14
如果你有足够的 RAM 来满足你要求它做的所有事情,Linux 可以在没有交换的情况下非常愉快地运行,尽管有一些交换仍然是一个好主意,因为它有时可以在接近填充内存时通过推送一些最近获得更好的性能- 用于磁盘释放 RAM 以用作当前活动 IO 操作的缓存/缓冲区。
此外,有一些交换,无论你有多少 RAM,如果应用程序行为不端并且需要比平时更多的 RAM,或者你选择做一些需要大量内存的不寻常的事情,确实可以提供一点额外的安全网。
一般来说,我不同意现代机器上的 2xRAM。如果您有足够的工作以最终将 8Gb 的页面换出到磁盘,那么无论如何您的系统很可能已经达到完全无法使用的速度。在很多情况下,IMO 甚至 1xRAM 也可能是矫枉过正。请记住,您可以随时以文件的形式添加交换空间,以便以后发现需要时添加更多交换空间。例如,要添加额外的 GB 交换空间:
dd if=/dev/zero of=/path/to/newfile bs=1024 count=1048576
mkswap /path/to/newfile
swapon /path/to/newfile
Run Code Online (Sandbox Code Playgroud)
并删除它(一旦不再需要):
swapoff /path/to/newfile
rm /path/to/newfile
Run Code Online (Sandbox Code Playgroud)
(请记住,尽管交换到文件比直接交换到分区或逻辑卷要慢一点,因为您有文件系统开销和更大的碎片潜力要考虑)
休眠,即在笔记本电脑/上网本上,可能会使事情变得有点复杂,因为 IIRC Linux 将内存状态存储在交换空间中,所以如果你打算使用休眠,你肯定需要更多的 RAM 大小作为交换(我不知道这是否需要是基于分区/卷的交换,或者如果可以使用基于文件的 - 它肯定需要在 fstab
可以在启动过程的早期看到,其中初始 ram 磁盘正在使用中并且您的真正根尚未安装)。
不过,这些观点可能都没有实际意义。如果您有 TB 级的磁盘存储空间,分配 8Gb 的空间来交换可能不会有什么困难!