Sign In

우분투 용량 정리 & 캐시 정리

1.
아래 내용을 clean.sh로 저장 후
2.
chmod
chmod +x clean.sh
#!/bin/bash set -e echo "🧹 시스템 캐시 정리를 시작합니다..." # Docker 캐시 정리 echo "🐳 Docker 캐시 정리 중..." if command -v docker &> /dev/null; then echo " - 사용하지 않는 컨테이너 제거..." docker container prune -f echo " - 사용하지 않는 이미지 제거..." docker image prune -a -f echo " - 사용하지 않는 볼륨 제거..." docker volume prune -f echo " - 사용하지 않는 네트워크 제거..." docker network prune -f echo " - 빌드 캐시 제거..." docker builder prune -a -f echo " - 전체 시스템 정리..." docker system prune -a -f --volumes else echo " Docker가 설치되어 있지 않습니다." fi # Ubuntu 패키지 캐시 정리 echo "📦 Ubuntu 패키지 캐시 정리 중..." sudo apt clean sudo apt autoremove -y sudo apt autoclean # APT 캐시 정리 echo " - APT 캐시 정리..." sudo rm -rf /var/cache/apt/archives/*.deb sudo rm -rf /var/cache/apt/archives/partial/* # 로그 파일 정리 echo "📋 시스템 로그 정리 중..." sudo journalctl --vacuum-time=7d sudo find /var/log -name "*.log" -type f -mtime +30 -delete 2>/dev/null || true sudo find /var/log -name "*.gz" -type f -mtime +30 -delete 2>/dev/null || true # Snap 캐시 정리 echo "📱 Snap 캐시 정리 중..." if command -v snap &> /dev/null; then sudo snap refresh LANG=en_US.UTF-8 snap list --all | awk '/disabled/{print $1, $3}' | while read snapname revision; do sudo snap remove "$snapname" --revision="$revision" 2>/dev/null || true done else echo " Snap이 설치되어 있지 않습니다." fi # .claude 캐시 정리 echo "🤖 Claude 캐시 정리 중..." if [ -d "$HOME/.claude" ]; then echo " - Claude 캐시 디렉토리 크기: $(du -sh $HOME/.claude 2>/dev/null | cut -f1)" find "$HOME/.claude" -name "cache" -type d -exec rm -rf {} + 2>/dev/null || true find "$HOME/.claude" -name "*.cache" -type f -delete 2>/dev/null || true find "$HOME/.claude" -name "*.tmp" -type f -delete 2>/dev/null || true find "$HOME/.claude" -name "*.log" -type f -mtime +7 -delete 2>/dev/null || true else echo " .claude 디렉토리가 없습니다." fi # .vscode 캐시 정리 echo "💻 VSCode 캐시 정리 중..." if [ -d "$HOME/.vscode" ]; then echo " - VSCode 캐시 디렉토리 크기: $(du -sh $HOME/.vscode 2>/dev/null | cut -f1)" find "$HOME/.vscode" -name "CachedExtensions" -type d -exec rm -rf {} + 2>/dev/null || true find "$HOME/.vscode" -name "logs" -type d -exec rm -rf {} + 2>/dev/null || true find "$HOME/.vscode" -name "*.log" -type f -delete 2>/dev/null || true fi if [ -d "$HOME/.vscode-server" ]; then echo " - VSCode Server 캐시 디렉토리 크기: $(du -sh $HOME/.vscode-server 2>/dev/null | cut -f1)" find "$HOME/.vscode-server" -name "logs" -type d -exec rm -rf {} + 2>/dev/null || true find "$HOME/.vscode-server" -name "*.log" -type f -mtime +7 -delete 2>/dev/null || true fi # npm 캐시 정리 (있는 경우) echo "📦 npm 캐시 정리 중..." if command -v npm &> /dev/null; then npm cache clean --force 2>/dev/null || true else echo " npm이 설치되어 있지 않습니다." fi # pip 캐시 정리 (있는 경우) echo "🐍 pip 캐시 정리 중..." if command -v pip &> /dev/null; then pip cache purge 2>/dev/null || true elif command -v pip3 &> /dev/null; then pip3 cache purge 2>/dev/null || true else echo " pip이 설치되어 있지 않습니다." fi # 임시 파일 정리 echo "🗑️ 임시 파일 정리 중..." sudo rm -rf /tmp/* 2>/dev/null || true sudo rm -rf /var/tmp/* 2>/dev/null || true rm -rf ~/.cache/* 2>/dev/null || true # 썸네일 캐시 정리 echo "🖼️ 썸네일 캐시 정리 중..." rm -rf ~/.thumbnails/* 2>/dev/null || true rm -rf ~/.cache/thumbnails/* 2>/dev/null || true # 브라우저 캐시 정리 (Chrome, Firefox) echo "🌐 브라우저 캐시 정리 중..." # Chrome find "$HOME/.cache/google-chrome" -type f -delete 2>/dev/null || true # Firefox find "$HOME/.cache/mozilla" -type f -delete 2>/dev/null || true echo "✅ 캐시 정리가 완료되었습니다!" echo "" echo "📊 디스크 사용량:" df -h / | tail -1 echo "" echo "🆓 사용 가능한 메모리:" free -h | grep '^Mem:' | awk '{print $7}'