Proxmox wichtige Befehle, Pfade und Dateien

~ 0 min
2024-07-16 18:15
  • cfdisk /dev/sda  - userfriendly Partitionierungstool (fdisk) - für alte kleine MBR Disk oder USB
  • gdisk /dev/sda - Partition Editor für GPT-Disks (Befehlszeile)
  • cgdisk /dev/sda - Partition Editor auch für nicht gemountete GPT-Disks, konvertiert None-GPT in GPT
  • dmesg -Tw  - zeigt präzise HD Datenstrom
  • history  - zeigt die letzten Befehle der BASH
  • ls -althr /dev/disk/by-id/  - listet alle HDs im System
  • lsblk  - Übersicht physische und logische Harddisks
  • df - zeigt Pools, Auslastung, Mountpoints
  • lshw  - listet Hardware ( | more)  (apt install lshw)
  • lshw - class disk  - listet physische Disks mit logischem Name, Seriennummer
  • mail  - zeigt die System-Mails, die nicht zugestellt werden konnten aus der Datei /home/<user>/mbox
  • mount  - zeigt alle Mounts

    Zusatztools, (apt install)
  • iftop - Netzwerkdurchsatz + Ziele
  • net-tools  - netstat u.a.
  • iotop - - zeigt I/O von jedem Prozess
  • ethtool - zeigt Details der Netzwerkkarten
  • mc - wie Norton Commander

    Proxmox
  • proxmox-boot-tool status  - zeigt Boot-HDs und installierte PVE-Versionen
  • proxmox-boot-tool clean  - entfernt veraltete Booteinträge
  • pveversion  - zeigt Proxmox Version incl. Kernel
  • qm list  - zeigt alle VMs + Größe und Status
  • qm start <VmId>  - startet VM
  • qm stop <VmId>  - stoppt VM
  • qm unlock <VmId>  - entsperrt VM

    Proxmox Backup Server
  • proxmox-backup-manager datastore list  - listet die Datastores des PBE

    Firewall, Netzwerk
  • ip a  - zeigt alle Netzwerkobjekte
  • service pve-firewall status  - zeigt Firewall Status
  • service pve-firewall stop  - stoppt Firewall

    ZFS
  • zfs get written  - prüfe Snapshots
  • zfs set com.sun:auto-snapshot=true rpool/data/<vmshortname>  - aktiviere Autosnapshot für VM
  • zfs set com.sun:auto-snapshot=false rpool/repl  - schaltet Autosnapshot für rpool/repl ab
  • sgdisk /dev/sda -R /dev/sdb  - klont Partitionstabelle (alle Partitionen) von sda auf sdb (Partitionen sind aber noch leer)
  • sgdisk -G /dev/sdb  - neue HD bekommt eine neue GUID
  • zpool iostat -v 2  - zeigt alle I/O-Aktionen auf Disk
  • zpool import - zeigt alle importierbaren ZFS-Pools
  • zpool status  - zeigt RAID-Status
  • zpool get autottrim  - zeigt Autotrim-Status
  • zpool set autotrim=on rpool  - aktiviert Autotrim
  • zpool history  - zeigt ZFS - Befehlsverlauf (Snapshots usw)
  • zfs list  - zeigt Pools mit Größe, Mountpoints, online/degraded

ZFS wird in Pools (example) und Datasets (example/data) organisiert.
Ein Dataset ist ein ZFS-Dateisystem, Volume, Schnappschüsse oder Klone.
* zpool create example /dev/da0  - erstellt Pool auf einer HD (beliebige RAID möglich)
* zfs create example/data  - erstellt Dataset
Das Dataset kann separat gemountet werden und hat Eigenschaften wie Kompression, Snapshot, Speicher-Kopien, NFS-/SMB-Freigabe usw.
* zfs set mountpoint=/data example/data  - setze Mountpoint für Dataset (Test mit mount oder df)
Datasets können umbenannt und in andere Datasets verschoben werden (zfs rename mypool/usr/mydataset mypool/var/newname).

Ein Volume ist ein spezieller Typ von Dataset. Sie werden nicht ins Dateisystem eingehangen, sondern stellen ein Blockgerät dar.
Das erlaubt es, das Volume für beliebige andere Dateisysteme zu verwenden, die Festplatten einer virtuellen Maschine bereitzustellen oder über Protokolle wie iSCSI oder HAST exportiert zu werden.

Pools sollten regelmäßig mit (zpool scrub data) auf Fehler überprüft/korrigiert werden.
Die RAID Mirror Größe wird durch die Kapazität des kleinsten Laufwerkes bestimmt. Wird die kleinste Platte durch ein größeres Laufwerk ersetzt, vergrößert sich der Pool beim resilver-Prozess.
Mehr dazu: https://docs.freebsd.org/de/books/handbook/zfs/

  • Wichtige Verzeichnisse und Dateien:
  • /etc/  - Verzeichnis enthält alle wesentlichen Konfig-Files des Proxmox -> sichern!  (Datenbank, nur bei laufendem Proxmox verfügbar)
  • /etc/passwd  - Liste aller eingerichteten Benutzer (Sicherheitsmonitoring!)
  • /etc/profile  - Profileinstellungen zum Hinterlegen von LogIn-Shell-Scripten (Setup AT)
  • /etc/cron.d/pve-conf-backup  - Cron-Jobs, Backup
  • /etc/cron.hourly/  - stündliche Cron-Jobs
  • /etc/cron.hourly/zfs-auto-snapshot  - vor kritischen Installationen immer Snapshot erstellen per SSH auf PVE für alle VM
  • /etc/network/interfaces - Netzwerkeinstellungen
  • /etc/network/interfaces.d - Netzwerke und IP-Adressen des Proxmox
  • /etc/pve/ - alle Maschinenkonfigurationen (Datenbank! Backup in /rpool/pveconf/)
  • /etc/pve/storage.cfg - HD-Pools, Storage des Proxmox
  • /etc/pve/firewall/cluster.fw  - Einstellungen der FireWall (Setup AT)
  • /etc/pve/openvz/qemu-server/<vmid>.conf  - Einstellungsdatei der einzelnen VMs
  • /etc/pve/lxe/<vmid>.conf - Einstellungsdatei des einzelnen Containers
  • /etc/pve/quemu-server/101.conf - Konfig der VM 101

  • /root/.ssh  - known_hosts  - sollte sich nicht verändern ohne Zutun (bei Login mit sudo Umweg: /home/<user>/.ssh) (Sicherheitsmonitoring!)
  • /root/.ssh  - authorized_keys  - Liste aller erlaubten SSH-Keys  (Sicherheitsmonitoring!)

  • /rpool/data/  - Storage 'local-zfs', alle VMs, jede VM bekommt (2) eigene Mountpoints unter /rpool/data/
  • /rpool/data/vm-100-disk-0 - VM 100 BIOS/Boot
  • /rpool/data/vm-100-disk-1 - VM 100 Daten (Volume mit typisch 3 Partitionen)
  • /rpool/pveconf  - Konfig -Backup (von /etc/pve/)
  • /rpool/pveconf/.zfs/snapshot/  - alle Snapshots der /pve/ Konfigurationen
  • /rpool/pveconf/etc/pve/  - SSH-Keys, storage.cfg (Datastore)
  • /rpool/repl/... - Replikate
  • /rpool/repl/data  - Replikat von rpool/data

    Proxmox-Storages:
  • System-HD (/dev/sda) 3 Partitions:
  • /dev/sda1 - Legacy BIOS Boot (1MB)
  • /dev/sda2 - EFI Boot-System (512MB)
  • /dev/sda3 - ZFS/Proxmox-RAID 'rpool' (Rest bzw. Setup:HDSize)

  • rpool - /dev/sda3
  • local  - Proxmox-Installation, ISOs, Templates
    /rpool/var-lib-vz/ - /var/lib/vz/
    dir: local
            path /var/lib/vz
            content iso,vztmpl,backup
    
  • local-zfs (oder local-lvm) - rpool/data - Speicher für die VMs (16k -Blöcke!), Thin-Prov (Disk-Image, Container)
    # default image store on LVM based installation
    lvmthin: local-lvm
            thinpool data
            vgname pve
            content rootdir,images
    # default image store on ZFS based installation
    zfspool: local-zfs
            pool rpool/data
            sparse
            content images,rootdir
    

    ggf. weitere Storages:
  • schneller NVME-Cache  (->Hochlastige VM optimieren, kein Autosnapshot) (/rpool/swap)
  • Backup-Storage lokal (kein Autosnapshot) oder remote (SMB/NFS/iSCSI)
  • HDD-Storage
  • Shares im Hypervisor sind immer für die VMs da (Backup, VMs usw.).
    Gemeinsamer Storage für alle VM muß über SMB/NFS/iSCSI-Shares angebunden werden. VMs können nicht direkt auf Speicher des Hosts zugreifen.
    1.Lösung: LXC als SMB-Share
    2.Lösung: SMB-Share mit Samba direkt auf Proxmox-Host
  • interne Speicherkonfig steht in /etc/pve/storage.cfg

    SMB-Share (hdpool1) mit Samba direkt auf Proxmox-Host
  • apt-get install nfs-kernel-server rpcbind  - Dienste installieren, aktivieren, starten
    (https://www.number13.de/zfs-dateisystem-mit-nfs-oder-samba-smb-freigeben/)
  • zfs set sharenfs='rw,no_root_squash,insecure' hdpool1  - Datenpool frei geben
  • apt-get install samba  - Samba installieren, Freigabe und Berechtgungen einrichten
    chmod 2775 /hdpool1 - Berechtigung setzen
    (https://computingforgeeks.com/how-to-configure-samba-share-on-debian/)
  • nano /etc/samba/smb.conf - Abschnitt für Freigabe(n) einfügen
    [daten1]
       comment = HD-Pool
       path = /hdpool1/daten1
       writable = yes
       guest ok = no
       valid users = @smbshare
       force create mode = 770
       force directory mode = 770
       inherit permissions = yes
    
    Test mit 'testparm'
  • smbclient '\\localhost\hdpool1' -U sambauser - Test vom eigenen Host
  • ggf. Firewall für Samba öffnen

    Default ZFS RAID-Pool:
  • /rpool/ROOT/
  • /rpool/data/  -- alle VMs
  • /rpool/ROOT/pve-1  -- Proxmox System


Speichertypen

(https://pve.proxmox.com/wiki/Storage)

  • File Level based Storage
    - erlaubt vollen Zugriff auf das darunter liegende Filesystem
    - flexibler, erlaubt jeden Content type
  • Block Level Storage
    - geeignet für große RAW Files (keine ISOs, Backups..)


Links:

Durchschnittliche Bewertung 0 (0 Abstimmungen)

Es ist möglich, diese FAQ zu kommentieren.