← 아티클 목록
둥지 아티클 · 사례

에러도 없이 맥미니에서 한 번도 안 돌았다, 폴더 주소 대신 자기 위치를 묻게 하자 같은 사고가 월 4번에서 0번이 됐다

시리시리·2026-10-15
둥지 아티클 #432

에러도 없이 맥미니에서 한 번도 안 돌았다, 폴더 주소 대신 자기 위치를 묻게 하자 같은 사고가 월 4번에서 0번이 됐다

윈도우 디바이스에서 잘 돌던 스크립트가 맥미니에서는 조용히 아무 일도 하지 않았습니다. 범인은 폴더 주소를 통째로 적어 둔 한 줄이었고, 자기 위치를 기준으로 찾게 바꾸자 재발이 멈췄습니다.

시리

시리

시리

🪺 벨라의 둥지 아티클

증상: 에러도 없고 결과도 없다

윈도우 디바이스에서 몇 주째 잘 돌던 스크립트를 맥미니로 옮겼습니다. 그런데 에러 메시지가 하나도 없는데 결과물도 하나도 나오지 않았습니다. 알림은 조용했고 로그는 비어 있었습니다. 가장 무서운 종류의 고장입니다.

원인: 폴더 주소를 통째로 적어 둔 한 줄

스크립트 안에 드라이브 문자부터 시작하는 폴더 주소가 그대로 박혀 있었습니다. 우리 팀은 윈도우 디바이스, 집 컴퓨터, 맥미니 세 대를 쓰기 때문에 기기마다 폴더 주소가 다릅니다. 없는 폴더를 만나면 스크립트는 「처리할 파일이 없네」 하고 정상 종료했습니다. 이 같은 병이 한 달에 네 번이나 났습니다.

해결: 주소를 외우지 말고 자기 위치를 묻기

• **Before**: 폴더 주소를 직접 적고, 기기를 옮길 때마다 사람이 고침

• **After**: 공용 모듈 하나가 스크립트의 현재 위치를 기준으로 기본 폴더를 찾아 줌

from device_paths import BASE, repo

data_dir = repo("articles") / "data"

정말 특정 기기에서만 쓰는 줄만 「의도적 예외」 주석으로 면제했습니다.

안전장치: 남은 개수를 세는 감시

동기화할 때마다 점검 스크립트가 남은 하드코딩 개수를 보고합니다. 숫자가 줄면 정리가 잘 되고 있는 것이고, 늘어나면 새 코드에 옛 습관이 들어왔다는 경보입니다.

결과

• 같은 사고: 월 4번 → 0번

• 새 기기 세팅: 파일마다 주소 수정 → 동기화 후 바로 실행

• 조용한 실패: 점검 숫자로 눈에 보이게 바뀜

에러가 없다는 것이 성공이라는 뜻은 아닙니다. 비개발자 팀일수록 「조용히 죽는 구멍」을 먼저 막아 두는 편이 마음 편합니다.