Linux 服务器磁盘空间不足

Linux 服务器磁盘空间不足

当我运行某些命令时,我收到“空间不足”消息。我在网上搜索了诊断问题的方法。

我跑了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已满。这是一张 32GB 的 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 32GB SD 用于 Linux 安装
  • 5x HD 使用 ZFS 并安装在 /mnt/tank 中

答案1

您可能在 中有太多文件/tmp。由于启动时磁盘已满,您可以看到 已tmpfs安装在/tmp因此你可以写入某物到该位置。由于这个位置挡住了路,因此du命令无法查看那里的内容。您可以通过绑定挂载到某个位置来解决这个问题,这样您就可以查看它,而不会受到任何其他挂载点的阻碍:tmpfs/

sudo mount --bind / /mnt/foo
du -xh --max-depth=1 /mnt/foo

相关内容