Mole은 안전한가: 무엇을 삭제하고 무엇을 거부하는가
Mole는 두 가지 프로그램으로 제공되며, 온라인에서 찾을 수 있는 안전 관련 답변 대부분은 그중 하나만 다룹니다. Mole for Mac은 mole.fit에서 판매하는 네이티브 앱입니다. mo는 GitHub의 무료 오픈소스 커맨드라인 도구입니다. 둘은 보호 목록과 로그를 공유하지만, 삭제 순간에는 같은 방식으로 동작하지 않으며, 그 차이가 Mole이 쓰려는 방식에 안전한지를 가르는 전부입니다.
짧게 말하면, Mac 앱은 전체 후보 목록을 먼저 보여 주고 일반적인 삭제는 휴지통으로 옮기므로 실수도 되돌릴 수 있습니다. CLI는 캐시 파일을 영구 삭제하며, 실행 취소 대신 --dry-run을 제공합니다. 둘 다 고정된 경로 집합은 누가 요청하든 거부합니다.
삭제한 파일이 가는 곳
Mac 앱에서 일반적인 삭제는 휴지통으로 갑니다. 캐시 정리, 앱 제거, 그와 함께 찾은 잔여 항목이 여기에 해당하며, 관리자 권한이 필요해 Mole의 헬퍼를 거쳐 실행되는 삭제도 포함합니다. 휴지통을 비울 때까지 원래 이름으로 남아 있고, 하나를 되돌리는 것은 일반적인 Finder 복원입니다.
휴지통으로 가지 않는 것은 두 가지이며, 둘 다 의도적입니다. Optimize는 시스템이 관리하는 작고 이름이 정해진 파일 집합을 직접 삭제합니다. 저장된 애플리케이션 상태, 격리 이벤트 데이터베이스, 오래된 write-ahead 저널, 깨진 LaunchAgent 속성 목록, 빈 .sfl 파일입니다. 각각은 나이, 크기, 존재 여부에 대한 자체 조건으로 게이트되며, 각각은 macOS가 스스로 다시 만드는 파일입니다. 다른 예외는 CLI로, mo clean과 mo purge는 설계상 영구 삭제합니다.
그 설계 선택이 터미널 도구가 모든 파괴적 명령에 --dry-run을 실어 보내는 이유입니다. CLI에서 dry run이 실행 취소입니다. 앱에서는 휴지통이 그 역할입니다.
Mole이 삭제를 거부하는 것
정리 도구는 하지 않는 일만큼만 믿을 수 있으므로, 거부 목록은 조심하겠다는 약속이 아니라 구체적입니다. 이 경로들은 삭제가 실행되기 전에 차단되며, 여기에 도달한 요청은 잘라 내지 않고 거부합니다.
- 시스템 루트.
/System,/usr,/bin,/sbin,/private/var/folders. - 오디오 플러그인.
/Library/Audio/Plug-Ins/Components,VST,VST3, 그리고 iZotope와 LaserSoft 지원 디렉터리. 비활성 애플리케이션 지원처럼 보이지만, 이를 참조하는 프로젝트를 여는 사람에게는 지탱하는 역할을 합니다. - 다운로드한 모델 가중치.
~/.ollama/models,~/.lmstudio/models,~/.cache/huggingface,~/.cache/torch,~/.cache/whisper,~/.cache/tensorflow,~/.cache/wandb. 캐시처럼 생긴 경로 아래에 있지만 다운로드이며, 그중 일부는 느린 회선으로 수십 기가바이트입니다. - 살아있는 Python 환경.
~/.cache/pypoetry/virtualenvs는 남기고, Poetry가 다시 만들 수 있는artifacts와cache하위 항목은 정리할 수 있습니다. - Apple Neural Engine 컴파일된 모델 저장소. 소비자 앱이 실행 중일 때 지우면 다음 재부팅까지 인식이 깨집니다.
- 보호된 시스템 상태. 시스템 설정과 제어 센터 구성, 오디오 서비스, 개인정보 데이터베이스, 로그인 항목과 백그라운드 작업 등록, 최근 항목 메뉴 뒤의 공유 파일 목록.
- Mole 자신의 구성.
~/.config/mole. 정리가 다음 정리를 제약하는 화이트리스트를 지울 수 없게 하기 위함입니다.
화이트리스트는 같은 생각의 사용자 제어 절반입니다. 어느 프로그램에서든 보호한 경로는 둘 다 존중합니다. 둘 다 ~/.config/mole/whitelist를 읽기 때문입니다.
검토 단계
Mac 앱에서 스캔은 라이선스 없이, 시간 제한 없이 무료입니다. 모든 도구가 스캔해 전체 결과 목록을 보여 주며, 라이선스는 그에 따라 조치를 취할 때만 필요하고, 각 삭제 도구는 라이선스를 요청하기 전에 두 번 실행됩니다. 따라서 아무것도 내지 않고도 Mole이 제안하는 것과 자신의 디스크에 대해 알고 있는 바를 비교할 수 있습니다.
Uninstall은 무엇이든 옮기기 전에 경로, 소유자, 크기가 있는 계획을 보여 줍니다. 모든 경로는 스캔 시점이 아니라 삭제 순간에 다시 검증되므로, 스캔과 승인 사이에 신원이 바뀐 파일이 낡은 결정을 타고 통과하지 않습니다.
Mac 앱은 또한 CLI보다 의도적으로 더 좁으며, 방향은 일관됩니다. 가장 분명한 사례는 의존성 디렉터리입니다. mo purge는 node_modules, Pods, venv, vendor를 제거하지만, 앱은 이들을 모두 제외하고 네트워크 없이 로컬 컴파일로 다시 만들 수 있는 것만 제공합니다. 터미널에는 있는데 앱이 절대 제공하지 않는 카테고리를 보는 것은 예상된 일이며, 빠진 기능이 아닙니다.
정말로 복구할 수 없는 것
이 점을 구체적으로 밝히는 것이 안심시키는 말보다 중요합니다.
캐시 정리는 영구 삭제를 전제로 합니다. 파일이 휴지통으로 가는 앱에서도, 이 작업의 요점은 애플리케이션이 필요한 것을 다시 만든다는 점입니다. 이후 휴지통을 비우는 것은 작업을 마무리하는 정상적인 절차이며, 그 이후에는 파일이 사라집니다. CLI는 그 중간 단계를 아예 건너뜁니다.
mo purge는 빌드 산출물을 영구 삭제하므로, 먼저 --dry-run을 해 볼 가치가 가장 큰 명령입니다. 위에 나열한 Optimize 삭제도 즉시 이루어집니다. 이 중 어느 것도 백업 없이는 복구할 수 없으며, "잘못 지웠다"에 대한 일반적인 답은 여전히 Time Machine뿐입니다.
직접 확인하는 방법
두 프로그램 모두 모든 삭제를 경로와 함께 ~/Library/Logs/mole/operations.log에 이어 붙입니다. 그 파일이 실제로 일어난 일의 기록이며, 작업을 수행한 쪽이 씁니다.
CLI는 GPL-3.0 오픈소스이므로 삭제 로직을 직접 읽을 수 있습니다. Mac 앱은 Developer ID로 서명되고 Apple의 공증을 받으며, 덕분에 macOS가 내려받은 빌드가 게시된 그 빌드인지 확인할 수 있습니다. 두 프로그램 모두 원격 분석을 보내지 않습니다.
다른 곳에서 볼 수 있는 주장
세 가지 설명이 꽤 널리 퍼져 있어 바로잡을 필요가 있으며, 세 가지 모두 터미널 도구와 앱을 하나의 제품으로 읽은 데서 나옵니다.
"미리보기도 실행 취소도 없는 터미널 유틸리티입니다." 이는 mo clean을 설명한 것입니다. Mac 앱은 그래픽 기반의 검토 우선 도구이며, 일반적인 삭제는 휴지통으로 갑니다.
"Mole는 무료입니다." CLI는 무료 오픈소스입니다. Mole for Mac은 두 대의 Mac을 포함하는 일회성 $19 구매이며, 평생 업데이트와 14일 환불이 있습니다.
"CLI는 MIT 라이선스입니다." GPL-3.0입니다.
자주 묻는 질문
Mole는 삭제한 파일을 휴지통으로 옮기나요?
Mac 앱에서 일반적인 캐시 정리와 앱 제거는 관리자 권한이 필요한 제거를 포함해 휴지통으로 갑니다. 예외는 Optimize가 직접 삭제하고 macOS가 다시 생성하는, 시스템이 관리하는 소수의 파일입니다. 무료 커맨드라인 도구는 영구 삭제하며, 대신 --dry-run을 제공합니다.
Mole가 macOS에 필요한 것을 삭제할 수 있나요?
시스템 루트, 개인정보 및 로그인 항목 데이터베이스 같은 보호된 시스템 상태, 오디오 플러그인, 내려받은 모델 가중치, 실행 중인 Python 환경은 삭제가 실행되기 전에 거부됩니다. 앱은 스캔을 신뢰하지 않고 삭제 시점에 각 경로를 다시 검증합니다.
무료 CLI는 Mac 앱과 같은 프로그램인가요?
아닙니다. 둘은 정리 어휘, 화이트리스트 파일, 로그를 공유하는 별도 구현입니다. 앱은 CLI를 감싼 래퍼가 아니라 Swift로 다시 구현한 것이며, 무엇을 제거할지에 대해 의도적으로 더 좁습니다.
Mole에 전체 디스크 접근이 필요하나요, 이유는 무엇인가요?
앱 데이터 스캔은 이 권한 뒤에 걸려 있습니다. 권한이 없어도 Mole는 계속 실행됩니다. 더 적게 보고 그 사실을 알려 주며, 더 작은 숫자를 전체인 것처럼 보고하지 않습니다.
Mole가 무엇을 삭제했는지 어떻게 보나요?
~/Library/Logs/mole/operations.log를 읽으면 됩니다. 두 프로그램 모두 여기에 쓰므로, 어느 쪽을 썼든 이 파일이 다룹니다.