Я использую XFS на небольшом жестком диске (/ dev / sdb1, менее 150 ГБ) и храню много небольших файлов (-32 КБ). df -h и -i показывают, что у него есть доступное место.
# df -hv Filesystem Size Used Avail Use% Mounted on /dev/sda3 127G 19G 102G 16% / tmpfs 16G 0 16G 0% /lib/init/rw udev 16G 168K 16G 1% /dev tmpfs 16G 0 16G 0% /dev/shm /dev/sda1 99M 20M 75M 21% /boot /dev/sdb1 136G 123G 14G 91% /mnt/sdb1 # df -iv Filesystem Inodes IUsed IFree IUse% Mounted on /dev/sda3 8421376 36199 8385177 1% / tmpfs 4126158 5 4126153 1% /lib/init/rw udev 4124934 671 4124263 1% /dev tmpfs 4126158 1 4126157 1% /dev/shm /dev/sda1 26112 222 25890 1% /boot /dev/sdb1 24905120 11076608 13828512 45% /mnt/sdb1
Однако у меня не осталось места при ошибке устройства.
# touch /mnt/sdb1/test touch: cannot touch `/mnt/sdb1/test': No space left on device
Я думаю, что проблема с inode64 не связана с этим случаем, потому что диск меньше 1 ТБ, а df -i показывает, что есть свободные inodes. Я размонтировал и смонтировал с помощью -o inode64, но получил ту же ошибку.
xfs_repair не сообщает о проблемах. xfs_info показывает информацию о диске следующим образом.
# xfs_info /dev/sdb1 meta-data=/dev/sdb1 isize=1024 agcount=16, agsize=2227764 blks = sectsz=512 attr=2 data = bsize=4096 blocks=35644210, imaxpct=25 = sunit=0 swidth=0 blks naming =version 2 bsize=4096 ascii-ci=0 log =internal bsize=4096 blocks=17404, version=2 = sectsz=512 sunit=0 blks, lazy-count=1 realtime =none extsz=4096 blocks=0, rtextents=0
Любые идеи? Спасибо!
-
Я обнаружил, что это та же проблема, что описана в следующем обсуждении.
[http://comments.gmane.org/gmane.comp.file-systems.xfs.general/41031 impression[1]
На моем жестком диске нет свободного места для inode.
# xfs_db -r "-c freesp -s" /dev/sdb1 from to extents blocks pct 1 1 1105980 1105980 32.01 2 3 528180 1195803 34.61 4 7 203982 1153467 33.38
Вы уверены, что это проблема с индексным дескриптором? Я замечаю, что занимаемая площадь превышает 90%. Это заставляет меня задаться вопросом, является ли это одним из этих «корневых» зарезервированных пространств (я знаю, что у ext2 / 3/4 это есть), или для работы файловой системы XFS по какой-то причине необходимо 10% свободного пространства.
Вы пробовали запустить fsck
чтобы увидеть, освобождает ли он доступные inodes.
Если вы прервете mv
или rm
тогда он может делать то, что вы описываете.