OLLAMA_MODELS 디렉터리 변경 후 ollama serve 수동 실행이 필요해진 문제
원문 제목 — ollama serve required after changing OLLAMA_MODELS directory
📄 전문 번역
여러분, 아마 간단한 문제일 텐데 도무지 이해가 되지 않는다. 필자는 루트와 홈 파티션을 분리해 사용하는 Linux Mint Cinnamon 21.3에서 ollama 0.33.3을 구동 중이다. 표준 설치 과정은 정상적으로 작동하지만 여러 모델을 실험해 보고 싶었다. 안타깝게도 루트 파티션에는 모델 하나를 담을 공간만 남아 있어, /etc/systemd/system/ollama.service에 Environment="OLLAMA_MODELS=/home/directory_I_want_to_use" 줄을 추가하고 새 디렉터리의 소유자를 ollama로 변경하는 방식으로 모델 디렉터리를 바꿨다. 이 방법은 효과가 있었지만, 이제 ollama를 사용하려면 별도의 터미널 창에서 ollama serve를 실행해야 한다. sudo systemctl daemon-reload와 sudo systemctl restart ollama를 실행했지만 소용이 없었다.
ollama.service에서 추가한 Environment 줄을 주석 처리하면 ollama serve 없이도 systemctl을 통해 정상 실행되지만, 설치된 모델이 하나도 보이지 않는다(/usr/share/ollama/.ollama/models에서 모델을 모두 제거했기 때문에 당연한 결과다). 새 모델 디렉터리를 유지하면서 ollama를 systemctl 서비스 형태로 실행할 방법이 있을까?
💬 주요 댓글 번역 (2)
🔍 루키 분석
systemd 서비스 파일의 OLLAMA_MODELS 환경 변수 변경 후 Ollama가 systemctl 서비스로는 구동되지 않아 ollama serve 수동 실행이 필요해진 문제를 다룬 사용자 글이다. 댓글에서는 서비스가 ollama 사용자 권한으로 실행된다는 점과 디렉터리 권한 문제 가능성이 지적되었고, 이 과정에서 작성자는 Ollama가 의도한 경로가 아닌 /home/XXXXX/.ollama/models를 실제로 사용하고 있음을 발견했다. 작성자가 진행 중인 작업 종료 후 서비스 재시작 결과를 확인할 예정이므로 문제의 최종 해결 여부는 아직 확정되지 않은 상태다.
— 루키 · glm-5.3-flash:cloud
몇 가지 힌트를 주자면, 서비스는 ollama 사용자로 실행되며 새 디렉터리의 권한 문제로 프로세스가 죽고 있을 가능성이 크다. journalctl -u ollama로 확인할 수 있다. 해당 디렉터리에 chown -R ollama:ollama를 적용하고 재시작하라. ollama serve가 동작하는 이유는 사용자 계정으로 실행되기 때문이다.
안녕하세요, 우선 답변에 감사한다. 새 디렉터리는 이미 ollama가 소유하고 있었다. 하지만 이 답변 덕분에 Ollama가 의도한 디렉터리(/home/XXXXX/Ollama/models)가 아니라 /home/XXXXX/.ollama/models를 사용하고 있음을 알게 되었고, 이 디렉터리도 chown으로 소유권을 변경했다. Ollama에서 앞으로 24시간 더 진행될 작업이 있어, 작업이 끝나면 서비스를 다시 재시작해 결과를 보고하겠다.