A. 如何在Ubuntu中创建swap分区文件
备注:
1)Ubuntu版本:14.04
2)linux用户:root
通常,Linux系统中swap分区可以通过两种方式指定,分别为:一、在磁盘分区的时候格式化一个swap分区;二、在文件系统中创建一个swap文件作为swap分区。此文主要介绍第二种方式。步骤如下:
1. 创建文件
fallocate -l 8G /swapfile
说明:8G 表示swap文件大小,/swapfile为swap文件路径和名称,可以任意指定。
2. 修改文件权限
chmod 600 /swapfile
3. 将 swapfile 初始化为交换文件
mkswap /swapfile
4. 启用交换文件
swapon /swapfile
5. 至此,linux系统已经将swapfile作为交换文件使用,但是重启之后是不会自动挂在刚才创建的文件的,因此需要手动修改 /etc/fstab 配置文件:
gedit /etc/fstab
在文件中添加如下内容:
/swapfile none swap sw 0 0
6. 完成,测试下:
swapon -s
提示:
如果需要卸载swap分区文件,可以使用命令:swapoff /swapfile
B. linux 怎么增加swap分区
方法一、通过swap文件增加:
1、创建交换文件
[root@SOA ~]# dd if=/dev/zero of=/tmp/mem.swap bs=1M count=4096记录了4096+0 的读入记录了4096+0 的写出4294967296字节(4.3 GB)已复制,54.6386 秒,78.6 MB/秒
当然根据bs指定的大小不同,我们也可以通过下面的文件增加:
dd if=/dev/zero of=/tmp/mem.swap bs=1M count=4096 (增加4G)或
dd if=/dev/zero of=swapfile bs=1024 count=1048576 (增加1G)
2、查看当前分区的大小
[root@SOA ~]#free -m total used free shared buffers cachedMem: 1875 1800 75 0 12 995-/+ buffers/cache: 792 1083Swap: 2047 0 2047
3、格式转换并挂载
[root@SOA ~]#mkswap /tmp/mem.swap
Setting up swapspace version 1, size = 4294963 kB
[root@SOA ~]#swapon /tmp/mem.swap
4、三种确认是否增加成功的方法
[root@SOA ~]# swapon -sFilename Type Size Used Priority/dev/sda2 partition 2097144 8 -1/tmp/mem.swap file 4194296 0 -2[root@SOA ~]# free -m total used free shared buffers cachedMem: 1875 1773 102 0 13 977-/+ buffers/cache: 782 1093Swap: 6143 0 6143[root@SOA ~]# cat /proc/swapsFilename Type Size Used Priority/dev/sda2 partition 2097144 8 -1/tmp/mem.swap file 4194296 0 -2
以上不难看出,第一、三两种方法效果相同。linux/unix的一个奇妙之处也在此,很多命令和直接查看某些文件或更改某些文件的值,效果是一样的。
以上操作,在系统重启后,swap文件的大小又会变回原大小,我们可以在/etc/fstab里增加下面的配置,使其重启后,我们刚刚的配置仍然有效。
/tmp/mem.swap swap swap defaults 0 0
如果想卸载掉上面的分区,可以通过swapoff完成
[root@SOA ~]# swapoff /tmp/mem.swap