删除后 ext3/raid1 上的磁盘空间未释放

删除后 ext3/raid1 上的磁盘空间未释放

我在软件 raid1 阵列(即镜像)中有两个 120 GB 的磁盘,显示为/dev/md2。在此之上有一个 ext3 文件系统,安装在/

# uname -a
Linux svnserv 2.6.26-2-amd64 #1 SMP Sun Jun 21 04:47:08 UTC 2009 x86_64 GNU/Linux

最近,写入磁盘开始失败,并出现“写入错误:设备上没有剩余空间“。df显示没有更多磁盘空间。我删除了一些未使用的大文件,大约 5 GB,但错误仍然存​​在。

df显示如下:

# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/md2              109G  104G     0 100% /
tmpfs                 471M     0  471M   0% /lib/init/rw
udev                   10M  100K   10M   1% /dev
tmpfs                 471M     0  471M   0% /dev/shm
/dev/md0               44M  9.8M   32M  24% /boot

请注意,109 GB 中已使用了 104 GB,但可用容量为 0 GB。

我的 inode 还没用完:

# df -i
Filesystem            Inodes   IUsed   IFree IUse% Mounted on
/dev/md2             7208960   55273 7153687    1% /

mdadm似乎很高兴(两个磁盘都处于活动状态并且同步):

# mdadm --detail /dev/md2
/dev/md2:
        Version : 00.90
  Creation Time : Mon Jul 20 18:53:01 2009
     Raid Level : raid1
     Array Size : 115218112 (109.88 GiB 117.98 GB)
  Used Dev Size : 115218112 (109.88 GiB 117.98 GB)
   Raid Devices : 2
  Total Devices : 2
Preferred Minor : 2
    Persistence : Superblock is persistent

    Update Time : Thu Jul  8 14:34:08 2010
          State : active
 Active Devices : 2
Working Devices : 2
 Failed Devices : 0
  Spare Devices : 0

           UUID : 1bb0fff8:38e78897:34693ac2:f3157c61
         Events : 0.71

    Number   Major   Minor   RaidDevice State
       0      22        3        0      active sync   /dev/hdc3
       1      22       67        1      active sync   /dev/hdd3

我怎样才能使未使用的空间可用?

答案1

啊,SO/SF/SU 三部曲的奇妙之处:这个问题有点类似,但答案并没有解决这个问题。不过有这样的评论:

为 root 用户保留的空间。可用空间是非特权用户的可用空间,而不是总可用空间。与其他一些 UNIX 系统不同,当您开始占用 root 的保留空间时,Linux 不会显示负可用空间。– pehrs 4 月 16 日 8:42

根据本文,默认为根保留的空间是磁盘大小的 5%。

通过发出tune2fs -m 0 /dev/md2,系统现在可以正确报告可用空间(该系统不需要 root 的保留空间)。

该问题与 RAID 根本无关。

相关内容