Назад | Перейти на главную страницу

На сервере Centos нет места на диске, но df сообщает, что его много

мой Centos сообщает мне, что у меня не осталось места на диске:

[root@zff isos]# touch test
touch: cannot touch ‘test’: No space left on device

Но df говорит мне, что у меня осталось много места:

[root@zff isos]# df -h
Filesystem               Size  Used Avail Use% Mounted on
/dev/mapper/centos-root  3.6T  1.4T  2.2T  39% /
devtmpfs                  32G     0   32G   0% /dev
tmpfs                     32G     0   32G   0% /dev/shm
tmpfs                     32G   67M   32G   1% /run
tmpfs                     32G     0   32G   0% /sys/fs/cgroup
/dev/sda4                497M  165M  333M  34% /boot
/dev/sda1                496M  9.8M  487M   2% /boot/efi
/dev/mapper/centos-home   75G   33M   75G   1% /home
tmpfs                    6.3G  4.0K  6.3G   1% /run/user/0

У меня тоже не закончились inodes:

[root@zff isos]# df -i
Filesystem                  Inodes IUsed      IFree IUse% Mounted on
/dev/mapper/centos-root 3791101952 82816 3791019136    1% /
devtmpfs                   8209805   563    8209242    1% /dev
tmpfs                      8211404     1    8211403    1% /dev/shm
tmpfs                      8211404  1246    8210158    1% /run
tmpfs                      8211404    13    8211391    1% /sys/fs/cgroup
/dev/sda4                   512000    30     511970    1% /boot
/dev/sda1                        0     0          0     - /boot/efi
/dev/mapper/centos-home   39321600    11   39321589    1% /home
tmpfs                      8211404     3    8211401    1% /run/user/0

Я не знаю в чем проблема. Любая помощь приветствуется!

Вот дополнительная информация:

[root@zff isos]# pvs
  PV         VG     Fmt  Attr PSize PFree
  /dev/sda5  centos lvm2 a--  3.63t    0

[root@zff isos]# vgs
  VG     #PV #LV #SN Attr   VSize VFree
  centos   1   3   0 wz--n- 3.63t    0

[root@zff isos]# lvs
  LV   VG     Attr       LSize   Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
  home centos -wi-ao----  75.00g
  root centos -wi-ao----   3.53t
  swap centos -wi-ao---- <31.45g

[root@zff isos]# sudo find /proc/*/fd -ls 2>/dev/null | grep '(deleted)'
121429799    0 lrwx------   1 root     root           64 Nov  7 15:34 /proc/8762/fd/7 -> /tmp/ffi2lKXH0\ (deleted)
121429814    0 lrwx------   1 root     root           64 Nov  7 15:34 /proc/8939/fd/8 -> /tmp/ffimBw8GN\ (deleted)


[root@zff isos]# fdisk -l
WARNING: fdisk GPT support is currently new, and therefore in an experimental phase. Use at your own discretion.

Disk /dev/sda: 3999.7 GB, 3999688294400 bytes, 7811891200 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: gpt



#         Start          End    Size  Type            Name
 1         2048      1026047    500M  EFI System      EFI System Partition
 2      1026048      1230847    100M  unknown         Basic data partition
 3      1230848      5425151      2G  Microsoft basic Basic data partition
 4      5425152      6449151    500M  Microsoft basic
 5      6449152   7811889151    3.6T  Linux LVM

Disk /dev/mapper/centos-swap: 33.8 GB, 33764147200 bytes, 65945600 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes


Disk /dev/mapper/centos-root: 3882.1 GB, 3882088398848 bytes, 7582203904 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes


Disk /dev/mapper/centos-home: 80.5 GB, 80530636800 bytes, 157286400 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes

[root@zff /]# du -sh
du: cannot access ‘./proc/45722/task/45722/fd/4’: No such file or directory
du: cannot access ‘./proc/45722/task/45722/fdinfo/4’: No such file or directory
du: cannot access ‘./proc/45722/fd/4’: No such file or directory
du: cannot access ‘./proc/45722/fdinfo/4’: No such file or directory
1.4T    .

РЕДАКТИРОВАТЬ

[root@zff /]# df -T
Filesystem              Type      1K-blocks       Used  Available Use% Mounted on
/dev/mapper/centos-root xfs      3791076352 1440862400 2350213952  39% /
devtmpfs                devtmpfs   32839220          0   32839220   0% /dev
tmpfs                   tmpfs      32845616          0   32845616   0% /dev/shm
tmpfs                   tmpfs      32845616      68484   32777132   1% /run
tmpfs                   tmpfs      32845616          0   32845616   0% /sys/fs/cgroup
/dev/sda4               xfs          508588     168456     340132  34% /boot
/dev/sda1               vfat         507904       9980     497924   2% /boot/efi
/dev/mapper/centos-home xfs        78604800      33000   78571800   1% /home
tmpfs                   tmpfs       6569124          4    6569120   1% /run/user/0

Редактировать 2

[root@zff /]# xfs_ncheck /dev/mapper/centos-root
ERROR: The filesystem has valuable metadata changes in a log which needs to
be replayed.  Mount the filesystem to replay the log, and unmount it before
re-running xfs_ncheck.  If you are unable to mount the filesystem, then use
the xfs_repair -L option to destroy the log and attempt a repair.
Note that destroying the log may cause corruption -- please attempt a mount
of the filesystem before doing this.
must run blockget -n first

df знает только об изменениях файловой системы, которые были зафиксированы в ядре. Например, если вы удалили большой объем используемых данных, df не будет отражать это до тех пор, пока процесс, удерживающий эти файлы в открытом состоянии, не будет остановлен и ресурсы не будут освобождены. Это не единственное условие, которое вызывает это, но оно довольно распространено.

df обычно будет отражать реальность после перезагрузки, но это "большой молоток". Вы можете увидеть, что не так, выполнив поиск файлов, которые открываются программами, но которые также удаляются. lsof подходит для этого в следующей форме:

lsof -nP +L1

Возможно, вам также придется учитывать противоположное условие, поскольку вам могут быть выделены данные, которые df не взял трубку. Решение этого условия во многом зависит от того, какую файловую систему и ядро ​​вы используете. Если вы дадите мне знать, что вы делаете, это даст мне некоторое направление в этой части ответа.

Перезагрузка сервера (init 6) решил мою проблему. Спасибо за помощь.