Unix系统下对swap分区大小修改

前端之家收集整理的这篇文章主要介绍了Unix系统下对swap分区大小修改前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

随着科技不断的进步,内存大小在不断的加大,使得swap分区的用处越来越小。所以在实际生产环境中有时需要对系统的swap分区大小来进行调整,不过建议在安装系统时就定义好是否要swap分区、swap分区的大小是多少,如果是条件允许的话建议swap分区在2GB~4GB间,如果还不够建议直接加内存。使用2GB的swap是因为有一些特殊的软件可能在平时使用的时候会使用到swap分区,如高性能的Oracle。当然,如果后期在使用的过程中发现swap分区过大,磁盘空间又使用紧张,那么就很有必要对系统的swap分区大小做相应的缩减,反之亦然。因为有LVM的出现使得swap分区的调整方式有一点区别,在此就简单的说一说swap分区的缩减方法

在对swap分区大小调整前还需要注意是否还有数据正在使用swap分区,如果是有在使用需要先修改下系统的内核变量刷新下swap分区查验下,以免造成数据丢失,系统中默认使用swap时的是依靠/proc/sys/vm/swappiness中的变量来控制的,默认/proc/sys/vm/swappiness中的变量时60,当/proc/sys/vm/swappiness变量设置为0时是表示尽量不使用swap空间,其中值越大表示系统越倾向于使用swap空间,可以通过修改内核变量文件/etc/sysctl.conf来动态控制

root@localhost~]#sysctl-qvm.swappiness#查询默认vm.swappiness变量大小
vm.swappiness=60
[root@localhost~]#vim/etc/sysctl.conf
…略…
vm.swappiness=0
[root@localhost~]#sysctl-p
[root@localhost~]#swapoff-a&&swapon-a#刷新swap,即关了再开

这样就降低了系统对swap的使用可能性,当然如果内存确实够时此时还是会使用到swap空间的,此时就不能对swap分区大小做调整,如果没有那么才能继续做swap分区大小的调整,而对swap分区做调整时有分成2种情况:1、是使用传统磁盘分区 2、使用LVM管理的swap分区。这两种情况下对系统的swap分区做调整是有所不同的。

先说一下传统磁盘分区对swap分区做调整的方法,总的来说使用传统磁盘分区下对swap的增加和减小大致的原理是一致的:

[root@localhost~]#swapon-s#先确认下是哪一个分区是作为swap分区
[root@localhost~]#ddif=/dev/zeroof=/tmp/swapbs=1MBcount=2048#创建一个写满0的swap文件用来做swap,大小根据你需要调整的swap分区来定
[root@localhost~]#chmod600/tmp/swap
[root@localhost~]#swapoff-a#离线所有swap分区,相当于umountswap分区
[root@localhost~]#mkswap/tmp/swap#创建swap分区,注意要记录下下面生成的UUID
mkswap:/tmp/swap:warning:don'terasebootbitssectors
onwholedisk.Use-ftoforce.
Settingupswapspaceversion1,size=1999996KiB
nolabel,UUID=7cc2ddfc-6057-49c8-b7a8-4f6e3807d731
[root@localhost~]#swapon/tmp/swap#激活swap分区

这样swap的临时分区就建立好了,如果是调小或者是磁盘中还有未使用的分区时还可以在把原来的swap分区重新做修改后,再格式化调整大小后再创建成swap分区再把swap写在独立分区内,步骤方法和上面一样在此就不做过多的赘述了,无论如何把swap分区修改好后都需要根据实际修改的情况修改下/etc/fstab文件,注意UUID也要填新的,以确保系统重启后会自动挂载swap分区。

第二种是swap分区使用LVM逻辑卷来创建管理的那么,只要在swap分区离线后用LVM的增减来对swap分区来做变化,至于LVM在以前有提及过所以在这里就简单的写一下减小,LVM中逻辑卷分区的增减变化可以参看: http://www.jb51.cc/article/p-erojokqz-bms.html

[root@localhost~]#swapon-s
[root@localhost~]#swapoff-a
[root@localhost~]#lvreduce-L2048M/dev/mapper/VolGroup-Lv_swap
[root@localhost~]#mkswap/dev/mapper/VolGroup-Lv_swap#注意记录UUID
mkswap:/dev/VolGroup/VolGroup-Lv_swap:warning:don'terasebootbitssectors
onwholedisk.Use-ftoforce.
Settingupswapspaceversion1,size=2097148KiB
nolabel,UUID=d6210042-9bc0-4e56-bc5a-3ade79eb4791
[root@localhost~]#swapon/dev/mapper/VolGroup-VolGroup--Lv_swap

总之如果是对swap修改后都要对/etc/fstab文件修改,以确保重启后系统能自动挂载swap分区

原文链接:https://www.f2er.com/bash/391545.html

猜你在找的Bash相关文章