fileproviderd CPU 220%+ 폭주 진단·해결 (2026-06-10)
개요
fileproviderd(FileProvider.framework 데몬)가 CPU 220~248%, 누적
60시간(3600분) 점유.
짝꿍
filecoordinationd(root)도 130%대 동반 폭주.
원인 (근본)
데스크탑·문서 폴더 iCloud Drive 동기화가 켜진 상태(~/Desktop이 ~/Library/Mobile Documents/com~apple~CloudDocs/에 심볼릭 연결).
데스크탑에 node_modules 포함 개발 프로젝트 백업이 다수 존재. 특히 ~/Desktop/백업 크라우니(716MB) 안의
crowny-app/node_modules/electron/dist/Electron.app (244MB)
crowny-browser/node_modules/electron/dist/Electron.app (271MB)
crowny-browser-app/node_modules/electron/dist/Electron.app (233MB)
이 대용량 Electron.app들이 CloudKit 업로드 실패(CKErrorDomain:1 — Error executing SQL: "COMMIT TRANSACTION" (13)) →
fileproviderd가
무한 재업로드 재시도 → CPU 폭주.
- 진단 근거:
brctl status com.apple.CloudDocs 의 Client Truth Unclean Items 에 위 3개 파일이 up:needs-upload / sig:<file-pending> / ul-error 로 박혀 있었음.
- 로컬 디스크는 89GB 여유 → 로컬 문제 아님, iCloud(CloudKit) 측 거부.
조치
- churn 유발 개발 폴더를 iCloud 비동기화 영역으로 이동(삭제 아님, 되돌릴 수 있음):
-
~/Desktop/백업 크라우니 (716MB)
-
~/Desktop/crowny-canvas-app (121MB)
-
~/Desktop/CrownyOS_0225 (14MB)
- →
~/DevProjects-local/
killall fileproviderd → launchd 재기동. 248% → 1.1% 로 정상화.
filecoordinationd(root, PID 723)는 독자 stuck → 사용자가 sudo killall filecoordinationd 필요.
진단 명령 (재발 시)
bashps aux | sort -nrk3 | head # CPU 상위
pluginkit -mAvvv -p com.apple.fileprovider-nonui # 등록된 클라우드 확장
brctl status com.apple.CloudDocs | grep -A2 "Under /" # 업로드 못하는 항목 = 주범
find ~/Desktop ~/Documents -name node_modules -type d # iCloud 부적합 데이터
재발 방지 (root cause 개선)
- 개발 프로젝트(node_modules·빌드 산출물·대용량 바이너리)는 절대 iCloud 동기화 데스크탑/문서에 두지 않는다.
- 권장: 시스템 설정 > Apple 계정 > iCloud > iCloud Drive > "데스크탑 및 문서 폴더 폴더" 끄기 (이 머신은 헤비 개발 머신).
- 남은 placeholder 개발 폴더:
~/Desktop/crowny-org-repo, ~/Desktop/crowny-simple (8K dataless, churn 없음, 나중에 정리).
- 활성 크라우니 작업물(
~/Downloads/CrownyTVM, ~/CrownyOS)은 iCloud 비동기화 → 안전.
잔여 이슈
sudo killall filecoordinationd 1회 필요(사용자).
- D&D 동기화 토글 끄기(사용자, GUI).