
Centos 및 cPanel 서버를 사용하고 있지만 INODES 사용에 중요한 문제가 있습니다.
6백만 개의 inode를 사용하는 / 디렉토리에 대해 표시되는 "df -i" 명령!.
/디렉토리의 파일 수를 확인하면 수천 개의 파일이 있습니다.
df -i
Filesystem Inodes IUsed IFree IUse% Mounted on
/dev/sda4 6578176 6567525 10651 100% /
tmpfs 8238094 1 8238093 1% /dev/shm
/dev/sdi1 61054976 169 61054807 1% /backup
/dev/sda1 51296 38 51258 1% /boot
/dev/sda2 0 0 0 - /boot/efi
/dev/sdc1 7290880 1252 7289628 1% /database
/dev/sdb2 4096000 53258 4042742 2% /home
/dev/sdd1 7290880 3500 7287380 1% /home2
/dev/sde1 7290880 68909 7221971 1% /home3
/dev/sdg1 7290880 68812 7222068 1% /home5
/dev/sdh1 7290880 695076 6595804 10% /home6
/dev/sdf1 7290880 58658 7232222 1% /tmp
df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda4 99G 30G 65G 32% /
tmpfs 32G 0 32G 0% /dev/shm
/dev/sdi1 917G 270G 601G 32% /backup
/dev/sda1 788M 80M 669M 11% /boot
/dev/sda2 400M 296K 400M 1% /boot/efi
/dev/sdc1 110G 1.5G 103G 2% /database
/dev/sdb2 62G 1.1G 58G 2% /home
/dev/sdd1 110G 79G 26G 76% /home2
/dev/sde1 110G 3.9G 101G 4% /home3
/dev/sdg1 110G 51G 54G 49% /home5
/dev/sdh1 110G 64G 41G 62% /home6
/dev/sdf1 110G 611M 104G 1% /tmp
INODES 사용법
160 - backup
102 - bin
36 - boot
1243 - database
1197 - dev
1733 - etc
53862 - home
3529 - home2
68986 - home3
1 - home4
68814 - home5
695229 - home6
10738 - lib
359 - lib64
1 - lost+found
1 - media
1 - mnt
806 - opt
262898 - proc
1780 - root
170 - sbin
1563 - selinux
1 - srv
20034 - sys
56921 - tmp
89539 - usr
8274 - var
SDA 디스크에는 운영 체제와 cPanel만 있습니다. SDA 디스크에는 계정, 데이터베이스, tmp가 없습니다.
SDA가 높은 inode를 사용하는 이유는 무엇입니까?
참고: 모든 디스크는 SSD 120GB입니다.
감사해요.
답변1
a) 아래에 600만 개의 파일/디렉토리/링크가 있습니다 /
. 또는
b) 손상된 파일 시스템.
내 돈은 (b) 켜져 있으므로 시스템을 중단하고 실행하여 fsck
( fsck -y
고통을 최소화할 것입니다) 혼란스러운 부분이 정리되는지 확인하는 것이 좋습니다.
파일 시스템이~ 아니다손상된 다음 일부 파일을 삭제하십시오.
답변2
아마도 /var/tmp에 많은 PHP 세션이 있을 것입니다. php.ini의 설정을 확인하고 세션 자동 시작 기능을 비활성화하십시오. 또한 문제는 여기에서 해결됩니다.https://stackoverflow.com/questions/653096/howto-free-inode-usage
답변3
서버의 메모리 제한으로 인해 이 디렉터리를 지우는 것이 너무 복잡한 경우도 있습니다. 쉘 명령 'find'는 많은 메모리를 사용하며 매우 자주 서버가 이 명령을 자동으로 종료합니다. 내 경우에는 이 디렉토리에 거의 200만 개의 파일이 있었는데 '찾기'가 작동하지 않았습니다. 동일한 문제가 발생하는 경우 가장 좋은 방법은 파일을 하나씩 삭제하는 것이며 가장 좋은 방법은 IMHO 명령을 사용하는 것입니다(원하는 경우 'head'를 제거할 수 있습니다 -)))
- /var/lib/php/sessions로 이동하세요.
- ls -U | 헤드 -100000 | xargs rm
즐기다!
답변4
내 CentOS 서버에서 PHP 세션은 다음 위치에 저장됩니다./var/lib/php/세션. 다음을 사용하여 세션 파일 삭제
rm -f /var/lib/php/sessions/*
디렉토리에 파일이 너무 많아서 작동하지 않습니다. 사용
find session/ -type f|xargs rm