File create_bootable_sles11ga_cd.sh of Package xenpaging-scripts
#!/bin/bash
set -xe
unset LANG
unset ${!LC_*}
unset cdroot
outdir="${PWD}"
cdroot=$1
distname=sles11ga
_tmp=false
isolinuxbootdir=boot/x86_64/loader
loader_dir=boot/x86_64/loader
arch_dir=boot/x86_64
distdir="/mounts/schnell/CD-ARCHIVE/SLE11/SLES-11-GM/x86_64/DVD1"
autoyast="http://bax.arch.suse.de/~ohering/work/xen"
install="http://dist.suse.de/install/SLP/SLES-11-GM/x86_64/DVD1"
if test ! -d "${distdir}"
then
distdir="/dist/sles11-sp1/x86_64/dvd1"
install="http://192.168.2.100/dist/sles11-sp1/x86_64/dvd1"
autoyast="http://192.168.2.100/dist/buildservice/home:olh:xen-unstable/xenpaging-scripts"
fi
if test ! -d "${distdir}"
then
echo "distdir not found"
exit 1
fi
if test "$#" != "0"
then
shift
fi
if test -d "${cdroot}"
then
echo "${cdroot} exists"
exit 1
fi
if test -z "${cdroot}"
then
cdroot="`mktemp -d`"
_tmp=true
else
mkdir -vp "${cdroot}"
fi
test -n "${cdroot}"
cd "${cdroot}"
#
mkdir -vp "${arch_dir}"
pushd "${arch_dir}"
for i in vmlinuz-xen initrd-xen
do
cp -avL ${distdir}/${arch_dir}/$i .
done
popd
#
#
mkdir -vp "${loader_dir}"
pushd "${loader_dir}"
for i in linux initrd
do
cp -avL ${distdir}/${loader_dir}/$i .
done
popd
#
mkdir -vp "${isolinuxbootdir}"
pushd "${isolinuxbootdir}"
for i in isolinux.bin
do
cp -avL ${distdir}/${isolinuxbootdir}/$i .
done
cat > isolinux.cfg <<-EOF
say *hvm hvm_manual native native_manual
default hvm
label xenpaging
kernel linux
append initrd=initrd vga=normal quiet sysrq=yes panic=9 oops=panic install=${install} vnc=1 vncpassword=password ssh=1 sshpassword=root nosshkey autoyast=${autoyast}/xenpaging-client-minimal-autoinst.xml
label hvm
kernel linux
append initrd=initrd vga=normal quiet sysrq=yes panic=9 oops=panic install=${install} vnc=1 vncpassword=password ssh=1 sshpassword=root nosshkey autoyast=${autoyast}/autoyast-sles11ga_full.xml
label hvm_manual
kernel linux
append initrd=initrd vga=normal quiet sysrq=yes panic=9 oops=panic install=${install}
label native
kernel linux
append initrd=initrd vga=normal quiet sysrq=yes panic=9 oops=panic install=${install} vnc=1 vncpassword=password ssh=1 sshpassword=root nosshkey brokenmodules=xen-platform-pci autoyast=${autoyast}/autoyast-sles11ga_full.xml
label native_manual
kernel linux
append initrd=initrd vga=normal quiet sysrq=yes panic=9 oops=panic install=${install} brokenmodules=xen-platform-pci
implicit 1
prompt 1
timeout 600
EOF
cat isolinux.cfg
popd
#
chmod -R a+rX,u+w .
find . -ls
mkisofs \
-o "${outdir}/bootiso-${distname}.iso" \
-b "${isolinuxbootdir}/isolinux.bin" \
-c "${isolinuxbootdir}/boot.cat" \
-no-emul-boot \
-boot-load-size 4 \
-boot-info-table \
-rock \
"$@" \
"${cdroot}"
if test "${_tmp}" = "true"
then
rm -rf "${cdroot}"
fi