proxmox

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
proxmox [22/04/2025 - 13:28] – [Proxmox PVE] thommie_netzwissen.deproxmox [16/05/2025 - 15:37] (aktuell) thommie_netzwissen.de
Zeile 9: Zeile 9:
   * Helper Scripts: [[https://community-scripts.github.io/ProxmoxVE/|https://community-scripts.github.io/ProxmoxVE/]]   * Helper Scripts: [[https://community-scripts.github.io/ProxmoxVE/|https://community-scripts.github.io/ProxmoxVE/]]
  
- +====== Verzeichnisstruktur ======
-===== Verzeichnisstruktur =====+
  
 ^Was^Wo^Anmerkung| ^Was^Wo^Anmerkung|
Zeile 18: Zeile 17:
 |LXC configs|/etc/pve/nodes/tokoeka/lxc|   | |LXC configs|/etc/pve/nodes/tokoeka/lxc|   |
  
-===== PVE Server Backup =====+====== PVE Server Backup ======
  
 [[https://xcruft.com/content/proxmox-config-backups|https://xcruft.com/content/proxmox-config-backups]] [[https://xcruft.com/content/proxmox-config-backups|https://xcruft.com/content/proxmox-config-backups]]
  
-===== User Management =====+====== User Management ======
  
 User in PVE erstellen (entspricht dem shell User). Erst dann ist die Administration per Web GUI möglich. User in PVE erstellen (entspricht dem shell User). Erst dann ist die Administration per Web GUI möglich.
Zeile 73: Zeile 72:
 </code> </code>
  
-Benutzer der Gruppe zuweisen:+Benutzer einer Gruppe zuweisen:
  
 <code> <code>
Zeile 94: Zeile 93:
 </code> </code>
  
-2FA löschen +2FA Auth löschenüber einen gleichberechtigten User, dann Löschen von "x" im Feld "Key ID"
- +
-über gleichberechtigten User, dann Löschen von "x" im Feld "Key ID"+
  
-===== Kommandozeile und Container/VMs =====+====== Kommandozeile und Container/VMs ======
  
 **qm**  = Management der **kvm**  VMs **qm**  = Management der **kvm**  VMs
Zeile 104: Zeile 101:
 **pct**  = Management der **lxc**  Container **pct**  = Management der **lxc**  Container
  
-==== Alle VMs (KVM und lxc) auf einmal runterfahren ====+====== Alle VMs (KVM und lxc) auf einmal runterfahren ======
  
 <code> <code>
Zeile 120: Zeile 117:
 Doku: [[https://www.historiantech.com/increasing-operational-efficiency-in-proxmox-with-pvesh/|https://www.historiantech.com/increasing-operational-efficiency-in-proxmox-with-pvesh/]] Doku: [[https://www.historiantech.com/increasing-operational-efficiency-in-proxmox-with-pvesh/|https://www.historiantech.com/increasing-operational-efficiency-in-proxmox-with-pvesh/]]
  
-==== VM löschen ====+====== VMlöschen ======
 <code> <code>
  
Zeile 126: Zeile 123:
  
 </code> </code>
-==== Mounten eines Containers auf dem Host ====+ 
 +====== lxc: Mounten eines Containers auf dem Host ======
  
 <code> <code>
Zeile 132: Zeile 130:
  
 </code> </code>
-==== Gemeinsames Guest Share (smb) ====+ 
 +====== Gemeinsames Guest Share (smb) ======
  
 <code> <code>
Zeile 138: Zeile 137:
  
 </code> </code>
-==== Speicherverbrauch ermitteln ====+ 
 +====== Host: Speicherverbrauch ermitteln ======
  
 <code> <code>
Zeile 144: Zeile 144:
  
 </code> </code>
-==== Container umbenennen ====+ 
 +====== lxc: Container umbenennen ======
 <code> <code>
  
Zeile 150: Zeile 151:
  
 </code> </code>
-==== Container betreten ====+ 
 +====== lxc: Container betreten ======
  
 <code> <code>
Zeile 157: Zeile 159:
 </code> </code>
  
-===== Container: Datei senden und empfangen =====+====== lxc: Datei senden und empfangen ======
  
 Datei senden Datei senden
Zeile 173: Zeile 175:
 </code> </code>
  
-Bei VMs geht das per scp+QM: Bei VMs geht das per scp. Dazu braucht man die IP der VM 
 + 
 +====== VM: IP Adresse feststellen ====== 
 + 
 +<code> 
 +qm agent 113 network-get-interface 
 + 
 +</code>
  
-===== Backups manuell =====+====== Backups manuell ======
  
 <code> <code>
Zeile 182: Zeile 191:
 </code> </code>
  
-====== PVE Server ======+====== Host: PVE Server ======
  
 ===== Auto-Start der VMs temporär abschalten ===== ===== Auto-Start der VMs temporär abschalten =====
Zeile 198: Zeile 207:
 </code> </code>
  
-===== PVE Templates =====+====== PVE Templates ======
  
 Erreichbare Templates auflisten Erreichbare Templates auflisten
Zeile 216: Zeile 225:
 </code> </code>
  
-===== PVE Firewall =====+====== PVE Firewall ======
  
 zentrale Konfiguration zentrale Konfiguration
Zeile 233: Zeile 242:
  
 </code> </code>
 +
 +====== Host: Firewall blockiert ======
  
 **Wenn die Firewall den Host blockiert:**  Mit diesem Skript in rc.local wird die FW beim Neustart immer ausgeschaltet: **Wenn die Firewall den Host blockiert:**  Mit diesem Skript in rc.local wird die FW beim Neustart immer ausgeschaltet:
Zeile 256: Zeile 267:
 </code> </code>
  
-====== Meckermails von CERT-BUND wegen RPC ======+====== Meckermails von CERT-BUND wegen RPC Port ======
  
 Der Port 111 ist normalerweise offen, wird aber nicht gebraucht, Zitat Proxmox Staff Der Port 111 ist normalerweise offen, wird aber nicht gebraucht, Zitat Proxmox Staff
Zeile 278: Zeile 289:
 </code> </code>
  
-===== SMB Mount mit Containern =====+====== SMB Mount mit Containern ======
  
 Geht nur mit **privileged**  container. Unter /Your LXC Option/Feature muss die "CIFS capability" aktiviert sein. Geht nur mit **privileged**  container. Unter /Your LXC Option/Feature muss die "CIFS capability" aktiviert sein.
  
-====== Netzwerk: Netplan Beispielconfigs ======+====== Netzwerk: Netplan Beispiel-Configs ======
  
 /etc/netplan/default.yaml für zwei Schnittstellen mit festen IPs, default gateway und routing /etc/netplan/default.yaml für zwei Schnittstellen mit festen IPs, default gateway und routing
Zeile 340: Zeile 351:
 Netplan anwenden "sudo netplan apply" Netplan anwenden "sudo netplan apply"
  
-====== LXC spezielles ======+====== LXC Container ======
  
 [[https://pve.proxmox.com/wiki/Linux_Container|https://pve.proxmox.com/wiki/Linux_Container]] [[https://pve.proxmox.com/wiki/Linux_Container|https://pve.proxmox.com/wiki/Linux_Container]]
Zeile 348: Zeile 359:
 pct start 110 –debug pct start 110 –debug
  
-===== Port 111 rpcbind =====+====== Port 111 rpcbind ======
  
-Siehe [[https://www.taste-of-it.de/debian-rpc-port-111-offen/|https://www.taste-of-it.de/debian-rpc-port-111-offen/]] Über iptables auf localhost einrschränken:+Siehe [[https://www.taste-of-it.de/debian-rpc-port-111-offen/|https://www.taste-of-it.de/debian-rpc-port-111-offen/]] Über iptables auf localhost einschränken:
  
 ''iptables -A INPUT -p tcp !-s 127.0.0.1 –dport 111 -j DROP'' ''iptables -A INPUT -p tcp !-s 127.0.0.1 –dport 111 -j DROP''
Zeile 357: Zeile 368:
  
 ''iptables -A INPUT -p udp ! -s 192.168.0.0/24 –dport 111 -j DROP'' \\ ''ip6tables -A INPUT -p udp -s! IPv6-Adresse –dport 111 -j DROP'' ''iptables -A INPUT -p udp ! -s 192.168.0.0/24 –dport 111 -j DROP'' \\ ''ip6tables -A INPUT -p udp -s! IPv6-Adresse –dport 111 -j DROP''
 +
 +====== LXC: raw Device mounten ======
 +
 +Welche loop devices werden aktuell benutzt
 +<code>
 +
 +losetup -l
 +
 +NAME   SIZELIMIT OFFSET AUTOCLEAR RO BACK-FILE                              DIO LOG-SEC
 +/dev/loop1          0      0          0 /mnt/data/images/108/vm-108-disk-1.raw       512
 +/dev/loop27              0          0 /mnt/data/images/112/vm-112-disk-0.raw       512
 +/dev/loop17              0          0 /mnt/data/images/111/vm-111-disk-2.raw       512
 +/dev/loop8          0      0          0 /mnt/data/images/110/vm-110-disk-0.raw       512
 +/dev/loop25              0          0 /mnt/data/images/125/vm-125-disk-1.raw       512
 +/dev/loop6          0      0          0 /mnt/data/images/100/vm-100-disk-0.raw       512
 +/dev/loop23              0          0 /mnt/data/images/122/vm-122-disk-1.raw       512
 +/dev/loop13              0          0 /mnt/data/images/113/vm-113-disk-0.raw       512
 +
 +</code>
 +
 +Ablauf manuell
 +
 +<code>
 +losetup /dev/loop22 disk-drive-ide0.raw
 +partx -v --add /dev/loop22
 +mount /dev/loop22p1 /mnt/123
 +
 +</code>
 +
 +<code>
 +root@tokoeka /mnt/data/images/116 # losetup /dev/loop19 vm-116-disk-2.raw
 +root@tokoeka /mnt/data/images/116 # partx -v --add /dev/loop19
 +partition: none, disk: /dev/loop19, lower: 0, upper: 0
 +/dev/loop19: partition table type 'gpt' detected
 +range recount: max partno=1, lower=0, upper=0
 +/dev/loop19: partition #1 added
 +root@tokoeka /mnt/data/images/116 # losetup -l | grep 116
 +/dev/loop19              0          0 /mnt/data/images/116/vm-116-disk-2.raw       512
 +/dev/loop8          0      0          0 /mnt/data/images/116/vm-116-disk-0.raw       512
 +/dev/loop18              0          0 /mnt/data/images/116/vm-116-disk-1.raw       512
 +
 +</code>
 +
 +Auflisten aller Loop-Devices
 +<code>
 +
 +losetup -l
 +
 +</code>
 +
 +Devices abhängen, mit -D alle zugehörigen abhängen
 +
 +<code>
 +losetup -d
 +
 +losetup -D
 +
 +</code>
 +
 +Parsen der Partitionstabelle und anlegen von loop Einträgen nach Bedarf
 +
 +<code>
 +partx -v --add /dev/loop20
 +
 +</code>
 +
 +Partitionstabelle zeigen
 +
 +<code>
 +root@tokoeka /mnt # partx -s /dev/loop22
 +NR START       END   SECTORS  SIZE NAME UUID
 +  2048 204799999 204797952 97.7G      7a11d514-01
 +
 +</code>
 +
 +pct set
 +
 +<code>
 +pct set 116 -mp1 volume=data:116/vm-116-disk-2.raw,mp=/mnt/data2,backup=1
 +
 +</code>
  
 ====== Datensicherung: Wiederherstellung aus Dumpfile ====== ====== Datensicherung: Wiederherstellung aus Dumpfile ======
Zeile 363: Zeile 455:
  
 zst dekomprimieren zst dekomprimieren
-<code> 
  
 +<code>
 zstd -d vzdump-lxc-113-2022_05_14-01_30_57.tar.zst zstd -d vzdump-lxc-113-2022_05_14-01_30_57.tar.zst
  
Zeile 441: Zeile 533:
 </file> </file>
  
-====== KVMqcow2 Device mounten ======+====== KVM VMs ====== 
 + 
 +===== qcow2 Device mounten =====
  
 <code> <code>
Zeile 487: Zeile 581:
 </code> </code>
  
-====== LXCraw Device mounten ======+====== KVMPlatte einer VM vergrössern ======
  
-Welche loop devices werden aktuell benutzt +[[https://tech.surveypoint.com/tips/resize-kvm-guest-virtual-disk-partition/|https://tech.surveypoint.com/tips/resize-kvm-guest-virtual-disk-partition/]]
- +
-<code> +
- <font inherit/monospace;;inherit;;#ff5454background-color:#ffffff;>root</font> +
- <font inherit/inherit;;inherit;;#ffff54background-color:#ffffff;>@</font> +
- <font inherit/inherit;;inherit;;#54ffffbackground-color:#ffffff;>tokoeka</font> +
- <font inherit/inherit;;inherit;;#ffff54background-color:#ffffff;>/mnt</font> +
- <font inherit/inherit;;inherit;;#ff54ffbackground-color:#ffffff;>#</font> +
- <font inherit/inherit;;inherit;;#000000background-color:#ffffff;>losetup -l</font>    NAME        SIZELIMIT OFFSET AUTOCLEAR RO BACK-FILE                              DIO LOG-SEC +
-/dev/loop1          0      0          0 /mnt/data/images/108/vm-108-disk-1.raw       512 +
-/dev/loop27              0          0 /mnt/data/images/112/vm-112-disk-0.raw       512 +
-/dev/loop17              0          0 /mnt/data/images/111/vm-111-disk-2.raw       512 +
-/dev/loop8          0      0          0 /mnt/data/images/110/vm-110-disk-0.raw       512 +
-/dev/loop25              0          0 /mnt/data/images/125/vm-125-disk-1.raw       512 +
-/dev/loop6          0      0          0 /mnt/data/images/100/vm-100-disk-0.raw       512 +
-/dev/loop23              0          0 /mnt/data/images/122/vm-122-disk-1.raw       512 +
-/dev/loop13              0          0 /mnt/data/images/113/vm-113-disk-0.raw       512 +
- +
-</code> +
- +
-Ablauf manuell +
- +
-<code> +
-losetup /dev/loop22 disk-drive-ide0.raw +
-partx -v --add /dev/loop22 +
-mount /dev/loop22p1 /mnt/123 +
- +
-</code> +
- +
-<code> +
-root@tokoeka /mnt/data/images/116 # losetup /dev/loop19 vm-116-disk-2.raw +
-root@tokoeka /mnt/data/images/116 # partx -v --add /dev/loop19 +
-partition: none, disk: /dev/loop19, lower0, upper: 0 +
-/dev/loop19: partition table type 'gpt' detected +
-range recount: max partno=1, lower=0, upper=0 +
-/dev/loop19: partition #1 added +
-root@tokoeka /mnt/data/images/116 # losetup -l | grep 116 +
-/dev/loop19              0          0 /mnt/data/images/116/vm-116-disk-2.raw       512 +
-/dev/loop8          0      0          0 /mnt/data/images/116/vm-116-disk-0.raw       512 +
-/dev/loop18              0          0 /mnt/data/images/116/vm-116-disk-1.raw       512 +
- +
-</code> +
- +
-Auflisten aller Loop-Devices +
-<code> +
- +
-losetup -l +
- +
-</code> +
- +
-Devices abhängen, mit -D alle zugehörigen abhängen +
- +
-<code> +
-losetup -d +
- +
-losetup -D +
- +
-</code> +
- +
-Parsen der Partitionstabelle und anlegen von loop Einträgen nach Bedarf +
- +
-<code> +
-partx -v --add /dev/loop20 +
- +
-</code> +
- +
-Partitionstabelle zeigen +
- +
-<code> +
-root@tokoeka /mnt # partx -s /dev/loop22 +
-NR START       END   SECTORS  SIZE NAME UUID +
-  2048 204799999 204797952 97.7G      7a11d514-01 +
- +
-</code> +
- +
-pct set +
- +
-<code> +
-pct set 116 -mp1 volume=data:116/vm-116-disk-2.raw,mp=/mnt/data2,backup=1 +
- +
-</code> +
- +
-Offen: offset? p1 ?+
  
 ====== Daten-Konvertierungen ====== ====== Daten-Konvertierungen ======
Zeile 672: Zeile 684:
 </code> </code>
  
-===== zfs Datasets erstellen =====+====== zfs Datasets erstellen ======
  
 zfs create rpool/mirror zfs create rpool/mirror
Zeile 680: Zeile 692:
 zpool destroy -f rpool zpool destroy -f rpool
  
-====== LE Zertifikate für PVE ======+====== Host: LE Zertifikate für PVE ======
  
 <code> <code>
Zeile 689: Zeile 701:
 root@kakariki /etc/pve # pvenode acme cert order root@kakariki /etc/pve # pvenode acme cert order
  
-</code>+Loading ACME account details Placing ACME order Order URL: <https://acme-v02.api.letsencrypt.org/acme/order/1232182246/198286068416>
  
-Loading ACME account details Placing ACME order Order URL: <[[https://acme-v02.api.letsencrypt.org/acme/order/1232182246/198286068416|https://acme-v02.api.letsencrypt.org/acme/order/1232182246/198286068416]]> +Getting authorization details from '<https://acme-v02.api.letsencrypt.org/acme/authz-v3/250346582026>' The validation for kakariki.netzwissen.de is pending! Setting up webserver Triggering validation Sleeping for 5 seconds Status is 'valid', domain 'kakariki.netzwissen.de' OK!
- +
-Getting authorization details from '<[[https://acme-v02.api.letsencrypt.org/acme/authz-v3/250346582026|https://acme-v02.api.letsencrypt.org/acme/authz-v3/250346582026]]>' The validation for kakariki.netzwissen.de is pending! Setting up webserver Triggering validation Sleeping for 5 seconds Status is 'valid', domain 'kakariki.netzwissen.de' OK!+
  
 All domains validated! All domains validated!
Zeile 701: Zeile 711:
 Downloading certificate Setting pveproxy certificate and key Restarting pveproxy Task OK Downloading certificate Setting pveproxy certificate and key Restarting pveproxy Task OK
  
-### ACME DNS validation Hetzner DNS API+</code> 
 + 
 +====== ACME DNS validation Hetzner DNS API ======
  
 export HETZNER_Token="<token>" export HETZNER_Token="<token>"
-<code> 
  
 +<code>
 ./acme.sh --issue --dns dns_hetzner -d example.com -d *.example.com ./acme.sh --issue --dns dns_hetzner -d example.com -d *.example.com
  
  • proxmox.1745328525.txt.gz
  • Zuletzt geändert: 22/04/2025 - 13:28
  • von thommie_netzwissen.de