如何增加交换大小?

最近,我把更多的RAM放到我的服务器上,现在总共有24GB的内存。 本来,我设置操作系统有一个2GB的交换大小。

/dev/sdc1 1 281 2257101 82 Linux swap / Solaris /dev/sdc2 * 282 60801 486126900 83 Linux 

目前2GB被分配为swap,但是看起来并不多。 对于一个24GB的系统,我想分配至less10GB的交换。

我的问题是:我可以在操作系统运行时执行吗? 我必须重新安装吗? 我正在使用OpenSuse 11.3

您决定在安装时创build一个单独的交换分区。 您无法在线resize – 即使离线resize也需要相当长的时间,并且有可能损害/ dev / sdc2上后续文件系统的潜在风险。

要解决这个问题,最简单的方法是在当前不使用的另一个磁盘上创build一个新的交换分区(或者可以离线重新分区),或者简单地在现有文件系统中使用交换文件由于文件系统开销造成一些小的性能损失 )。

添加交换分区/文件的一般步骤:

  • 使用dd if=/dev/zero of=/swapfile bs=1M count=8192创build82htypes的新分区或新的8 GB文件dd if=/dev/zero of=/swapfile bs=1M count=8192
  • 使用mkswap /swapfilemkswap /dev/sdXX初始化它
  • 使用swapon /swapfileswapon /dev/sdXX分别启用新的交换空间
  • 向/ etc / fstab中添加一个条目,以确保重新启动后新的交换空间被激活

您当前的交换分区仍在使用中,为了降低复杂性,您可能需要删除它。 只需使用swapoff /dev/sdc1swapoff /dev/sdc1禁用它的使用,并删除/etc/fstab中的引用

您必须重新分区磁盘。 如果我记得移动Linux分区的开始在分区不支持,但你可以缩小你的Linux文件系统和分区,然后在磁盘的末尾进行另一个交换。 系统在线时不能这样做。

备用解决scheme是使用大文件作为交换。 (现在不知道这是不是一个好主意。)

在这种情况下你需要交换吗? 我不知道你的系统上运行着什么,但是我尝试在服务器上有足够的内存来避免完全交换…(我确实有,但是只有当我的服务器开始交换时,更多的记忆…)