CT075
(Cameron Wong)
4월 2, 2024, 4:05오전
1
오래된 포럼(약 10년, 20만 개의 게시물)을 운영하고 있는데, 만성적인 디스크 문제를 겪고 있습니다. 당장 서비스가 중단될 위험은 없지만, 디스크 공간 부족으로 인해 백업이 실패한다는 통보를 매일 받고 있는 상황입니다. (백업 프로세스 자체는 약 10GB의 디스크 공간을 차지하며, 서버에 이미 백업 파일이 존재하는 경우 실패합니다.)
이 문제를 조금이라도 완화할 수 있는 방법이 있을까요?
시간이 지남에 따라 디스크 공간은 반드시 해결해야 할 문제임을 잘 알고 있으며, 궁극적으로 업그레이드할 계획도 있습니다. 하지만 압축을 통해 시간을 벌거나, 제가 아직 확인하지 못한 파일들을 정리하는 등 다른 방법이 있는지 궁금합니다.
이미 ./launcher cleanup 명령을 실행해 보았지만(0B 절약), DB 통계 스냅샷을 첨부합니다.
db_stats.txt (17.7 KB)
Ed_S
(Ed S)
4월 2, 2024, 12:11오후
2
측정부터 시작하는 것이 좋습니다:
du -kx / | sort -n | tail -499
아래 명령도 실행해 보는 것이 좋습니다.
df
그리고 아마도
find / -xdev -ls|sort -n -k 2|tail -199
이 명령은 몇 분 정도 걸릴 수 있습니다.
하나 이상의 스왑파일을 볼 수 있으므로, 사용 중인지 확인해 보는 것이 좋습니다.
swapon
CT075
(Cameron Wong)
4월 3, 2024, 5:53오후
3
du 명령어를 실행해 보았지만, 특이한 점은 보이지 않습니다(대부분의 데이터는 /var/docker와 /var/lib에 있으며, 이는 예상한 범위입니다). 해당 폴더에서 확인해 볼 만한 조언이 있으신가요?
스왑 공간도 정상적으로 보입니다(실제로는 체감할 만한 크기가 아닙니다).
CT075
(Cameron Wong)
4월 3, 2024, 8:59오후
5
물론이죠, 제 실수였네요.
du -cha --max-depth=2 /var | grep -E "M|G"의 출력 결과는 다음과 같습니다.
2.1M /var/backups
12K /var/discourse/README.md
2.2M /var/discourse/.git
2.7M /var/discourse
54M /var/lib/mlocate
36M /var/lib/dpkg
190M /var/lib/apt
18G /var/lib/docker
18G /var/lib
3.4M /var/log/btmp
1.2M /var/log/auth.log.3.gz
4.1G /var/log/journal
1.2M /var/log/auth.log.2.gz
42M /var/log/btmp.1
1.6M /var/log/auth.log.4.gz
7.9M /var/log/auth.log.1
6.5M /var/log/auth.log
4.1G /var/log
1.2M /var/cache/man
312M /var/cache/apt
2.8M /var/cache/snapd
4.9M /var/cache/debconf
320M /var/cache
46G /var/docker/shared
46G /var/docker
68G /var
68G total
/var/docker/shared와 /var/lib/docker을 더 자세히 살펴보면:
15G /var/docker/shared/standalone/postgres_data
6.8G /var/docker/shared/standalone/backups
14G /var/docker/shared/standalone/uploads
43M /var/docker/shared/standalone/redis_data
69M /var/docker/shared/standalone/log
12G /var/docker/shared/standalone/postgres_data_old
14M /var/docker/shared/standalone/letsencrypt
46G /var/docker/shared/standalone
46G /var/docker/shared
46G total
17M /var/lib/docker/image/overlay2
17M /var/lib/docker/image
14G /var/lib/docker/overlay2/ed229eed209ffa6339adc9de9033c12487732c74572a3dc608eb32d720d1837c
1.2G /var/lib/docker/overlay2/7448f4eb6c5a9e09b0a5537aa454c30221ab95314418eac9078c7c774de784e2
2.4G /var/lib/docker/overlay2/8a7ca976e2c8b362302c2abb95d306520206bf3e6125672b160b19e150d1f914
88M /var/lib/docker/overlay2/c6cd5a3006efb2457f3bba70450a85c42f53bfc7cdc3416fb6cfb5990e2eed72
1.1G /var/lib/docker/overlay2/9f8a463bdc03f518d6f25a7c11873122bf858a266fd6ca40ea19dfb4a78e1f8d
18G /var/lib/docker/overlay2
18G /var/lib/docker
18G total
대충 보았을 때, postgres_data_old가 의심스럽습니다. 이 부분을 안전하게 정리해도 될까요?
Ed_S
(Ed S)
4월 3, 2024, 9:05오후
6
네, postgres_data_old를 삭제해도 괜찮습니다.
붙여넣으신 출력을 읽기 어렵습니다. 제가 특정 형태의 명령을 제안한 이유는 제가 그들을 유용하게 사용해 왔기 때문입니다.