ich arbeite aktuell an einer Semi-Automatischen ESXi-Installation mittels Kickstarter-File. Es handelt sich hierbei um einen Host, welcher von der Außenwelt komplett abgeschottet ist.
Nun habe ich aktuell zwei "Herausvorderungen"...
Thema 1:
Ich scheitere gerade daran, gespeicherte OVA-Templates und andere Dateien im %post vom Installationsmedium (aktuell über iLO-DVD, soll aber in Zukunft aufgrund der Größe über USB installiert werden) auf den lokalen Datastore zu kopieren.

Ich habe mal in einer der zich Foren gelesen, dass während der Installationsphase das Installationsmedium unter "/vmfs/volumes/CDROM/" gemountet wird. Deshalbsieht mein Code aktuell so aus.
Code: Alles auswählen
%post --interpreter=busybox
# Create folders for later configurations
mkdir /vmfs/volumes/datastore1/TEMPLATES/
mkdir /vmfs/volumes/datastore1/OVFTOOL/
mkdir /vmfs/volumes/datastore1/CONFIG/
# Copy OVA-Templates and OVFTOOL to local Datastore
cp -R /vmfs/volumes/CDROM/TEMPLATES/* /vmfs/volumes/datastore1/TEMPLATES/
cp -R /vmfs/volumes/CDROM/OVFTOOL/* /vmfs/volumes/datastore1/OVFTOOL/
Leider funktioniert das aber so nicht. Leider habe ich aber hier keine Ahnung wie ich hier vorgehen soll

Thema 2:
Um die VMs nicht auf dem Datastore zu installieren auf dem der ESXi läuft, gibt es noch einen separaten lokalen Storage der während der ESXi-Installation ebenfalls automatisch erstellt werden soll.
Um das möglichst "variable" zu handhaben, arbeite ich mit diversen Parametern und lasse für die Partition auch den Endsector der Disk auslesen um die maximale Kapazität nutzen zu können.
Hier der Code (läuft im %firstboot --interpreter=busybox):
Code: Alles auswählen
#Set Variables for Disk-Information
ADAPTER="vmhba0"
CANAL="C0"
TARGET="T1"
LUN="L0"
PARTITION="1"
STARTSECTOR"2048"
PARTGUID="AA31E02A400F11DB9590000C2911D1B8" # VMFS Datastore Partition GUID
ATTRIBUTE="0"
# Set Partition small Table with GPT
partedUtil setptbl "/vmfs/devices/disks/mpx.${ADAPTER}:${CANAL}:${TARGET}:${LUN}" gpt
# Get usable disk sectors from disk and save it to variable $ENDSECTOR
partedUtil getUsableSectors "/vmfs/devices/disks/mpx.${ADAPTER}:${CANAL}:${TARGET}:${LUN}" > TMP_SECTOR_01
awk '{print $2}' ${TMP_SECTOR_01} > TMP_SECTOR_02
LC_ALL=C sed 's/[^[:digit:]]//g' ${TMP_SECTOR_02} > ENDSECTOR
# Create partition on vmhba0 C0:T1:L0 (Second disk (T1) on controller vmhba0) with maximum partition size
partedUtil setptbl "/vmfs/devices/disks/mpx.${ADAPTER}:${CANAL}:${TARGET}:${LUN}" gpt "${PARTITION} ${STARTSECTOR} ${ENDSECTOR} ${PARTGUID} ${ATTRIBUTE}"
# Create datastore on prior created partition
vmkfstools -C vmfs6 -b 1m -S "VM-Datastore" "/vmfs/devices/disks/mpx.${ADAPTER}:${CANAL}:${TARGET}:${LUN}:${PARTITION}"
Ich komme hier so weit, dass ich den Endsector in eine Variable (auch bereits mit extra .txt-Datei getestet) auszulesen. Leider scheint er aber mit der ausgelesenen Variable keine Partition erstellen zu können.
Ich habe mir die Variable mal mit cat -A auslesen lassen und habe bemerkt, dass ab dem Zeitpunkt wo ich den Output des "getUsableSectors" in die Variable "TMP_SECTOR_01" gepackt habe am Ende des Wertes ein "$" stehen habe und er mir eine Newline scheinbar reinhaut...Ich vermute hier liegt der Hund begraben. Allerdings habe ich hier auch keine Ahnung wie ich das beheben soll

Ich hoffe mir kann jemand bei meinen zwei Problemen helfen
Beste Grüße
Rentos