Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save mattintosh4/b87a141c523d5018dc959c7bed0fb5dc to your computer and use it in GitHub Desktop.
Save mattintosh4/b87a141c523d5018dc959c7bed0fb5dc to your computer and use it in GitHub Desktop.
#!/bin/bash
set -e
set -u
set -x
ESXI_TARGET_IMAGE=esxi.img
ESXI_SOURCE_IMAGE=VMware-VMvisor-Installer-6.7.0-8169922.x86_64.iso
truncate -s 512MB "${ESXI_TARGET_IMAGE}"
echo ',,c,*' | sfdisk "${ESXI_TARGET_IMAGE}"
loopdev=$(sudo losetup --find --partscan --show "${ESXI_TARGET_IMAGE}")
sudo mkfs.vfat -F 32 ${loopdev}1
sudo syslinux ${loopdev}
sudo dd if=${SYSLINUX_MBR} of=${loopdev} bs=440 count=1 conv=notrunc
target_mount_dir=$(mktemp -d)
source_mount_dir=$(mktemp -d)
sudo mount -t fat "${loopdev}" ${target_mount_dir}
sudo mount -o loop "${ESXI_SOURCE_IMAGE}" ${source_mount_dir}
cp -R ${source_mount_dir}/* ${target_mount_dir}
mv ${target_mount_dir}/isolinux.cfg ${target_mount_dir}/isolinux.cfg
cat ${target_mount_dir}/isolinux.cfg | (rm ${target_mount_dir}/isolinux.cfg; sed '/APPEND/s/$/ -p 1/' > ${target_mount_dir}/isolinux.cfg)
sudo umount ${target_mount_dir} ${source_mount_dir}
sudo losetup -d ${loopdev}
#!/bin/bash
set -e
set -u
set -x
dd if=/dev/zero of=/dev/sdb bs=512 count=1
fdisk /dev/sdb <<!
o
n
t
c
a
w
!
mkfs.vfat -F 32 /dev/sdb1
syslinux /dev/sdb1
dd if=/usr/lib/syslinux/mbr/mbr.bin of=/dev/sdb bs=440 count=1 conv=notrunc
mkdir -p /tmp/usb /tmp/cd
mount /dev/sdb1 /tmp/usb
mount -o loop /home/matthew/Downloads/VMware-VMvisor-Installer-6.7.0-8169922.x86_64.iso /tmp/cd
cp -R /tmp/cd/* /tmp/usb
mv /tmp/usb/isolinux.cfg /tmp/usb/syslinux.cfg
sed -i -e '/APPEND/s/$/ -p 1/' /tmp/usb/syslinux.cfg
sync
umount /tmp/usb
umount /tmp/cd
eject /dev/sdb
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment