Тази вече ми попадна един от първите Eee PC 701 Series на Asus със странният проблем, че не му върви Skype. Да, в първият момент се очудих, при това много:) В крайна сметка се оказа, че горкото бълва грешки при всяка операция. А в най-крайна сметка причината бе в бъг на UnionFS (файловата система, която се използва за Eee PC).
При опит за създаване на файл в конзолата ядрото пищи за липса на място:
$ touch sdf
cannot touch ‘sdf’: No space left on device
В същото време df -h вади друга информация:
$ df -h
Filesystem Inodes IUsed IFree IUse% Mounted on
rootfs 185088 156222 28866 85% /
Както се вижда свободни са 85% от наличното място.
В крайна сметка df -i изяснява проблема:
$ df -i
Filesystem Inodes IUsed IFree IUse% Mounted on
rootfs 185088 185088 185088 100% /
Както се вижда Inodes са свършили.
След кратко Googleне намерих и проблема: оказа се, че идва от бъг във файловата система, който не премахва изтрите файлове, а ги запазва, но с различно име, започващо с .wh
Решението на проблема е да се изтрият тези вече излишни файлове. Това става по следният начин:
$ sudo bash
$ mkdir -pv /mnt/sda2
$ mount /dev/sda2 /mnt/sda2
$ find /mnt/sda2 -iname ‘.wh*’ -delete
$ umount /dev/sda2
При мен това освободи 91% от използваните Inodes, което е красноречиво.
P.S. В конзола се влиза с alt+ctr+t
Много странна форма за бекъп на данни 🙂 Няма ли стандартно кошче?
Да странно кошче:)
По някаква причина UnionFS не може или решава, че не може да изтрие дадения файл, за това го преименува и би трябвало да го изтрие по-късно когато и е възможно, но това не става никога.
До такъв статус стигат файловете, който вече са изтрити и от кошчето.
В крайна сметка ефекта е, че файлове не се трият – всичко се пази:) Представи си какво става ако редовно браузваш – всички кешове се пазят и задръстват набързо SSD-то:)
Наистина е необичайно – капацитетът на харда все пак не е мултитерабайтов, че да може да си позволи такива архиви 🙂 Шанс.