删除文件不会释放空间

删除文件不会释放空间

我有一个格式化为 ext3 的磁盘,里面已经满了。我试图通过删除文件来释放一些空间,但没用。我可以删除rm文件,但它们没有显示在目录列表中,但我没有可用的空间。

下面是尝试删除一些文件的副本。从中可以看出ls -la,文件未硬链接到其他位置,删除似乎成功了。在df输出中,已用块数减少了 182556,这是文件占用的空间,但可用计数仍为零。fsck 检测到文件系统没有问题,并且根本没有改变可用空间。

我现在正在使用 CentOS 6 尝试删除这些文件,但大多数文件都是使用 Debian 发行版编写的(我不确定是哪个版本,无论如何克隆兹拉用途)。

# ls -la
总计 182564
drwxr-xr-x.2 root root 4096 2011 年 3 月 4 日。
drwxr-xr-x.5 root root 4096 8 月 13 日 13:18..
-rw-------. 1 root root 4030114 2011年3月4日 sda1.vfat-ptcl-img.gz.aa
-rw-------. 1 root root 182667379 2011 年 3 月 4 日 sda2.ntfs-ptcl-img.gz.aa
-rw-r--r--. 1 root root 37 2011 年 3 月 4 日 sda-​​chs.sf
-rw-r--r--. 1 root root 31744 2011 年 3 月 4 日 sda-​​hidden-data-after-mbr
-rw-r--r--. 1 root root 512 2011 年 3 月 4 日 sda-​​mbr
-rw-r--r--. 1 root root 375 2011 年 3 月 4 日 sda-​​pt.parted
-rw-r--r--. 1 root root 259 2011 年 3 月 4 日 sda-​​pt.sf

# df.
文件系统 1K 块已使用可用使用率% 已安装于
/dev/sdb2 484009516 473901232 0 100% /媒体/图像

# rm -f *

# ls -la
共 8
drwxr-xr-x.2 root root 4096 8 月 13 日 15:05。
drwxr-xr-x.5 root root 4096 8 月 13 日 13:18..

# df.
文件系统 1K 块已使用可用使用率% 已安装于
/dev/sdb2 484009516 4737186​​76 0 100% /媒体/图像

# cd /media ;卸载图像

# e2fsck -fv /dev/sdb2
e2fsck 1.41.12(2010 年 5 月 17 日)
第 1 阶段:检查 inode、块和大小
第二步:检查目录结构
第三步:检查目录连通性
第四步:检查引用计数
第五步:检查组摘要信息

     已使用 589 个 inode (0.00%)
      37 个不连续的文件(6.3%)
       0 个不连续的目录 (0.0%)
         具有 ind/dind/tind 块的 inode 数量:278/256/0
已使用 119390761 个区块 (97.89%)
       0 个坏块
       5 个大文件

     551 个常规文件
      29 个目录
       0 个字符设备文件
       0 个块设备文件
       0 先进先出
       0 链接
       0 个符号链接(0 个快速符号链接)
       0 个插座
--------
     580 个文件

# 挂载 /dev/sdb2 镜像

# df 图像
文件系统 1K 块已使用可用使用率% 已安装于
/dev/sdb2 484009516 4737186​​76 0 100% /媒体/图像

答案1

出于稳定性原因,ext3 和 ext4 系列文件系统保留了一部分磁盘,以防止其真正变为“100% 满”,并且以便 FS 可以在部分空间中存储元数据。

您可以直接调整保留的空间量:

tune2fs -m 1 /dev/sdXX

将“1”替换为要保留的磁盘的百分比(0 到 100),将“XX”替换为设备节点和设备节点的分区号,因此在您的情况下“XX”将是“b2”。

打个比方:一辆公交车上坐满了人,唯一剩下的座位就在一个非常高大的人旁边,而这个人独自占据了一个半座位。一个非常坚持要坐下的人走上前来,要求坐在那里。虽然大多数人会认为第二个座位已经被占了,但这个人却很坚持。于是那个高大的人说:“哇,好啊!”然后挤进去让他们坐下。但是,只要有一个人下车并腾出另一个座位,即使那个高大的人旁边的乘客让出座位,大多数人仍然认为公交车上已经满员了,因为没人想坐在那个高大的人旁边。

来源

您还可以检查此项以查看保留块数...

dumpe2fs -h /dev/sdb2

引用上面来源中指出这个问题的非常聪明的用户的话:

当“已使用”减少到大约 0.95*136236548 块 = 129424720 块以下时,你会看到“可用”变为正值。

(我们必须将“0.95”调整为您的具体情况下的保留百分比,并将 136236548 个块调整为您设备的总块大小)。

相关内容