---
title: "alpacon update"
description: "Alpacon CLI를 최신 릴리스로 업데이트하거나, 설치하지 않고 새 릴리스가 있는지만 확인합니다. Homebrew나 deb·rpm 패키지로 설치한 경우의 업데이트 방법, 설치 폴더에 필요한 권한, 스크립트에서 분기할 종료 코드를 안내합니다. 설치 방식별 차이도 확인하세요."
---

> Full documentation index: https://docs.alpacax.com/llms.ko.txt

# alpacon update

CLI를 최신 릴리스로 업데이트합니다.

## 사용법

`alpacon update [flags]`

## 핵심 사항

- 직접 설치한 바이너리(Windows 설치 스크립트로 설치한 경우 포함)는 그 자리에서 교체
- 새 릴리스가 있어도 Homebrew, deb·rpm 패키지, mise, asdf로 설치한 바이너리는 건드리지 않음. 해당 도구로 업데이트하는 방법을 출력하고 종료 코드 `1`로 종료
- `--check`는 아무것도 설치하지 않으며, 새 릴리스가 있으면 종료 코드 `8`로 종료
- 릴리스 후보처럼 최신 릴리스보다 새 빌드는 이전 버전으로 되돌리지 않음

## 플래그

| 플래그 | 유형 | 설명 | 기본값 |
| --- | --- | --- | --- |
| `--check` | `bool` | 설치하지 않고 새 릴리스가 있는지만 확인 | `false` |
| `-h, --help` | `bool` | 명령 도움말 표시 | `false` |
| `--output` | `string` | 출력 형식: `table` 또는 `json` | `table` |

## 예제

최신 릴리스로 업데이트

```bash
alpacon update
```

설치하지 않고 새 릴리스가 있는지 확인

```bash
alpacon update --check
```

## 업데이트 과정

명령은 [GitHub의 alpacon-cli](https://github.com/alpacax/alpacon-cli/releases) 최신 릴리스를 읽어 설치된 버전과 비교합니다. 이미 최신 버전이면 `alpacon <version> is already up to date.`를 출력하고 종료 코드 `0`으로 끝납니다.

새 릴리스가 있으면 운영체제와 아키텍처에 맞는 압축 파일을 내려받습니다. 같은 릴리스에 게시된 SHA-256 체크섬 파일로 검증한 뒤 바이너리를 교체합니다. 교체가 끝날 때까지 기존 바이너리는 남겨 둡니다. 성공하면 `Successfully updated to <version>.`을 출력합니다.

Windows에서는 교체된 `alpacon.exe`가 설치 폴더에 `alpacon.exe.old.<timestamp>`로 남습니다. 이 파일은 다음 `alpacon update`에서 지웁니다.

업데이트 중에는 바이너리 옆에 `.alpacon-update.lock` 잠금 파일을 두므로 두 업데이트가 같은 파일을 동시에 교체하지 못합니다. 이 파일은 업데이트 후에도 남지만 그대로 두어도 됩니다.

## 패키지 관리자로 설치한 경우

다른 도구가 설치한 바이너리는 패키지 정보가 어긋나지 않도록 그 도구로 업데이트해야 합니다. 새 릴리스가 있으면 명령은 아무것도 바꾸지 않고 실행할 명령을 출력한 뒤 종료 코드 `1`로 끝납니다.

| 설치 방법 | 업데이트 방법 |
| --- | --- |
| Homebrew | `brew upgrade alpacon-cli` |
| deb 패키지 | `sudo apt-get update && sudo apt-get install --only-upgrade alpacon` |
| rpm 패키지 | `sudo yum update alpacon` |
| mise 또는 asdf | 해당 도구로 업데이트 |

다른 패키지 작업이 진행 중이라서 바이너리가 어느 패키지 소유인지 알 수 없으면 바이너리를 건드리지 않습니다. 그 작업이 끝난 뒤 다시 실행하거나 패키지 관리자로 업데이트하세요.

소스에서 직접 빌드한 바이너리는 버전이 `dev`로 표시되며, 이 버전에 맞는 릴리스가 없으므로 `alpacon update`가 거부합니다. 이 명령을 쓰려면 릴리스된 빌드를 설치하세요.

## 권한

명령을 실행하는 사용자에게 바이너리가 있는 폴더의 쓰기 권한이 있어야 합니다. 권한이 없으면 `The install location is not writable by this user.`를 출력하고 멈춥니다. Linux와 macOS에서는 `sudo alpacon update`로, Windows에서는 관리자 권한 터미널에서 `alpacon update`를 실행하세요. Windows 설치 스크립트는 사용자 본인의 `%LOCALAPPDATA%\Alpacon\bin`에 설치하므로 관리자 권한이 필요 없습니다.

임시 디렉터리에 쓸 수 없으면 `TMPDIR`(Windows에서는 `TMP`)에 쓰기 가능한 디렉터리를 지정한 뒤 다시 실행하세요.

## 업데이트 확인

`alpacon update --check`는 아무것도 설치하지 않고 새 릴리스가 있는지만 알려 줍니다. 스크립트는 메시지를 읽지 않고 종료 코드로 분기할 수 있습니다.

- 0: 이미 최신 릴리스임
- 8: 새 릴리스가 있음. 직접 설치한 바이너리면 `alpacon update`를, 패키지 관리자로 설치했으면 위 표의 명령을 함께 출력
- 1: 릴리스 정보를 가져오지 못하는 등 확인 자체가 실패함

스크립트에서 최신 버전 번호를 읽으려면 [`alpacon version --output json`](/reference/cli/version/#json-출력)을 사용하세요.

## 종료 코드 (Exit codes)

- 0: CLI를 업데이트했거나 이미 최신 릴리스임
- 1: 업데이트에 실패했거나, 새 릴리스가 있지만 패키지 관리자나 버전 관리 도구가 설치한 바이너리이거나, `dev` 빌드임
- 8: `--check` 전용. 새 릴리스가 있음

## 관련 문서

- [alpacon version](/reference/cli/version/)
- [CLI 설치](/learn/tutorials/cli/)

Source: https://docs.alpacax.com/ko/reference/cli/update/
