토. 7월 26th, 2025

안녕하세요! 🚀 가상화 환경 구축과 관리에 있어서 Proxmox VE는 강력하고 유연한 오픈소스 솔루션으로 각광받고 있습니다. 웹 인터페이스만으로도 대부분의 작업을 수행할 수 있지만, 터미널 명령어를 능숙하게 다루는 것은 Proxmox 환경을 더욱 깊이 이해하고, 자동화하며, 문제 발생 시 빠르게 대처하는 데 필수적인 능력입니다.

이 글에서는 Proxmox VE 사용자라면 반드시 알아야 할 핵심 명령어 30가지를 엄선하여 자세히 설명해 드립니다. 각 명령어의 기능, 사용법, 그리고 실제 활용 예시까지 함께 살펴보면서 Proxmox 마스터로 거듭나는 데 도움을 드리겠습니다!


📚 목차

  1. Proxmox 시스템 관리 명령어
  2. VM/CT 목록 및 상태 확인 명령어
  3. VM/CT 제어 명령어
  4. VM/CT 설정 및 정보 확인 명령어
  5. VM/CT 고급 작업 명령어 (복제, 스냅샷, 마이그레이션)
  6. 스토리지 및 템플릿 관리 명령어
  7. 클러스터 관리 명령어
  8. 백업 및 복원 관련 명령어

1. Proxmox 시스템 관리 명령어 🛠️

Proxmox 노드 자체의 상태를 확인하고 유지보수하는 데 사용되는 기본적인 명령어들입니다.

  1. pveversion

    • 기능: 현재 Proxmox VE 버전과 커널 정보를 확인합니다. 시스템 정보를 빠르게 파악할 때 유용합니다.
    • 사용법:
      pveversion
    • 예시:
      pveversion
      # 결과 예시:
      # proxmox-ve: 7.4-1 (running kernel: 5.15.102-1-pve)
      # pve-manager: 7.4-3
      # ... (이하 생략)
    • 💡 팁: 문제 발생 시, 이 정보를 제공하면 지원을 받거나 해결책을 찾기 쉽습니다.
  2. apt update && apt upgrade

    • 기능: Proxmox 시스템의 패키지 목록을 최신화하고, 설치된 패키지들을 업그레이드합니다. 시스템 안정성과 보안 유지를 위해 정기적으로 실행하는 것이 좋습니다.
    • 사용법:
      apt update && apt upgrade -y
    • 예시:
      apt update && apt upgrade -y
      # 패키지 목록 업데이트 및 모든 패키지 자동 업그레이드
    • ⚠️ 주의: 커널 업데이트 후에는 재부팅이 필요할 수 있습니다. 운영 중인 VM/CT가 없는 시간에 진행하는 것을 권장합니다.
  3. systemctl status

    • 기능: Proxmox의 주요 서비스(예: pveproxy, pve-cluster, pvedaemon)의 상태를 확인합니다. 서비스가 정상적으로 실행 중인지, 문제가 발생했는지 파악할 수 있습니다.
    • 사용법:
      systemctl status pveproxy
      systemctl status pve-cluster
    • 예시:
      systemctl status pveproxy
      # pveproxy.service - PVE API Proxy Server
      #    Loaded: loaded (/lib/systemd/system/pveproxy.service; enabled; vendor preset: enabled)
      #    Active: active (running) since Tue 2023-10-24 10:00:00 KST; 1h ago
      # ... (이하 생략)
  4. df -h

    • 기능: 디스크 공간 사용량을 사람이 읽기 쉬운 형태로 표시합니다. Proxmox 노드의 각 스토리지 볼륨의 여유 공간을 확인할 때 필수적입니다.
    • 사용법:
      df -h
    • 예시:
      df -h
      # 결과 예시:
      # Filesystem      Size  Used Avail Use% Mounted on
      # /dev/mapper/pve-root   98G   10G   83G  11% /
      # udev            7.8G     0  7.8G   0% /dev
      # ... (이하 생략)
  5. htop

    • 기능: 시스템의 실시간 프로세스, CPU, 메모리 사용량 등을 대화형으로 보여주는 도구입니다. 리소스 병목 현상을 진단하고 어떤 프로세스가 많은 리소스를 소모하는지 파악할 때 유용합니다.
    • 사용법:
      htop
    • 💡 팁: htop이 설치되어 있지 않다면 apt install htop으로 설치할 수 있습니다.
  6. journalctl -f

    • 기능: 시스템의 실시간 로그를 추적하여 보여줍니다. Proxmox 웹 인터페이스 접근 문제, VM/CT 시작 실패 등 다양한 문제 발생 시 로그를 통해 원인을 파악하는 데 매우 중요합니다.
    • 사용법:
      journalctl -f
    • 예시:
      journalctl -f
      # 실시간으로 시스템 로그가 출력됩니다. (Ctrl+C로 종료)

2. VM/CT 목록 및 상태 확인 명령어 📋

현재 Proxmox 노드에서 실행 중이거나 생성된 가상 머신(VM) 및 컨테이너(CT)의 목록과 상태를 빠르게 파악할 수 있습니다.

  1. qm list

    • 기능: 모든 KVM 가상 머신(VM)의 목록과 현재 상태를 보여줍니다.
    • 사용법:
      qm list
    • 예시:
      qm list
      # 결과 예시:
      #      VMID NAME                 STATUS     MEM(MB)    SWAP(MB)     BOOTDISK(GB) PID
      #       100 Ubuntu-Server        running       2048           0           32.0 12345
      #       101 Windows-VM           stopped       4096           0           64.0 0
  2. pct list

    • 기능: 모든 LXC 컨테이너(CT)의 목록과 현재 상태를 보여줍니다.
    • 사용법:
      pct list
    • 예시:
      pct list
      # 결과 예시:
      #      VMID NAME                 STATUS     MEM(MB)    SWAP(MB)     ROOTFS(GB) PID
      #       200 Debian-CT            running        512           0            8.0 67890
      #       201 Alpine-CT            stopped        256           0            4.0 0
  3. qm status

    • 기능: 특정 VM의 상세 상태를 확인합니다.
    • 사용법:
      qm status 100
    • 예시:
      qm status 100
      # status: running
      # qmpstatus: running
      # ha: no
      # cpus: 2
      # pid: 12345
  4. pct status

    • 기능: 특정 CT의 상세 상태를 확인합니다.
    • 사용법:
      pct status 200
    • 예시:
      pct status 200
      # status: running
      # ha: no
      # cpus: 1
      # pid: 67890

3. VM/CT 제어 명령어 ⏯️

가상 머신과 컨테이너를 시작, 중지, 강제 종료, 삭제하는 기본적인 제어 명령입니다.

  1. qm start

    • 기능: 지정된 VM을 시작합니다.
    • 사용법:
      qm start 100
  2. qm stop

    • 기능: 지정된 VM을 강제로 중지합니다. (운영체제가 갑자기 전원 공급이 끊긴 것과 같습니다. 데이터 손실 위험이 있습니다.)
    • 사용법:
      qm stop 100
  3. qm shutdown

    • 기능: 지정된 VM에 종료 신호를 보내 운영체제가 정상적으로 종료되도록 합니다. (추천)
    • 사용법:
      qm shutdown 100
    • 💡 팁: qm shutdown이 응답하지 않을 경우, qm stop을 사용해야 합니다.
  4. qm destroy

    • 기능: 지정된 VM과 연결된 모든 디스크 및 설정 파일을 영구적으로 삭제합니다. 매우 주의해야 합니다.
    • 사용법:
      qm destroy 100
    • ⚠️ 경고: 이 작업은 되돌릴 수 없으므로 신중하게 사용해야 합니다.
  5. pct start

    • 기능: 지정된 CT를 시작합니다.
    • 사용법:
      pct start 200
  6. pct stop

    • 기능: 지정된 CT를 강제로 중지합니다.
    • 사용법:
      pct stop 200
  7. pct shutdown

    • 기능: 지정된 CT에 종료 신호를 보내 정상적으로 종료되도록 합니다. (추천)
    • 사용법:
      pct shutdown 200
  8. pct destroy

    • 기능: 지정된 CT와 연결된 모든 디스크 및 설정 파일을 영구적으로 삭제합니다. 매우 주의해야 합니다.
    • 사용법:
      pct destroy 200
    • ⚠️ 경고: 이 작업은 되돌릴 수 없으므로 신중하게 사용해야 합니다.

4. VM/CT 설정 및 정보 확인 명령어 ⚙️

가상 머신 및 컨테이너의 현재 구성을 확인하고 필요에 따라 수정하는 데 사용합니다.

  1. qm config

    • 기능: 지정된 VM의 모든 구성 정보를 표시합니다. CPU, 메모리, 디스크, 네트워크 등 상세 설정을 확인할 수 있습니다.
    • 사용법:
      qm config 100
    • 예시:
      qm config 100
      # arch: x86_64
      # cores: 2
      # memory: 2048
      # net0: virtio=00:1A:2B:3C:4D:5E,bridge=vmbr0
      # ostype: l26
      # ... (이하 생략)
    • 💡 팁: qm set -- 명령어로 설정을 변경할 수 있습니다 (예: qm set 100 --memory 4096).
  2. pct config

    • 기능: 지정된 CT의 모든 구성 정보를 표시합니다.
    • 사용법:
      pct config 200
    • 예시:
      pct config 200
      # arch: amd64
      # cores: 1
      # memory: 512
      # net0: name=eth0,bridge=vmbr0,ip=192.168.1.100/24,gw=192.168.1.1
      # ostype: debian
      # ... (이하 생략)
    • 💡 팁: pct set -- 명령어로 설정을 변경할 수 있습니다 (예: pct set 200 --cores 2).

5. VM/CT 고급 작업 명령어 (복제, 스냅샷, 마이그레이션) 💾✈️

Proxmox의 강력한 기능인 복제, 스냅샷, 그리고 클러스터 환경에서의 마이그레이션을 위한 명령어입니다.

  1. qm clone

    • 기능: 기존 VM을 복제하여 새로운 VM을 생성합니다. 테스트 환경 구축이나 동일한 사양의 VM을 여러 개 만들 때 유용합니다.
    • 사용법:
      qm clone 100 102 --name NewUbuntu --full --storage local-lvm
    • 옵션:
      • --name: 새로운 VM의 이름을 지정합니다.
      • --full: 전체 복제 (기본값은 Linked Clone, 원본에 종속됨)
      • --storage: 복제된 VM의 디스크를 저장할 스토리지를 지정합니다.
  2. pct clone

    • 기능: 기존 CT를 복제하여 새로운 CT를 생성합니다.
    • 사용법:
      pct clone 200 202 --name NewDebianCT --storage local-lvm
    • 옵션: VM clone과 유사합니다.
  3. qm snapshot / qm rollback

    • 기능:
      • qm snapshot: 특정 VM의 현재 상태를 스냅샷으로 저장합니다. 시스템 변경 전 안전 지점을 만들 때 사용합니다.
      • qm rollback: 저장된 스냅샷 지점으로 VM을 되돌립니다.
    • 사용법:
      qm snapshot 100 "BeforeUpdate"
      qm rollback 100 "BeforeUpdate"
      qm listsnapshot 100 # 스냅샷 목록 확인
    • 💡 팁: 스냅샷은 많은 디스크 공간을 차지할 수 있으니, 사용 후에는 qm delsnapshot 명령어로 삭제하는 것이 좋습니다.
  4. pct snapshot / pct rollback

    • 기능: CT에 대한 스냅샷 생성 및 롤백 기능입니다. VM 스냅샷과 동일한 개념으로 사용됩니다.
    • 사용법:
      pct snapshot 200 "BeforeNginxInstall"
      pct rollback 200 "BeforeNginxInstall"
      pct listsnapshot 200 # 스냅샷 목록 확인
  5. qm migrate

    • 기능: 클러스터 환경에서 VM을 현재 노드에서 다른 노드로 이동합니다. (Live Migration 기능으로 운영 중인 상태에서도 가능)
    • 사용법:
      qm migrate 100 pve-node2 --online
    • 옵션: --online (또는 --live) 옵션은 VM을 끄지 않고 마이그레이션합니다. (클러스터 및 스토리지가 공유되는 환경에서만 가능)
    • ⚠️ 주의: 클러스터 설정과 공유 스토리지가 올바르게 구성되어 있어야 합니다.
  6. pct migrate

    • 기능: 클러스터 환경에서 CT를 다른 노드로 이동합니다.
    • 사용법:
      pct migrate 200 pve-node2 --online
    • 옵션: --online (또는 --live) 옵션으로 Live Migration이 가능합니다.

6. 스토리지 및 템플릿 관리 명령어 📦💾

Proxmox의 스토리지 설정과 컨테이너 템플릿 관리에 사용되는 명령어입니다.

  1. pvesm status

    • 기능: Proxmox에 구성된 모든 스토리지의 상태와 사용량을 표시합니다.
    • 사용법:
      pvesm status
    • 예시:
      pvesm status
      # Name            Type     Status     Total      Used       Avail      %Used
      # local           dir      active     98G        10G        83G        11.20%
      # local-lvm       lvmthin  active     200G       50G        150G       25.00%
      # nfs-storage     nfs      active     1.0T       300G       700G       30.00%
  2. pveam update / pveam download / pveam list local

    • 기능:
      • pveam update: 사용 가능한 컨테이너 템플릿 목록을 업데이트합니다.
      • pveam download: 지정된 URL에서 컨테이너 템플릿을 다운로드합니다. (예: pveam download local debian-11-standard_11.0-1_amd64.tar.zst)
      • pveam list local: 로컬에 저장된 컨테이너 템플릿 목록을 확인합니다.
    • 사용법:
      pveam update
      pveam download local:vztmpl/debian-11-standard_11.0-1_amd64.tar.zst
      pveam list local
    • 💡 팁: 템플릿은 새로운 컨테이너를 빠르게 생성하는 데 사용됩니다.

7. 클러스터 관리 명령어 🤝

여러 Proxmox 노드를 하나의 클러스터로 묶었을 때 사용되는 명령어입니다.

  1. pvecm status / pvecm nodes
    • 기능:
      • pvecm status: Proxmox 클러스터의 현재 상태, 쿼럼 정보, 멤버 노드 등을 상세하게 표시합니다.
      • pvecm nodes: 클러스터에 속한 노드들의 목록을 간단히 보여줍니다.
    • 사용법:
      pvecm status
      pvecm nodes
    • 예시:
      pvecm nodes
      # Node  UUID                                    State    IP Address
      # 1: pve-node1 d1b2c3d4-e5f6-7890-a1b2-c3d4e5f67890 online   192.168.1.10
      # 2: pve-node2 f1e2d3c4-b5a6-9870-1234-567890abcdef online   192.168.1.11
    • 💡 팁: 클러스터 문제가 발생했을 때 가장 먼저 확인해야 할 명령어 중 하나입니다.

8. 백업 및 복원 관련 명령어 🛡️🔄

Proxmox의 내장 백업 기능을 CLI에서 활용할 수 있는 명령어입니다.

  1. qm backup --storage / pct backup --storage
    • 기능:
      • qm backup: 지정된 VM을 백업합니다.
      • pct backup: 지정된 CT를 백업합니다.
    • 사용법:
      qm backup 100 --storage local --mode snapshot
      pct backup 200 --storage backup-nfs --mode stop
    • 옵션:
      • --storage: 백업 파일을 저장할 스토리지 ID를 지정합니다.
      • --mode: 백업 모드를 지정합니다. (snapshot, suspend, stop 중 선택)
        • snapshot: VM/CT 실행 중 스냅샷을 찍어 백업 (가장 일반적)
        • suspend: VM/CT를 일시 정지 후 백업
        • stop: VM/CT를 완전히 종료 후 백업 (가장 안전하지만 서비스 중단 발생)
    • 💡 팁: 복원은 qmrestore 또는 pctrestore 명령어를 사용하지만, 보통 백업 파일 경로와 VMID/CTID를 지정해야 하므로 웹 UI를 통해 복원하는 것이 더 편리할 수 있습니다.

🌟 마치며

Proxmox VE의 주요 명령어 30가지를 자세히 살펴보았습니다. 이 명령어들은 Proxmox 환경을 관리하고, 문제를 진단하며, 고급 작업을 수행하는 데 있어 여러분의 가장 강력한 도구가 될 것입니다.

처음에는 어렵게 느껴질 수 있지만, 꾸준히 연습하고 활용하다 보면 금세 익숙해질 것입니다. 웹 인터페이스와 CLI를 적절히 조합하여 사용하면 Proxmox VE의 잠재력을 최대한 끌어낼 수 있습니다.

궁금한 점이 있거나 더 깊이 탐구하고 싶은 명령어가 있다면 언제든지 찾아보고 실험해 보세요! 💪 Happy Proxmox-ing! G

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다