在 Centos 上扩展交换

在 Centos 上扩展交换

我最近使用基于 centos 6 的 VPS 创建了一个交换文件本指南。现在我想延长这次交换,我正在阅读本指南。但是,我认为我创建的是交换文件而不是分区。我该如何扩展这个交换文件?目前大小是512M,我需要再扩展1G。

答案1

你能显示结果吗

cat /proc/swaps

这样我们就可以确定你的情况了?

顺便说一句 - 您是否确保交换空间(文件或分区)位于 /etc/fstab 中?

  1. 如果您创建了 lvm 交换分区,则扩展它很容易,您可以使用相同的指南 - 基本上:

    交换; lvextend -L +1G 卷组/LVswap; mkswap /dev/VolGroup-LVswap;交换-a

  2. 如果您确实创建了一个文件 - 您可以重复该过程,创建另一个 1G 文件并让交换处理它(交换空间不必是连续的)

  3. 或者您可以简单地删除文件 (swapoff /path/to/swapfile; rm !$) 并以新大小重新创建它

  4. 或者你可以使用 dd 来扩展你的交换文件(再次确保先交换)

    dd oflag=append conv=notrunc if=/dev/zero of=/swapfile bs=1MB count=1024

更新

  1. 建议free首先使用该命令,以确定未使用交换。只要交换使用量为 0,并且没有进程需要比物理可用内存更多的内存,就不会有问题。

  2. 每个交换设备都必须存在/etc/fstab才能swapon -a检测到它们。

  3. 如果使用上述过程 (3),为了将交换“停机时间”降至最低,您可以执行以下操作:

3.1 创建新的交换文件
3.2 修改/etc/fstab为指向新的交换文件。
3.3 swapoff <path/to/OLD/swapfile>
3.4 swapon -a
3.5rm <path/to/OLD/swapfile>

可以选择将 3.3 和 3.4 结合起来: swapoff /path/to/OLD/swapfile && swapon -a 将确保无需交换的时间最少。

相关内容