Возможный дубликат:
Linux разный размер для df и du для корневого раздела
На сервере Ubuntu 12.04 обычные пользователи больше не могут создавать или добавлять файлы в /home
, возникает ошибка "На устройстве не осталось места".
В /home
каталог имеет емкость 1,7 терабайта и, насколько я могу судить, далеко не полон с точки зрения фактических хранимых данных или используемых inodes.
df -h
показывает:
Filesystem Size Used Avail Use% Mounted on
/dev/md2 1.0T 18G 955G 2% /
udev 7.7G 4.0K 7.7G 1% /dev
tmpfs 3.1G 320K 3.1G 1% /run
none 5.0M 0 5.0M 0% /run/lock
none 7.7G 0 7.7G 0% /run/shm
cgroup 7.7G 0 7.7G 0% /sys/fs/cgroup
/dev/md3 1.7T 1.7T 0 100% /home
/dev/md1 496M 45M 426M 10% /boot
/home
действительно выглядит довольно полным.
du -hs /home
предполагает иное:
1.4G /home
Проблема с индексным дескриптором отсутствует - df -i
:
Filesystem Inodes IUsed IFree IUse% Mounted on
/dev/md2 67108864 75334 67033530 1% /
udev 2013497 527 2012970 1% /dev
tmpfs 2015816 440 2015376 1% /run
none 2015816 2 2015814 1% /run/lock
none 2015816 1 2015815 1% /run/shm
cgroup 2015816 9 2015807 1% /sys/fs/cgroup
/dev/md3 113909760 105981 113803779 1% /home
/dev/md1 131072 239 130833 1% /boot
Недавно я удалил много гигабайт кеша приложений и данных журнала из /home
, однако это было в лучшем случае десятки гигабайт и далеко не предел емкости /home
.
Обновление 1:
du -hs --apparent-size /home
1.2G /home
du -hs /home
1.4G /home
Что здесь может происходить?
Убедитесь, что файлы все еще открыты в режиме записи:
lsof | awk '/deleted/ && $4 ~ /[0-9]+w/ { print $0 }'
вы увидите что-то вроде этого:
ossec-mai 1111 ossecm 4w REG 3,3 ... (deleted)
затем найдите процесс, который все еще использует файл:
cd /proc/1111/fd
ls -l 4
Вы можете освободить место, не перезагружая службу, уменьшив размер до нуля:
> /proc/1111/fd/4
Попробуйте.