백업 현황·휴면 사이트 점검 개발 스펙 - #12
Draft
eondcom wants to merge 1 commit into
Draft
Conversation
디스크 감시와 같은 문제 구조다 — 조용히 실패하고, 안 보면 모른다. 7-A 백업 현황 HestiaCP 자동 백업은 cron 으로 돌고 세대 수만큼 자동 정리되지만, 특정 계정만 조용히 빠져도 아무도 모른다. 계정별 세대 수·경과일과 '백업이 아예 없는 계정' 목록을 낸다. 전체가 도는 것처럼 보여도 일부가 빠진 경우를 잡는 게 핵심이다. 7-B 휴면 사이트 접근 로그 90일 없음 + 파일 180일 변경 없음 → 신호 2개일 때만 후보로 올린다. 캐시·로그·업로드는 자동 갱신되므로 파일 검사에서 제외한다. 핵심 판단 — 오판 방향을 한쪽으로 고정한다 살아있는 사이트를 '휴면' 이라고 하면 안 되고, 놓치는 건 괜찮다. 계절성·내부용· 봇만 오는 사이트가 섞이기 때문이다. 그래서 신호 1개로는 올리지 않고, 로그 로테이션으로 mtime 이 최근이 되면 '살아있다' 쪽으로 판정되게 뒀다. 문구도 '정리 후보' 가 아니라 '확인 권장' 이고, 삭제 기능(PR #8)으로 가는 동선을 만들지 말라고 명시했다. 한 번 더 사람이 판단해야 한다. 검증 — 가짜 환경(계정 3개·사이트 4개)으로 실제 실행 백업 3세대/1세대40일전/없음 계정을 각각 정확히 분류 활성 · 200일방치 · 로그없고파일오래됨 · 로그없지만파일최신 4가지 중 마지막(신호 1개)이 후보에서 제외되는 것까지 확인 검증 중 결함 2건을 잡아 고쳤다 1) -newermt "-180 days" 는 이식성이 없다(bfs 등이 상대시간을 거부). POSIX -mtime 으로 교체. 2) -not -path '*/tmp/*' 가 상위 경로까지 걸러 살아있는 사이트를 휴면으로 오판했다. 제외 경로를 "$WR" 기준 절대경로로 고정. 둘 다 되돌리지 말라고 함정에 적었다. 용량은 이미 scan_cache 에 있으므로 서버에서 다시 재지 않고 UI 에서 조인한다. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01WxEiSzFMdeAzvohAQ39nyJ
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
백업이 실제로 돌고 있는지, 오래 방치된 사이트가 있는지 점검하는 기능. 문서만, 코드 없음.
📄
.claude/plans/2026-07-31-upkeep-SPEC.md디스크 감시와 같은 문제 구조입니다 — 조용히 실패하고, 안 보면 모릅니다.
7-A 백업 현황
HestiaCP 자동 백업은 cron 으로 돌고 세대 수만큼 자동 정리되지만, 특정 계정만 조용히 빠져도 아무도 모릅니다. 정작 필요할 때 없으면 끝입니다.
7-B 휴면 사이트
신호 2개 이상일 때만 후보로 올립니다. 캐시·로그·업로드는 자동 갱신되므로 파일 검사에서 제외합니다.
핵심 판단 — 오판 방향을 한쪽으로 고정
살아있는 사이트를 "휴면"이라고 하면 안 되고, 놓치는 건 괜찮습니다. 계절성 사이트(연 1회 행사)·내부용·봇만 오는 사이트가 섞이기 때문입니다. 그래서:
정리 후보가 아니라확인 권장검증
가짜 환경(계정 3개·사이트 4개)을 만들어 실제로 실행했습니다.
검증 중 잡은 결함 2건
-newermt "-180 days"는 이식성이 없음 — 일부find구현(bfs 등)이 상대시간 표기를 거부합니다. POSIX-mtime으로 교체했습니다.-not -path '*/tmp/*'가 상위 경로까지 걸러냄 — 웹루트 위에tmp가 있으면 모든 파일이 제외되어 살아있는 사이트가 휴면으로 오판됐습니다. 제외 경로를"$WR"기준 절대경로로 고정했습니다.둘 다 "되돌리지 말 것"으로 함정에 적었습니다.
용량은 이미
scan_cache에 있으므로 서버에서 다시 재지 않고 UI 에서 조인합니다. SSH 는 1회입니다.🤖 Generated with Claude Code
https://claude.ai/code/session_01WxEiSzFMdeAzvohAQ39nyJ