AIX 시스템에서 파일 시스템 사용률이 90%를 초과할 때 오래된 파일을 자동으로 삭제하는 방법을 구현하려면, 다음 단계를 따를 수 있습니다:
아래는 find 명령어를 사용하여 오래된 파일을 삭제하는 스크립트의 예제입니다.
#!/bin/bash
# 모니터링할 파일 시스템 경로
TARGET_DIR="/path/to/directory"
# 사용률 한계 (90%)
THRESHOLD=90
# 삭제할 파일의 기준일 (30일 이상 오래된 파일)
DAYS_OLD=30
# 파일 시스템 사용률 확인
USAGE=$(df -h "$TARGET_DIR" | awk 'NR==2 {print $5}' | sed 's/%//')
if [ "$USAGE" -ge "$THRESHOLD" ]; then
echo "파일 시스템 사용률이 ${USAGE}%입니다. 오래된 파일을 삭제합니다..."
# 오래된 파일 삭제
find "$TARGET_DIR" -type f -mtime +$DAYS_OLD -exec rm -f {} \;
# 삭제 후 파일 시스템 사용률 출력
NEW_USAGE=$(df -h "$TARGET_DIR" | awk 'NR==2 {print $5}')
echo "파일 시스템 사용률이 ${NEW_USAGE}%로 줄었습니다."
else
echo "파일 시스템 사용률이 ${USAGE}%로 안정적입니다."
fi
스크립트를 저장한 후 실행 권한을 추가합니다.
chmod +x cleanup_old_files.sh
주기적으로 스크립트를 실행하려면 cron을 설정합니다:
crontab -e
예를 들어, 매일 자정에 스크립트를 실행하려면:
0 0 * * * /path/to/cleanup_old_files.sh >> /var/log/cleanup.log 2>&1