Linux Inode 耗尽 no space

关于Inode一个应用的案例就是创建文件的时候发现没有足够的空间,通过df查看呢发现实际上Used只有20%,这里也是为什么du和df查看同样一个磁盘的时候发现大小不一致(自己可以试一下肯定不一致)

首先inode耗尽差生肯定是inode表没有空闲了,怎么解决???

find ./ -name "*.log*" |xargs -L rm可以删除,如果小文件太多可能会报错arglist too long

find ./ -name "*.log*" -exec rm -rf {} \;也可以删除,都是讲删除的文件一个一个做为参数传递

还有就是如果想不格式化硬盘(mkfs)可以删掉一部分之后重新指定连接到别的文件系统

ln -s /newcache /opt/newcache 这样访问就是使用新的文件系统的i节点

如果涉及前期考虑到硬盘存放的数据的大小,可以考虑以下两点:
如果有很多个小文件,在创建硬盘的时候可以调整Block小一点。
如果文件特别大,比如视频之类的,可以调整Block大一些。
如何增加Inode的数量只能umount文件系统,然后重新mkfs
mkfs ext3 /dev/sda1 [-N number-of-inodes ]直接指定需要的Inode数目
或者mkfs ext3 /dev/sda1 [-i bytes-per-inode]
inode数量如何计算:一般是硬盘大小/Block(即一个扇区)
时间: 2024-10-26 18:33:44

Linux Inode 耗尽 no space的相关文章

Linux inode耗尽故障处理

Linux系统中一切皆是文件,系统内部不使用文件名,而使用inode号码来识别文件,一个文件必须占有一个inode,由于每个文件都必须有一个inode, 因此有可能发生inode已经用光,但是硬盘还没有满的情况,这样会导致无法在硬盘上创建新文件.首先准备实验环境,新建一个硬盘,用fdisk工具创建一个内存约5M的分区/dev/sdb1,再格式化,并将其挂载到/data目录下,使用带"-i"选项的df命令确认该分区中节点的使用情况. 接着编写一个测试程序,运行该程序可以耗尽/dev/sd

Linux msgget返回no space left

linux msgget返回no space left 首先要说的是此类标准函数应该养成查看man手册了解其用法及返回值的习惯. 返回no space left 分为两种情况: 1,创建的msg queue个数超过整个系统限制,通过ipcs -l查看系统对msg queue限制的具体个数,通过ipcs -q查看当前已经创建的所有消息队列.我自己遇到的就是这种情况,是因为在可执行程序退出时没有销毁已经创建的msg queue,在反复多次运行后导致达到上限无法再创建成功. 说明需要注意一点,对于可用

ARM32 Linux kernel virtual address space

http://thinkiii.blogspot.jp/2014/02/arm32-linux-kernel-virtual-address-space.html The 32-bit ARM CPU can address up to 2^32 = 4GB address*. It's not big enough in present days, since the size of available DRAM on computing devices is growing fast and

Linux inode满导致创建文件报磁盘空间不足

客户报不能挂载存储,系统异常.登陆系统,尝试手动mount分区,报失败.进入挂载点,尝试写入一个文件,报磁盘空间不足,首先怀疑是系统磁盘空间满: $ df Filesystem           1K-blocks      Used Available Use% Mounted on /dev/xvda 33030016 10407780 22622236 32% / tmpfs 368748 0 368748 0% /lib/init/rw varrun 368748 56 368692

use entire drive|replace existing linux system|use free space

use entire drive|replace existing linux system|use free space 在装 Linux 的时候,到分割硬盘及格式化硬盘这步的时候,有几个选项,他们的意思及将执行的操作分别是: ( 1 ) Use entire drive (使用整个磁盘) 这个方案会删除硬盘上所有分割区,然后再重新分割硬盘.如果您硬盘上有您想保留的操作系统,请不要选择此项. ( 2 ) Replace exiting Linux system (替换掉现有的 Linux 系统

ufs文件系统下inode耗尽导致业务进程重启失败

一次业务升级后,发现生产系统上的业务进程UPRG无法启动,日志里面报错:can not create UPRG.log,但是观察/logs目录剩余空间还有很多.尝试直接在/logs下touch文件也失败,也是报can not create file. 第一反应是/logs目录的权限是否被人误改了?但很快便发现目录权限正常. 第二反应是磁盘坏了,但想想磁盘是RAID1,不可能两个盘都坏了,而且系统日志里面没有任何磁盘报错. 第三反应是分区表坏了,但如果分区表坏了,应该cd都不能进去. ... 最后

Linux inode && Fast Directory Travel Method(undone)

目录 1. Linux inode简介 2. Fast Directory Travel Method 1. Linux inode简介 0x1: 磁盘分割原理 字节 -> 扇区(sector)(每个扇区存储512字节) -> 块(block)(最常见的是4KB,即8个连续的sector组成一个block) 1. 磁盘的最小存储单位是"扇区" 2. 文件存储的最小单位是"块" 0x2: Linux EX2 filesystem 当一个partition(

理解linux inode

理解linux inode ? ? 1. inode的由来和作用 2. inode表中包含什么内容 3. 文件系统如何通过inode读取文件 4. 一个特殊的存在类型:硬链接 5. 目录文件的结构 ? ?1.inode的由来和作用??硬盘创建文件系统时,会把物理磁盘的扇区(512字节)创建为由多个扇区组成的"块"(目前常用的为4KB,即8个扇区).当操作系统从磁盘读取数据时,磁头从"块"上读取数据.为了快速查找数据,必须在磁盘上专门划分出一个专门的区域存储数据的&q

Linux索引节点(Inode:no space for device)用满导致的一次故障

问题描述 在storm测试环境集群上上nimbus和supervisor自动挂调,重启时显示no space for device,也不能创建,添加文件及目录,df -h查看 ilesystem Size Used Avail Use% Mounted on /dev/vda1 40G 2.9G 35G 8% / tmpfs 3.9G 0 3.9G 0% /dev/shm /dev/vdc1 100G 3.1G 92G 4% /home /dev/vdd1 50G 180M 48G 1% /ho