前言:
安装Ubuntu系统时,选择了默认空间分配方案,Swap空间仅1G,而实际的物理内存有32G,分给Swap空间至少为内存的1倍,最好是内存值的2倍,系统相当卡顿,重做系统后,费力部署的环境怎么又需要重新部署,头痛!
一、查看本机Swap交换空间的内存大小
命令如下
free -m
执行结果如下:
longzhiye@longzhiye-laptop:~$ free -m total used free shared buff/cache availableMem: 31995 374 30603 9 1016 31142Swap: 976 65 911
可以看到本机的Swap空间为976M左右,即1G空间。
下面我们将其扩大64G
二、创建Swap文件
sudo -i
输入密码后,切换root。
mkdir /swap
建立swap文件夹
cd /swap/
进入到swap文件夹
sudo dd if=/dev/zero of=swapfile bs=64M count=1k
建立swapfile,大小为bs*count = 64M * 1k = 64G
sudo mkswap -f swapfile
将生成的文件转换为Swap文件
执行结果如下:
longzhiye@longzhiye-laptop:~$ sudo -i[sudo] longzhiye 的密码: root@longzhiye-laptop:~# cd /root@longzhiye-laptop:/# mkdir /swaproot@longzhiye-laptop:/# cd swap/root@longzhiye-laptop:/swap# sudo dd if=/dev/zero of=swapfile bs=64M count=1k记录了1024+0 的读入记录了1024+0 的写出68719476736 bytes (69 GB, 64 GiB) copied, 276.311 s, 249 MB/sroot@longzhiye-laptop:/swap# sudo mkswap -f swapfileSetting up swapspace version 1, size = 64 GiB (68719472640 bytes)无标签, UUID=c7feaf13-7f02-4941-a07f-86a43bdf3ef5
三、激活Swap文件
sudo swapon swapfile
free -m
激活Swap文件,并重新查看Swap空间 内存
执行结果如下:
root@longzhiye-laptop:/swap# sudo swapon swapfileswapon: /swap/swapfile:不安全的权限 0644,建议使用 0600。root@longzhiye-laptop:/swap# free -m total used free shared buff/cache availableMem: 31995 381 374 9 31238 31065Swap: 66512 64 66448
可以看到Swap空间内存从1G变为64G = 我们扩大的64G+原始的1G。
四、设置为永久Swap
未做此步骤,重启之前的设置都失效!!!!
sudo gedit /etc/fstab
更改swap路径。
# /etc/fstab: static file system information.## Use 'blkid' to print the universally unique identifier for a# device; this may be used with UUID= as a more robust way to name devices# that works even if disks are added and removed. See fstab(5).## <file system> <mount point> <type> <options> <dump> <pass># / was on /dev/sda2 during installationUUID=b726da21-83a0-497b-b3eb-a09f16403d60 / ext4 errors=remount-ro 0 1# /boot/efi was on /dev/sda1 during installationUUID=C0BE-3630 /boot/efi vfat umask=0077 0 1#UUID=c7bb6d12-b247-4119-9c27-797f9995884e none swap sw 0 0/swap/swapfile swap swap sw 0 0
五、扩展
如果需要卸载这个 swap 文件,可以进入建立的 swap 文件目录。执行下列命令。
sudo swapoff swapfile
如果需要一直保持这个 swap ,可以把它写入 /etc/fstab 文件。
/swap/swapfile /swap swap defaults 0 0