(Я использую файловую систему UFS на сервере Solaris. У меня есть права суперпользователя на машине, но не на машине, содержащей рассматриваемый диск.)
Я получаю сообщение об ошибке «Превышена квота диска», когда пытаюсь что-либо сделать (записать в файл, удалить файл и т. Д.). Система плохо управляется, и многие старые файлы резервных копий просто болтаются; Я могу их очистить, но у меня проблемы даже с созданием некоторой передышки.
И мое дисковое пространство, и счетчик inode заполнены:
#> df -hk
Filesystem 1K-blocks Used Available Use% Mounted on
server.com:/storage 52231997 52231997 0 100% /opt/files
#> df -i
Filesystem INodes IUsed IFree IUse% Mounted on
server.com:/storage 169224 169224 0 100% /opt/files
Все найденные мною решения включают в себя написание /dev/null
или ""
в файл, чтобы обнулить его размер, а затем удалить файл. Однако ни одно из этих решений не работает:
#> ls -l September22014.tgz
-rw-r--r-- 1 userA groupA 283443184 Sep 2 2014 September22014.tgz
#> cp /dev/null September22014.tgz
cp: cannot create regular file `September22014.tgz': Disc quota exceeded
#> echo "" > September22014.tgz
bash: September22014.tgz: Disc quota exceeded
#> > September22014.tgz
bash: September22014.tgz: Disc quota exceeded
Во-первых, вы не отметили используемую версию Solaris или то, что такое сервер / устройство NFS (если известно).
Вместо того, чтобы пытаться обнулить файл, вы бы захотели его удалить.
Для справки в будущем: с UFS у вас могут закончиться inodes, несмотря на то, что осталось «свободное» место. Единственный способ решить эту проблему - это переопределить newfs с опциями для большего количества inodes или использовать FS без этого ограничения. то есть: ZFS в новых версиях Solaris.