crontab出现/tmp/crontab.rHuk45: No space left on device错误

问题描述:

[root@bak ~]# crontab -e
no crontab for root - using an empty one
/tmp/crontab.rHuk45: No space left on device

显示/tmp满,但是df -Th发现空间未满

[root@bak ~]# df -Th
Filesystem                               Type     Size  Used Avail Use% Mounted on
/dev/mapper/VolGroup-lv_root             ext4      50G   19G   29G  39% /
tmpfs                                    tmpfs     32G  502M   31G   2% /dev/shm
/dev/sda1                                ext4     485M   39M  421M   9% /boot
/dev/mapper/VolGroup-lv_home             ext4     6.6T  1.5T  4.8T  24% /home
/media/Red Hat Enterprise 6.5 x86_64.iso iso9660  3.6G  3.6G     0 100% /mnt

猜想应该是inode满了

[root@bak ~]# df -i
Filesystem                                  Inodes   IUsed     IFree IUse% Mounted on
/dev/mapper/VolGroup-lv_root               3276800 3276800         0  100% /
tmpfs                                      8230027     184   8229843    1% /dev/shm
/dev/sda1                                   128016      39    127977    1% /boot
/dev/mapper/VolGroup-lv_home             448487424   12057 448475367    1% /home
/media/Red Hat Enterprise 6.5 x86_64.iso         0       0         0     - /mnt

果然,inode使用率100%

inode包含的信息:文件的字节数,拥有者id,组id,权限,改动时间,链接数,数据block的位置
df -h 是去删除比较大无用的文件-----------大文件占用大量的磁盘容量。
df -i 则去删除数量过多的小文件-----------过多的文件占用了大量的inode号。

通过脚本查询文件最多的目录

[root@bak var]# find / -xdev -printf '%h\n' | sort | uniq -c | sort -k 1 -n
    603 /usr/lib/gcc/x86_64-redhat-linux/4.4.4/adalib
    628 /usr/lib64/python2.6
    665 /usr/share/doc
    672 /u01/app/oracle/product/11.2.0/dbhome_1/sysman/admin/emdrep/sql/db
    703 /usr/share/man/man8
    872 /u01/app/oracle/product/11.2.0/dbhome_1/apex/images
    960 /dbra/app/lib/openssl/ssl/man/man3
   1085 /usr/lib/gcc/x86_64-redhat-linux/4.4.4/adainclude
   1089 /u01/app/oracle/product/11.2.0/dbhome_1/owb/wf/java/oracle/apps/fnd/wf/icons
   1124 /usr/share/man/man3p
   1310 /usr/lib64
   1456 /usr/share/man/man1
   1473 /usr/bin
   1634 /u01/app/oracle/product/11.2.0/dbhome_1/rdbms/admin
   3181 /usr/share/foomatic/db/source/printer
   4407 /usr/share/man/man3
   4482 /usr/share/doc/libstdc++-docs-4.4.7/html/api
3103535 /u01/app/oracle/product/11.2.0/dbhome_1/rdbms/audit
You have new mail in /var/spool/mail/root

很显然, /u01/app/oracle/product/11.2.0/dbhome_1/rdbms/audit下的文件数过多,从事DBA的都知道,这是Oracle数据库的审计文件。

[root@mcbak ~]# cd /u01/app/oracle/product/11.2.0/dbhome_1/rdbms/audit
[root@mcbak audit]# rm -rf *.aud
-bash: /bin/rm: Argument list too long

文件数太多,rm -rf已经不能删除了,采用find方式删除

[root@bak audit]# find . -name "*.aud" | xargs rm -rf '*.aud'
[root@mcbak audit]# df -i
Filesystem                                  Inodes  IUsed     IFree IUse% Mounted on
/dev/mapper/VolGroup-lv_root               3276800 165973   3110827    6% /
tmpfs                                      8230027    184   8229843    1% /dev/shm
/dev/sda1                                   128016     39    127977    1% /boot
/dev/mapper/VolGroup-lv_home             448487424  12068 448475356    1% /home
/media/Red Hat Enterprise 6.5 x86_64.iso         0      0         0     - /mnt

至此,问题解决

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值