Proxmox 7 auf dem Raspberry Pi 4 installieren

Das Pimox Projekt von MinkeBox (Tim Wilkinson) war die erste Portierung von Proxmox VE 6 auf den Raspberry Pi 4.
Das aktuelle Pimox7 Projekt ist die Portierung von Proxmox VE 7 auf den Raspberry Pi 4. :-)

Proxmox ist relativ schnell installiert, allerdings musste bei mir noch ein wenig nachgearbeitet werden.

04.09.2022 - Anleitung aktualisiert (automatische Installation von Pimox7)
14.08.2022 - Anleitung aktualisiert (eeprom-update, Tipp von Jonas)
28.04.2022 - Anleitung aktualisiert (Probleme mit aktuellen Bullseye CT Images)
27.03.2022 - Anleitung aktualisiert (CPU Info patchen)
20.03.2022 - Anleitung aktualisiert (Pimox7 installer script)
14.11.2021 - Anleitung aktualisiert (Link zu den Container Images aktualisiert)
08.11.2021 - Raspberry Pi OS Bullseye verfügbar
10.09.2021 - Anleitung aktualisiert (Pimox7 installieren)
22.08.2021 - Pimox7 released! https://github.com/pimox/pimox7
27.07.2021 - Anleitung aktualisiert (SWAP erhöhen)
27.07.2021 - Anleitung aktualisiert (Container Arbeitsspeicher Anzeige und Hot-Swap)
18.06.2021 - Anleitung aktualisiert (Container Templates erstellen)
15.06.2021 - Anleitung aktualisiert (Debian 10 Buster VM installieren)

benötigt werden (mein Setup):

  • Raspberry Pi 4 mit 8GB RAM
  • Raspberry Pi OS 64-Bit (kein 32-Bit)
  • aktueller bootloader (firmware/eeprom)
  • USB auf SATA Adapter (Amazon)
  • SSD (microSD-Karte oder USB-Stick geht auch, aber nicht empfehlenswert)

bootloader updaten und USB Boot aktivieren

Mit dem Raspberry Pi Imager ein aktuelles rpi-boot-eeprom-recovery-usb Image auf eine SD-Karte schreiben und den Pi damit updaten.

Die microSD-Karte in den Raspberry Pi, einschalten und mindestens 10 Sekunden warten!

Wenn der Vorgang erfolgreich war, blinkt die grüne LED schnell (unendlich), ansonsten wird ein Fehlermuster dargestellt.
Mit einem HDMI Monitor am Pi wird der Bildschirm bei Erfolg grün und bei einem Fehler rot.

Tipp von Jonas

Ein kleiner Trick, um sich das eeprom-update zu erleichtern:

1. Raspberry Pi OS (64bit) wie gewohnt installieren
2. Stand der Firmware mit sudo rpi-eeprom-update überprüfen
3. ggf. mit sudo rpi-update die Firmware aktualisieren.

Raspberry Pi OS 64-Bit installieren

Ein aktuelles 2022-xx-yy_raspios-bullseye-arm64-lite.img.xz herunterladen und mit dem Raspberry Pi Imager auf die SSD schreiben.

Kleiner Tipp: Drückt man STRG + SHIFT + X im Pi Imager, kann man direkt zusätzliche Einstellungen mit in das zu schreibende Image übernehmen.
Ist in der aktuellen Version des Raspberry Pi Imagers nicht mehr nötig.

Die SSD am Pi bootet jetzt von USB.

automatische Installation von Pimox7

Das Installationsskript nimmt einem die manuelle Konfiguration ab. (getestet am 04.09.2022)

Aktuelles 2022-xx-yy_raspios-bullseye-arm64-lite.img.xz herunterladen und mit dem Raspberry Pi Imager auf die SSD schreiben. Dann auf der Konsole:

pi@pimox:~# sudo -s
root@pimox:~# curl https://raw.githubusercontent.com/pimox/pimox7/master/RPiOS64-IA-Install.sh > RPiOS64-IA-Install.sh
root@pimox:~# chmod +x RPiOS64-IA-Install.sh
root@pimox:~# ./RPiOS64-IA-Install.sh

Installation läuft durch, meldet am Ende aber noch zwei Fehler (pve-manager und proxmox-ve) die nach einem reboot behoben werden.

Nach dem reboot noch ein sudo apt upgrade -y durchführen und die dpkg Fehler sind weg.

Fertig, Proxmox 7 läuft! :) VMs und CTs können jetzt erstellt werden.

manuelle Installation von Pimox7

System updaten, feste IP setzen, keine IPv6 Adressen und den hostnamen und IP in der /etc/hosts eintragen und den Pi neu starten.
Ohne den Eintrag in der hosts Datei schlägt die Installation fehl!

root@pimox:~# apt update
root@pimox:~# apt upgrade -y
 
root@pimox:~# vi /etc/hostname
pimox

root@pimox:~# vi /etc/hosts
#127.0.1.1     pimox                      <-- entfernen!
192.168.50.64 pimox.bachmann.lan pimox

root@pimox:~# vi /etc/dhcpcd.conf
interface eth0
static ip_address=192.168.50.64/24
static routers=192.168.50.1
static domain_name_servers=192.168.50.1

root@pimox:~# reboot

Pimox7 installieren

Die externen Quellen hinzufügen und installieren. (dauerte ca. 20 Minuten)
Sollte nicht über das Netzwerk, sondern direkt an der Konsole durchgeführt werden. (Hab über ssh installiert und lief problemlos durch.)

pi@pimox:~# sudo -s
root@pimox:~# curl https://raw.githubusercontent.com/pimox/pimox7/master/KEY.gpg | apt-key add -
root@pimox:~# echo "deb https://raw.githubusercontent.com/pimox/pimox7/master/ dev/" > /etc/apt/sources.list.d/pimox.list
root@pimox:~# apt update
root@pimox:~# apt install -y proxmox-ve

Zum Schluss noch ein root Passwort festlegen (wird für den Proxmox login im WebUI benötigt) und den Pi neu starten.

root@pimox:~# passwd
root@pimox:~# reboot

Proxmox 7 läuft! :-)

vmbr0 Bridge erstellen

Nach der Installation war keine Linux Bridge vorhanden. Ohne das Paket ifupdown2 wurde bei mir kein Bridge Interface auf dem Pi erstellt.

root@pimox:~$ apt install ifupdown2

Neue Linux Bridge erstellen und das System danach nochmal neu starten.

VM erstellen

Debian 11 Bullseyedebian-11.x.y-arm64-netinst.iso

Mit den Standardwerten startet die VM nicht. Angepasst werden musste:

  • CD/DVD Drive: scsi
  • CPU: host
  • BIOS: ovmf
  • EFI Disk: hinzufügen
  • BOOT ORDER: 1st cd, 2nd hdd

Erst mit den obigen Einstellungen startete die VM und konnte installiert werden.

Debian 10 Busterdebian-10.10.0-arm64-netinst.iso

Mit den Standardwerten startet die VM nicht. Anpassungen wie für Bullseye und noch zusätzlich:

  • SERIAL PORT: hinzufügen
  • DISPLAY: serial terminal

Die Lösung war hier das serielle Terminal für die Installation zu nutzen. Alle anderen Einstellungen führten zu einem: Guest disabled display.
Das Display kann nach der Installation wieder zurück auf Default gestellt werden.

CT erstellen

Bisher hab ich noch keine arm64 LXC Templates gefunden. Sie können aus dem rootfs bestehender Linux Container aber einfach selbst erstellt werden.
Das rootfs.tar.xz der gewünschten Distribution (arm64) einfach ins Verzeichnis der Container Templates herunterladen, umbenennen und fertig. (Danke an Lucas)

# Debian 11 (bullseye)
root@pimox:~# cd /var/lib/vz/template/cache
root@pimox:~# curl https://uk.lxd.images.canonical.com/images/debian/bullseye/arm64/default/20220116_07:01/rootfs.tar.xz -o debian-11.2-standard_arm64_2022.01.16.tar.xz

# Debian 10 (buster)
root@pimox:~# cd /var/lib/vz/template/cache
root@pimox:~# curl https://uk.lxd.images.canonical.com/images/debian/buster/arm64/default/20220116_06:11/rootfs.tar.xz -o debian-10.10-standard_arm64_2022.01.16.tar.xz

Für andere Distributionen bleibt die Vorgehensweise gleich.

28.04.2022 – Mit den aktuellen Bullseye default Images gibt es Probleme, die cloud Images funktionieren problemlos. (siehe Beitrag von rappelkiste)

Fehlermeldung:

unable to open file '/etc/network/interfaces.tmp.22646' - No such file or directory
TASK ERROR: unable to create CT 100 - error in setup task PVE::LXC::Setup::post_create_hook

Zusammenfassung:

# DEFAULT IMAGE – https://uk.lxd.images.canonical.com/images/debian/bullseye/amd64/default/20220903_15:17/rootfs.tar.xz
IP DHCP -> CT kann nicht erstellt werden
IP STATIC, aber keine IP und Gateway eingetragen -> CT kann erstellt werden, startet und bekommt trotzdem per DHCP eine IP

# CLOUD IMAGE – https://uk.lxd.images.canonical.com/images/debian/bullseye/amd64/cloud/20220903_15:17/rootfs.tar.xz
IP DHCP -> CT kann erstellt werden, startet, Netzwerk funktioniert
IP STATIC -> CT kann erstellt werden, startet, Netzwerk funktioniert

Container Arbeitsspeicher Anzeige und Hot-Swap (Tipp von shorty)

Die Speichernutzung wird bei LXC Container nicht angezeigt

und kann im laufenden Betrieb auch nicht verändert werden. (memory: unable to hotplug memory: trying to change memory cgroup values: container not running)

Damit der RAM für die Container korrekt angezeigt wird und auch im laufenden Betrieb verändert werden kann, in der /boot/cmdline.txt am Ende der Zeile anfügen:

cgroup_enable=cpuset cgroup_enable=memory cgroup_memory=1

Nach der Änderung einen reboot durchführen!

SWAP erhöhen (Tipp von shorty)

Gerade beim 4GB Modell in Kombination mit einer SSD ist es sehr hilfreich mehr als 100MB SWAP zu besitzen.

root@pimox:~# swapoff -a
root@pimox:~# nano /etc/dphys-swapfile
CONF_SWAPSIZE=4096
CONF_MAXSWAP=4096

root@pimox:~# swapon -a
root@pimox:~# service dphys-swapfile restart

CONF_MAXSWAP=4096 muss gesetzt werden, sonst wird immer bei 2GB ein Limit gezogen.

CPU Info patchen

Die CPU Erkennung auf dem Raspberry Pi 4 gibt nur ein “unknown” aus. Kleiner Schönheitsfehler. ;)
In der /usr/share/javascript/proxmox-widget-toolkit/proxmoxlib.js kann das CPU Model einfach fest verdratet werden.

render_cpu_model: function(cpu) {
    let socketText = cpu.sockets > 1 ? gettext('Sockets') : gettext('Socket');
    //return `${cpu.cpus} x ${cpu.model} (${cpu.sockets.toString()} ${socketText})`;
    return `${cpu.cpus} x Cortex-A72 (ARM v8) 64-bit SoC @ 2.00GHz (${cpu.sockets.toString()} ${socketText})`;
},

Browser neu laden (SHIFT + reload) und die CPU Anzeige sollte sich jetzt geändert haben.

Danke an Schreiners Techarchiv für den Tipp.

Updates

Hier ist man auf den Entwickler angewiesen.

links

141 Gedanken zu „Proxmox 7 auf dem Raspberry Pi 4 installieren“

  1. Coole Sache, immer schon nach gesucht. Leider klappt es bei mir noch nicht so ganz.
    Habe aus der Anleitung leider auch nicht das 2021-03-04-raspios-buster-arm64-lite.img gefunden, sonder lediglich eine neuere Version.
    Werde ich mir dann vielleicht doch morgen noch einmal anschauen.

    Antworten
    • Die Version sollte keine entscheidende Rolle spielen. Ich würde immer die aktuellste nehmen.
      Das 2021-mm-dd-raspios-buster-arm64-lite.zip kann direkt mit dem Pi Imager geflasht werden und muss vorher nicht extra entpackt werden.

      Antworten
      • OK, dann muß ich mal sehen, wo bei mir der Fehler liegt. Habe das ganze noch einmal gemacht. Jedenfalls startet PVE-Statd leider nicht.

        Bei meinem ersten Versuch habe ich eigentlich alles so wie beschrieben gemacht, bis auf der festen IP. Die hatte ich per DHCP Reserviert weiter verteilen lassen. Beim Zweiten Versuch bin ich nach der Anleitung vorgegangen. Bin übrigens von dem Imager begeistert. Hatte sonst immer den Etcher verwendet. Mit der Funktion im Imager direkt den Hostnamen zu vergeben etc. ist schon cool.

        Ich freue mich schon aufs lauffähige Pimox, ansonsten bin ich noch auf der Suche nach dem Proxmox Backupserver auf dem Pi. Der würde wie ich finde auch richtig Sinn ergeben.

        Antworten
        • Leider scheitern meine Versuche immer mit:

          Setting up pve-manager (6.4-4rpve1) …
          Job for pvestatd.service failed because the control process exited with error code.
          See “systemctl status pvestatd.service” and “journalctl -xe” for details.
          dpkg: error processing package pve-manager (–configure):
          installed pve-manager package post-installation script subprocess returned error exit status 1
          Errors were encountered while processing:
          pve-manager
          E: Sub-process /usr/bin/dpkg returned an error code (1)

          Antworten
          • Hab die Installation gerade nochmal mit einem aktuellen 64-Bit Raspberry Pi OS durchgeführt, funktioniert einwandfrei!
            Den Eintrag in der /etc/hosts hast du gemacht? ;)

          • Den Eintrag in der /etc/hosts habe ich gemacht. Habe gerade aber so eine Ahnung, was ich falsch gemacht haben könnte. Bei der IP Festlegung in der Static ip habe ich auch /24 angegeben, verwende jedoch ein /23. Das werde ich morgen nochmal testen. Ansonsten werde ich meine Configs dann mal posten. Danke dir auf jedenfall fürs testen.

  2. Vielen Dank für die ausführliche Anleitung! :)
    Eine Frage hätte ich aber bezüglich der Networkbridge. Hat jemand es geschafft, diese VLAN Aware einbinden zu können?
    Leider hatte das Ganze bei mir nicht so wirklich gegriffen und führte immer dazu, dass ich die Verbindung verloren habe.

    Antworten
    • VLAN Aware draußen lassen, das hab ich bereits gemerkt.

      Leider ist der Debian Template Server offline weshalb ich mir was anderes für LXC einfallen lassen muss

      Antworten
    • ich habe VLAN’s mit folgender konfiguration in der /etc/network/interfaces hinbekommen:

      auto lo
      iface lo inet loopback

      iface eth0 inet manual

      auto vmbr999
      iface vmbr999 inet static
      address 10.0.1.110/24
      gateway 10.0.1.1
      bridge-ports eth0.999
      bridge-stp off
      bridge-fd 0
      bridge-vlan-aware yes
      bridge-vids 2-4094
      up brctl addif vmbr999 eth0.999
      up ip link set eth0.999 up

      auto vmbr10
      iface vmbr10 inet manual
      bridge-ports eth0.10
      bridge-stp off
      bridge-fd 0
      bridge-vlan-aware yes
      bridge-vids 2-4094
      up brctl addif vmbr10 eth0.10
      up ip link set eth0.10 up

      ich mußte allerdings auch ein:
      systemctl disable dhcpcd.service
      zusätzlich machen, weil der dhcpcd dienst einem immer dazwischen funkt.

      Ach ja, nicht vergessen:
      echo 8021q >> /etc/modules
      muß auch gemacht werden, sonst wird dieses kernel-modul zu spät geladen.

      Antworten
      • Moin!

        Könntest du das nochmal erleutern?
        Ich scheitere leider daran 2 Netze per VLAN Tagging auf den Port zu binden.

        Ich habe 2 Netze, eins mit ID 105 als natives Netz und ein Netz mit 1 ID als tagged Netz.

        Viele Grüße
        Lucas

        Antworten
        • Für alle die das selbe Problem haben wie ich:

          Ihr benötigt 2 VLAN’s die als Tagged Netze ausgeführt sind.
          Ich verwende UniFi und habe in der Switchport Konfig immer ein natives Netz und ein tagged Netzwerk ausgewählt.
          Das ist aber falsch! Es darf kein natives Netz gewählt sein, sondern nur Tagged Netze.

          Wichtig dabei ist auch, dass die Bearbeitung über die Shell erfolgt, da ifupdown2 bei der Änderung über das WebUI eine Fehlermeldung ausgibt und euch aussperrt.

          Dann funktioniert auch die Konfig von pi4mox.

          auto lo
          iface lo inet loopback

          iface eth0 inet manual

          auto vmbr999
          iface vmbr999 inet static
          address 10.0.1.110/24
          gateway 10.0.1.1
          bridge-ports eth0.VLANID1
          bridge-stp off
          bridge-fd 0
          bridge-vlan-aware yes
          bridge-vids 2-4094
          up brctl addif vmbr999 eth0.VLANID1
          up ip link set eth0.VLANID1 up

          auto vmbr10
          iface vmbr10 inet manual
          bridge-ports eth0.VLANID2
          bridge-stp off
          bridge-fd 0
          bridge-vlan-aware yes
          bridge-vids 2-4094
          up brctl addif vmbr10 eth0.VLANID2
          up ip link set eth0.VLANID2 up

          Viele Grüße
          Lucas

          Antworten
  3. Super, vielen Dank für diese Anleitung!

    Leider bekomme ich beim starten der VM folgenden Fehler:

    kvm: -device usb-ehci,id=ehci,bus=pci.0,addr=0x1: Duplicate ID ‘ehci’ for device
    TASK ERROR: start failed: QEMU exited with code 1

    Diesen Error bekomme ich auch bei anderen Tutorials, also nehme ich an das es etwas Grundlegendes ist. Wobei CT ohne Probleme laufen.

    Vielleicht hat jemand eine Rat.

    Vielen Dank im voraus!

    Antworten
  4. Jetzt funktioniert das auch bei mir. Hatte in der hosts die Zeile bislang nur ergänzt, wenn ich die Zeile mit der 127.0.1.1 lösche klappt das auch.
    Jetzt muß ich nur noch mal so eine Installation mit dem Proxmox Backup Server finden, das wäre ein Traum.
    Danke noch einmal für deine unheimlich gute Doku.

    Antworten
  5. Hi,

    leider findet er bei mir das Paket nicht. Image – raspios_lite_arm64-2021-05-28, Raspberry Pi 4 8GB

    pi@pimox:~ $ sudo -s
    root@pimox:/home/pi# curl https://gitlab.com/minkebox/pimox/-/raw/master/dev/KEY.gpg | apt-key add –
    % Total % Received % Xferd Average Speed Time Time Time Current
    Dload Upload Total Spent Left Speed
    100 3143 0 3143 0 0 7447 0 –:–:– –:–:– –:–:– 7430
    OK

    root@pimox:/home/pi# curl https://gitlab.com/minkebox/pimox/-/raw/master/dev/pimox.list > /etc/apt/sources.list.d/pimox.list
    % Total % Received % Xferd Average Speed Time Time Time Current
    Dload Upload Total Spent Left Speed
    100 56 100 56 0 0 189 0 –:–:– –:–:– –:–:– 188

    root@pimox:/home/pi# apt update
    Hit:2 http://raspbian.raspberrypi.org/raspbian buster InRelease
    Hit:3 http://archive.raspberrypi.org/debian buster InRelease
    Get:1 https://gitlab.com/minkebox/pimox/-/raw/master dev/ InRelease
    Get:4 https://gitlab.com/minkebox/pimox/-/raw/master dev/ Packages [347 kB]
    Fetched 349 kB in 2s (161 kB/s)
    Reading package lists… Done
    Building dependency tree
    Reading state information… Done
    All packages are up to date.

    root@pimox:/home/pi# apt install pve-manager
    Reading package lists… Done
    Building dependency tree
    Reading state information… Done
    Package pve-manager is not available, but is referred to by another package.
    This may mean that the package is missing, has been obsoleted, or
    is only available from another source
    However the following packages replace it:
    libpve-guest-common-perl

    E: Package ‘pve-manager’ has no installation candidate

    root@pimox:/home/pi# history
    1 apt update
    2 apt upgrade -y
    3 nano /etc/hostname
    4 nano /etc/hosts
    5 nano /etc/dhcpcd.conf
    6 nano /etc/hosts
    7 reboot
    8 curl https://gitlab.com/minkebox/pimox/-/raw/master/dev/KEY.gpg | apt-key add –
    9 curl https://gitlab.com/minkebox/pimox/-/raw/master/dev/pimox.list > /etc/apt/sources.list.d/pimox.list
    10 apt update
    11 apt install pve-manager

    Antworten
    • Sieht soweit alles gut aus.
      Du hast ein frisches _64-Bit_ Raspberry Pi OS installiert!?

      Oder ein bestehendes 32-Bit auf 64-Bit umgestellt?
      Das hatte ich nämlich mal probiert und ging dann auch mit diesem Fehler in die Hose.

      $ uname -a
      Linux pimox 5.10.17-v8+ #1421 SMP PREEMPT Thu May 27 14:01:37 BST 2021 aarch64 GNU/Linux

      $ file /bin/bash
      /bin/bash: ELF 64-bit LSB pie executable, ARM aarch64, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-aarch64.so.1

      Antworten
      • Oh danke für den Tipp da scheint der Fehler zu sein:

        root@pimox:/home/pi# uname -a
        Linux pimox 5.10.17-v7l+ #1421 SMP Thu May 27 14:00:13 BST 2021 armv7l GNU/Linux

        root@pimox:/home/pi# file /bin/bash
        /bin/bash: ELF 32-bit LSB executable, ARM, EABI5 version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-armhf.so.3

        Antworten
  6. root@pimox:~# vi /etc/hostname
    pimox

    Dann kann ich nichts mehr machen.

    Wenn ich mich neu verbunden habe und “root@pimox:~# vi /etc/hosts” eingebe, dann kommt folgendes und ich die Tasten auf der Tastatur bringen andere Buchstaben oder es passiert gar nichts. Kann mir bitte jemand helfen?

    Antworten
  7. Mahlzeit!!!

    Vorab sei gesagt, auch danach habe ich schon lange geschaut und bin begeistert fündig geworden zu sein. Pimox funktioniert, nun möchte eine vorhandene Festplatte an einen LXC Container durchreichen. Als Vorlage habe ich hier die Anleitung https://www.bachmann-lan.de/proxmox-physikalische-festplatte-in-vm-durchreichen/ verwendet, bekomme dann eine Fehlermeldung “Configuration file ‘nodes/pimox/qemu-server/101.conf’ does not exist”

    Verwendeter Befehl “qm set 101 -scsi1 /dev/disk/by-id/ata-Hitachi_HTS723225L9A362xxxxxx” -> 101 ist der LXC Container von daher sollte das passend sein!
    Wo liegt die Herausforderung?

    mfg ELMO

    Antworten
    • Hallo ELMO.

      Im Artikel steht VM, du versuchst das aber bei einem LXC Container. Das geht so leider nicht.
      In einen Container kann man auch nur eine Festplatte einbinden (mounten), nicht direkt durchreichen.

      Gruß, Michael…

      Antworten
  8. Super Anleitung funktioniert bestens,

    funktioniert das durchreichen von Festplatten genauso wie hier auf der Webseite bereits beschrieben worden ist??

    beste Grüße

    Antworten
  9. Supergeil! Ich hab schon länger nach einer Möglichkeit gesucht um Proxmox auf dem RasperryPi zum laufen zu bekommen.

    Leider funktionieren bei mir die Graphen für RAM nicht (außer beim Proxmox Host selbst) und in der Übersicht der Hosts wird nur der Verfügbare RAM,
    nicht aber der benutzte RAM angezeigt. Gibts da eine Lösung?

    Außerdem: Eine Idee wie ich Watchdog auf dem Pi mit Proxmox konfiguriere?

    Antworten
  10. Hallo,
    leider kann man anscheinend nur die bullseye Version als VM installieren, kein Debian 10.
    Ob Debian 10.9 oder Ubuntu, ich komme immer nur bis zum ersten Fenster, wo man u.a. “Install” auswählen kann” und wenn ich dann Install wähle,
    dann wird wirds schwarz mit der Info “guest disabled Display” und das wars dann.
    Ich habe schon alle Hardware-Anzeige Optionen probiert, aber leider klappt nix davon.

    Antworten
  11. Hallo zusammen,
    geniale Sache. Habe auch alles, Dank der guten Anleitung, zum Laufen gebracht.
    Leider funktionieren die selbst gebauten LXC Container nicht bei mir. Wenn ich das mit Debian Bullseye oder Buster mache bekomme ich folgende Anzeige in der Konsole CT:

    Connected to tty 1
    Type to exit the console, to enter Ctrl+4 itself

    hier geht es dann nicht weiter. Habe heute mal einen Container-Template mit Ubuntu gebaut. Das funktioniert.
    Kann mir einer einen Tip geben warum das mit den anderen beiden bei mir nicht funktioniert?

    Beste Grüße
    Averall

    Antworten
    • Hab das gerade nochmal mit Buster ausprobiert, funktioniert ohne Probleme. (CT mit Standardeinstellungen)
      Erstellst du die Container wie ich es beschrieben habe, oder nutzt du eine andere Variante?

      Antworten
      • Hallo,
        ich benutze genau die von dir beschriebene Variante, halt nur mit aktuellem Paket.
        Habe aber gerade per Zufall rausgefunden das der Login Promt doch noch kommt. Allerdings nach 5:10 min.
        Habe es extra noch mal gestoppt. Dann klappt auch alles.
        Wie gesagt, mit dem erstellten Ubuntu Template funktioniert das sofort.
        Meine Hardware:
        Raspi 4 8GB RAM
        Kingston M.2 SSD 240 GB in einem ArgonOne V2 Gehäuse.

        Beste Grüße
        Averall

        Antworten
        • Hallo,

          Selber Pi, selbes Problem und auch bei mir dauert es ca. 5 min bis der Login erscheint. Auch wenn man einen openSSH-Server installiert, ist ein Login per SSH in dieser Zeit nicht möglich. Danach geht es. Sehr merkwürdig.

          Antworten
  12. Hallo,

    habe so fern alles hinbekommen, sofert ich eine Vm Starten will erhalte ich die meldung:

    “kvm: -device ide-cd,bus=ide.1,unit=0,drive=drive-ide2,id=ide2,bootindex=101: Bus ‘ide.1’ not found
    TASK ERROR: start failed: QEMU exited with code 1”

    Es läuft über eine Toshiba 1TB Usb 3.0 Festplatte

    die Settiings sind
    Bios OVMF (UEFI)
    CD/DVD ide2 Debian bullseye-DI-rc1-arm64-netinst.iso
    CPU Host

    Vielen dank schon mal

    Antworten
    • Ich dachte immer ein Template müsste zwingend im *.tar.gz Format sein. Stimmt aber nicht (mehr).
      Super Tipp, vielen Dank, hab’s im Artikel aktualisiert! :)

      Antworten
  13. Hallo
    Herzlichen Dank für diese super Anleitung. Eine kleine Frage. Ich habe die source.list editiert wie im pve-admin-guide.pdf unter Punkt 3.1.2 beschrieben.
    Ich kriege eine Fehlermeldung (siehe unten). Wird das update auf dem Pi anders verarbeitet als bei einer normalen Installation? Bei einer normalen installation funktioniert es.

    starting apt-get update
    Hit:2 http://deb.debian.org/debian buster InRelease
    Hit:3 http://deb.debian.org/debian-security buster/updates InRelease
    Hit:4 http://archive.raspberrypi.org/debian buster InRelease
    Hit:5 http://deb.debian.org/debian buster-updates InRelease
    Get:6 http://download.proxmox.com/debian/pve buster InRelease [3051 B]
    Get:1 https://gitlab.com/minkebox/pimox/-/raw/master dev/ InRelease
    Err:6 http://download.proxmox.com/debian/pve buster InRelease
    The following signatures couldn’t be verified because the public key is not available: NO_PUBKEY 7BF2812E8A6E88E0
    Reading package lists…
    W: GPG error: http://download.proxmox.com/debian/pve buster InRelease: The following signatures couldn’t be verified because the public key is not available: NO_PUBKEY 7BF2812E8A6E88E0
    E: The repository ‘http://download.proxmox.com/debian/pve buster InRelease’ is not signed.
    TASK ERROR: command ‘apt-get update’ failed: exit code 100

    Antworten
    • Da dies keine “normale” Installation ist, darfst du nicht die Proxmox Repositories hinzufügen.
      Updates kommen nur von Debian und dem Pimox Entwickler.

      Antworten
  14. Ich frage mich, ob es irgendwie möglich ist von einem PI ein Image als RAW Datei zu ziehen und die RAW Datei dann als VM in PIMOX einzubinden.
    Hat das schon mal jemand versucht? In meinem ersten Versuch bin ich leider gescheitert, oder habe ich einen Denkfehler, das dies gar nicht gehen kann?
    Ansonsten würde mich noch interessieren, ob man die GPIO’s an eine VM durchreichen kann um eine aufgesteckt Platine einer bestimmten VM verfügbar zu machen.

    Antworten
  15. Danke für die Anleitung, ließ sich gut umsetzen.

    Damit der RAM für die Container korrekt angezeigt werden kann und hot-swapable ist, musste ich die /boot/cmdline.txt anpassen und hinten
    cgroup_enable=cpuset cgroup_enable=memory cgroup_memory=1 anhängen.

    Damit kann nun wie beim “großen” Proxmox beim laufenden LXC der Ram modifiziert werden.
    Anschließend reboot durchführen!

    Der Vollständigkeit halber:
    Fehlermeldung vorher: pimox memory: unable to hotplug memory: trying to change memory cgroup values: container not running

    Antworten
    • Das ist ja der Kracher!

      Hab’s ausprobiert, Problem und Lösung genau wie du es beschrieben hast, einwandfrei.
      Werde die Anleitung noch aktualisieren.

      VIELEN DANK für den super Tipp! :-]

      Antworten
      • Gerne. Wenn du die Anleitung anpasst, kannst du vielleicht auch die Erhöhung des SWAPs mit aufnehmen. Gerade beim 4GB Modell in Kombination mit einer SSD ist es sehr hilfreich mehr als 100MB zu besitzen.
        Als root:
        swapoff -a
        nano /etc/dphys-swapfile -> CONF_SWAPSIZE=4096 CONF_MAXSWAP=4096
        swapon -a
        service dphys-swapfile restart

        CONF_MAXSWAP=4096 muss gesetzt werden, sonst wird immer bei 2GB ein Limit gezogen.

        Antworten
  16. Proxmox Installation funktioniert bei mir soweit….
    Allerdings lässt sich bei
    Debian 11 – die VM Dann nicht starten. (komme immer wieder nur ein eine EFI Shell oder sowas…)
    Debian 10 – startet die VM Installation gar nicht.
    Kommt nur eine :
    Synchronous Exception at 0x000000007BF95288

    Antworten
  17. Hallo, die Installation hat ohne Probleme geklappt incl. ifupdown2. Sobald ich jedoch in Proxmox der vmbr0 Bridge die IPv4/CIDR und das Gateway eintrage und erstelle werden die Daten in der /etc/network/interfaces eingetragen, danach ist der Raspi jedoch nicht mehr erreichbar. Die IPv4/6 Adressen sind korrekt in /etc/dhcpcd.conf eingetragen, woran kann das liegen?
    Gruß Frank

    Antworten
    • Du hast dann auch kein vmbr0 interface, oder?

      root@pimox:~# ip a
      2: eth0: mtu 1500 qdisc mq master vmbr0 state UP group default qlen 1000
      link/ether dc:a6:32:d5:e8:1e brd ff:ff:ff:ff:ff:ff
      3: vmbr0: mtu 1500 qdisc noqueue state UP group default qlen 1000
      link/ether 11:22:33:44:55:66 brd ff:ff:ff:ff:ff:ff
      inet 192.168.50.64/24 scope global vmbr0

      Proxmox Netzwerk Konfiguration löschen, reboot, Netzwerk über das Webinterface neu konfigurieren, reboot.

      Antworten
      • Hallo, doch das vmbr0 interface ist vorhanden wenn ich direkt an dem Raspi bin. Vielleicht habe ich auch einen Denkfehler, wenn ich beim einrichten von vmbr0 in Proxmox die Netzwerkadressen des Raspi eintrage sind die CT auch von aussen erreichbar, allerdings wird das gerät im Router nur noch mit 192-168-x-x angezeigt und nicht mehr mit seinem Hostname.

        Antworten
        • Du kommst auf das Webinterface, kannst Container erstellen die dann auch erreichbar sind? Dann passt es doch eigentlich.
          Da ich deine Konfiguration nicht kenne, ist das schwierig.

          Antworten
  18. Hallo, coole Sache. Hab alles prima zum laufen gebracht. Herzlichen Dank für die tolle Anleitung.
    Woran ich momentan scheitere ist das USB Passthrough. Weder in einem LXC noch in einer VM bekomme ich das zum laufen. Hat das schon jemand probiert und es geschafft das es funktioniert?

    Antworten
    • Hallo,
      hast du inzwischen eine Lösung gefunden? Bei mir funktioniert es auch nicht. Ich habe pimox 7 nach der offiziellen Anleitung installiert und eine VM mit debian 11.2 arm64. Es geht alles nur Passthrough mag nicht. Wenn ich den Chipsatz auf Q35 umstelle bekomme ich den gleichen Fehler wie Daniel mit duplicate ID etc…

      Antworten
  19. hello.

    have tried the whole procedure several times but gets stuck defining the bridge. the system gets unresponsive during “apply configuration”. seems like the way promox handles it has changed recently. what is the current way to define a linux-bridge?

    regards,

    claus

    Antworten
  20. Tim hat vor einigen Tagen auch Pakete auf Basis von Proxmox7 bereitgestellt: https://github.com/pimox/pimox7
    Ich habe meine laufende Pimox6 Version (als Node in meinem x64 Cluster eingebunden) erfolgreich auf 7 geupdatet.
    Einfach die ganzen source Files umschreiben: buster -> bullseye, pimox6 -> pimox7, upgrade, dist-upgrade, reboot, läuft.
    Einfach toll :)

    Antworten
    • Ich habe das nun schon mehrfach versucht, trotzdem klappt das update nicht. Ich habe bei meinen Versuchen zunächst das aktuelle Pimox versucht upzudaten. Danach habe ich die Debian source.list, sowie die von pimox angepasst. anschließend apt update && apt upgrade && apt dist-upgrade, danach noch einen reboot abgesetzt. Ich hatte einmal kurz die Version 7 im Webgui Kopf nun aber wieder 6.4.
      Hast du eine Idee, was ich anders gemacht haben könnte?

      Antworten
      • Alle sources gleichzeitig ändern, Debian und Pimox. apt update und danach direkt dist-upgrade. Mit dem Zwischenschritt apt-upgrade erzeugts du nur ein Paket Wirrwar welches nicht mehr auflössbar ist.

        Antworten
        • Habe das nun mal so gemacht. Anschließend hatte ich das ganze auf Proxmox7, bis ich den Pi rebootet habe. Nun sind die sources.list etc. wieder die alten wie unter Proxmox 6.4

          Antworten
  21. Wenn ich die IP Adresse des Proxmox Servers im Browser eingebe erhalte ich nur die Fehlermeldung das der Server die Verbindung abgelehnt hätte, liegts am Browser?

    Antworten
    • Eher nicht.

      Was wurde denn installiert, Proxmox 6 oder 7?
      Ist die Installation komplett und ohne Fehler durchgelaufen?
      Zugrriff per SSH möglich? Was gibt denn der Befehl pveversion zurück?

      Antworten
  22. Hi,
    habe mich heute daran versucht Proxmox 7 nach deiner Anleitung zu installieren.
    Habe dazu folgendes image genutzt “2021-05-07-raspios-buster-arm64-lite.zip”.

    Dann nach Anleitung;
    Bis dahin hat auch alles reibungslos funktioniert.
    # system aktualisieren
    apt update
    apt -y upgrade
    apt -y dist-upgrade
    apt -y autoremove
    apt clean
    reboot

    Jedoch startet mein Raspberry nun nicht mehr und die grüne Kontrolllampe blinkt im gleichen Muster. An was kann das liegen, was ist schief gelaufen?
    Raspberry 4, 8gb.

    Danke und Gruß

    Antworten
    • Schwer zu sagen.

      Hast du noch eine Bildschirmausgabe?
      Installierst du auf SD-Karte oder SSD?
      Vielleicht ist das Upgrade auf Buster fehlgeschlagen.

      Ggf. alles nochmal von vorne.

      Antworten
      • Hallo,

        ich habe einen Sandisk usb Stick als Datenträger im Gebrauch.
        Nein, eine Bildschirmausgabe habe ich nicht mehr.
        Wie meinst du das „Update auf Buster fehlgeschlagen“? Wie kann ich das bei der Installation erkennen?
        Denke das es mit dem Update auf Bullseye zu tuen haben muss… wobei mir hier auch keine errormeldung aufgefallen ist. Gibt es bei diesem Update auf Bullseye etwas auf das man achten muss. Zwischendurch wird man gefragt welche Pakete weiterhin genutzt werden sollen. Hier evtl eine falsche Auswahl getroffen?

        Danke und Gruß

        Antworten
        • Meinte natürlich das Upgrade auf Bullseye, nicht Buster. ;)

          Da der Pi wie du sagst nicht mehr bootet, würd ich nochmal neu installieren!
          Buster Lite, System updaten, rebooten und nochmal ein Upgrade auf Bullseye durchführen.

          Antworten
          • Hallo,
            inzwischen habe ich es geschafft proxmox7 zu installieren.
            Jedoch stehe ich jetzt vor dem nächsten Problem einen lauffähigen CT zu erstellen. Der link zu https://us.images.linuxcontainers.org/images/… ist seit Tagen nicht zu erreichen.

            Habe im Netz unter folgendem link https://uk.lxd.images.canonical.com/images/debian/bullseye/arm64/default/ was gefunden. Den CT lässt sich auch erstellen und laut Anzeige läuft dieser auch, jedoch kann ich nichts über die Konsole machen. Weder anmelden noch sieht es Eingabefähig aus.

            Kann mir jemand erklären warum das nicht funktioniert?
            Geht das überhaupt mit meinem alternativ link?
            Hat jemand den Kontent vom „us“ link (Lukas) den er zur Verfügung stellen kann bzw. gibt es einen neueren link?

            Danke für Support

          • Hallo,
            danke für deine rasche Antwort.

            Den link den du bei deiner letzten Antwort angegeben hast, ist genau den ich auch genutzt habe.
            …/images/debian/bullseye/arm64/default/20211114_06:06
            Ich habe es gerade eben nochmals ausprobiert, jedoch wieder ohne Erfolg…
            CT läuft Konsole schreibt folgendes raus:

            Connected to tty 1
            Type to exit the console, to enter Ctrl+4 itself

            Was hat dies zu bedeuten?
            Bzw was mache ich falsch?

          • Was passiert denn wenn du ENTER drückst?
            CT -> Options -> Console mode, Default (tty) – kannst auch mal was anderes zum probieren einstellen

      • Hi, also ich hab das hinbekommen.
        Das geht.

        Folgendes:
        Upgrade von 10 -> 11 (Pakete von PVE nicht deinstallieren)
        Repo von PVE6 auf PVE7 wechseln
        Apt Update && apt dist-upgrade -y

        Upgraded PVE von 6.4.4 -> 7.0.13 (22.11.)
        VMs und Einstellungen bleiben dadurch erhalten.

        Antworten
          • Vielleicht hast du eine Idee wie man den KSMTuned zum laufen bekommt?

            Nov 23 08:04:17 rPI-Proxmox ksmtuned[811]: /usr/sbin/ksmtuned: line 64: /sys/kernel/mm/ksm/pages_to_scan: No such file or directory
            Nov 23 08:04:17 rPI-Proxmox ksmtuned[811]: /usr/sbin/ksmtuned: line 65: /sys/kernel/mm/ksm/sleep_millisecs: No such file or directory
            Nov 23 08:04:17 rPI-Proxmox ksmtuned[811]: /usr/sbin/ksmtuned: line 66: /sys/kernel/mm/ksm/run: No such file or directory

  23. Das Problem RaspiOS in pimox zum laufen zu bringen ist wie ich erfahren habe ein Problem mit uefi das zum Start der VMs gebraucht wird. Debian z.B. kann ja in pimox als Container laufen, das ging bei mir auch. RaspiOS scheint auf Debian zu basieren, ich frage mich wo konkret das Problem ist bzw wo der Unterschied ist?
    Naja, generell hab ich Hoffnung das da noch was kommt, das scheint ja mehr Leute zu interessieren :-)
    Man könnte halt perfekt die laufenden Raspis virtualisieren. Eine Option wäre auch alles auf Debian neu aufzusetzen da es ja ähnlich ist aber ich mag ehrlich gesagt nicht das Rad neu erfinden. Die Probleme liegen dann iwo im Detail und man kämpft wochenlang das alles so wird wie man es eigentlich schon hat :-)

    Antworten
    • Im LXC dürfte UEFI doch keine Rolle spielen, oder?
      RPi OS würde halt die passenden Pakete für die spezielle Hardware auf dem Pi mitbringen. Vor allem die Firmware auf der Boot-Partition könnte ggf das Problem mit Sound und Video lösen. Habe aber keine Ahnung was da genau fehlt und wie ich es in Den Debian Container reinbekomme.

      Oder kann man einfach das gesamte RootFS aus dem RPi OS Image kopieren und das als Image für LXC verwenden?

      Ob das dann die Probleme mit Audio und Video löst…keine Ahnung. Ggf liegt es auch an den Mounts oder den Berechtigungen.

      Antworten
  24. Hallo zusammen!

    erstmal Danke für diese Anleitung. Ich warte schon länger auf sowas. Schade, dass es nicht offiziell angeboten wird. Ich habe die komplette Einrichtung jetzt zum zweiten mal hinter mir. Meine LXC bekommen keine Verbindung nach außen. Der Container kann aber andere lokale iP Adressen im Netzwerk anpingen, nur nach außen geht da nix. Nach den Einstellungen, die ich bereits geprüft habe, passt das alles.

    /etc/network/interfaces

    auto lo
    iface lo inet loopback

    iface eth0 inet manual

    auto vmbr0
    iface vmbr0 inet static
    address 10.100.10.50/24
    gateway 10.100.10.1
    bridge-ports eth0
    bridge-stp off
    bridge-fd 0

    im Host-System

    root@pimox:/# ip a
    1: lo: mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
    valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
    valid_lft forever preferred_lft forever
    2: eth0: mtu 1500 qdisc mq master vmbr0 state UP group default qlen 1000
    link/ether dc:a6:32:ee:e2:a6 brd ff:ff:ff:ff:ff:ff
    3: wlan0: mtu 1500 qdisc noop state DOWN group default qlen 1000
    link/ether dc:a6:32:ee:e2:a7 brd ff:ff:ff:ff:ff:ff
    4: vmbr0: mtu 1500 qdisc noqueue state UP group default qlen 1000
    link/ether 26:5c:ec:16:19:da brd ff:ff:ff:ff:ff:ff
    inet 10.100.10.50/24 scope global vmbr0
    valid_lft forever preferred_lft forever
    inet6 fe80::dea6:32ff:feee:e2a6/64 scope link
    valid_lft forever preferred_lft forever
    9: veth100i0@if2: mtu 1500 qdisc noqueue master fwbr100i0 state UP group default qlen 1000
    link/ether fe:e8:51:27:24:c0 brd ff:ff:ff:ff:ff:ff link-netnsid 0
    10: fwbr100i0: mtu 1500 qdisc noqueue state UP group default qlen 1000
    link/ether ea:46:ae:db:d9:39 brd ff:ff:ff:ff:ff:ff
    11: fwpr100p0@fwln100i0: mtu 1500 qdisc noqueue master vmbr0 state UP group default qlen 1000
    link/ether 26:5c:ec:16:19:da brd ff:ff:ff:ff:ff:ff
    12: fwln100i0@fwpr100p0: mtu 1500 qdisc noqueue master fwbr100i0 state UP group default qlen 1000
    link/ether ea:46:ae:db:d9:39 brd ff:ff:ff:ff:ff:ff

    im Container

    root@pihole:~# ip a
    1: lo: mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
    valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
    valid_lft forever preferred_lft forever
    2: eth0@if9: mtu 1500 qdisc noqueue state UP group default qlen 1000
    link/ether 46:de:e0:1d:4d:f8 brd ff:ff:ff:ff:ff:ff link-netnsid 0
    inet 10.100.10.205/24 brd 10.100.10.255 scope global eth0
    valid_lft forever preferred_lft forever
    inet6 fe80::44de:e0ff:fe1d:4df8/64 scope link
    valid_lft forever preferred_lft forever

    die IP ist auch korrekt und liegt außerhalb meines dhcp-Bereich.

    Installiert habe ich alles auf Basis 2021-10-30-raspios-bullseye-arm64 und anschließend dem Script.
    Komisch ist jedoch, dass am Ende der Installation nach dem reboot und “apt upgrade -y” zwei Symlinks nicht gesetzt werden konnten.
    Denke aber nicht, dass dies das Problem ist, oder?

    pi@pimox:~ $ sudo -s
    root@pimox:/home/pi# apt upgrade -y
    Reading package lists… Done
    Building dependency tree… Done
    Reading state information… Done
    Calculating upgrade… Done
    0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
    2 not fully installed or removed.
    After this operation, 0 B of additional disk space will be used.
    Setting up pve-manager (7.1-7) …
    Setting up proxmox-ve (7.1-1) …
    ln: failed to create symbolic link ‘/boot/pve/vmlinuz’: Operation not permitted
    ln: failed to create symbolic link ‘/boot/pve/initrd.img’: Operation not permitted
    root@pimox:/home/pi#

    root@pimox:/# uname -a
    Linux pimox 5.10.63-v8+ #1488 SMP PREEMPT Thu Nov 18 16:16:16 GMT 2021 aarch64 GNU/Linux
    root@pimox:/#

    Ich weiß nicht mehr, was ich prüfen soll und hoffe, dass noch jemand eine Idee hat.

    Danke, Grüße
    Michael

    Antworten
    • – du nimmst für den Host ein Raspberry Pi OS?
      – /boot/pve/vmlinuz und /boot/pve/initrd.img gibt es auf dem Pi nicht.
      – dein Pi hat eine statische IP? Wie sieht denn deine /etc/dhcpcd.conf aus?


      root@pimox:~# ip a
      1: lo: mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
      link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
      inet 127.0.0.1/8 scope host lo
      valid_lft forever preferred_lft forever
      inet6 ::1/128 scope host
      valid_lft forever preferred_lft forever
      2: eth0: mtu 1500 qdisc mq master vmbr0 state UP group default qlen 1000
      link/ether dc:a6:32:d5:e8:1e brd ff:ff:ff:ff:ff:ff
      inet 192.168.50.64/24 brd 192.168.50.255 scope global noprefixroute eth0
      valid_lft forever preferred_lft forever
      3: vmbr0: mtu 1500 qdisc noqueue state UP group default qlen 1000
      link/ether dc:a6:32:d5:e8:1e brd ff:ff:ff:ff:ff:ff
      inet 192.168.50.64/24 scope global vmbr0
      valid_lft forever preferred_lft forever
      inet6 fe80::dea6:32ff:fed5:e81e/64 scope link
      valid_lft forever preferred_lft forever

      root@pimox:~# ip r
      default via 192.168.50.1 dev vmbr0 proto kernel onlink
      default via 192.168.50.1 dev eth0 src 192.168.50.64 metric 202
      192.168.50.0/24 dev vmbr0 proto kernel scope link src 192.168.50.64
      192.168.50.0/24 dev eth0 proto dhcp scope link src 192.168.50.64 metric 202

      Antworten
      • Hallo und Danke für deine Antwort.
        Ja, ich nutze die 2021-10-30-raspios-bullseye-arm64 und habe eine Statische IP gesetzt.
        Bei mir existiert die Datei dhcpcd.conf nicht. Ich habe das Setup Script gesteuert durchlaufen lassen.

        Antworten
        • Wunderbare Anleitung. Ein großes Kompliment! Vielen Dank!
          Ich hatte nach der Grundinstallation von PiMox dennoch Probleme mit dem Erstellen von Containern.
          Nach dem ich das Root-Tar-Fs wie Punkt “CT erstellen” heruntergeladen hatte, konnte ich Container ausrollen. Leider ließen sich diese nicht starten. Die Fehlermeldung lautete:
          run_apparmor_parser: 919 Failed to run apparmor_parser on “/var/lib/lxc/101/apparmor/lxc-101_”: apparmor_parser: Unable to replace “lxc-101_”. Profile doesn’t conform to protocol
          apparmor_prepare: 1089 Failed to load generated AppArmor profile
          lxc_init: 850 Failed to initialize LSM
          __lxc_start: 2007 Failed to initialize container “101”
          TASK ERROR: startup for container ‘101’ failed

          Ich konnte diesen Fehler beheben indem ich in der Konfiguration des betreffenden Containers (Pfad: /etc/pve/lxc/[Containernummer].conf) die folgende Zeile angefügt hatte:
          lxc.apparmor.profile: lxc-default-with-nesting

          Antworten
      • Also ich weiß nicht, ob auch irgend was mit dem Installationsscript nicht stimmt, aber meine dhcpcd.conf war leer.
        Ich habe dann alles nochmal manuell neu installiert und da gab es dann die Standard Datei, die ich dann entsprechend angepasst habe.

        Soweit so gut habe ich aber einen DHCP Konflikt mit dem Adressbereich vom VPN bei der Fritzbox gehabt. Diese vergibt diese wohl ab .200 bis .254. War mir so nicht bekannt, da ich VPN über Wireguard realisiere. Nachdem ich diese dann wieder geändert habe, läuft es jetzt soweit.

        Aber warum gibt es diese anderen Netzwerkadressen?
        veth100i0@if2
        fwbr100i0
        fwpr100p0@fwln100i0
        fwln100i0@fwpr100p0 <—- Hat eine IP aus dem DHCP-Bereich bekommen.

        Wie kann man das unterbinden?

        Antworten
          • Danke für die Rückmeldung. Ich habe mittlerweile herausgefunden, dass bei aktiver Firewall eine eigene Firewall-Bridge erstellt wird, die, wieso auch immer, eine weitere IP-Adresse aus dem DHCP-Bereich bezieht. Hat wohl was damit zu tun, da ich keine Forward Regel oder so erstellt habe und die Fritzbox das bei jedem neuen LXC als neues Gerät erkennt. Da ich das ganze einerseits eh nur zum spielen nutze und andererseits nur intern erreichbar ist, habe sie erst mal abgeschaltet und seitdem besteht das Problem nicht mehr. Vielleicht läuft das ganze auf ARM auch noch nicht ganz rund, keine Ahnung.

            Es kann ja eigentlich nur besser werden. VMs habe ich bisher noch keine erstellt. Bin gespannt, was mich da für Hürden erwarten. Vielleicht kommt auch noch eine offizielle Unterstützung seitens Proxmox, da mit einem stärkerem Pi mit NVME Schnittstelle schon brauchbar ist.

            Hab dein Blog in meine Feeds aufgenommen. Danke für die vielen Tutorials.

  25. Hallo,

    Ich habe dank deiner Anleitung meinen RPI4 jetzt auch mit Pimoxx zum Laufen bekommen.

    Leider habe ich zwei Probleme:

    – der LXC Container, welchen ich entsprechend der Anleitung eingerichtet habe (mit einer neueren Debian11 Version), bootet nicht. CPU Last bleibt bei 0,2% hängen und RAM ebenso. Mir würde RaspberryPi OS allerdings vermutlich eh mehr taugen, daher wäre die Frage: Wie extrahiere ich das rootfs bei Raspberrypi OS in 64bit? der wget Befehl oben funktioniert ja super, mir fehlt nur die korrekte Syntax für RaspberryPi OS

    – Ich muss ein GPIO Device (Razberry2 Board für Z-Wave Geräte) in die VM durchschleifen, um es dann in einem Docker Image zu verwenden. Ich hab es in der VM.conf mit “args: -serial /dev/ttyAMA0 oder /dev/ttyS0” versucht, leider ohne Erfolg. Im Netz finde ich nur Anleitungen um “dev/serial/by-id” zu verwenden, leider wird das aber scheinbar nicht angelegt bei GPIO devices. Hast du eine Idee, wie der korrekte Syntax in der .conf Datei lautet?

    Antworten
  26. Ich habe jetzt am Wochenende mal erfolgreich ein Ubuntu 20.04 als Gast-System installiert, um darauf einen Seafile-Server einzurichten. Man muss sich die Infos etwas zusammensuchen, aber wenn man das Problem mit dem UEFI und der Bootreihenfolge mal gelöst hat und auch sonst auf die Details (Hostname + Bridge etc.) achtet, läuft es eigentlich.

    Nun warte ich darauf, dass das Ganze irgendwann offiziell unterstützt wird. Was kann man dafür tun, dass das Projekt vorankommt? Offenbar gibt es noch viele Lücken, aber VLAN brauche ich z.B. nicht. Meine VMs laufen nicht gleichzeitig und gehören ins gleiche Netzwerk.

    Antworten
  27. Danke erstmal für die tolle Erklärung!
    Ich komm soweit, bis ich die vmbr0 Bridge einrichten soll – ich habe nur eth0 zur Auswahl, aber kein LAN Kabel angeschlossen.
    Ich bin über WLAN (also eigentlich wlan0) mit dem Netz verbunden.
    Das scheint aber nicht als mögliche Bridge auf.
    Was kann ich tun?

    Antworten
    • Bluetooth und Wlan deaktiviere ich immer!
      Ob das mit wlan überhaupt funktioniert, kann ich dir nicht sagen.

      Nimm eth0, geht nix über ein Kabel! ;)

      Antworten
  28. Hi,

    Ich wollte ein Pihole auf einer Proxmox 7 / RP4 installieren. Kann ich in dem LXC Container trotzdem IPv6 nutzen, oder warum muss man das auf dem Proxmox Host deaktivieren?

    LG, Michael

    Antworten
  29. Hat noch jemand eine Debian Bullseye rootfs.tar.xy rum liegen, die funktioniert? Leider wurde beim oben genannten Respository die debian bullseye rootfs geändern und nun wird das Netzwerk-Tool ifupdown nicht mehr unterstützt, leider kann proxmox aber ohne dies keine neuen Container erstellen. Freue mich auf eure Rückmeldung :D

    Antworten
    • Ein neu aufgesetzter Pimox7 Server (mit dem install script), kommt mit ifupdown2.
      Neuer Container lässt sich problemlos mit einem aktuellen Debian Bullseye rootfs.tar.xy erstellen und starten.

      Ggf einfach mal ifupdown2 installieren?

      Antworten
      • Woher genau beziehst du deine rootfs.tar.xy? Wie gesagt hatte unter “https://uk.lxd.images.canonical.com/images/” geschaut und nach Rücksprache mit den Betreibern (https://github.com/lxc/distrobuilder/issues/615) von LXC hat sich herausgestellt, das diese Debian Bullseye Templates nun networkd nutzen statt ifupdown. Leider kommt Proxmox damit nicht klar und bricht beim erstellen der Container den Vorgang ab. Der Server auf dem Proxmox läuft (ein Raspberry PI 4 8GB) hat ifupdown2 installiert, da liegt nicht das Problem :D

        Antworten
          • Bei mir hat das Anlegen geklappt, wenn ich beim Erstellen eines Containers unter “Network” bei der IP “Static”. Auswählt dann aber nichts einträgt. Danach wird man noch nach der DNS-Domäne gefragt und nach dem DNS-Server, so als ob man zuvor DHCP ausgewählt hätte. Dann wird der Container angelegt. Erlässt sich jedoch nicht starten. Bei mir kommt die Fehlermeldung:
            bpf_program_load_kernel: 334 Operation not permitted – Failed to load bpf program: (null)
            run_apparmor_parser: 919 Failed to run apparmor_parser on “/var/lib/lxc/111/apparmor/lxc-111_”: apparmor_parser: Unable to replace “lxc-111_”. Profile doesn’t conform to protocol
            apparmor_prepare: 1089 Failed to load generated AppArmor profile
            lxc_init: 850 Failed to initialize LSM
            __lxc_start: 2007 Failed to initialize container “111”
            TASK ERROR: startup for container ‘111’ failed

            Diesen Fehler konnte ich umgehen, indem ich am Ende des Config-Files (/etc/pve/lcv/CT.conf) des folgende Zeile angefügt habe:
            lxc.apparmor.profile: lxc-default-with-nesting

            Ich kann es noch nicht erklären. Es ist aber ein Workaround, den ich recherchiert habe. Ich versuche derweil tieferes Verständnis von AppArmor zu bekommen…

          • Danke für deine Infos.
            Hab auch nochmal was probiert und folgendes herausgefunden:

            # DEFAULT IMAGE – https://uk.lxd.images.canonical.com/images/debian/bullseye/arm64/default/20220429_05:26/rootfs.tar.xz
            IP DHCP -> CT kann nicht erstellt werden
            IP STATIC, aber keine IP und Gateway eingetragen -> CT kann erstellt werden, startet und bekommt trotzdem per DHCP eine IP

            # CLOUD IMAGE – https://uk.lxd.images.canonical.com/images/debian/bullseye/arm64/cloud/20220429_05:26/rootfs.tar.xz
            IP DHCP -> CT kann erstellt werden, startet, Netzwerk funktioniert
            IP STATIC -> CT kann erstellt werden, startet, Netzwerk funktioniert

            Mit den cloud images hatte ich überhaupt keine Probleme.

  30. Hallo, ich habe auf einem RPi4 Pimox erfolgreich installiert. Nun laufen ioBroker, Nextcloud und Matrix gut in eigenen LXC Containern.
    Die Daten der Nextcloud will ich auf eine externe, via USB3 angeschlossene SSD (sdb) legen. Das konnte ich einrichten und als Mountpoint durchreichen. Soweit funktioniert alles, aber der Zugriff aus Nextcloud heraus auf die SSD mit den Daten ist nicht wirklich schnell.

    root@proxmox:~# lsblk
    NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
    loop0 7:0 0 8G 0 loop
    loop1 7:1 0 8G 0 loop
    loop2 7:2 0 8G 0 loop
    loop3 7:3 0 8G 0 loop
    sda 8:0 0 223.6G 0 disk
    ├─sda1 8:1 0 256M 0 part /boot
    └─sda2 8:2 0 223.3G 0 part /
    sdb 8:16 0 931.5G 0 disk
    └─CloudData-vm–100–disk–0 254:0 0 808G 0 lvm

    root@proxmox:~# sudo hdparm -tT /dev/sdb

    /dev/sdb:
    Timing cached reads: 2062 MB in 2.00 seconds = 1032.35 MB/sec
    Timing buffered disk reads: 558 MB in 3.01 seconds = 185.57 MB/sec

    Der Host scheint viel schneller lesen zu können als der LXC Container. Was kann ich machen damit das flotter wird?!

    Antworten
  31. Moin zusammen,
    ein kleiner Trick, um sich das eeprom-update zu erleichtern:

    1. Raspberry Pi OS (64bit) wie gewohnt installieren
    2. Stand der Firmware mit “sudo rpi-eeprom-update” überprüfen
    3. ggf. mit “sudo rpi-update” die Firmware aktualisieren.

    Danke für die super Anleitung! :)
    LG Jonas

    Antworten
  32. Hallo,

    ich würde ja nach wie vor gerne Raspberry PI OS als VM booten, hat das mittlerweile schon jemand hin bekommen? Im Netz hab ich nichts gefunden bisher
    Unter Proxmox läuft das ja, ich denk mir das es doch auch unter Pimox möglich sein muss oder?

    Viele Grüße

    Antworten
  33. Servus,

    hab meinen Raspi heute neu gestartet, jetzt kommt Pimox nicht mehr hoch. Die Oberfläche ist nicht mehr erreichbar. Gibt es einen Dienst oder irgendwas was ich kontrollieren kann?

    Viele Grüße

    Antworten
  34. Der pve-manager.service und pvestatd.service laufen nicht, die anderen drei schon.
    Manuelles starten geht nicht bzw weiss ich nicht wie!

    Habs so versucht:
    sudo systemctl service pvestatd.service start

    Das ist die Fehlermeldung:
    sudo: Hostname rpi-pimox1 kann nicht aufgelöst werden: Temporärer Fehler bei der Namensauflösung
    Unknown command verb service.

    Antworten
  35. OK habs geschafft, in der /etc/hosts war beim Namen “rpi-pimox1” ein Leerzeichen. Komisch ist das es die ganze Zeit so gelaufen ist und jetzt auf einmal nicht mehr. Nachdem ich dieses entfernt hab konnte ich die Dienste starten und ich komm wieder auf die Oberfläche.

    Danke dir für die Hilfe ;-)

    Antworten
  36. Hi,

    wollte ein CT erstellen und bekam den Fehler. Weis jemand was das ist?

    Formatting ‘/var/lib/vz/images/100/vm-100-disk-0.raw’, fmt=raw size=8589934592 preallocation=off
    Creating filesystem with 2097152 4k blocks and 524288 inodes
    Filesystem UUID: 9ed37c26-aa61-4df7-a8d5-11466a97461c
    Superblock backups stored on blocks:
    32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632
    extracting archive ‘/var/lib/vz/template/cache/debian-10.10-standard_arm64_2022.01.16.tar.xz’
    xz: (stdin): File format not recognized
    tar: Child returned status 1
    tar: Error is not recoverable: exiting now

    TASK ERROR: unable to create CT 100 – command ‘lxc-usernsexec -m u:0:100000:65536 -m g:0:100000:65536 — tar xpf – -J –totals –one-file-system -p –sparse –numeric-owner –acls –xattrs ‘–xattrs-include=user.*’ ‘–xattrs-include=security.capability’ ‘–warning=no-file-ignored’ ‘–warning=no-xattr-write’ -C /var/lib/lxc/100/rootfs –skip-old-files –anchored –exclude ‘./dev/*” failed: exit code 2

    Antworten
  37. Thank you.
    PiMox7
    Using hints from here, I’ve just managed to get Debian 12 Bullseye working with the latest Cloud image:
    https://uk.lxd.images.canonical.com/images/debian/bookworm/arm64/cloud/20230614_05:24/rootfs.tar.xz
    Debian_Bookworm_Arm64_20230614_cloud_rootfs.tar.xz

    When configuring the CT, leave IP = Static. DO NOT enter any IP address.

    Boot the CT,
    # apt install nano
    # nano /etc/systemd/network/eth0.network

    Change:
    [Network]
    Address=192.168.1.101/24
    Gateway=192.168.1.1

    # systemctl restart systemd-networkd
    # reboot now

    You’ve now got the static IP set up (if you don’t reboot, it’ll still keep the DHCP assigned IP in addition to the static ip)

    Antworten
  38. Tach,

    es gibt in der Zwischenzeit ein Port auf pve 8.x, der nun auch auf Raspios Debian GNU/Linux 12 (bookworm) läuft. Ich habe das mit einem Pi4 Model B mit 4GB und einem USB Stick 64GB ohne Probleme ans Laufen bebommen. Der Port wurde hier https://github.com/jiangcuo/Proxmox-Port veröffentlilcht. Hier gibt es auch eine Schritt-für-Schritt Anleitung.

    Folgende Schritte habe gewählt:
    1. mit Raspi Imager “2023-10-10-raspios-bookworm-arm64.img.xz” auf den USB Stick laden
    2. Boot und dann Bootloader prüfen und ggf. updaten
    3. /etc/hosts anpassen und IP Adresse und Systemname festeintragen
    4. Proxmox VE Port repository key herunterladen und eintragen
    5. Pakete ifupdown2, proxmox-ve, postfix, open-iscsi installieren
    6. root ein Password vergeben (damit ein Login über die Weboberfläche möglich ist)
    7. SWAP erhöhen (Tipp von shorty), reboot
    8. Nach Login über die Weboberfläche eine Bridge in der Rasppi Node anlegen.
    9. ggf. CPU Info patchen (Tipp von shorty)

    Weitere Beschreibungen incl. Mini Wiki sind im GitHub von dem Port (https://github.com/jiangcuo/Proxmox-Port) zu finden.

    Antworten
  39. Sehr geehrter Herr Bachmann,

    ohne Ihre Anleitung hat man keine Chance pimox7 incl. VM zum laufen zu bringen.

    Ich habe die Erfahrung gemacht, dass die Installation mit SSH/Putty nicht funktionert.
    Am besten funktioniert es mit Monitor, Maus und Tastatur am Raspi direkt.

    Vielen Dank für Ihre Anleitung.

    Antworten
  40. Hi auf meinem RPI4 mit OSlite64 , kann pimox einige abhänigkeiten nicht installieren:

    The following packages have unmet dependencies:
    ceph-fuse : Depends: libfmt7 (>= 7.1.3+ds1) but it is not installable
    libpve-rs-perl : Depends: perlapi-5.32.1 but it is not installable
    libpve-u2f-server-perl : Depends: perlapi-5.32.1 but it is not installable
    librados2-perl : Depends: perlapi-5.32.1 but it is not installable
    lxc-pve : Depends: libgnutlsxx28 but it is not installable
    pve-cluster : Depends: perlapi-5.32.1 but it is not installable
    pve-qemu-kvm : Depends: liburing1 (>= 0.7) but it is not installable
    E: Unable to correct problems, you have held broken packages.
    Reading package lists… Done
    Building dependency tree… Done
    Reading state information… Done
    Some packages could not be installed. This may mean that you have
    requested an impossible situation or if you are using the unstable
    distribution that some required packages have not yet been created
    or been moved out of Incoming.
    The following information may help to resolve the situation:

    The following packages have unmet dependencies:
    ceph-fuse : Depends: libfmt7 (>= 7.1.3+ds1) but it is not installable
    libpve-rs-perl : Depends: perlapi-5.32.1 but it is not installable
    libpve-u2f-server-perl : Depends: perlapi-5.32.1 but it is not installable
    librados2-perl : Depends: perlapi-5.32.1 but it is not installable
    lxc-pve : Depends: libgnutlsxx28 but it is not installable
    proxmox-ve : Depends: pve-qemu-kvm but it is not installable
    pve-cluster : Depends: perlapi-5.32.1 but it is not installable
    qemu-server : Depends: pve-qemu-kvm (>= 3.0.1-62) but it is not installable
    spiceterm : Depends: pve-qemu-kvm but it is not installable
    E: Unable to correct problems, you have held broken packages.

    Antworten

Schreibe einen Kommentar