Это меня озадачивало в течение некоторого времени. Я на Ubuntu 11.04. Мой корневой раздел заполняется, и я не могу понять, что его вызывает. Даже страннее, когда я запускаю df -h
, это вывод:
Filesystem Size Used Avail Use% Mounted on
/dev/sda2 9.2G 8.8G 0 100% /
Как видите, должно быть около 400 МБ свободного места, но Avail
показывает 0. Что может быть причиной этого? Я даже удалил некоторые программы, чтобы освободить место, и оно снова заполняется. Также приветствуются предложения о том, как определить, какие файлы занимают место, если таковые имеются.
Первый выстрел: высокий трафик в журнале ошибок. Я думаю, если бы вы скачивали видео, вы бы это знали. :)
sudo du -sh /var/log
Для меня это 20M, а кроме лог-каталога есть кеш для установок. Используйте
apt-get clean
Если это ваша проблема.
Конечно, вы должны проверить / home, находится ли он в вашем корневом разделе.
Если вам приходится многократно искать большие файлы, я могу предложить ряд команд, которые могут повторяться и выполняются довольно быстро после первого начального шага:
sudo du -s /var/* | sort -n
0 /var/crash
4 /var/www
44 /var/games
124 /var/run
2306 /var/tmp
18538 /var/log
251876 /var/cache
1053231 /var/lib
sudo du -s /var/lib/* | sort -n
78116 /var/lib/apt-xapian-index
104580 /var/lib/dpkg
680503 /var/lib/postgresql
и так далее. Следуйте по самым большим каталогам, чтобы найти файлы большего размера. Вы не можете использовать -sh здесь, потому что числовая сортировка не работает с k / M / G / T для килобайта и так далее.
При форматировании файловая система ext2 / 3/4 резервирует определенный процент дискового пространства для эксклюзивного использования пользователем root. По умолчанию это 5%. Цель этого состоит в том, что система может продолжать работать и может загружаться, даже если непривилегированные пользователи заполняют все доступное им дисковое пространство.
Как правило, заполнение любой файловой системы сверх 95% ее емкости не является хорошей идеей, поскольку это вызывает чрезмерную фрагментацию, которая приводит к снижению производительности - даже после освобождения дискового пространства. ]
Из man mke2fs
:
-m reserved-blocks-percentage
Specify the percentage of the filesystem blocks
reserved for the super-user. This avoids fragmenta‐
tion, and allows root-owned daemons, such as
syslogd(8), to continue to function correctly after
non-privileged processes are prevented from writing
to the filesystem. The default percentage is 5%.
Если вы абсолютно отчаялись, вы можете использовать tune2fs
, чтобы изменить это значение. См. man tune2fs
для получения дополнительной информации