Skip to content

Instantly share code, notes, and snippets.

@rschmied
Created November 3, 2017 16:01
Show Gist options
  • Save rschmied/3571fdf0771949a4e44e65562bd9c296 to your computer and use it in GitHub Desktop.
Save rschmied/3571fdf0771949a4e44e65562bd9c296 to your computer and use it in GitHub Desktop.
Modify CSR 1000v ISO to activate serial console instead of VGA
#!/bin/bash
#set -x
[[ ! "$1" =~ .*\.iso ]] && { echo ".iso file name needed"; exit; }
TEMP=$(mktemp -d)
PDIR=$(pwd)
if [[ "$1" =~ ^/ ]]; then
SRC=$1
else
SRC=$PDIR/$1
fi
pushd $TEMP
mkdir mnt && mkdir iso
sudo mount -o loop $SRC mnt
cp -a mnt/* iso
sed -i '/^default/s/0/1/' iso/boot/grub/menu.lst
mkisofs -R -b boot/grub/stage2_eltorito -no-emul-boot -boot-load-size 4 -boot-info-table -o "new-$(basename $1)" iso
sudo umount mnt
mv *.iso $PDIR
popd
rm -rf $TEMP
@rschmied
Copy link
Author

rschmied commented Nov 30, 2017

@hpreston Ugh... apparently missed this. Some of this is Linux specific... especially mounting a loop file system. You could try to replace the mount with hdiutil mount $SRC. You'd still need the mkisofs which can be installed using MacPorts or Brew. The rest is pretty vanilla. The hdiutil will also mount into /Volumes... so there's some more tweaking needed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment