如何合理设置Linux的swap分区

如何合理设置Linux的swap分区,第1张

有人对Swap分区大小的设置这样评论过:“只要不怕浪费硬盘的话越大越好,因为linux内核在物理内存完全用完之前不会去动swap” 不过根据我的经验,可能不是这样喔!太大的 swap 空间会造成 kernel 以为有巨大的内存空间而毫不节制的想要把数据捉进内存中,从而导致 kernel 一直在做 memory swap,连带拖慢系统响应时间。
老实说,1G RAM 如果不跑 p2p 之类的东西,那设个 256MB 就够用了;有 2G 的话连设都不要设。
另外如果说真的因为某一软件确实需要巨大内存空间才能运作的话,那只好在 swap 上动手脚,但为了效能最好分散在多个实体硬盘上(等于类似 raid 效果)! 其实如何设置Swap分区的大小是最能检查一个Linux系统管理员的水平的测试,Swap到底该如何设置呢?我是这样认为的:首先我们需要了解这台服务器都要运行哪些程序、他们各自占用的内存大小为多少,经过确切的检查后,Swap分区的大小可以这样确定: ( 内存大小 + Swap分区大小 ) 80%或70% = 程序需要占用总内存数 Swap分区在程序测试期间也有很大的用途,例如管理员能够通过Swap分区的使用状况,监测系统内存是否出现泄露,同时对Web项目等应用也可以提供一个比较好的流量峰值缓冲作用。一个Linux系统管理员要能够通过监测Swap分区的使用情况,对系统、程序有一个合理的评价。

linux调整swap的方法大致有三种:1如果linux的磁盘分区类型是lvm的类型的话建议直接用lvm进行在线的扩展收缩swap的大小。2在标准分区小我们可以使用我们的划分分区的方法加入swap中。3标准分区小我们可以使用文件的方式把swap的分区扩大。分区扩展:fdisk/dev/hdan···(创建分区)mkswap/dev/sda3(指定该SWAP分区)swapoffswapon/dev/hda3(开启swap分区)vim/etc/fstab(写入开机启动)free-s文件扩展:查看目前系统swap:swapon-s决定SWAP文件的大小,先指定区块大小:bs,再指定区块数量count,则SWAP文件的大小是:countbs在root用户下执行如下命令:ddif=/dev/zeroof=/swapfilebs=1Mcount=2048指定作为交换区的文件:mkswap/swapfile激活交换区文件:swapon/swapfile开机时启用swap,在/etc/fstab添加如下内容:/swapfileswapswapdefaults0确认swap已经被使用,另外在/目录可以看到文件swapfile基本上的 *** 作是这个样子的建议您查看下linux就该这样学的相关资料,希望能够帮助您,注意swap的大小要适中

小swap分区的方法:
1、先“df -h”和“fdisk - l”命令查看一下当前分区情况
/dev/mapper/vg_"hostname"-lv_swap就是swap分区,为2G。swap分区亦可用free命令查看到。
2、用swapoff命令关闭交换分区:
# swapoff /dev/mapper/vg_"hostname"-lv_swap
然后用free命令检查下swap是否变为0了。
3、用lvreduce命令把swap分区减小1500M:
# lvreduce -L -1500M /dev/mapper/vg_"hostname"-lv_swap
输入y,确定,看到提示swap减小至516M。
4、重新把/dev/mapper/vg_"hostname"-lv_swap设置为swap分区:
# mkswap /dev/mapper/vg_"hostname"-lv_swap
5、swapon开启swap分区:
# swapon /dev/mapper/vg_"hostname"-lv_swap
然后用free命令检查下swap是否变为516M了。

依次进入设置-》性能-》虚拟内存-》(进入设置之后要左右翻页才能找到,我一开始都没找到)
这时你就可以看见图1所示的画面了。
设置分两种情况:
1你的内存卡已经有了SWAP分区:
那么第二项(swap模式选择)就设置为“SD卡SWAP分区”。
第三项就不用管了。然后点击最下面的“打开”就可以了。
2你的内存卡没有进行过分区:那么第二项(swap模式选择)就设置为“SD卡文件模式”,
第三项(SWAP文件大小)自己选择,理论上来说,是越大越好。自己选择认为合适的值就可
以了。
然后点击最下面的“打开”就可以了。

有两种设置高速缓存分区的方式:
第一种是创建一个Swap文件到SD卡的Fat32分区,大小可以自定义设置。
1运行Swapper,点击设置,设置一下分区大小,建议不要超过128mb
2返回后点击其他==创建swap,
3创建成功后再交换调节里面选择swap ON来启用swap,
4启用成功后再点击配置里面的获取信息来查看swap的情况,如果swap一项为0,就是没有成功!成功如下面的(我虚拟的是96mb)
另一种是你的SD卡已经有Swap分区,但是为开启,那么可以使用它来开启,
1首先SD卡你必须已经有Swap分区,新手可以使用内置分区功能的Recovery分区
2运行Swapper,点击设置找到高级选项,
3勾选『使用SWAP分区』,点击下面的『SWAP分区』查看是否与你的SD卡分区相对应,在第三分区。。确定后,返回主界面。
4点击Swap ON,最后点击获取信息看看是否开启成功。成功后第四行 Swap: 98296KB (大概96MB)

开分区:进入recevery
打开advance一项有ext和swap分区设置进入设置分区大小,然后重启,《也可用电脑软件》
挂载分区:进入手机终端模拟器,输入su获取权限再输入
busybox
mkswap
/dev/block/mmcblk0p3挂载swap分区输入free看最底下一项是否不为0,如不为0既已挂载上,用s2e软件挂载ext分区

swap交换分区可以增加一定量的内存使用,但增加swap分区的最重要的作用是防止网站流量突然增大而导致系统分配内存不够用而死机。如果你的VPS长期处理使用swap的状态下,建议你检查下程序或VPS,或者升级更大的内存的VPS,因为使用swap交换分 区,会使服务器的性能降低很多,导致访问速度变慢。 1、以root权限登录SSH,键入如下命令创建512M的swap文件(1024 512MB = 524288)


欢迎分享,转载请注明来源:内存溢出

原文地址: https://www.outofmemory.cn/yw/10321487.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-07
下一篇 2023-05-07

发表评论

登录后才能评论

评论列表(0条)

保存