从我的Linux机器来说交换空间是-0,为什么呢,以及如何增加交换空间?
[root@my_small_linux free
total used free shared buffers cached
Mem: 8172212 2087904 6084308 0 270020 1376776
-/+ buffers/cache: 441108 7731104
Swap: 0 0 0
答案1
这意味着没有可用的交换分区。如果硬盘上有一些未使用的空间,您可以将其设为交换分区(通过 fdisk)。或者您可以在文件上创建交换。这将创建 2GB 交换:
dd if=/dev/zero of=/swap bs=1048576 count=2048
mkswap /swap
swapon /swap
并将其添加到 /etc/fstab 以便在启动时挂载。
答案2
也可能是您的/etc/fstab
交换分区中列出的是uuid
而不是/dev/sd*
。如果由于某种原因 uuid 发生变化,则无法自动挂载。
fdisk -l
使用 root/sudo检查是否列出了一些交换分区。我的输出是:
[snip]
Device Boot Start End Blocks Id System
/dev/sdb1 * 1 34 273073+ 83 Linux
/dev/sdb2 35 1340 10490445 83 Linux
/dev/sdb3 1341 1449 875542+ 82 Linux swap / Solaris <<--- here it is!
/dev/sdb4 1450 9729 66509100 83 Linux
然后使用以下命令检查 UUID 的符号链接:ls -l /dev/disk/by-uuid/
。我的情况是:
0 lrwxrwxrwx 1 root root 10 2011-03-08 08:39 3565be89-f1fe-478c-9653-a1dbeb9406a9 -> ../../sdb3
因此/etc/fstab
我有:
UUID=3565be89-f1fe-478c-9653-a1dbeb9406a9 none swap sw 0 0
免责声明:我现在在 Ubuntu 下,所以在其他发行版下实际路径可能有所不同。