我有一个具有 2Gb 交换空间的虚拟机(在线托管)。
免费-m
total used free shared buffers cached
Mem: 1995 438 1557 37 22 190
-/+ buffers/cache: 225 1770
Swap: 1998 0 1998
由于交换空间很小,我尝试将其增加到 4GB。
执行swapon -s,返回此结果(不知道这意味着什么,因为我没有第二个硬盘 sda2)
Filename Type Size Used Priority
/dev/sda2 partition 2046972 0 -1
df -H
Filesystem Size Used Avail Use% Mounted on
/dev/sda1 25G 19G 4.3G 82% /
udev 1.1G 4.1k 1.1G 1% /dev
tmpfs 210M 492k 209M 1% /run
none 4.1k 0 4.1k 0% /sys/fs/cgroup
none 5.3M 0 5.3M 0% /run/lock
none 1.1G 0 1.1G 0% /run/shm
none 105M 0 105M 0% /run/user
所以我做了
swapoff -a #deactivating previous swap space
fallocate -l 4G /swapfile #creating a swapfile
chmod 600 /swapfile #giving permissions
mkswap /swapfile #making swap the file
swapon /swapfile #activating swap on the file
echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab #stabilizying swap for it to be there after next reboot
现在我有了我需要的交换空间
免费-m
total used free shared buffers cached Mem: 1995 1153 842 64 116
455
-/+ buffers/cache: 581 1414 Swap: 4095 0 4095
但是,如果我执行 df 操作,之前 2GB 的交换空间仍然被认为已被占用(也许它们在下次重新启动时会空闲?)并且我的 fstab 有两个交换空间条目。
# <file system> <mount point> <type> <options> <dump> <pass>
/dev/sda1 / ext4 errors=remount-ro,relatime 0 1
/dev/sda2 swap swap defaults 0 0
proc /proc proc defaults 0 0
sysfs /sys sysfs defaults 0 0
devtmpfs /dev devtmpfs rw 0 0
/swapfile none swap sw 0 0
在这种情况下,我如何着手完成程序?我必须删除 fstab 中涉及交换的第二行吗?(我的意思是 /dev/sda2 swap swap defaults 0 0) 重启安全吗?