当前位置: 首页 > 图文教程 > 操作系统 > Unix/Linux > WARNING: /tmp: File system full, swap space limit exceeded的解决办法

Unix/Linux
如何在linux下面运行招商银行专业版
Windows和Linux系统共存 完美解决方案
Linux 和对称多处理应用程序介绍
Red Hat Linux 附加引导和内核引导选项
Linux 2.6.11内核文件IO系统调用详解
走向高手之路 Linux系统内核技术解读
菜鸟乐园 Linux系统内核代码特色一览
Linux内核和传统Unix内核的比较
内核中的物理内存分配函数kernel api
使用 Linux 系统调用的内核命令
详细解析 Linux内核的主要配置选项
内核操作 Linux2.6内核驱动移植参考
Linux内存中Swap和Buffer Cache机制
高手进阶 更换Fedora Core 6的内核
高手风范 Linux操作系统内核编码风格
Linux操作系统内核中工作队列的操作
揭开Linux系统内核调试器的神秘面纱
系统“大挪移” Linux服务器迁移大法
高手进阶 重新编译Linux操作系统的内核
Ubuntu系统关于驱动模块命令的一些使用

Unix/Linux 中的 WARNING: /tmp: File system full, swap space limit exceeded的解决办法


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2010-01-15   浏览: 245 ::
收藏到网摘: n/a

解决/tmp(swap)文件系统报无可写空间的错误

系统有时出现如下类似报错:    WARNING: /tmp: File system full, swap space limit exceeded   出现这种报错有如下几种常见的原因:    1)物理内存不够用;  2)Swap空间不够用;  3)某些用户在使用/tmp文件系统;  4)特定程序占用大量内存;  5)某些错误的脚本无限耗尽资源。   对于以上的原因造成的报错可以采取如下措施:    1)增加物理内存。  2)增加Swap - 如下方法可以简单地实现(注:增加的Swap会随着系统的重起而消失)       #mkfile <size>[g | k | b | m] <directory_name>/swap       #swap -a <directory_name>/swap       - 运行“swap -l“可以确认追加的Swap。    3)告知用户/tmp的使用时注意事项。  4)Kill程序。  5)修改脚本。   查找报错的原因:    - 使用命令可查出占用最大资源的程序或有无无限耗尽资源的脚本。       # /usr/bin/ps -el | sort -rn -k 10       例:如何计算占资源大小   > bash-2.05# /usr/bin/ps -el | sort -rn -k 10
>  8 S     0   585   557  0  40 20        ?  16981        ? ?        0:04 Xsun
> bash-2.05# pagesize
> 8192
>
> 16981 * 8192 = 139108352byte 即 139M       例:有无限耗尽资源的脚本运行时   > 0 S      0 27982 27981   0  40 20        ?    328        ? ?           0:00 sh
> 0 S      0 27979 27978   0  40 20        ?    328        ? ?           0:00 sh
> 0 S      0 27975 27974   0  40 20        ?    328        ? ?           0:00 sh
> 0 S      0 27971 27970   0  40 20        ?    328        ? ?           0:00 sh
> 0 S      0 27967 27966   0  40 20        ?    328        ? ?           0:00 sh
> 0 S      0 27963 27962   0  40 20        ?    328        ? ?           0:00 sh
> 0 S      0 27981 27980   0  40 20        ?    327        ? ?           0:00 sh
> 0 S      0 27980 27979   0  40 20        ?    327        ? ?           0:00 sh
> 0 S      0 27978 27977   0  40 20        ?    327        ? ?           0:00 sh    - 察看有无用户或程序在使用/tmp ?       # ls -alR /tmp > /log.tmp     # ls -alR /var/tmp > /log.var_tmp    - 其他可察看Memory和IO的命令:       # vmstat 5 5     # iostate 5 5