나는 그것을 알아내고 싶다(1) 내 서버에서 실제로 사용되는 공간은 얼마나 됩니까?그리고(2) 더 많이 사용하면 어떻게 되나요?. 원래 포스팅했는데ServerFault에 대한 이 질문의 버전, 하지만 그들은 나를 여기서 쫓아 냈습니다.
배경: 저는 virtfs(cPanel 덕분에)를 사용하여 서버를 실행하고 있으며 각 사용자가 실제로 업로드/생성하는 데이터 양에 비해 디스크 사용량이 매우 높다는 것을 확인했습니다. 사용 가능한 공간을 거의 모두 사용하고 있다는 경고 이메일을 받았습니다.
출력은 다음과 같습니다 df -h /
.
Filesystem Size Used Avail Use% Mounted on
/dev/simfs 30G 25G 5.9G 81% /
du -h / | grep "[0-9][MG]" | sort -n -r
가장 많은 공간을 사용하는 경로 목록을 생성하기 위해 실행했습니다 . 출력은 다음과 같습니다.
68G /
44G /home
43G /home/virtfs
11G /home/virtfs/john
11G /home/virtfs/paul
11G /home/virtfs/george
11G /home/virtfs/ringo
11G /backup
5.3G /usr
5.3G /home/virtfs/john/usr
5.3G /home/virtfs/paul/usr
5.3G /home/virtfs/george/usr
5.3G /home/virtfs/ringo/usr
5.2G /var
5.2G /home/virtfs/john/var
5.2G /home/virtfs/paul/var
5.2G /home/virtfs/george/var
5.2G /home/virtfs/ringo/var
4.6G /var/lib
4.6G /home/virtfs/john/var/lib
4.6G /home/virtfs/paul/var/lib
4.6G /home/virtfs/george/var/lib
4.6G /home/virtfs/ringo/var/lib
4.3G /home/virtfs/paul/usr/local
4.2G /usr/local
4.2G /home/virtfs/john/usr/local
4.2G /home/virtfs/george/usr/local
4.2G /home/virtfs/ringo/usr/local
3.8G /usr/local/cpanel
3.8G /home/virtfs/john/usr/local/cpanel
3.8G /home/virtfs/paul/usr/local/cpanel
3.8G /home/virtfs/george/usr/local/cpanel
3.8G /home/virtfs/ringo/usr/local/cpanel
3.0G /var/lib/mysql.orig
3.0G /home/virtfs/john/var/lib/mysql.orig
3.0G /home/virtfs/paul/var/lib/mysql.orig
3.0G /home/virtfs/george/var/lib/mysql.orig
3.0G /home/virtfs/ringo/var/lib/mysql.orig
2.6G /backup/weekly
2.2G /backup/cpbackup
2.1G /var/lib/mysql.orig/ringo_demo
2.1G /home/virtfs/john/var/lib/mysql.orig/ringo_demo
2.1G /home/virtfs/paul/var/lib/mysql.orig/ringo_demo
2.1G /home/virtfs/george/var/lib/mysql.orig/ringo_demo
2.1G /home/virtfs/ringo/var/lib/mysql.orig/ringo_demo
1.9G /cpanel_backups
1.7G /backup/monthly
1.6G /var/lib/mysql
1.6G /home/virtfs/john/var/lib/mysql
1.6G /home/virtfs/paul/var/lib/mysql
1.6G /home/virtfs/george/var/lib/mysql
1.6G /home/virtfs/ringo/var/lib/mysql
1.2G /usr/local/cpanel/bin
1.2G /home/virtfs/john/usr/local/cpanel/bin
1.2G /home/virtfs/paul/usr/local/cpanel/bin
1.2G /home/virtfs/george/usr/local/cpanel/bin
1.2G /home/virtfs/ringo/usr/local/cpanel/bin
1.1G /root
(아니요, 내 사용자가 실제로 비틀즈의 이름을 따서 명명된 것은 아닙니다...) 거의 모든 디스크 사용량이 virtfs 중복성 때문인 것 같습니다 /usr/local/cpanel/...
.
내 사용자는 실제로 보고된 만큼 많은 공간을 사용하고 있지 않습니다. 예를 들어, 위에서 보고된 1.6GB 공간 전체를 단독으로 사용하는 것은 없습니다 /var/lib/mysql
. 웹 인터페이스에서 cPanel의 자체 보고서를 살펴보면 이러한 계정의 디스크 사용량이 본질적으로 0에서 237MB를 넘지 않는 범위에 있음을 발견했습니다. 보고된 11GB와는 거리가 멀습니다.
그래서 내 질문은 다음과 같습니다.
- 실제로 얼마나 많은 공간이 사용되는지 확인하는 방법은 무엇입니까?
- 서버에 데이터를 10GB 더 추가하면 어떻게 되나요?
df
30GB 중 35GB를 사용하고 있다고 생각하기 때문에 어떻게든 충돌이 발생할까요 ? 아니면 아직 30GB 미만의 공간을 사용하고 있으므로 모든 것이 잘 작동합니까?
참고: 이 질문은아니요cPanel에 관해서는 virtfs와 사용 가능한 디스크 공간을 결정하는 데 사용할 수 있는 도구에 관한 것입니다.
답변1
VirtFS가 소비하는 공간은 분리된 VirtFS 마운트로 인해 발생할 수 있습니다.
다음 명령을 사용하여 바인드 마운트된 디렉터리를 마운트 해제할 수 있습니다.
for i in `cat /proc/mounts | awk '/virtfs/ {print $2}'`; do umount $i;done
또는 cPanel을 사용하고 있으므로 해당 스크립트를 사용하여 다음을 수행할 수 있습니다.
/scripts/clear_orphaned_virtfs_mounts --clearall
이 후에 시도해 보세요 df -h
.
cPanel의 VirtFS 및 Jailed Shell 구현에 대해 자세히 읽어보는 것은 시간을 할애할 가치가 있습니다.여기.
두 번째 질문은 공간을 더 추가해도 VirtFS에 자동으로 마운트되지 않으므로 괜찮을 것입니다.
답변2
나는 답을 찾았습니다. 사실 저는 서버의 거의 모든 공간을 사용하고 있었는데, 그 이유 중 하나는 디스크에 백업 저장소가 너무 많았기 때문입니다. 이것은 쉽게 해결됩니다.
동일한 문제가 있는 사람을 위해: 사용 중인 디스크 공간이 얼마나 되는지 확인하는 방법은 다음과 같습니다.
첫째, df
이는 파일 시스템에서 사용하는 공간에 대한 정확한 정보를 제공합니다. 내 cPanel 버전(11.50)은 실제로 이 정보를 깨뜨리지 않습니다. 이는 디스크 사용량에 관해 내가 받는 이메일이 정확하다는 것을 의미합니다. 오늘부터 df
다음을 제공합니다.
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/simfs 31457280 27281568 4175712 87% /
none 3145728 4 3145724 1% /dev
내가 이 숫자의 출처를 조사한 방법은 두 가지 명령을 실행하는 것이었습니다.
# get the per-directory usage for /
du --max-depth=1 / 2>> /dev/null
# get the per-directory usage for /home
du --max-depth=1 /home 2>> /dev/null
이러한 명령은 많은 출력을 생성하며 그 중 몇 줄만 관련됩니다.
$ du --max-depth=1 / 2>> /dev/null
...
44294300 /home
...
13223520 /backup
70300192 /
$ du --max-depth=1 /home 2>> /dev/null
227176 /home/george
...
43093568 /home/virtfs
...
44294844 /home
(/home의 크기는 실행될 때 파일 시스템이 변경되었기 때문에 이러한 명령 간에 약간 다릅니다.)
이것은 나에게 다음과 같이 알려줍니다.
- 내 총 사용량은 실제로 27GB입니다.
/home/virtfs
du
시스템 파일의 초과 계산 등으로 인해 실제 존재하는 것보다 42GB 더 많은 것으로 보고됩니다.- 나는많은디스크에 실제로 필요하지 않은 백업이 몇 개 있습니다. 이제 그들을 재배치할 시간입니다.
누군가가 이것이 도움이 되기를 바랍니다. 궁금하신 점은 댓글로 질문해주세요.