Linux 修改 Swap 分区大小

一、新建 swap 分区(root)

1. # swapoff -a          #停止交换分区

2. 用 fdisk 命令加 swap 分区的盘符,(例:# fdisk /dev/sdb)剔除 swap 分区,输入d删除 swap 分区,然后再n添加分区(添加时硬盘必须要有可用空间,然后再用t将新添的分区id改为82(linux swap类型),最后用w将操作实际写入硬盘(没用w之前的操作是无效的)。

3. # mkswap /dev/sdb2       #格式化 swap 分区,这里的sdb2要看您加完后p命令显示的实际分区设备名

4. # swapon /dev/sdb2      #启动新的 swap 分区

5. 为了让系统启动时能自动启用交换分区,可以编辑 /etc/fstab ,加入下面一行

/dev/sdb2 swap swap defaults 0 0


二、增加Swap分区

1.创建交换分区的文件:增加1G大小的交换分区,则命令写法如下,其中的 count 等于想要的块大小。

# dd if=/dev/zero of=/home/swap bs=1M count=1024

2.设置交换分区文件:

# mkswap /home/swap  #建立swap的文件系统

3.立即启用交换分区文件:

# swapon /home/swap   #启用swap文件

4.使系统开机时自启用,在文件 /etc/fstab 中添加一行:

/home/swap swap swap defaults 0 0


三、修改 Swap 的使用优先级 swappiness

swappiness=0 表示最大限度使用物理内存,swappiness=100 表示积极的使用swap分区,并且把内存上的数据及时的搬运到 swap。

1. # cat /proc/sys/vm/swappiness    #查看系统默认的 swappiness 值

2. # sudo sysctl vm.swappiness=10   #修改swappiness值为10,临时性的修改,重启系统后会恢复默认值

3. # sudo vi /etc/sysctl.conf
    #在文档的最后加上这样一行(永久修改 swappiness):

    vm.swappiness = 10

4. # sudo sysctl -p                          #使 /etc/sysctl.conf 的修改立即生效


推荐的 Swap 和 Ram 之间的大小关系

RAM

Swap Space

Between 1024 MB and 2048 MB

1.5 times the size of RAM

Between 2049 MB and 8192 MB

Equal to the size of RAM

More than 8192 MB

0.75 times the size of RAM

你可能感兴趣的:(备忘录)