
1.) Extracting the needed files.
There are several Website and PDFs which describe who to extract files from the ESX(i) ISO.
I preferre the simple way. Just install the ESX via CD to any hardware which is supported and navigate to "/store". All files you need are just below and they are already in the right folders.
It is easy to copy them via ssh to any other linux box you like to use for building the oem.tgz.
2.) Folder structure for oem.tzg
Prepare the following folder and file structure containg the extracted and some new files. All files in the .locker folder are taken from "/store".
The listing show files from ESXi 4.0 Update 1 Build 208167. If you use another version as base the files may differ.
- Quelltext: Alles auswählen
-
.locker/ .locker/packages/ .locker/packages/4.0.0/ .locker/packages/4.0.0/tools-upgraders/ .locker/packages/4.0.0/tools-upgraders/run_upgrader.sh .locker/packages/4.0.0/tools-upgraders/vmware-tools-upgrader-32 .locker/packages/4.0.0/tools-upgraders/vmware-tools-upgrader-64 .locker/packages/4.0.0/tools-upgraders/VMwareToolsUpgrader.exe .locker/packages/4.0.0/tools-upgraders/VMwareToolsUpgrader9x.exe .locker/packages/4.0.0/tools-upgraders/VMwareToolsUpgraderNT.exe .locker/packages/4.0.0/floppies/ .locker/packages/4.0.0/floppies/vmscsi-1.2.1.0-signed.flp .locker/packages/4.0.0/floppies/pvscsi-1.0.0.5-signed-Windows2003.flp .locker/packages/4.0.0/floppies/pvscsi-1.0.0.5-signed-Windows2008.flp .locker/packages/4.0.0/vmtools/ .locker/packages/4.0.0/vmtools/freebsd.iso.sig .locker/packages/4.0.0/vmtools/freebsd.iso .locker/packages/4.0.0/vmtools/linux.iso.sig .locker/packages/4.0.0/vmtools/linux.iso .locker/packages/4.0.0/vmtools/netware.iso.sig .locker/packages/4.0.0/vmtools/netware.iso .locker/packages/4.0.0/vmtools/solaris.iso.sig .locker/packages/4.0.0/vmtools/solaris.iso .locker/packages/4.0.0/vmtools/tools-key.pub .locker/packages/4.0.0/vmtools/windows.iso.sig .locker/packages/4.0.0/vmtools/windows.iso .locker/packages/4.0.0/vmtools/winPre2k.iso.sig .locker/packages/4.0.0/vmtools/winPre2k.iso .locker/packages/4.0.0/client/ .locker/packages/4.0.0/client/VMware-viclient.exe .locker/packages/usr/ .locker/packages/usr/lib/ .locker/packages/usr/lib/ipkg/ .locker/packages/usr/lib/ipkg/info/ .locker/packages/usr/lib/ipkg/info/vmware-esx-tools-light.list .locker/packages/usr/lib/ipkg/info/vmware-esx-viclient.list .locker/packages/usr/lib/ipkg/info/vmware-esx-tools-light.control .locker/packages/usr/lib/ipkg/info/vmware-esx-viclient.control .locker/packages/usr/lib/ipkg/status .locker/conf/ .locker/db/ etc/ etc/vmware/ etc/vmware/init/ etc/vmware/init/init.d/ etc/vmware/init/init.d/82.locker-remap etc/vmware/init/init.d/71.prep-pxe sbin/ sbin/remapLocker sbin/prepPXE
3.) Needed files to prepare the use
Some extra files are needed to activate the new /locker structure on the target ESX server.
- ./etc/vmware/init/init.d/71.prep-pxe
- Quelltext: Alles auswählen
-
#!/bin/sh Exec /sbin/prepPXE
- ./etc/vmware/init/init.d/82.locker-remap
- Quelltext: Alles auswählen
-
#!/bin/sh Exec /sbin/remapLocker
- ./sbin/prepPXE
- Quelltext: Alles auswählen
-
#!/bin/ash export PATH=/sbin:/bin log() { echo "$1" logger prepPXE "$1" } configFile="/etc/vmware/locker.conf" rm $configFile
- ./sbin/remapLocker
- Quelltext: Alles auswählen
-
#!/bin/ash export PATH=/sbin:/bin log() { echo "$1" logger remapLocker "$1" } scratch=$(ls -l /locker |awk '{print $NF}') log "/scratch is $scratch" rm /scratch ln -s $scratch /scratch mkdir -p $scratch/var/tmp mkdir -p $scratch/downloads locker="/.locker" configFile="/etc/vmware/locker.conf" log "/locker is $locker" rm /locker ln -s $locker /locker mkdir -p $locker/etc/opt mkdir -p $locker/var/opt mkdir -p $locker/opt mkdir -p $locker/packages/4.0.0 mkdir -p $locker/var/core mkdir -p $locker/vmupgrade echo $locker 1 >$configFile
4.) Prepare and transfer to oem.tgz
Now we have to prepare and compress the folder structure into the needed oem.tgz
- Quelltext: Alles auswählen
-
chown -R 201:201 .[a-zA-Z0-9_]* * chmod -R 755 .[a-zA-Z0-9_]* * # Compress all files and folder to the oem,tgz tar -czvf /root/oem.tgz .[a-zA-Z0-9_]* *

