На сервере Linux недостаточно места на диске

961
Adam Price

Когда я запускаю некоторые команды, я получаю сообщения «из космоса». Я искал в Интернете способы диагностики проблемы.

Я побежал df:

adam@nas:/$ df Filesystem 1K-blocks Used Available Use% Mounted on /dev/sdf1 30257960 28769436 0 100% / udev 3982180 4 3982176 1% /dev tmpfs 1609804 632 1609172 1% /run none 5120 0 5120 0% /run/lock none 4024504 0 4024504 0% /run/shm overflow 1024 212 812 21% /tmp tank 177356416 256 177356160 1% /mnt/tank tank/CrashplanBackups 326836352 149480192 177356160 46% /mnt/tank/CrashplanBackups tank/Downloads 178973440 1617280 177356160 1% /mnt/tank/Downloads tank/Media 724196224 546840064 177356160 76% /mnt/tank/Media tank/Photography 258230528 80874368 177356160 32% /mnt/tank/Photography tank/XBMC 177646464 290304 177356160 1% /mnt/tank/XBMC 

/dev/sdf1полный. Это 32 ГБ SD-карта

Я тогда побежал du:

adam@nas:/$ sudo du --max-depth 1 -x -h 0 ./run 8.4M ./sbin 1.9G ./usr 0 ./tmp 0 ./dev 42M ./etc 0 ./sys 4.0K ./lib64 16K ./media 171M ./boot 2.5M ./home 550M ./var 4.0K ./selinux 4.0K ./srv 16K ./lost+found 8.7M ./bin 1.2G ./lib 18K ./mnt 60K ./root 0 ./proc 4.0K ./opt 3.8G . 

Так что есть огромная разница. Я читал об инодах, поэтому я побежал:

adam@nas:/$ df -i Filesystem Inodes IUsed IFree IUse% Mounted on /dev/sdf1 1913840 251600 1662240 14% / udev 995545 562 994983 1% /dev tmpfs 1006126 495 1005631 1% /run none 1006126 4 1006122 1% /run/lock none 1006126 1 1006125 1% /run/shm overflow 1006126 7 1006119 1% /tmp tank 354712597 11 354712586 1% /mnt/tank tank/CrashplanBackups 354712816 230 354712586 1% /mnt/tank/CrashplanBackups tank/Downloads 354712645 59 354712586 1% /mnt/tank/Downloads tank/Media 354714253 1667 354712586 1% /mnt/tank/Media tank/Photography 354804713 92127 354712586 1% /mnt/tank/Photography tank/XBMC 354717700 5114 354712586 1% /mnt/tank/XBMC 

Я также читал о файловых дескрипторах и удаленных файлах.

На бегу

lsof | grep "deleted" 

ничего не возвращается. Перезапуск сервера не освобождает место. Как мне вернуть дисковое пространство? Это на Ubuntu 12.04 и является NAS.

  • Всего 6 дисков.
  • 1x 32 ГБ SD для установки Linux
  • 5x HD, которые используют ZFS и монтируются в / mnt / tank
1
Вы уже запускали `fsck`? Возможно, ваша файловая система сломана. А для идентификации больших файлов / каталогов есть хороший интерактивный инструмент: `ncdu`. scai 10 лет назад 0
ты запускал lsof как root? Lawrence 10 лет назад 0

1 ответ на вопрос

1
psusi

You probably have too many files in /tmp. Because the disk was full at boot, you can see that a tmpfs was mounted in /tmp so you can write something to that location. The du command can't see what is there because this tmpfs is in the way. You can get around this by bind mounting / somewhere so you can look at it without any of the other mount points in the way:

sudo mount --bind / /mnt/foo du -xh --max-depth=1 /mnt/foo 
Спасибо за это, это были не файлы tmp, а другая папка. Не уверен, почему файлы попали в состояние, но я освободил 24 ГБ пространства. Adam Price 10 лет назад 0

Похожие вопросы