ºìÁªLinuxÃÅ»§
Linux°ïÖú

½Ò¿ªLinuxµÄSwapÖ®ÃÕ

·¢²¼Ê±¼ä:2005-06-24 00:19:34À´Ô´:ºìÁª×÷Õß:uu
Swap£¬¼´½»»»Çø£¬³ýÁË°²×°LinuxµÄʱºò£¬ÓжàÉÙÈ˹ØÐĹýËüÄØ£¿Æäʵ£¬SwapµÄµ÷Õû¶ÔLinux·þÎñÆ÷£¬ÌرðÊÇWeb·þÎñÆ÷µÄÐÔÄÜÖÁ¹ØÖØÒª¡£Í¨¹ýµ÷ÕûSwap£¬ÓÐʱ¿ÉÒÔÔ½¹ýϵͳÐÔÄÜÆ¿¾±£¬½ÚʡϵͳÉý¼¶·ÑÓá£

SwapµÄÔ­ÀíÊÇÒ»¸ö½Ï¸´ÔÓµÄÎÊÌ⣬ÐèÒª´óÁ¿µÄƪ·ùÀ´ËµÃ÷¡£ÔÚÕâÀïÖ»×÷¼òµ¥µÄ½éÉÜ£¬ÔÚÒÔºóµÄÎÄÕÂÖн«ºÍ´ó¼ÒÏêϸÌÖÂÛSwapʵÏÖµÄϸ½Ú¡£

ÖÚËùÖÜÖª£¬ÏÖ´ú²Ù×÷ϵͳ¶¼ÊµÏÖÁË¡°ÐéÄâÄڴ桱ÕâÒ»¼¼Êõ£¬²»µ«ÔÚ¹¦ÄÜÉÏÍ»ÆÆÁËÎïÀíÄÚ´æµÄÏÞÖÆ£¬Ê¹³ÌÐò¿ÉÒÔ²Ù×Ý´óÓÚʵ¼ÊÎïÀíÄÚ´æµÄ¿Õ¼ä£¬¸üÖØÒªµÄÊÇ£¬¡°ÐéÄâÄڴ桱ÊǸôÀëÿ¸ö½ø³ÌµÄ°²È«±£»¤Íø£¬Ê¹Ã¿¸ö½ø³Ì¶¼²»ÊÜÆäËü³ÌÐòµÄ¸ÉÈÅ¡£

Swap¿Õ¼äµÄ×÷Óÿɼòµ¥ÃèÊöΪ£ºµ±ÏµÍ³µÄÎïÀíÄÚ´æ²»¹»ÓõÄʱºò£¬¾ÍÐèÒª½«ÎïÀíÄÚ´æÖеÄÒ»²¿·Ö¿Õ¼äÊͷųöÀ´£¬ÒÔ¹©µ±Ç°ÔËÐеijÌÐòʹÓá£ÄÇЩ±»ÊͷŵĿռä¿ÉÄÜÀ´×ÔһЩºÜ³¤Ê±¼äûÓÐʲô²Ù×÷µÄ³ÌÐò£¬ÕâЩ±»ÊͷŵĿռ䱻ÁÙʱ±£´æµ½Swap¿Õ¼äÖУ¬µÈµ½ÄÇЩ³ÌÐòÒªÔËÐÐʱ£¬ÔÙ´ÓSwapÖлָ´±£´æµÄÊý¾Ýµ½ÄÚ´æÖС£ÕâÑù£¬ÏµÍ³×ÜÊÇÔÚÎïÀíÄÚ´æ²»¹»Ê±£¬²Å½øÐÐSwap½»»»¡£

¼ÆËã»úÓû§»á¾­³£ÓöÕâÖÖÏÖÏó¡£ÀýÈ磬ÔÚʹÓÃWindowsϵͳʱ£¬¿ÉÒÔͬʱÔËÐжà¸ö³ÌÐò£¬µ±ÄãÇл»µ½Ò»¸öºÜ³¤Ê±¼äûÓÐÀí»áµÄ³ÌÐòʱ£¬»áÌýµ½Ó²ÅÌ¡°»©»©¡±Ö±Ïì¡£ÕâÊÇÒòΪÕâ¸ö³ÌÐòµÄÄÚ´æ±»ÄÇЩƵ·±ÔËÐеijÌÐò¸ø¡°Íµ×ß¡±ÁË£¬·Åµ½ÁËSwapÇøÖС£Òò´Ë£¬Ò»µ©´Ë³ÌÐò±»·ÅÖõ½Ç°¶Ë£¬Ëü¾Í»á´ÓSwapÇøÈ¡»Ø×Ô¼ºµÄÊý¾Ý£¬½«Æä·Å½øÄڴ棬Ȼºó½Ó×ÅÔËÐС£

ÐèҪ˵Ã÷Ò»µã£¬²¢²»ÊÇËùÓдÓÎïÀíÄÚ´æÖн»»»³öÀ´µÄÊý¾Ý¶¼»á±»·Åµ½SwapÖУ¨Èç¹ûÕâÑùµÄ»°£¬Swap¾Í»á²»¿°Öظº£©£¬ÓÐÏ൱һ²¿·ÖÊý¾Ý±»Ö±½Ó½»»»µ½Îļþϵͳ¡£ÀýÈ磬ÓеijÌÐò»á´ò¿ªÒ»Ð©Îļþ£¬¶ÔÎļþ½øÐжÁд£¨Æäʵÿ¸ö³ÌÐò¶¼ÖÁÉÙÒª´ò¿ªÒ»¸öÎļþ£¬ÄǾÍÊÇÔËÐгÌÐò±¾Éí£©£¬µ±ÐèÒª½«ÕâЩ³ÌÐòµÄÄÚ´æ¿Õ¼ä½»»»³öȥʱ£¬¾ÍûÓбØÒª½«Îļþ²¿·ÖµÄÊý¾Ý·Åµ½Swap¿Õ¼äÖÐÁË£¬¶ø¿ÉÒÔÖ±½Ó½«Æä·Åµ½ÎļþÀïÈ¥¡£Èç¹ûÊǶÁÎļþ²Ù×÷£¬ÄÇôÄÚ´æÊý¾Ý±»Ö±½ÓÊÍ·Å£¬²»ÐèÒª½»»»³öÀ´£¬ÒòΪÏ´ÎÐèҪʱ£¬¿ÉÖ±½Ó´ÓÎļþϵͳ»Ö¸´£»Èç¹ûÊÇдÎļþ£¬Ö»ÐèÒª½«±ä»¯µÄÊý¾Ý±£´æµ½ÎļþÖУ¬ÒÔ±ã»Ö¸´¡£µ«ÊÇÄÇЩÓÃmallocºÍnewº¯ÊýÉú³ÉµÄ¶ÔÏóµÄÊý¾ÝÔò²»Í¬£¬ËüÃÇÐèÒªSwap¿Õ¼ä£¬ÒòΪËüÃÇÔÚÎļþϵͳÖÐûÓÐÏàÓ¦µÄ¡°´¢±¸¡±Îļþ£¬Òò´Ë±»³Æ×÷¡°ÄäÃû¡±(Anonymous)ÄÚ´æÊý¾Ý¡£ÕâÀàÊý¾Ý»¹°üÀ¨¶ÑÕ»ÖеÄһЩ״̬ºÍ±äÁ¿Êý¾ÝµÈ¡£ËùÒÔ˵£¬Swap¿Õ¼äÊÇ¡°ÄäÃû¡±Êý¾ÝµÄ½»»»¿Õ¼ä¡£

Í»ÆÆ128M SwapÏÞÖÆ

¾­³£¿´µ½ÓÐЩLinux£¨¹úÄÚºº»¯°æ£©°²×°ÊÖ²áÉÏÓÐÕâÑùµÄ˵Ã÷£ºSwap¿Õ¼ä²»Äܳ¬¹ý128M¡£ÎªÊ²Ã´»áÓÐÕâÖÖ˵·¨£¿ÔÚ˵Ã÷¡°128M¡±Õâ¸öÊý×ÖµÄÀ´Àú֮ǰ£¬ÏȸøÎÊÌâÒ»¸ö»Ø´ð£ºÏÖÔÚ¸ù±¾²»´æÔÚ128MµÄÏÞÖÆ£¡ÏÖÔÚµÄÏÞÖÆÊÇ2G£¡

Swap¿Õ¼äÊÇ·ÖÒ³µÄ£¬Ã¿Ò»Ò³µÄ´óСºÍÄÚ´æÒ³µÄ´óСһÑù£¬·½±ãSwap¿Õ¼äºÍÄÚ´æÖ®¼äµÄÊý¾Ý½»»»¡£¾É°æ±¾µÄLinuxʵÏÖSwap¿Õ¼äʱ£¬ÓÃSwap¿Õ¼äµÄµÚÒ»Ò³×÷ΪËùÓÐSwap¿Õ¼äÒ³µÄÒ»¸ö¡°Î»Ó³É䡱£¨Bit map£©¡£Õâ¾ÍÊÇ˵µÚÒ»Ò³µÄÿһ룬¶¼¶ÔÓ¦×ÅÒ»Ò³Swap¿Õ¼ä¡£Èç¹ûÕâһλÊÇ1£¬±íʾ´ËÒ³Swap¿ÉÓã»Èç¹ûÊÇ0£¬±íʾ´ËÒ³ÊÇ»µ¿é£¬²»ÄÜʹÓá£Õâô˵À´£¬µÚÒ»¸öSwapÓ³ÉäλӦ¸ÃÊÇ0£¬ÒòΪ£¬µÚÒ»Ò³SwapÊÇÓ³ÉäÒ³¡£ÁíÍ⣬×îºó10¸öÓ³ÉäλҲ±»Õ¼Óã¬ÓÃÀ´±íʾSwapµÄ°æ±¾£¨Ô­À´µÄ°æ±¾ÊÇSwap_space £¬ÏÖÔڵİ汾ÊÇswapspace2£©¡£ÄÇô£¬Èç¹û˵һҳµÄ´óСΪs£¬ÕâÖÖSwapµÄʵÏÖ·½·¨¹²ÄܹÜÀí¡°8 * ( s - 10 ) - 1¡±¸öSwapÒ³¡£¶ÔÓÚi386ϵͳÀ´Ëµs=4096£¬Ôò¿Õ¼ä´óС¹²Îª133890048£¬Èç¹ûÈÏΪ1 MB=2^20 ByteµÄ»°£¬´óСÕýºÃΪ128M¡£

Ö®ËùÒÔÕâÑùÀ´ÊµÏÖSwap¿Õ¼äµÄ¹ÜÀí£¬ÊÇÒª·ÀÖ¹Swap¿Õ¼äÖÐÓлµ¿é¡£Èç¹ûϵͳ¼ì²éµ½SwapÖÐÓлµ¿é£¬ÔòÔÚÏàÓ¦µÄλӳÉäÉϱê¼ÇÉÏ0£¬±íʾ´ËÒ³²»¿ÉÓá£ÕâÑùÔÚʹÓÃSwapʱ£¬²»ÖÁÓÚÓõ½»µ¿é£¬¶øʹϵͳ²úÉú´íÎó¡£

ÏÖÔÚµÄϵͳÉè¼ÆÕßÈÏΪ£º

1.ÏÖÔÚÓ²ÅÌÖÊÁ¿ºÜºÃ£¬»µ¿éºÜÉÙ¡£

2.¾ÍËãÓУ¬Ò²²»¶à£¬Ö»ÐèÒª½«»µ¿éÂÞÁгöÀ´£¬¶ø²»ÐèҪΪÿһҳ½¨Á¢Ó³Éä¡£

3.Èç¹ûÓкܶ໵¿é£¬¾Í²»Ó¦¸Ã½«´ËÓ²ÅÌ×÷ΪSwap¿Õ¼äʹÓá£

ÓÚÊÇ£¬ÏÖÔÚµÄLinuxÈ¡ÏûÁËλӳÉäµÄ·½·¨£¬Ò²¾ÍÈ¡ÏûÁË128MµÄÏÞÖÆ¡£Ö±½ÓÓõØÖ··ÃÎÊ£¬ÏÞÖÆΪ2G¡£

SwapÅäÖöÔÐÔÄܵÄÓ°Ïì

·ÖÅäÌ«¶àµÄSwap¿Õ¼ä»áÀË·Ñ´ÅÅ̿ռ䣬¶øSwap¿Õ¼äÌ«ÉÙ£¬Ôòϵͳ»á·¢Éú´íÎó¡£

Èç¹ûϵͳµÄÎïÀíÄÚ´æÓùâÁË£¬ÏµÍ³¾Í»áÅܵúÜÂý£¬µ«ÈÔÄÜÔËÐУ»Èç¹ûSwap¿Õ¼äÓùâÁË£¬ÄÇôϵͳ¾Í»á·¢Éú´íÎó¡£ÀýÈ磬Web·þÎñÆ÷Äܸù¾Ý²»Í¬µÄÇëÇóÊýÁ¿ÑÜÉú³ö¶à¸ö·þÎñ½ø³Ì£¨»òỊ̈߳©£¬Èç¹ûSwap¿Õ¼äÓÃÍ꣬Ôò·þÎñ½ø³ÌÎÞ·¨Æô¶¯£¬Í¨³£»á³öÏÖ¡°application is out of memory¡±µÄ´íÎó£¬ÑÏÖØʱ»áÔì³É·þÎñ½ø³ÌµÄËÀËø¡£Òò´ËSwap¿Õ¼äµÄ·ÖÅäÊǺÜÖØÒªµÄ¡£

ͨ³£Çé¿öÏ£¬Swap¿Õ¼äÓ¦´óÓÚ»òµÈÓÚÎïÀíÄÚ´æµÄ´óС£¬×îС²»Ó¦Ð¡ÓÚ64M£¬Í¨³£Swap¿Õ¼äµÄ´óСӦÊÇÎïÀíÄÚ´æµÄ2-2.5±¶¡£µ«¸ù¾Ý²»Í¬µÄÓ¦Óã¬Ó¦Óв»Í¬µÄÅäÖãºÈç¹ûÊÇСµÄ×ÀÃæϵͳ£¬ÔòÖ»ÐèÒª½ÏСµÄSwap¿Õ¼ä£¬¶ø´óµÄ·þÎñÆ÷ϵͳÔòÊÓÇé¿ö²»Í¬ÐèÒª²»Í¬´óСµÄSwap¿Õ¼ä¡£ÌرðÊÇÊý¾Ý¿â·þÎñÆ÷ºÍWeb·þÎñÆ÷£¬Ëæ×Å·ÃÎÊÁ¿µÄÔö¼Ó£¬¶ÔSwap¿Õ¼äµÄÒªÇóÒ²»áÔö¼Ó£¬¾ßÌåÅäÖòμû¸÷·þÎñÆ÷²úÆ·µÄ˵Ã÷¡£

ÁíÍ⣬Swap·ÖÇøµÄÊýÁ¿¶ÔÐÔÄÜÒ²ÓкܴóµÄÓ°Ïì¡£ÒòΪSwap½»»»µÄ²Ù×÷ÊÇ´ÅÅÌIOµÄ²Ù×÷£¬Èç¹ûÓжà¸öSwap½»»»Çø£¬Swap¿Õ¼äµÄ·ÖÅä»áÒÔÂÖÁ÷µÄ·½Ê½²Ù×÷ÓÚËùÓеÄSwap£¬ÕâÑù»á´ó´ó¾ùºâIOµÄ¸ºÔØ£¬¼Ó¿ìSwap½»»»µÄËٶȡ£Èç¹ûÖ»ÓÐÒ»¸ö½»»»Çø£¬ËùÓеĽ»»»²Ù×÷»áʹ½»»»Çø±äµÃºÜ棬ʹϵͳ´ó¶àÊýʱ¼ä´¦Óڵȴý״̬£¬Ð§Âʺܵ͡£ÓÃÐÔÄܼàÊÓ¹¤¾ß¾Í»á·¢ÏÖ£¬´ËʱµÄCPU²¢²»ºÜ棬¶øϵͳȴÂý¡£Õâ˵Ã÷£¬Æ¿¾±ÔÚIOÉÏ£¬ÒÀ¿¿Ìá¸ßCPUµÄËÙ¶ÈÊǽâ¾ö²»ÁËÎÊÌâµÄ¡£
ϵͳÐÔÄܼàÊÓ

Swap¿Õ¼äµÄ·ÖÅä¹ÌÈ»ºÜÖØÒª£¬¶øϵͳÔËÐÐʱµÄÐÔÄܼà¿ØÈ´¸ü¼ÓÓмÛÖµ¡£Í¨¹ýÐÔÄܼàÊÓ¹¤¾ß£¬¿ÉÒÔ¼ì²éϵͳµÄ¸÷ÏîÐÔÄÜÖ¸±ê£¬ÕÒµ½ÏµÍ³ÐÔÄܵÄÆ¿¾±¡£±¾ÎÄÖ»½éÉÜÒ»ÏÂÔÚSolarisϺÍSwapÏà¹ØµÄһЩÃüÁîºÍÓÃ;¡£

×î³£ÓõÄÊÇVmstatÃüÁÔÚ´ó¶àÊýUnixƽ̨϶¼ÓÐÕâÑùһЩÃüÁ£¬´ËÃüÁî¿ÉÒԲ鿴´ó¶àÊýÐÔÄÜÖ¸±ê¡£

ÀýÈ磺
# vmstat 3
procs memory swap io system cpu
r b w swpd free buff cache si so bi bo in cs us sy id
0 0 0 0 93880 3304 19372 0 0 10 2 131 10 0 0 99
0 0 0 0 93880 3304 19372 0 0 0 0 109 8 0 0 100
0 0 0 0 93880 3304 19372 0 0 0 0 112 6 0 0 100
¡­¡­¡­¡­

ÃüÁî˵Ã÷£º
vmstat ºóÃæµÄ²ÎÊýÖ¸¶¨ÁËÐÔÄÜÖ¸±ê²¶»ñµÄʱ¼ä¼ä¸ô¡£3±íʾÿÈýÃëÖÓ²¶»ñÒ»´Î¡£µÚÒ»ÐÐÊý¾Ý²»Óÿ´£¬Ã»ÓмÛÖµ£¬Ëü½ö·´Ó³¿ª»úÒÔÀ´µÄƽ¾ùÐÔÄÜ¡£´ÓµÚ¶þÐпªÊ¼£¬·´Ó³Ã¿ÈýÃëÖÓÖ®ÄÚµÄϵͳÐÔÄÜÖ¸±ê¡£ÕâЩÐÔÄÜÖ¸±êÖкÍSwapÓйصİüÀ¨ÒÔϼ¸Ï


procs쵀w
Ëü±íʾµ±Ç°£¨ÈýÃëÖÓÖ®ÄÚ£©ÐèÒªÊÍ·ÅÄÚ´æ¡¢½»»»³öÈ¥µÄ½ø³ÌÊýÁ¿¡£

memory쵀swpd
Ëü±íʾʹÓõÄSwap¿Õ¼äµÄ´óС¡£

SwapϵÄsi£¬so
si±íʾµ±Ç°£¨ÈýÃëÖÓÖ®ÄÚ£©Ã¿Ãë½»»»»ØÄڴ棨Swap in£©µÄ×ÜÁ¿£¬µ¥Î»Îªkbytes£»so±íʾµ±Ç°£¨ÈýÃëÖÓÖ®ÄÚ£©Ã¿Ãë½»»»³öÄڴ棨Swap out£©µÄ×ÜÁ¿£¬µ¥Î»Îªkbytes¡£
ÒÔÉϵÄÖ¸±êÊýÁ¿Ô½´ó£¬±íʾϵͳԽæ¡£ÕâЩָ±êËù±íÏÖµÄϵͳ·±Ã¦³Ì¶È£¬Óëϵͳ¾ßÌåµÄÅäÖÃÓйء£ÏµÍ³¹ÜÀíÔ±Ó¦¸ÃÔÚƽʱϵͳÕý³£ÔËÐÐʱ£¬¼ÇÏÂÕâЩָ±êµÄÊýÖµ£¬ÔÚϵͳ·¢ÉúÎÊÌâµÄʱºò£¬ÔÙ½øÐбȽϣ¬¾Í»áºÜ¿ì·¢ÏÖÎÊÌ⣬²¢Öƶ¨±¾ÏµÍ³Õý³£ÔËÐеıê×¼Ö¸±êÖµ£¬ÒÔ¹©ÐÔÄܼà¿ØʹÓá£

ÁíÍ⣬ʹÓÃSwapon-sÒ²Äܼòµ¥µØ²é¿´µ±Ç°Swap×ÊÔ´µÄʹÓÃÇé¿ö¡£ÀýÈ磺
# swapon -s
Filename Type Size Used Priority
/dev/hda9 partition 361420 0 3

Äܹ»·½±ãµØ¿´³öSwap¿Õ¼äµÄÒÑÓúÍδÓÃ×ÊÔ´µÄ´óС¡£

Ó¦¸ÃʹSwap¸ºÔر£³ÖÔÚ30%ÒÔÏ£¬ÕâÑù²ÅÄܱ£Ö¤ÏµÍ³µÄÁ¼ºÃÐÔÄÜ¡£

ÓйØSwap²Ù×÷µÄϵͳÃüÁî


Ôö¼ÓSwap¿Õ¼ä£¬·ÖÒÔϼ¸²½£º
1)³ÉΪ³¬¼¶Óû§
$su - root

2)´´½¨SwapÎļþ
# dd if=/dev/zero of=swapfile bs=1024 count=65536

´´½¨Ò»¸öÓÐÁ¬Ðø¿Õ¼äµÄ½»»»Îļþ¡£

3)¼¤»îSwapÎļþ
#/usr/sbin/swapon swapfile

swapfileÖ¸µÄÊÇÉÏÒ»²½´´½¨µÄ½»»»Îļþ¡£ 4)ÏÖÔÚмӵÄSwapÎļþÒѾ­Æð×÷ÓÃÁË£¬µ«ÏµÍ³ÖØÐÂÆô¶¯ÒԺ󣬲¢²»»á¼Çסǰ¼¸²½µÄ²Ù×÷¡£Òò´ËÒªÔÚ/etc/fstabÎļþÖмǼÎļþµÄÃû×Ö£¬ºÍSwapÀàÐÍ£¬È磺
/path/swapfile none Swap sw,pri=3 0 0

5)¼ìÑéSwapÎļþÊÇ·ñ¼ÓÉÏ
/usr/sbin/swapon -s


ɾ³ý¶àÓàµÄSwap¿Õ¼ä¡£
1)³ÉΪ³¬¼¶Óû§

2)ʹÓÃSwapoffÃüÁîÊÕ»ØSwap¿Õ¼ä¡£
#/usr/sbin/swapoff swapfile

3)±à¼­/etc/fstabÎļþ£¬È¥µô´ËSwapÎļþµÄʵÌå¡£

4)´ÓÎļþϵͳÖлØÊÕ´ËÎļþ¡£
#rm swapfile

5)µ±È»£¬Èç¹û´ËSwap¿Õ¼ä²»ÊÇÒ»¸öÎļþ£¬¶øÊÇÒ»¸ö·ÖÇø£¬ÔòÐè´´½¨Ò»¸öеÄÎļþϵͳ£¬ÔÙ¹Ò½Óµ½Ô­À´µÄÎļþϵͳÉÏ¡£
ÎÄÕÂÆÀÂÛ

¹²ÓÐ 7 ÌõÆÀÂÛ

  1. q111111 ÓÚ 2007-01-16 19:43:49·¢±í:

    hhhao

  2. ÓÚ 2006-07-19 08:58:20·¢±í:

    ¶ÔSWAPµÄÀ´ÀúºÍÔ­Àí×öµÄ˵Ã÷»¹ÊÇÖµµÃ¿´µÄ¡£¡£Ñ§Ï°£¡

  3. ·ç¶ù ÓÚ 2006-07-19 08:47:34·¢±í:

    Æäʵ×÷ÕßµÄÐĵúܲ»´í£¬ºÜÖµµÃÐÂÊÖѧϰµÄ£¡

  4. wex999 ÓÚ 2006-05-09 12:03:39·¢±í:

    Æäʵ×÷ÕßµÄÐĵúܲ»´í£¬ºÜÖµµÃÐÂÊÖѧϰµÄ£¡

  5. 2133212 ÓÚ 2005-10-21 05:07:33·¢±í:

    ÐÂÊÖÉÏ·¡£³£À´¿´¿´~

  6. BenQ ÓÚ 2005-08-22 14:15:15·¢±í:

    ºÏºõ/

  7. loverf ÓÚ 2005-06-24 09:23:17·¢±í:

    ÕâÓ¦¸ÃÊÇÐí¾Ã֮ǰµÄÎÄÕÂÁË°É£¬ÏÖÔÚ£¬ÖÁÉÙÎÒÓúìÆ컹ûÈË˵swapÖ»ÄÜÔÚ128ÒÔÄÚ¡£