快速业务通道

解决Linux系统swap分区太小问题

作者 佚名技术 来源 Linux系统 浏览 发布时间 2012-04-21

  为了突破物理内存的限制,在操作系统中实现了“虚拟内存”技术.它应用程序可以操纵大于实际物理内存的空间.虚拟内存可以用来隔离每个进程,成为进程的安全保护网,每个进程都不受其他程序的干扰.如果swap空间不够会产生什么负面作用呢?简单的来说,如果系统的物理内存用光了,系统就反映速度会变得很慢,但是操作系统仍能运行;如果Swap空间用光了,那么系统就会发生错误.例如,Web服务器能根据不同的请求数量衍生出多个服务进程或线程,如果Swap空间用完,则服务进程无法启动,就会出现swap空间不足的错误,严重时会造成服务进程的死锁.可见Swap空间的分配是很重要的.如果swap空间太小会造成应用程序错误,而不光光是性能下降的问题.

  在Linux系统下,这个虚拟内存就被叫做swap.在安装操作系统的时候,安装向导会提示用户需要创建多少的swap空间.通常情况下,swap比较合适的大小为物理内存的1-2倍.但是有些应用程序的话,对于swap分区比较饥渴,如JAVA或者Oracle应用程序,他们要求swap分区的大小能够达到物理内存的2倍以上.此时原先在安装系统的时候为其分配的swap分区就太小了.那么该如何补救呢?

  笔者以前就遇到过类似的问题.有一台Linux服务器,上面已经部署了文件服务器.后来出于部署ERP系统的需要,要在这台服务器上部署一个Oracle数据库系统.不过Oracle数据库系统对swap的空间有要求.如果不满足这个要求的话,Oracle操作系统无法安装.而笔者不能够通过重装Linux服务器的方式来扩展swap空间,上面还运行着文件服务器.为此笔者只好通过其他途径来实现这个需求了.针对这种情况,Linux系统提出了两种补救措施,分别为创建新的swap空间和创建swap 文件.笔者是通过创建swap文件的方式来调整swap空间的.如上图所示,笔者就在home目录下创建了一个swap文件,并且通过启动配置文件让其随着系统的启动而自动启用.如此配置之后,Oracle数据库系统就可以顺利安装了.

  这两种调整方式的具体的实现方式如下所示.

  措施一:创建新的swap空间,增加swap容量.

  如果在Linux服务器的硬盘中还有比较多的空余容量,或者系统管理员添置了新硬盘,此时就可以利用Linux系统自带的fdisk硬盘格式化工具,来创建新的swap分区.具体的操作如下: 拥有帝国一切,皆有可能。欢迎访问phome.net

  第一步:创建新的分区.如笔者在服务器硬盘中还有一个20G的分区没有使用过,就可以利用fdisk磁盘格式化工具,来创建新的分区.具体fdisk命令的使用方法大家可以参考其它的相关资料,笔者在这里就不过多展开了.在使用这个工具的时候,如果要把分区设置为swap分区,则需要注意要把空间设置为扩展分区.然后再在扩展分区上设置一个逻辑分区.如此的话,为后续维护与管理提供了方便.如管理员可以陆续增加swap空间等等.

  第二步:将分区的文件系统设置为swap文件系统.

  默认情况下系统新增加的分区其文件格式为ext3.为了让这个分区成为swap分区,则需要把这个分区的文件格式改为swap文件系统.这个任务也是在fdisk命令中完成.如果要把这个分区格式改为swap,则在fdisk命令执行时,当提示hex code时,系统管理员需要输入swap文件系统的代号.通常情况下swap文件系统的代号为82.然欧再继续后续的工作.如果不修改的话,则系统默认会采用ext3文件系统格式.

  第三步:格式化并启动swap分区格式.当fdisk命令执行完毕后,还重新启动计算机,刚才的设置才会生效.但是,fdisk命令只是划分出了一个swap分区,系统还是无法使用这个分区,这个分区还没有格式化与启动.与微软操作系统一样,当划分出一个分区之后,系统管理员还需要格式化这个分区.为此,系统管理员需要通过mkswap命令来对刚才划分的swap分区进行格式化.不过与微软操作系统不同的是,对分区格式化之后,这个新的分区默认情况下是没有

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号