CLI essentielles : qm, pct, pvesh, pvecm, pveceph¶
Mémo des commandes Proxmox VE 9 les plus utilisées en exploitation, à lancer en root sur un nœud (pve01). Toutes s'appuient sur la même API que la GUI : ce que vous faites ici apparaît dans les tâches du cluster. Chaque outil documente ses options avec <outil> help <commande> ou man <outil>.
Règle d'or
Les commandes de lecture (list, status, config, get) sont sans risque. Les commandes marquées MSP modifient le cluster, Ceph ou le quorum : elles relèvent du MSP en contrat N2/N3, voir la matrice de responsabilité.
qm : machines virtuelles (KVM)¶
| Commande | Effet | Quand l'utiliser |
|---|---|---|
qm list |
VM du nœud avec état, RAM, disque | Inventaire rapide |
qm config 101 |
Configuration de la VM | Diagnostic, avant modification |
qm start 101 / qm shutdown 101 |
Démarrage / arrêt propre (ACPI ou agent) | Exploitation courante |
qm stop 101 |
Arrêt brutal (coupure de courant) | VM figée, en dernier recours |
qm reboot 101 |
Redémarrage propre | Après mise à jour invité |
qm set 101 --memory 8192 --cores 4 |
Modifie la configuration | Ajustement de ressources |
qm set 101 --onboot 1 |
Démarrage automatique au boot du nœud | VM critiques hors HA |
qm snapshot 101 avant-maj |
Crée un snapshot | Avant une mise à jour applicative |
qm listsnapshot 101 / qm rollback 101 avant-maj |
Liste / restaure un snapshot | Retour arrière |
qm clone 9000 120 --name web01 --full |
Clone complet d'un template | Déploiement manuel |
qm migrate 101 pve02 --online |
Migration à chaud | Maintenance de nœud |
qm disk import 101 disk.qcow2 ceph-vm |
Importe un disque | Migration depuis un autre hyperviseur |
qm guest cmd 101 ping |
Teste l'agent QEMU | Vérifier qemu-guest-agent |
qm unlock 101 |
Retire un verrou | Voir RB-10 avant |
qm terminal 101 |
Console série | VM avec serial0 configuré |
pct : conteneurs LXC¶
| Commande | Effet | Quand l'utiliser |
|---|---|---|
pct list |
Conteneurs du nœud | Inventaire |
pct config 105 |
Configuration | Diagnostic |
pct start 105 / pct shutdown 105 |
Démarrage / arrêt | Exploitation |
pct enter 105 |
Shell root dans le conteneur | Dépannage sans SSH |
pct exec 105 -- df -h |
Lance une commande dans le CT | Script, contrôle rapide |
pct push 105 ./f.conf /etc/f.conf / pct pull |
Copie de fichier vers / depuis le CT | Déploiement ponctuel |
pct resize 105 rootfs +10G |
Agrandit le disque racine | Manque de place |
pct unlock 105 |
Retire un verrou | Après tâche interrompue |
pvesh : l'API en ligne de commande¶
| Commande | Effet | Quand l'utiliser |
|---|---|---|
pvesh get /cluster/resources --type vm |
Toutes les VM/CT du cluster | Inventaire global |
pvesh get /nodes/pve01/qemu/101/status/current |
État détaillé d'une VM | Script de supervision |
pvesh get /cluster/tasks |
Dernières tâches du cluster | Diagnostic |
pvesh create /nodes/pve01/qemu/101/status/start |
Démarre une VM via l'API | Tester un appel avant de l'automatiser |
pvesh set /cluster/options --keyboard fr |
Modifie une option | Rare, préférer la GUI |
pvesh usage /nodes/pve01/qemu --verbose |
Documentation d'un point d'API | Écrire un script |
... --output-format json-pretty |
Sortie JSON | Avec jq |
pvesh mappe les verbes HTTP : get = GET, create = POST, set = PUT, delete = DELETE.
pvecm : cluster et quorum¶
| Commande | Effet | Quand l'utiliser |
|---|---|---|
pvecm status |
Quorum, votes, membres | Premier réflexe en incident |
pvecm nodes |
Liste des nœuds et leur ID | Inventaire |
pvecm qdevice setup <ip> |
Ajoute un QDevice | MSP, cluster 2 nœuds |
pvecm add pve01 |
Joint un nouveau nœud | MSP |
pvecm delnode pve03 |
Retire un nœud | MSP |
pvecm expected 1 |
Force le nombre de votes attendus | MSP uniquement, risque de split-brain, voir RB-09 |
pveceph : Ceph intégré¶
| Commande | Effet | Quand l'utiliser |
|---|---|---|
pveceph status |
Équivalent de ceph -s |
État de santé |
pveceph pool ls |
Pools, taille, réplicas, PG | Capacité |
pveceph osd create /dev/sdX |
Crée un OSD | Remplacement de disque, RB-03 |
pveceph osd destroy 7 --cleanup |
Supprime un OSD | Après safe-to-destroy uniquement |
pveceph pool create ... / pveceph mon create |
Crée pool / moniteur | MSP |
ceph osd df tree / ceph health detail |
Remplissage, détail des alertes | RB-01, RB-04 |
pvesm, vzdump, ha-manager¶
| Commande | Effet | Quand l'utiliser |
|---|---|---|
pvesm status |
Stockages, type, occupation | Contrôle quotidien |
pvesm list ceph-vm --vmid 101 |
Volumes d'une VM sur un stockage | Disque orphelin |
pvesm set pbs-local --disable 1 |
Désactive un stockage | PBS en maintenance |
vzdump 101 --storage pbs-local --mode snapshot |
Sauvegarde immédiate | Avant une opération risquée |
vzdump 101 102 --storage pbs-local --notes-template '{{guestname}}' |
Sauvegarde de plusieurs VM avec note | Lot ponctuel |
ha-manager status |
État du gestionnaire HA | Après une bascule |
ha-manager add vm:101 --state started |
Met une VM sous HA | Mise en HA |
ha-manager crm-command node-maintenance enable pve01 |
Mode maintenance HA du nœud | RB-02 |
Journaux et tâches¶
| Commande | Effet | Quand l'utiliser |
|---|---|---|
journalctl -u pve-cluster -u corosync --since "1 hour ago" |
Journaux cluster | Nœud grisé |
journalctl -u pvedaemon -u pveproxy -f |
Journaux API et GUI | Erreurs de connexion |
ls /var/log/pve/tasks/ |
Journaux de tâches | Détail d'une tâche échouée |
Pièges vus en support
qm stopau lieu deqm shutdownsur une base de données : arrêt non propre.qm unlocklancé pendant une sauvegarde ou une migration en cours : configuration incohérente.- Commande lancée sur le mauvais nœud :
qmne voit que les VM locales. Utiliserpvesh get /cluster/resourcespour trouver le nœud. pvecm expected 1« pour débloquer » un cluster : risque de split-brain et de corruption. Ticket P1.
Quand ouvrir un ticket iTop
Commande MSP nécessaire, ou commande de lecture qui renvoie une erreur inattendue (pvecm status sans quorum, pveceph status en HEALTH_ERR) : ouvrez un ticket en joignant la sortie complète.
Documentation officielle : qm(1) · pct(1) · pvesh(1) · pvecm(1) · pveceph(1) · pvesm(1) · vzdump(1) · ha-manager(1)