6장. iCloud가 내 서비스를 죽였다

— 파일이 사라지는 사건과 "어디에 두느냐"의 교훈

byukkukk


어떤 고장은 내가 만든 코드 때문이 아니다. 내 파일이 놓인 자리 때문이다. 이건 비전공자가 절대 예상 못 하는 종류의 사고이고, 그래서 한 장을 따로 뗐다.



멀쩡하던 게 갑자기 죽기 시작했다


한동안 내 자동화 서비스들이 이유 없이 죽었다. 잘 돌던 게 어느 순간 멈추고, 다시 켜면 또 멈췄다. 코드는 바꾼 게 없었다. 그런데 계속 죽었다. 비전공자에게 이런 상황은 공포다. 뭘 고쳐야 할지 감도 안 오니까. 코드에 빨간 줄이라도 뜨면 그거라도 붙잡을 텐데, 코드는 멀쩡한데 죽는다.

한참을 헤맨 끝에 원인이 나왔다. 범인은 내 코드가 아니라 파일이 놓인 폴더였다.



무슨 일이 있었나 (비유로)


나는 프로젝트 파일들을 바탕화면(과 문서 폴더) 아래에 두고 있었다. 그런데 그 폴더는 iCloud가 자동으로 동기화하는 자리였다. iCloud는 "이 파일 잘 안 쓰네?" 싶으면 실제 파일을 클라우드로 올려버리고, 내 컴퓨터엔 바로가기 같은 껍데기만 남긴다. 저장 공간을 아껴주는 친절한 기능이다.


문제는, 내 자동화 서비스가 그 파일을 실행하려고 열었을 때 벌어졌다. 실제 알맹이는 클라우드에 있고 자리엔 껍데기만 있으니, 프로그램은 "여기 있어야 할 게 없다"며 멈춰버린 것이다. 마치 매일 출근하던 사무실에 갔더니, 건물은 그대로인데 안이 텅 비어 있고 "짐은 창고로 옮겼습니다" 쪽지만 붙어 있는 상황이다. 일을 할 수가 없다.


친절한 기능(공간 절약)이 내 시스템에겐 사형선고였던 것이다. 그리고 이건 코드를 아무리 들여다봐도 안 보인다. 코드는 죄가 없으니까.



해결: 옮겼다


해결바카라은 허무할 만큼 단순했다. 프로젝트 폴더를 iCloud가 손대지 않는 자리로 통째로 옮겼다. 클라우드 동기화가 걸린 바탕화면·문서 폴더를 벗어나, 순수하게 내 컴퓨터 안에만 사는 폴더로. 그랬더니 그 뒤로 이유 없는 죽음이 사라졌다.

교훈은 이거다. 무엇을 만드느냐만큼, 어디에 두느냐가 중요하다. 비전공자는 보통 파일이 어느 폴더에 있든 똑같다고 생각한다. 아니다. 어떤 폴더는 클라우드가 감시하고, 어떤 폴더는 백신이 감시하고, 어떤 폴더는 시스템이 함부로 건드린다. 자동으로 돌아야 하는 것들은, 아무도 몰래 손대지 않는 조용한 자리에 둬야 한다.



왜 이런 걸 미리 몰랐나


몰랐던 게 당연하다. 이건 코딩 지식이 아니라 운영 지식이다. 코드를 짤 줄 아는 사람도 이런 데서 넘어진다. AI에게 "앱 만들어줘"라고 하면 앱은 만들어주지만, "그 앱을 iCloud 폴더에 두면 나중에 죽는다"까지 알아서 경고해주진 않는다 — 내가 어디에 둘지 안 물어봤으니까.


그래서 나는 이 사건 이후로 습관이 하나 생겼다. 새 프로젝트를 시작할 때, "이거 어디에 둘까?"를 AI에게 먼저 물어본다. 그리고 이미 겪은 함정(클라우드 동기화 폴더는 피하기)을 아예 규칙으로 적어뒀다. 같은 함정에 두 번 빠지는 게 세상에서 제일 아깝다.



AI 활용 노트 — "어디에 두느냐"의 원칙


1. 자동으로 돌아야 하는 건 클라우드 동기화 폴더에 두지 마라.


바탕화면, 문서 폴더처럼 클라우드(iCloud·OneDrive·Dropbox 등)가 자동 동기화하는 자리는, 서비스·자동화의 집으로 부적합하다. 클라우드가 파일을 "치워버릴" 수 있기 때문이다. 순수하게 내 기기 안에만 사는 폴더에 둬라.


2. 새 프로젝트 시작 전에 AI에게 물어라.


이 프로젝트 파일을 어디에 두는 게 좋을까? 나는 [운영체제]를 쓰고, 이 프로그램은 [수동 실행 / 자동으로 항상 돌아야 함]이야. 클라우드 동기화나 백신 때문에 나중에 문제가 생길 만한 위치는 피하고 싶어.


3. 백업은 "다른 자리"에 둬라 (원본과 같은 위험에 두지 마라).


백업을 원본 바로 옆에 두면, 그 폴더째로 사고 나면 백업도 같이 죽는다. 백업은 물리적으로 다른 위치 — 외장 디스크나 별도 폴더 — 에 두는 걸 원칙으로 하라. (나는 백업 전용 외장 저장소를 따로 둔다.)


4. "이유 없이 죽으면 자리를 의심하라."


코드를 안 바꿨는데 서비스가 죽기 시작하면, 코드부터 뒤지지 말고 환경을 의심하라. 파일 위치, 클라우드 동기화, 백신, 권한, 저장 공간 부족 — 코드 밖의 원인이 의외로 많다. AI에게 "코드는 안 바꿨는데 죽어. 환경 쪽 원인일 가능성을 점검해줘"라고 방향을 잡아주면 훨씬 빨리 찾는다.



이 장의 한 줄

코드는 멀쩡한데 죽는다면, 범인은 대개 파일이 놓인 자리다. 무엇을 만드느냐만큼 어디에 두느냐가 시스템의 생사를 가른다.
수, 일 연재
이전 06화5장. 일주일째 죽어 있었다