linux中设备上没有空间
在linux中设备空间有两个条件决定的:硬盘容量 和 inode
硬盘容量
即硬盘可用容量
inode
即索引节点编号(记录文件的大小,佣有者,权限,区块地方等信息可以通过 stat 命令查看),每个分区中都会有固定大小的inode容量,每个inode节点也会占用硬盘空间,一般是128字节或256字节,inode节点的总数,在格式化时就给定,一般是每1KB或每2KB就设置一个inode,要查看各分区的inode情况可以通过 df -i 查看
硬盘与inode其中一项超额就会造成 设备上没有空间 异常错误,当出现这类错误基本上可以从这两个方面去考虑,一般使用命令 df:
df --help
用法:df [选项]... [文件]...
显示每个文件所在的文件系统的信息,默认是显示所有文件系统。
长选项必须使用的参数对于短选项时也是必需使用的。
-a, --all include dummy file systems
-B, --block-size=SIZE use SIZE-byte blocks
--direct show statistics for a file instead of mount point
--total produce a grand total
-h, --human-readable print sizes in human readable format (e.g., 1K 234M 2G)
-H, --si likewise, but use powers of 1000 not 1024
-i, --inodes 显示inode 信息而非块使用量
-k 即--block-size=1K
-l, --local 只显示本机的文件系统
--no-sync 取得使用量数据前不进行同步动作(默认)
-P, --portability 使用POSIX 兼容的输出格式
--sync 取得使用量数据前先进行同步动作
-t, --type=类型 只显示指定文件系统为指定类型的信息
-T, --print-type 显示文件系统类型
-x, --exclude-type=类型 只显示文件系统不是指定类型信息
-v (忽略)
--help 显示此帮助信息并退出
--version 显示版本信息并退出
所显示的数值是来自 --block-size、DF_BLOCK_SIZE、BLOCK_SIZE
及 BLOCKSIZE 环境变量中第一个可用的 SIZE 单位。
否则,默认单位是 1024 字节(或是 512,若设定 POSIXLY_CORRECT 的话)。
SIZE 可以是一个可选的整数,后面跟着以下单位中的一个:
KB 1000,K 1024,MB 1000*1000,M 1024*1024,还有 G、T、P、E、Z、Y。
请向bug-coreutils@gnu.org 报告df 的错误
GNU coreutils 项目主页:<http://www.gnu.org/software/coreutils/>
GNU 软件一般性帮助:<http://www.gnu.org/gethelp/>
请向<http://translationproject.org/team/zh_CN.html> 报告df 的翻译错误
要获取完整文档,请运行:info coreutils ‘df invocation‘
判断硬盘满:(发现有占用率达100% 就可以断定该分区满了)
df -h
判断inode满:(发现有占用率达100%就可以断定该分区碎片文件超多)
df -ia
硬盘满了一般删除不要的临时文件,清空日志文件等不需要的文件即可(最好同时看下inode使用情况)。
inode满了一般就是垃圾小文件越多造成的,linux下有很多服务会生成日志文件,如果处理不当,几年下来删除都是个头痛事(上万文件后 rm 使用就困难,甚至rm无法全部删除)。常见 crontab 定时服务就会产生邮件日志,一般不需要邮件的可在 crontab -e 中最上面添加一行 MAILTO="" 关闭邮件发送。
当不知道有哪些目录中存在大量碎片文件时,可通过命令:(查找出超过10M的目录,再行处理)
find / -type d -size +10M
或者使用命令:(找出目录下文件总数,可能需要执行多次,直到找出具体的目录)
cd / find */ ! -type l | cut -d / -f 1 | uniq -c
当找到的目录中存在上百万文件时 rm 是无法一次性删除的,可以使用rsync命令来删除:
mkdir /tmp/del_path #创建临时空目录 rsync --delete -a -H -v /tmp/del_path/ /val/logs/ #删除/val/logs/下所有文件
本文出自 “秋风扫落叶” 博客,请务必保留此出处http://php2012web.blog.51cto.com/5585213/1828097