每位系統管理員都該知道的 10 大 Proxmox CLI 指令

Proxmox 虛擬環境 (VE) 可透過網頁瀏覽器中的使用者友善圖形介面進行管理。然而,在特定情境下,使用命令列介面 (CLI) 會更為合適。CLI 具備諸如更詳細的設定、批次處理、腳本編寫及自動化等優勢。

管理 Proxmox 虛擬環境時,既可使用標準的 Linux 指令,也可使用 Proxmox 專屬指令。這篇部落格文章將介紹 10 個最常用的 Proxmox 專屬指令,並附上範例,以協助您進行有效率的系統管理。

NAKIVO for Proxmox 備份

NAKIVO for Proxmox 備份

適用於 Proxmox VE 的無代理、應用程式感知備份解決方案,具備多種備份目標,包括不可變雲端備份。提供多種即時細粒度還原與完整還原選項。

1. qm

qm 指令是 Proxmox 主要命令列介面(CLI)指令之一,而 qm 是 QEMU Manager 的簡稱。此指令用於管理 Proxmox 虛擬環境(Proxmox VE)中的虛擬機器(VM)。 Proxmox 上的虛擬機器基於 QEMU/KVM,而 qm 指令用於與其互動。您可以透過此指令建立、編輯、設定、啟動、停止及遷移虛擬機器。

該指令的一般語法如下:

qm [options] [arguments]

列出虛擬機器

您可以查看虛擬機器的狀態與 ID。 您可能需要此 ID 才能在 Proxmox CLI 中管理這台虛擬機器。

qm list

Listing Proxmox virtual machines in the CLI

建立新的虛擬機器

一般語法:

qm create [options]

範例:

qm create 103 --name "DebianVM" --memory 2048 --net0 virtio,bridge=vmbr0 --sockets 1 --cores 2 --ostype l26

以下 Proxmox CLI 指令會建立一台虛擬機器,其 ID 103 名稱為”DebianVM“,配備 2GB 記憶體、1 個插槽、2 個核心,以及一個橋接至 vmbr0的 Virtio 網路介面。作業系統類型為 Linux(由 l26表示)。

將磁碟掛載至虛擬機器

qm set 105 --scsi0 local-lvm:32G

透過 SCSI 介面將 32GB 磁碟掛載至虛擬機器。

掛載光碟機以進行作業系統安裝

qm set 105 --ide2 local:iso/debian-10.7.0-amd64-netinst.iso,media=cdrom

此指令將 Debian ISO 檔案掛載至虛擬機器的 IDE 光碟機,用於安裝客體作業系統或其他用途。

設定開機順序

qm set 105 --boot order=ide2;scsi0

此範例中的指令會將虛擬機設定為先從光碟機(IDE2)開機,再從硬碟(SCSI0)開機。

啟動虛擬機

語法:

qm start

範例:

qm start 103

使用 ID 103

停止虛擬機

qm stop

此指令會立即停止正在運行的虛擬機。這種停止虛擬機的方式,相當於拔除實體機器的電源插頭。

qm stop 103

使用 ID 103停止虛擬機。

在 Proxmox CLI 中關閉虛擬機器

qm shutdown

此指令會以平穩方式關閉虛擬機器,讓來賓作業系統能妥善關閉檔案並終止程序。

qm shutdown 101

透過 ID 101向虛擬機器發送關機訊號。

Proxmox CLI shutdown VM

將虛擬機器遷移至另一節點

qm migrate

此指令會將虛擬機器從其當前節點遷移至同一 Proxmox 叢集內的另一節點。

例如,若要將 ID 103 中的虛擬機器遷移至 node2,可使用以下指令:

qm migrate 103 node2

為虛擬機器建立快照

qm snapshot

此指令會為虛擬機器建立快照,記錄其當前狀態,包括記憶體、磁碟及裝置狀態。

qm snapshot 103 "before_upgrade"

此指令會為 ID 103 中的虛擬機器建立快照,並將其命名為 "before_upgrade"。在執行具風險的操作(例如軟體升級)之前,使用此指令建立快照非常有用。

從快照還原虛擬機器狀態

qm rollback

此指令會將虛擬機器回滾至先前快照,將其狀態還原至快照建立時的狀態。

例如,若虛擬機器內的軟體升級未成功並發生失敗,我們可透過以下指令還原虛擬機器狀態:

qm rollback 103 "before_upgrade"

自快照建立以來所做的任何變更都會被捨棄(撤銷)。

克隆虛擬機器

qm clone
[--name ] [--full]

qm clone 此指令會克隆現有虛擬機器,以建立一個具有不同 ID 的新虛擬機器。 您可以選擇克隆整個磁碟(完整克隆)或僅克隆連結儲存空間。

qm clone 103 104 --name "DebianClone" --full

此指令會將具有 ID 103 的虛擬機器克隆為具有 ID 104的新虛擬機器,並將其命名為 "DebianClone"--full 選項會建立完整克隆,複製所有資料。

調整虛擬機器磁碟大小

qm resize

qm resize 指令用於調整連接至虛擬機器的虛擬磁碟大小,包括擴充或縮小。請確保客體作業系統能夠處理此變更。

qm resize 103 scsi0 +10G

此 Proxmox CLI 指令會將 scsi0 上虛擬機台的 ID 103 磁碟大小增加 10GB。

2. pve-firewall

pve-firewall 指令用於管理 Proxmox 虛擬環境(包括 Proxmox 叢集)中的防火牆設定。此 Proxmox CLI 指令提供直觀的選項來配置防火牆規則,並允許管理員控制進出 Proxmox 節點、虛擬機台及容器的網路流量。 Proxmox 防火牆與 Proxmox 管理介面緊密整合,使整個 Proxmox 環境中的防火牆管理更加便捷。 pve-firewall 工具是專為 Proxmox VE 開發的,相較於 iptables中採用更細粒度且手動的方式,它採用高階抽象化來管理防火牆規則。

語法:

pve-firewall [options]

執行 pve-firewall 指令以查看主要指令的使用方法。

Using pve-firewall in Proxmox CLI

檢查狀態

檢查 Proxmox VE 防火牆服務的狀態:

pve-firewall status

輸出結果將顯示當前節點上的防火牆是否正在運行。

啟動防火牆

在當前的 Proxmox 節點上啟動防火牆服務:

pve-firewall start

重新載入防火牆

重新載入防火牆服務並套用防火牆配置變更,無需停止並重新啟動防火牆服務。

pve-firewall reload

允許 SSH 流量

建立允許 SSH 流量的防火牆規則:

pve-firewall create rule -action accept -macro ssh

此指令會建立一則規則,允許透過 SSH 存取 Proxmox 環境。

其中: create 建立新的防火牆物件,例如規則、安全性群組或 IP 集合。

刪除規則

若要刪除規則,請使用以下指令:

pve-firewall delete rule

顯示日誌

顯示防火牆日誌,其中會顯示流量及規則匹配情況:

pve-firewall log

輸出結果將顯示最新的防火牆日誌條目。

拒絕 HTTP 流量

若要建立一則拒絕任何 HTTP 流量的防火牆規則,請使用以下指令:

pve-firewall create rule -action drop -macro http

3. pvesm

Proxmox CLI 中的 pvesm 指令,是用於管理 Proxmox VE 中儲存配置的命令列工具。 透過此命令列工具,您可以建立、刪除、修改及管理儲存池。此外,您還可執行各項與儲存相關的任務,例如建立目錄、新增儲存裝置以及管理內容類型。

語法:

pvesm [options]

列出儲存池

pvesm list

其中

是欲列出的儲存池(資料存放區)名稱。

Listing resources on the local storage

檢查所有或特定儲存池的狀態

pvesm status

輸出結果將顯示儲存池的狀態,包括其是否處於活躍或非活躍狀態、儲存類型以及當前使用情況。

Checking the status of a Proxmox storage pool

建立新的儲存池

pvesm create --options

其中:



是要建立的儲存後端類型(例如 dir、lvm、nfs、zfs)。

是儲存池的唯一名稱或 ID。

--options 定義了特定於該儲存類型的額外選項。

範例:

建立一個名為 new-datastore1 的新目錄型儲存池,其位置為 /mnt/storage-name,可用於儲存虛擬機器映像檔和 ISO 檔案:

pvesm create dir new-datastore1 --path /mnt/storage-name --content images,iso

將現有的儲存後端新增至 Proxmox VE

此指令的運作原理與 pvesm create 指令類似,但並非建立新的儲存空間,而是將現有的儲存空間新增至 Proxmox 配置中,使其可供使用。

範例:

將位於 192.168.101.100 且位置為 /export/data 的現有 NFS 共用資料夾,以名稱 test-nfs-storage新增至 Proxmox VE:

pvesm add nfs test-nfs-storage --server 192.168.101.100 --export /export/data --path /mnt/pve/test-nfs-storage --content images,iso

修改現有儲存池的設定

pvesm set --options

範例:

修改 local-storage01 儲存池,使其可儲存虛擬機器映像檔、ISO 檔案及備份檔案:

pvesm set local-storage01 --content images,iso,backup

在指定的儲存池上為虛擬機器或容器分配新的卷

pvesm alloc

範例:

為虛擬機器 100 在 local-storage-name 儲存池上分配 10 GB 卷的指令:

pvesm alloc local-storage-name 100 10G

4. pveum

Proxmox Virtual Environment 允許您建立多個使用者來管理 Proxmox VE。 這可透過 Proxmox CLI 指令,使用pveum(使用者管理)指令來實現。Proxmox 管理員可以管理使用者與群組,並設定存取控制與權限。這進而定義了哪些使用者可以存取 Proxmox 基礎架構的各個部分,並獲准對其執行操作。 管理員可針對存取物件(例如虛擬機器、儲存裝置、叢集節點等)指派權限。

語法:

pveum [options]

將新使用者新增至 Proxmox VE

pveum useradd --password --comment --groups

其中:

--password 為新使用者的密碼。

--comment 為使用者可選的註解或描述。

--groups 為使用者應隸屬的群組(或多個群組)。

範例:

pveum useradd user2@pve --password UserSecretPassword111 --comment "user2 – admin group" --groups admin

此指令用於將使用者名稱 user2 新增至 admin 群組,並為該使用者設定描述與密碼。

刪除使用者

若要刪除使用者,請使用 pveum 指令,其操作邏輯與新增使用者相同,例如:

pveum userdel user3@pve

此指令用於在 Proxmox 主機上刪除 user3

建立群組

若要在 Proxmox CLI 中建立新群組,請使用 groupadd 指令。

語法:

pveum groupadd --comment

範例:

pveum groupadd support --comment "Support Team Group"

此指令會建立一個名為 support 且描述為 "Support Team Group"的新群組。

刪除群組

與刪除使用者類似,您也可以刪除群組。例如,要刪除 guests 群組,可使用以下指令:

pveum groupdel guests

新增角色

角色用於定義一組權限,適用於被指派此角色的使用者和群組。

語法:

pveum roleadd --privs

其中:



是要建立的角色名稱。

--privs 是要指派給該角色的權限清單(以逗號分隔,例如:VM.PowerMgmt,VM.Config.Disk)。

範例:

pveum roleadd vmmanager --privs VM.PowerMgmt,VM.Config.CDROM

此指令會建立一個名為 vmmanager 的角色,該角色具有管理虛擬機器電源設定及配置光碟機的權限。

修改現有角色

管理員可使用 rolemod 指令修改現有角色與權限(新增或移除權限)。

語法:

pveum rolemod --privs

範例:

pveum rolemod vmmanager --privs +VM.Config.Network

此指令將 VM.Config.Network 權限新增至 vmmanager 角色。

修改存取控制清單 (ACL)

Proxmox 管理員可透過將角色指派給特定 Proxmox 物件上的使用者或群組,來修改存取控制清單 (ACL)。

語法:

pveum aclmod --roles --users --groups

其中:

是設定 ACL 的物件路徑(例如, /vms/100 代表特定虛擬機器,或 / 代表整個叢集)。

--roles 是要指派的角色。

--users 是要指派該角色的使用者。 --groups 是指該角色所指派的群組。

範例:

pveum aclmod /vms/104 --roles vmmanager --users user4@pve

此指令將 vmmanager 角色指派給 user4@pve ,並套用至虛擬機器 104,使該使用者(user4)能依據 vmmanager 角色中的權限來管理該特定虛擬機器。 aclremove 指令用於從物件中移除相應的存取控制清單(ACL)。

認證領域管理

認證領域定義了使用者如何向系統進行認證(例如,使用 PAM、LDAP 或 Active Directory)。 您可透過 Proxmox VE 中的 ` realm ` 指令管理認證領域。

語法:

pveum realm [options]

其中可執行的指令包括:

list 列出所有可用領域

add 新增一個領域

modify 修改現有領域

remove 移除現有領域

例如,若要列出 Proxmox VE 中所有已配置的認證領域,請使用以下指令:

pveum realm list

Checking the Proxmox authentication realm configuration

管理現有使用者

您可透過此 `user` 指令列出、編輯及刪除現有使用者。

語法:

pveum user
[options]

可用的指令包括:

list 用以列出所有使用者

modify 用以修改使用者詳細資料,例如變更密碼或更新備註

delete 用以刪除使用者

例如,若要列出 Proxmox 主機上的所有使用者,請使用以下指令:

pveum user list

若要查看更多可用指令與選項,請在 Proxmox CLI 中執行 pveum help 指令。

試試 NAKIVO Backup & Replication 搭配 Proxmox VE

試試 NAKIVO Backup & Replication 搭配 Proxmox VE

立即申請 15 天免費試用,體驗無代理、增量式的 Proxmox 虛擬機器備份功能,具備原生變更追蹤、不可變動儲存,以及即時完整與細粒度還原選項。

5. pvesh

透過使用 pvesh 指令,管理員可與 Proxmox REST API 進行互動。此命令列工具讓您能直接從 Proxmox CLI 執行幾乎所有可透過 Proxmox 網頁介面完成的動作。 pvesh 指令作為 Proxmox VE REST API 的殼層,讓您能直接從命令列使用指令進行 API 呼叫。 透過此命令,您可以管理虛擬機器、儲存、網路以及 Proxmox 虛擬基礎架構的其他元件。

語法:

pvesh [options]

列出資源或 API 端點

此命令類似於 Linux 中的 ls 命令,但它會列出 Proxmox VE 環境中可用的 API 路徑或資源。

pvesh ls /path

範例:

pvesh ls /cluster/resources

此命令會列出 Proxmox 叢集中的所有資源,包括虛擬機器、容器和儲存。

擷取資訊

get 指令用於從特定 API 端點擷取資訊。此指令用於查詢資源的詳細資料。

pvesh get /path

其中 path 是您要擷取資訊的 API 路徑。

例如,若要擷取節點 pve-node1的狀態資訊(例如 CPU 負載、記憶體使用量及運行時間),可使用以下指令:

pvesh get /nodes/pve-node1/status

Checking the Proxmox host status

修改設定

set 指令用於修改或更新資源的設定。此操作相當於在 REST API 中發出 POST 或 PUT 請求。

語法:

pvesh set /path --key value [--key value ...]

--key value 為您要變更的設定之鍵值對。

範例:

pvesh set /nodes/pve-node1/qemu/100/config --name new-vm-name

此指令會將節點 100 上的虛擬機器 pve-node1 的名稱變更為 new-vm-name

建立資源

create 指令可讓您建立新的資源,例如新的虛擬機器或儲存卷。

語法:

pvesh create /path --key value [--key value ...]

例如,您可以使用以下指令建立具有特定參數的新虛擬機器:

pvesh create /nodes/pve-node1/qemu --vmid 106 --name new-vm-name --memory 2048 --cores 2

此指令會在節點 106上建立 ID 為 pve-node1 的新虛擬機器,其名稱為 new-vm-name,配備 2 GB 記憶體和 2 個 CPU 核心。

啟動虛擬機器

若要使用 pvesh啟動虛擬機器或容器,可執行以下命令:

pvesh start /path

例如,若要啟動位於節點 ID 101上的虛擬機器 pve-node1 ,可執行以下命令:

pvesh start /nodes/pve-node1/qemu/101

虛擬機器關機

與 `stop` 命令不同,`shutdown` 命令會以平穩方式關閉虛擬機器或容器:

pvesh shutdown /path

例如,若要關閉位於 Proxmox 主機(名稱為 ID 101)上的虛擬機器 pve-node1,請使用以下命令: pvesh shutdown /nodes/pve-node1/qemu/101

啟動所有虛擬機器

若要啟動或停止某個節點或整個叢集上的所有虛擬機器,您可以使用對應的指令:

pvesh startall /nodes/

pvesh stopall /nodes/

6. pvecm

pvecm 指令是 Proxmox 叢集管理工具,用於管理與設定 Proxmox 叢集。您可以使用此工具建立叢集,以及讓節點加入並管理 Proxmox 叢集內的節點。 叢集將作為單一實體進行管理,並具備高可用性、虛擬機器即時遷移、共用儲存空間等特點。

語法:

pvecm [options]

若要查看所有受支援的 pvecm 指令,請執行此指令:

man pvecm

建立叢集

若要建立新的 Proxmox VE 叢集,您可以使用 create 指令。 您應在將構成叢集的第一個節點(主節點)上執行此命令。

pvecm create

範例:

以下命令會建立一個名為 cluster01的叢集。此節點(我們執行命令的位置)將成為叢集的主節點。

pvecm create cluster01

將節點新增至叢集

使用 addnode 命令將新節點新增至現有的 Proxmox 叢集。 請在您欲加入叢集的節點上執行此指令。

pvecm add

範例:

將當前的 Proxmox 主機加入由 IP 位址為 192.168.101.121 的主節點所控制的叢集:

pvecm add 192.168.101.121

從叢集中移除節點

在 Proxmox CLI 中,使用 delnode 指令可將節點從叢集中移除。

語法:

pvecm delnode

範例:

將名為 pve-node2 的節點從叢集中移除的指令為:

pvecm delnode pve-node2

列出叢集的所有節點

列出所有叢集節點並顯示其狀態(包含節點名稱與 IP 位址)的指令為:

pvecm nodes

設定新的主節點

您可以在 Proxmox 叢集中將另一個叢集節點設為主節點:

pvecm setmaster

其中

是您要指定為主節點的節點名稱。

顯示叢集狀態

您可以顯示 Proxmox 叢集的狀態,包括關於法定人數、節點數量及其角色的資訊。

pvecm status

設定預期節點數量

您可以透過 expected 指令,檢查叢集中達到法定人數所需的預期節點數量。當某些叢集節點暫時離線時,您可能需要使用此指令以避免服務中斷。 “法定人數”用於避免”腦裂”情況,即當不同叢集節點對叢集狀態的資訊相互衝突時。 pvecm expected

7. hamanager

hamanager 指令用於在建立 Proxmox 叢集後,管理虛擬機的高可用性 (HA) 特點。此命令列工具可讓您為關鍵虛擬機配置高可用性,並設定當其所运行的節點發生故障時,在叢集中如何重新啟動這些虛擬機。Proxmox CLI 中的 hamanager 工具會與 Proxmox 高可用性管理員進行互動。

語法:

ha-manager [options]

檢視狀態

若要檢視 HA 資源的當前狀態,可使用以下指令:

ha-manager status

輸出結果將顯示哪些虛擬機器 (VM) 或容器 (CT) 已配置 HA、其當前狀態(已啟動、已停止),包括 HA 狀態與故障移轉狀態,以及它們正在哪個節點上運行。

為虛擬機器啟用 HA

語法:

ha-manager add --group --max-restarts --max-migrate-tries

其中:



是您要加入 HA 的虛擬機器或 CT 的 ID。

--group 是該資源應加入的 HA 群組(可選)。

--max-restarts 是資源發生故障時,允許的重啟嘗試次數上限。

--max-migrate-tries 是資源無法重啟時,遷移至其他節點的嘗試次數上限。

範例:

將具有 ID 105 的虛擬機器新增至高可用性管理員,並設定發生故障時最多嘗試 3 次重新啟動及 1 次遷移:

ha-manager add 105 --max-restarts 3 --max-migrate-tries 1

停用虛擬機器的 HA 狀態

使用 remove 指令來停用虛擬機器的高可用性狀態,並將該虛擬機器從高可用性管理員中移除。

ha-manager remove

例如,要停用具有 ID 105的虛擬機器的 HA 狀態,請執行以下指令:

ha-manager remove 105

執行該指令後,該虛擬機器將不再作為高可用性資源進行管理。

虛擬機器遷移

您可以透過 migrate 指令,手動將高可用性虛擬機器遷移至叢集中的另一個節點:

ha-manager migrate

例如,若要將 ID 106 的虛擬機器遷移至名為 pve-node2的節點,請執行以下指令:

ha-manager migrate 106 pve-node2

8. vzdump

vzdump 指令用於透過 Proxmox VE 的原生工具建立備份。此指令支援虛擬機器和容器的備份。備份可儲存為 .vma, .tgz or .lzo 格式。

語法:

vzdump [options] [ ...]

其中:

vmid 是您要備份的虛擬機器或容器的 ID。

--mode 定義備份模式。支援三種備份模式:

  • snapshot – 對 Proxmox 虛擬機器或容器建立即時快照。 此模式為預設模式,可讓您在虛擬機器或容器執行時進行備份。
  • suspend – 此模式會在備份前暫停虛擬機器或容器,以確保資料的一致性。 此模式的缺點在於會造成短暫的停機時間。
  • stop – 在執行備份前先停止虛擬機器或容器。此方法可確保備份資料的一致性,但會導致更長的停機時間。

--compress 用於指定壓縮方式。共有三種受支援的壓縮選項:

  • lzo – 適用於 Proxmox 備份的輕量且快速的壓縮方式(預設使用)。
  • gzip – 這是更高效的壓縮方式,但壓縮資料所需時間較長(壓縮速度較慢)。
  • zstd – 此壓縮類型採用現代壓縮演算法,可在提供最佳效能的同時達到高壓縮比。

--storage 指定備份檔案的儲存目標。此處可以是本機目錄、NFS 共用資料夾,或是 Proxmox 儲存池。

--maxfiles 限制要保留的備份檔案數量。若達到上限,較舊的備份將自動刪除。

--remove 根據指定的模式自動移除備份檔案。 模式包括:

  • old – 在建立新備份時移除舊備份。
  • fail – 僅移除失敗的備份。

備份多台虛擬機器

依序備份使用 IDs 101102103 的虛擬機器:

vzdump 101 102 103

以壓縮方式儲存備份

vzdump 101 --storage local --compress gzip --maxfiles 3

帶有這些選項的 vzdump 指令會執行以下動作:

  • VM 101 的備份儲存至名為 local 的儲存空間。本地儲存空間可以是 Proxmox 主機上的本機目錄,或是儲存池。
  • 採用 gzip 壓縮方式。建立採用 gzip 壓縮方式加密的備份可能需要較長時間,但最終得到的備份檔案會更小。
  • 僅保留最近的 3 個備份,較舊的備份會自動刪除。

省略日誌檔案

vzdump 102 --exclude-path /var/log

備份虛擬機器 102 但排除 /var/log directory,透過省略日誌檔案來減少備份大小。

移除舊備份

vzdump 101 --storage nfs-backup --maxfiles 5 --remove old

這是一項會自動移除舊備份的自動備份。 此設定會備份虛擬機器 101,將備份儲存於 nfs-backup 儲存空間中,並僅保留最近的 5 個備份,較舊的備份將自動刪除。

以快照模式進行備份

vzdump --all --mode snapshot --storage nfs-backup --bwlimit 20480 --remove old --maxfiles 7

使用快照備份模式為所有虛擬機器和容器建立備份(例如夜間備份)。備份將儲存至名為 nfs-backup的 NFS 共用資料夾中。 為防止網路過載,頻寬限制為每秒 20480 Kbytes(20 MBps)。僅保留最近的 7 個備份,較舊的備份將自動移除。

9. qmrestore

qmrestore 指令用於從 Proxmox 虛擬環境中,透過 vzdump 指令所建立的備份中還原虛擬機器。這些 vzdumpqmrestore 指令是 Proxmox 原生用於虛擬機器備份與還原的工具。 備份可還原至新的或現有的虛擬機器。

語法:

qmrestore [options]

其中:



是您要還原的備份檔案路徑。此檔案通常由 vzdump 指令產生,並儲存於目錄或網路儲存裝置中。



是您要還原的虛擬機器 ID。若該虛擬機器 ID 已存在,除非使用特定選項防止此情況發生,否則現有虛擬機器將會被覆寫。

指令選項:

--force 用於以相同 ID 覆寫現有虛擬機器,且不會出現確認提示。當您不介意遺失具有相同 ID 的虛擬機器當前狀態時,可使用此選項來還原虛擬機器。

--unique 用於為還原後的虛擬機器產生一個新的、唯一的虛擬機器 ID。建議使用此選項來還原備份,藉此建立新的虛擬機器,而不會覆寫任何現有虛擬機器。

--storage 指定還原後虛擬機器虛擬磁碟映像的目標儲存位置。若未指定此選項,則虛擬機器將還原至其原始儲存位置或預設儲存位置。

--pool 可讓您將還原後的虛擬機器指派至 Proxmox 虛擬環境中的特定資源池。資源池用於將虛擬機器分組,以便更輕鬆地管理。

--hostname 設定還原後虛擬機器的主機名稱。 若您希望為還原後的虛擬機器設定與原始主機名稱不同的名稱,此選項將非常實用。

--name 可為還原後的虛擬機器設定自訂名稱(此名稱將顯示於 Proxmox 使用者介面中),該名稱將與備份時的原始虛擬機器名稱不同。

將虛擬機器還原至原始 ID

將虛擬機器還原至其原始 ID:

qmrestore /var/lib/vz/dump/vzdump-qemu-101-2023_08_27-00_00_00.vma 101

此指令會將備份檔案 vzdump-qemu-101-2023_08_27-00_00_00.vma 還原至具有 ID 101 的虛擬機器。 如果已經存在一個主機名為 ID 101 的虛擬機器,該虛擬機器將會被覆寫。

將備份還原至新虛擬機器

將備份還原至新虛擬機器:

qmrestore /mnt/pve/nfs-backup/dump/vzdump-qemu-101-2023_08_27-00_00_00.vma 102 --storage local-lvm

此指令將備份還原至主機名為 ID 102的新虛擬機器,並將其磁碟映像儲存於 local-lvm 儲存空間中。

還原並變更主機名稱與虛擬機器名稱

還原備份並變更主機名稱與名稱:

qmrestore /mnt/pve/nfs-backup/dump/vzdump-qemu-101-2023_08_27-00_00_00.vma 103 --hostname restored-vm --name "MyRestoredVM"

將備份還原至新虛擬機器,網址為 ID 103,將虛擬機器重新命名為 MyRestoredVM ,並將其主機名稱設定為 restored-vm

10. proxmox-backup-client

proxmox-backup-client 指令是一個命令列工具,需與 Proxmox Backup Server(Proxmox 原生備份解決方案)配合使用,用於執行備份與還原操作。 此工具允許管理員保護虛擬機器、容器及其他類型的資料。 proxmox-backup-client 工具會與 Proxmox 備份伺服器 (PBS) 互動以管理備份

語法:

proxmox-backup-client [options]

備份指令的基本語法如下:

proxmox-backup-client backup --repository [options]

其中:

是您要賦予備份存檔的名稱。

定義您要備份的目錄或檔案路徑。

--repository 是 Proxmox 備份伺服器上的目標儲存庫,通常格式為 user@pbs:datastore

範例:

proxmox-backup-client backup etc.pxar /etc --repository root@pbs@10.10.10.101:datastore1

此指令會將 /etc 目錄備份至位於 datastore1的 Proxmox 備份伺服器上的 10.10.10.101 。備份將儲存為名為 etc.pxar的存檔。

還原指令的基本語法

proxmox-backup-client 命令列工具的還原指令,用於將資料從 Proxmox 備份伺服器還原至本機系統。

proxmox-backup-client restore --repository [options]

其中:

是您要還原的存檔名稱。

是資料應還原到的路徑。

--repository 是儲存備份的儲存庫。

範例:

proxmox-backup-client restore etc.pxar /restore/etc --repository root@pbs@10.10.10.101:datastore1

此指令將從 Proxmox 備份伺服器( etc.pxar 10.10.10.101 )上的 datastore1 還原 存檔至本機目錄 /restore/etc

結論

Proxmox CLI 指令是一套強大的工具,用於管理 Proxmox 虛擬環境,包括儲存、虛擬機器、叢集、虛擬機器備份等。若您想實施一套全面的虛擬機器備份策略,請安裝 NAKIVO Backup & Replication 並使用其針對 Proxmox VE 虛擬機器的無代理程式備份功能。

試試 NAKIVO Backup & Replication

試試 NAKIVO Backup & Replication

立即申請免費試用,探索本解決方案的所有資料保護功能。免費試用 15 天。無任何特點或容量限制。無需提供信用卡資訊。

People also read