Skript „lmn-prepare“ bricht ab: 'lvmvols_array' is not defined

Hallo,

ich habe heute mal wieder versucht, lmn71 von Grund auf neu aufzusetzen. Selbstverständlich verwende ich Proxmox zur Virtualisierung, nutze nur die Standardvorgaben und habe mich sehr streng an die Anleitung gehalten:
https://docs.linuxmuster.net/de/latest/installation/install-from-scratch/lmn_pre_install.html#aufruf-lmn-prepare

Leider bricht das Skript „lmn-prepare“ mit einer Fehlermeldung ab: ‚lvmvols_array‘ is not defined

Created symlink /etc/systemd/system/cloud-init.target → /dev/null.
Traceback (most recent call last):
  File "/usr/sbin/lmn-prepare", line 904, in <module>
    pvdevice = do_lvm(pvdevice, vgname, lvmvols_array, quotamntopts)
NameError: name 'lvmvols_array' is not defined

Habe ich etwas übersehen oder ist ein Fehler im Skript?

Viele Grüße
Helmut

Nachtrag: Es handelt sich um: linuxmuster-prepare v7.1.9

Hallo Helmut,

die LVM Volumes sind neuerdings konfigurierbar.
Das steht hier:

Es ist anscheinend noch nciht in der Doku.
Versuch es damit nochmal und sag uns bescheid, ob es klappt.

LG

Holger

Hallo,

ich habe das gleiche Problem. Wenn ich die vorgeschlagene Lösung auf GitHub ausführe, meckert das Skript, dass das Filesystem gemountet ist. Außer /var kann man alles einfach unmounten. und ohne /var geht nichts mehr (über fstab ausgeschaltet und neu gestartet).

Wenn man die Anleitung befolgt hat, sind die LVMs doch schon konfiguriert. Kann man diese nicht überspringen?

Ich habe es mal ausprobiert: In der Datei /usr/sbin/lmn-prepare die folgenden Zeilen einfach auskommentiert (Beginnt in Zeile 903):

    if profile == 'server':
        pvdevice = do_lvm(pvdevice, vgname, lvmvols_array, quotamntopts)
        if pvdevice == '':
            do_fstab_root(quotamntopts)
        do_quota()

Grüße
Thomas

Hallo Holger,

ich stehe leider etwas auf der Leitung… :thinking: Mein Ziel ist es den Ubuntu-Server auf lmn7.1 vorzubereiten, so wie es in der Doku angeleitet wird. Dazu habe ich den folgenden Befehl als root ausgeführt („Installation mit unseren Standard-Vorgaben“):
lmn-prepare -i -p server

Daraufhin erhalte ich die oben erwähnte Fehlermeldung „name ‚lvmvols_array‘ is not defined“.

Ich gebe also jetzt an gleicher Stelle als root nicht den Befehl aus der Doku ein, sondern für die Standardwerte das Folgende:
lmn-appliance -u -p server -l /dev/sdb

Ist das korrekt? Muss ich zuvor bezüglich des abgebrochenen Skriptes „lmn-prepare“ noch irgendetwas „bereinigen“, oder kann ich einfach lmn-appliance ausführen?

Viele Grüße
Helmut

Fogende Eingabe als root brachte den Erfolg:
lmn-prepare -i -u -p server -l /dev/sdb -v var:10,linbo:80,global:10,default-school:100%FREE

Als finale Ausgabe des Skriptes ergab sich:

## The system has been prepared with the following values:
# Profile   : server
# Hostname  : server
# Domain    : linuxmuster.lan
# IP        : 10.0.0.1
# Netmask   : 255.255.0.0
# Firewall  : 10.0.0.254
# Gateway   : 10.0.0.254
# Interface : ens18
# Swapsize  : 2G
# LVM device: /dev/sdb
# LVM vlms  : var:10,linbo:80,global:10,default-school:100%FREE

### Finished - a reboot is necessary!

Vielen Dank für den richtigen Tipp!

Wohin kann man sich wenden, um kleine Verbesserungen an der Doku weiterzugeben?

Einen schönen Feiertag!
Helmut

Ich bin ebenfalls beim „Install from scratch“ über den Fehler gestolpert.
Die LVs wurden bereits während des Ubuntu-Setups fertig auf /dev/sdb eingerichtet.
linuxmuster-prepare Version 7.1.9-0

Bei Aufruf mit
lmn-prepare -i -t server -n <ip/mask> -p server -f <fwip> -d <domain>
gab es den Fehler NameError: name 'lvmvols_array' is not defined
Bei zusätzlicher -l Option
lmn-prepare -i -t server -n <ip/mask> -p server -f <fwip> -d <domain> -l /dev/sdb
lief das Skript weiter und es gab statt des Fehlers die Abfrage:
Enter physical device to use for LVM [/dev/sdb]:

Nach Bestätigung lief es durch.
Die Schlussmeldung endete bei Swapsize : 2G, die eingerichteten LVs blieben unberührt.

lmn-prepare -i -u -p server -l /dev/sdb -v var:10,linbo:80,global:10,default-school:100%FREE

hat bei mir auch funktioniert. Zumindest ist das Skript dann bis zum Ende durchgelaufen. Weiter bin ich noch nicht.

Hallo zusammen,

entsprechend der Erweiterung der Funktionalitäten der neuen Version von lmn-prepare, habe ich die Dokumentation entsprechend angepasst. Danke für die Erinnerung durch diesen Post.
O.g. Fälle sollten nun abgedeckt sein. Bitte prüfen und Rückmeldung geben.

@HelmutBu: An das Doku Team :grinning_face_with_smiling_eyes: Wir lesen zwar auch Post mit. Aber manchmal ist es gut, wenn auf github ein Issue erstellt wird.

VG
Chris

Ich hatte aus diversen Gründen noch mal von vorne angefangen. Wenn ich die Anleitung von vorne beginne und LVM einrichte, dann bekomme ich - wie oben beschrieben - ein Problem:

it@server:~$ sudo -i
root@server:~# lmn-prepare -i -u -p server -l /dev/sdb -v var:10,linbo:40,global:10,default-school:100%FREE

### lmn-prepare
## Profile
## Network
## Remove unnecessary stuff
Paketlisten werden gelesen... Fertig
Abhängigkeitsbaum wird aufgebaut.       
Statusinformationen werden eingelesen.... Fertig
Paket »lxc« ist nicht installiert, wird also auch nicht entfernt.
Paket »lxc-utils« ist nicht installiert, wird also auch nicht entfernt.
Die folgenden Pakete wurden automatisch installiert und werden nicht mehr benötigt:
  dns-root-data dnsmasq-base ebtables liblxc-common liblxc1 libuv1 lxd-client squashfs-tools uidmap xdelta3
Verwenden Sie »apt autoremove«, um sie zu entfernen.
Die folgenden Pakete werden ENTFERNT:
  lxcfs* lxd* snapd*
0 aktualisiert, 0 neu installiert, 3 zu entfernen und 0 nicht aktualisiert.
Nach dieser Operation werden 171 MB Plattenplatz freigegeben.
(Lese Datenbank ... 74214 Dateien und Verzeichnisse sind derzeit installiert.)
Entfernen von lxd (3.0.3-0ubuntu1~18.04.2) ...
Removing lxd dnsmasq configuration
Entfernen von lxcfs (3.0.3-0ubuntu1~18.04.3) ...
Entfernen von snapd (2.55.5+18.04) ...
Warning: Stopping snapd.service, but it can still be activated by:
  snapd.socket
Trigger für libc-bin (2.27-3ubuntu1.6) werden verarbeitet ...
Trigger für man-db (2.8.3-2ubuntu0.1) werden verarbeitet ...
Trigger für dbus (1.12.2-1ubuntu1.3) werden verarbeitet ...
Trigger für mime-support (3.60ubuntu1) werden verarbeitet ...
(Lese Datenbank ... 74090 Dateien und Verzeichnisse sind derzeit installiert.)
Löschen der Konfigurationsdateien von lxd (3.0.3-0ubuntu1~18.04.2) ...
Löschen der Konfigurationsdateien von snapd (2.55.5+18.04) ...
Discarding preserved snap namespaces
Final directory cleanup
Removing extra snap-confine apparmor rules
Removing snapd cache
Removing snapd state
Löschen der Konfigurationsdateien von lxcfs (3.0.3-0ubuntu1~18.04.3) ...
Trigger für systemd (237-3ubuntu10.56) werden verarbeitet ...
Trigger für ureadahead (0.100.0-21) werden verarbeitet ...
## Disabling cloud-config.service ...
Removed /etc/systemd/system/cloud-init.target.wants/cloud-config.service.
Created symlink /etc/systemd/system/cloud-config.service → /dev/null.
## Disabling cloud-final.service ...
Removed /etc/systemd/system/cloud-init.target.wants/cloud-final.service.
Created symlink /etc/systemd/system/cloud-final.service → /dev/null.
## Disabling cloud-init-local.service ...
Removed /etc/systemd/system/cloud-init.target.wants/cloud-init-local.service.
Created symlink /etc/systemd/system/cloud-init-local.service → /dev/null.
## Disabling cloud-init.service ...
Removed /etc/systemd/system/cloud-init.target.wants/cloud-init.service.
Created symlink /etc/systemd/system/cloud-init.service → /dev/null.
## Disabling cloud-init-hotplugd.socket ...
Removed /etc/systemd/system/cloud-init.target.wants/cloud-init-hotplugd.socket.
Created symlink /etc/systemd/system/cloud-init-hotplugd.socket → /dev/null.
## Disabling cloud-config.target ...
Created symlink /etc/systemd/system/cloud-config.target → /dev/null.
## Disabling cloud-init.target ...
Created symlink /etc/systemd/system/cloud-init.target → /dev/null.
## LVM
# Creating physical volume /dev/sdb.
  Can't open /dev/sdb exclusively.  Mounted filesystem?
root@server:~#

Die Lösung die funktioniert ist das Anpassen der Datei /usr/sbin/lmn-prepare die folgenden Zeilen einfach auskommentieren (ca. Zeile 903):

    if profile == 'server':
        pvdevice = do_lvm(pvdevice, vgname, lvmvols_array, quotamntopts)
        if pvdevice == '':
            do_fstab_root(quotamntopts)
        do_quota()

Das Skript läuft danach sauber durch:

root@server:~# lmn-prepare -i -u -p server -l /dev/sdb -v var:10,linbo:40,global:10,default-school:100%FREE

### lmn-prepare
### Profile
## Network
## Remove unnecessary stuff
Paketlisten werden gelesen... Fertig
Abhängigkeitsbaum wird aufgebaut.       
Statusinformationen werden eingelesen.... Fertig
Paket »lxc« ist nicht installiert, wird also auch nicht entfernt.
Paket »lxc-utils« ist nicht installiert, wird also auch nicht entfernt.
Die folgenden Pakete wurden automatisch installiert und werden nicht mehr benötigt:
  dns-root-data dnsmasq-base ebtables liblxc-common liblxc1 libuv1 lxd-client squashfs-tools uidmap xdelta3
Verwenden Sie »apt autoremove«, um sie zu entfernen.
Die folgenden Pakete werden ENTFERNT:
  lxcfs* lxd* snapd*
0 aktualisiert, 0 neu installiert, 3 zu entfernen und 0 nicht aktualisiert.
Nach dieser Operation werden 171 MB Plattenplatz freigegeben.
(Lese Datenbank ... 74214 Dateien und Verzeichnisse sind derzeit installiert.)
Entfernen von lxd (3.0.3-0ubuntu1~18.04.2) ...
Removing lxd dnsmasq configuration
Entfernen von lxcfs (3.0.3-0ubuntu1~18.04.3) ...
Entfernen von snapd (2.55.5+18.04) ...
Warning: Stopping snapd.service, but it can still be activated by:
  snapd.socket
Trigger für libc-bin (2.27-3ubuntu1.6) werden verarbeitet ...
Trigger für man-db (2.8.3-2ubuntu0.1) werden verarbeitet ...
Trigger für dbus (1.12.2-1ubuntu1.3) werden verarbeitet ...
Trigger für mime-support (3.60ubuntu1) werden verarbeitet ...
(Lese Datenbank ... 74090 Dateien und Verzeichnisse sind derzeit installiert.)
Löschen der Konfigurationsdateien von lxd (3.0.3-0ubuntu1~18.04.2) ...
Löschen der Konfigurationsdateien von snapd (2.55.5+18.04) ...
Discarding preserved snap namespaces
Final directory cleanup
Removing extra snap-confine apparmor rules
Removing snapd cache
Removing snapd state
Löschen der Konfigurationsdateien von lxcfs (3.0.3-0ubuntu1~18.04.3) ...
Trigger für systemd (237-3ubuntu10.56) werden verarbeitet ...
Trigger für ureadahead (0.100.0-21) werden verarbeitet ...
## Disabling cloud-config.service ...
Removed /etc/systemd/system/cloud-init.target.wants/cloud-config.service.
Created symlink /etc/systemd/system/cloud-config.service → /dev/null.
## Disabling cloud-final.service ...
Removed /etc/systemd/system/cloud-init.target.wants/cloud-final.service.
Created symlink /etc/systemd/system/cloud-final.service → /dev/null.
## Disabling cloud-init-local.service ...
Removed /etc/systemd/system/cloud-init.target.wants/cloud-init-local.service.
Created symlink /etc/systemd/system/cloud-init-local.service → /dev/null.
## Disabling cloud-init.service ...
Removed /etc/systemd/system/cloud-init.target.wants/cloud-init.service.
Created symlink /etc/systemd/system/cloud-init.service → /dev/null.
## Disabling cloud-init-hotplugd.socket ...
Removed /etc/systemd/system/cloud-init.target.wants/cloud-init-hotplugd.socket.
Created symlink /etc/systemd/system/cloud-init-hotplugd.socket → /dev/null.
## Disabling cloud-config.target ...
Created symlink /etc/systemd/system/cloud-config.target → /dev/null.
## Disabling cloud-init.target ...
Created symlink /etc/systemd/system/cloud-init.target → /dev/null.
## Installing updates and host specific software
OK:1 http://de.archive.ubuntu.com/ubuntu bionic InRelease
Holen:2 http://de.archive.ubuntu.com/ubuntu bionic-updates InRelease [88,7 kB]                            
OK:3 https://deb.linuxmuster.net lmn71 InRelease  
...
Nach dieser Operation werden 14,8 MB Plattenplatz freigegeben.
(Lese Datenbank ... 106892 Dateien und Verzeichnisse sind derzeit installiert.)
Entfernen von dns-root-data (2018013001) ...
Entfernen von ebtables (2.0.10.4-3.5ubuntu2.18.04.3) ...
Entfernen von libuv1:amd64 (1.18.0-3) ...
Entfernen von lxd-client (3.0.3-0ubuntu1~18.04.2) ...
Entfernen von squashfs-tools (1:4.3-6ubuntu0.18.04.4) ...
Entfernen von uidmap (1:4.5-1ubuntu2.3) ...
Entfernen von xdelta3 (3.0.11-dfsg-1ubuntu1) ...
Entfernen von liblxc-common (3.0.3-0ubuntu1~18.04.1) ...
Entfernen von liblxc1 (3.0.3-0ubuntu1~18.04.1) ...
Trigger für man-db (2.8.3-2ubuntu0.1) werden verarbeitet ...
Trigger für libc-bin (2.27-3ubuntu1.6) werden verarbeitet ...
## Passwords
# root ... OK!
## Writing configuration

## The system has been prepared with the following values:
# Profile   : server
# Hostname  : server
# Domain    : linuxmuster.lan
# IP        : 10.0.0.1
# Netmask   : 255.255.0.0
# Firewall  : 10.0.0.254
# Gateway   : 10.0.0.254
# Interface : ens18
# Swapsize  : 2G
# LVM device: /dev/sdb
# LVM vlms  : var:10,linbo:40,global:10,default-school:100%FREE

### Finished - a reboot is necessary!
root@server:~# 

Sodele. Ich habe mir dann doch noch mal selbst geholfen und von vorne angefangen. Erst mal Sorry für die Verwirrung und Sorry - Problem 42 (=> Per Anhalter durch die Galaxis bzw. Problem sitzt 42cm vor dem Bildschirm). Ich kann nicht aufmerksam lesen. Mein Problem hat sich in Luft aufgelöst, wenn ich folgendendes befolge:
https://docs.linuxmuster.net/de/latest/installation/install-from-scratch/basis_server.html#bezeichnung-des-speichermediums-fur-das-lvm-ermitteln

Achtung
Unser linuxmuster-setup nimmt Dir die nötigen vorbereitenden Aktionen ab. Du läßt also das zweite Speichermedium unkonfiguriert.

Also keine Partition auf sdb anlegen und direkt nach Anlegen und Installieren des Servers — linuxmuster.net 7.1 Dokumentation springen

Anlegen und Installieren des Servers — linuxmuster.net 7.1 Dokumentation wird ebenfalls übersprungen und mit Anlegen und Installieren des Servers — linuxmuster.net 7.1 Dokumentation fortgeführt.

Nicht im Code rumpfuschen!

1 „Gefällt mir“

Kleine Zusatzinfo falls jemand drüberstolpert der sich (wie ich) manchmal nicht so genau an Anleitungen halten möchte :wink: ich hatte das selbe Problem beim Versuch auf lxc zu installieren, sollte aber auch helfen wenn man einfach kein LVM will. Es recht diese Zeile auszukommentieren:

# pvdevice = do_lvm(pvdevice, vgname, lvmvols_array, quotamntopts)

Hinweis:

Die Dokumentation wurde am 26.11.2022 in dem angesprochenen Bereich überarbeitet!

Gruß

Alois