# Mac에서 conda 환경을 삭제하고 공간 확보하는 방법

> conda 환경과 크기를 나열하고, 이름이나 경로로 환경을 삭제합니다. conda clean으로 패키지 캐시를 지우기 전까지 디스크 사용량이 거의 그대로인 이유도 설명합니다.

Published: 2026-11-04 | Updated: 2026-11-05

데이터 작업을 몇 달 하다 보면 Mac에 아무도 만든 기억이 없는 conda 환경이 쌓입니다. 강의마다 하나, 논문마다 하나, 한 번 써 본 도구용 하나. 각 환경은 자체 Python과 패키지를 갖고 있어서 conda의 패키지 캐시와 합치면 수십 GB가 되기도 합니다. 삭제는 명령 두 개면 되지만 첫 번째 명령 뒤에도 공간이 돌아오지 않는 경우가 많고, 그 이유는 conda가 환경 사이에서 파일을 공유하는 방식에 있습니다.

이 가이드는 가진 환경을 나열하는 방법, 이름이나 경로로 환경을 삭제하는 방법, 삭제 뒤에도 디스크 사용량이 거의 그대로인 이유, 그리고 `conda clean`으로 나머지를 돌려받는 방법을 다룹니다. Anaconda, Miniconda, Miniforge, Mambaforge 모두 해당됩니다. conda 자체를 제거하려면 [Mac에서 Python과 Node 제거하기](https://mole.fit/ko/blog/how-to-uninstall-python-node-mac)를 참고하세요.

## 환경 목록 보기

```
conda env list
```

`conda info --envs`로도 같은 목록이 나옵니다. 활성화된 환경 앞에는 별표가 붙고, 각 줄에는 폴더가 표시되며 보통 `~/miniconda3/envs/<name>` 또는 `~/anaconda3/envs/<name>`입니다. 이름이 없는 줄은 conda 자체가 들어 있는 환경인 `base`이므로 건드리지 마세요.

각각이 얼마나 쓰는지 보려면 다음을 실행합니다.

```
conda info --size
```

conda가 집계한 환경별 디스크 사용량이 나옵니다. 사용 중인 conda 버전에 이 옵션이 없으면 폴더를 직접 측정합니다.

```
du -sh ~/miniconda3/envs/* ~/miniconda3/pkgs
```

설치에 맞게 `miniconda3`를 `anaconda3`, `miniforge3`, `mambaforge`로 바꾸세요.

## 삭제하기 전에 저장하기

다시 필요할지도 모르는 환경은 작은 파일 하나로 보관할 수 있습니다. 활성화한 다음 내보냅니다.

```
conda activate myenv
conda env export --from-history > myenv.yml
```

`--from-history`는 직접 설치를 요청한 패키지만 기록하므로, 이 파일은 다른 Mac이나 더 새로운 conda에서도 다시 만들 수 있습니다. 같은 플랫폼에서 바이트 단위로 똑같이 재현하려면 대신 `conda list --explicit > myenv-spec.txt`를 사용합니다. 두 파일 모두 나중에 `conda create --file myenv.yml`로 환경을 되살립니다(오래된 버전에서는 `conda env create --file myenv.yml`).

## 환경 삭제하기

conda 문서에 따르면 환경을 삭제할 때는 그 환경이 활성화되어 있으면 안 되므로, 먼저 빠져나옵니다.

```
conda deactivate
conda remove --name myenv --all
```

`conda env remove --name myenv`도 같은 일을 합니다. `--dry-run`을 붙이면 아무것도 지우지 않고 무엇이 지워질지만 확인할 수 있습니다.

`--prefix`로 `envs` 바깥, 예를 들어 프로젝트 폴더 안에 만든 환경은 conda가 찾아볼 이름이 없습니다. 그런 환경은 경로로 삭제합니다.

```
conda remove --prefix ~/projects/thesis/.env --all
```

Finder에서 환경 폴더를 휴지통으로 옮겨도 확보되는 파일은 같지만, 명령이 더 깔끔합니다. `conda env list`와 `conda clean`이 읽는 conda 자체의 환경 기록도 함께 갱신되기 때문입니다.

## 공간이 돌아오지 않은 이유

conda는 모든 패키지를 한 번만 설치 폴더의 `pkgs`, 즉 패키지 캐시에 내려받고, 그 파일을 사용하는 각 환경에 하드 링크로 연결합니다. conda 문서도 하드 링크 덕분에 환경이 차지하는 공간이 작다고 설명합니다. 하드 링크는 디스크의 같은 데이터에 붙은 또 하나의 이름이어서, 마지막 이름이 사라질 때까지 데이터는 남습니다.

환경을 삭제하면 그 환경 쪽 이름만 지워집니다. `pkgs`에 있는 원본은 그대로이므로 설치 폴더에 `du`를 해 보면 이전과 거의 같게 보입니다. 캐시에는 내려받은 `.conda`와 `.tar.bz2` 아카이브와 채널 인덱스 파일도 남아 있는데, 패키지가 설치된 뒤에는 어떤 환경도 이것들을 필요로 하지 않습니다.

## conda clean으로 나머지 돌려받기

먼저 미리 봅니다.

```
conda clean --all --dry-run
```

그다음 실행합니다.

```
conda clean --all
```

| 플래그 | 제거하는 것 |
| --- | --- |
| `-i`, `--index-cache` | 내려받은 채널 인덱스 파일. conda가 다시 가져옵니다 |
| `-t`, `--tarballs` | 이미 캐시에 압축이 풀린 패키지 아카이브 |
| `-p`, `--packages` | 어느 환경에서도 링크하지 않는, 압축이 풀린 패키지 |
| `-c`, `--tempfiles` | 남아 있는 임시 파일 |
| `-l`, `--logfiles` | 로그 파일 |
| `-a`, `--all` | 위의 모든 것 |

`-p`를 쓰기 전에 읽어 둘 만한 conda 문서의 경고가 하나 있습니다. 이 옵션은 `conda info --envs`에 나오는 환경만 확인합니다. 모르는 환경, 예를 들어 다른 conda 설치에서 만들었거나 다른 사용자 아래에 등록된 환경은 아직 링크하고 있는 패키지를 잃을 수 있습니다. 일반적인 위치 밖에 환경을 두었다면 먼저 `conda env list`를 실행해서 그 환경들이 보이는지 확인하세요.

`--force-pkgs-dirs`는 쓰지 마세요. 쓰기 가능한 패키지 캐시를 모두 삭제하고, 의도적으로 `--all`에 포함되어 있지 않으며, 그 파일에 의존하는 환경을 망가뜨립니다.

## Mamba와 다른 설치

Mamba도 같은 명령을 받습니다. `mamba env list`, `mamba remove --name myenv --all`, `mamba clean --all`입니다. 몇 년 전의 Anaconda와 지금의 Miniforge처럼 설치가 둘 이상이면 각각 자기 `envs`와 `pkgs`를 가집니다. 각 설치의 `conda`로 정리하거나, 공간이 다른 곳으로 갔다고 단정하기 전에 Finder에서 두 폴더를 모두 확인하세요. 셸에 `CONDA_PKGS_DIRS`와 `CONDA_ENVS_PATH`가 설정되어 있으면 그 폴더들의 위치가 바뀝니다.

## Mole의 역할

[Mole](https://mole.fit/ko/)의 **정리**는 홈 폴더에서 conda 설치(`~/miniconda3`, `~/anaconda3`, `~/miniforge3`, `~/mambaforge`, 그리고 `~/opt` 아래의 두 곳)를 찾고, 실제 `conda-meta`와 `pkgs` 폴더가 있는 설치만 집계합니다. **개발자 도구** 아래에 **Conda Cache** 그룹을 표시하며 두 종류의 행이 있습니다. `pkgs`에서 압축이 풀린 사본이 이미 있고 하루 동안 건드리지 않은 패키지 아카이브, 그리고 `conda clean --index-cache`가 제거하는 것과 같은 `pkgs/cache` 인덱스 폴더입니다. 모든 행에는 **검토**가 표시되고 처음에는 선택이 해제되어 있습니다. Mole은 압축이 풀린 패키지나 환경은 건드리지 않고, `conda`도 실행하지 않으며, 선택한 항목을 휴지통으로 옮깁니다. 환경 자체의 삭제는 계속 `conda remove`의 몫입니다. 다른 개발 캐시는 [Mac에서 개발 캐시 정리하기](https://mole.fit/ko/blog/how-to-clear-dev-caches-mac)에서 Xcode, npm 등을 차례로 다룹니다.

## 자주 묻는 질문

### pkgs 폴더를 직접 삭제해도 안전한가요?

폴더 전체는 안 됩니다. 환경이 그 안의 파일에 하드 링크되어 있고 conda도 기록이 거기에 있다고 가정합니다. 어느 환경도 필요로 하지 않는 것만 제거하는 `conda clean --all`을 사용하세요.

### 환경을 삭제하면 노트북과 데이터도 삭제되나요?

환경 폴더 안의 파일만 사라집니다. 프로젝트 폴더의 노트북, 스크립트, 데이터는 남습니다. 단 `--prefix`로 프로젝트 안에 환경을 만들고 같은 폴더에 데이터를 두었다면 예외입니다.

### base 환경을 삭제할 수 있나요?

아니요. base에는 conda 자체가 들어 있습니다. 전부 없애려면 conda를 제거해야 하며, 방법은 [Python과 Node 제거 가이드](https://mole.fit/ko/blog/how-to-uninstall-python-node-mac)에 있습니다.

### conda clean --all을 하면 다음 설치가 느려지나요?

조금 느려집니다. conda가 인덱스를 다시 내려받고 캐시에 더 이상 없는 패키지를 가져옵니다. 환경은 계속 동작합니다.

---

Canonical HTML page: https://mole.fit/ko/blog/delete-conda-environments-mac
Blog index for agents: https://mole.fit/ko/blog/llms.txt
Site index for agents: https://mole.fit/llms.txt
