70-install-ssh: "ssh" package doesn't fully resolve on atleast the newer distros, changed the package "ssh" to "openssh-server" 80-install-kernel: new script to install a kernel for the pygrub flag 80-install-modules: added support for pygrub, this script is essentially ignored if pygrub is set. The kernel script will install modules in that case.
87 lines
1.9 KiB
Bash
Executable File
87 lines
1.9 KiB
Bash
Executable File
#!/bin/sh
|
|
#
|
|
# Install modules from the host system into the new image, and
|
|
# ensure that 'module-init-tools' is setup.
|
|
#
|
|
# This is most likely required if you're using a custom kernel
|
|
# for your Xen system. But even if it isn't required it can't
|
|
# really do anything bad; just waste a bit of space.
|
|
#
|
|
# Steve
|
|
# --
|
|
# http://www.steve.org.uk/
|
|
|
|
|
|
prefix=$1
|
|
|
|
|
|
|
|
#
|
|
# Source our common functions
|
|
#
|
|
if [ -e /usr/lib/xen-tools/common.sh ]; then
|
|
. /usr/lib/xen-tools/common.sh
|
|
else
|
|
. ./hooks/common.sh
|
|
fi
|
|
|
|
|
|
#
|
|
# Log our start
|
|
#
|
|
logMessage Script $0 starting
|
|
|
|
if [ ${pygrub} ]; then
|
|
logMessage "pygrub set, skipping module install"
|
|
else
|
|
#
|
|
# The name of the package containing the correct modules.
|
|
#
|
|
linux_modules_package="linux-modules-$(uname -r)"
|
|
|
|
#
|
|
# Attempt to install that package. This will either work on an Etch
|
|
# system, or fail on a Sarge/custom kernel.
|
|
#
|
|
if [ -n "${modules}" -a -d "${modules}" ]; then
|
|
|
|
#
|
|
# Modules path was specified during install
|
|
#
|
|
logMessage "Copying modules from ${modules}"
|
|
|
|
mkdir -p ${prefix}/lib/modules
|
|
cp -au ${modules} ${prefix}/lib/modules
|
|
elif chroot ${prefix} /usr/bin/apt-cache show ${linux_modules_package} >/dev/null 2>/dev/null; then
|
|
|
|
logMessage "Package '${linux_modules_package}' is available - installing"
|
|
|
|
#
|
|
# If it worked then we can install the package.
|
|
#
|
|
installDebianPackage ${prefix} ${linux_modules_package}
|
|
else
|
|
|
|
#
|
|
# Fall back to copying over modules from the host to the new
|
|
# system.
|
|
#
|
|
logMessage "Package '${linux_modules_package}' is not available"
|
|
logMessage "Copying modules from /lib/modules/$(uname -r)"
|
|
|
|
mkdir -p ${prefix}/lib/modules
|
|
cp -au /lib/modules/$(uname -r) ${prefix}/lib/modules
|
|
fi
|
|
|
|
#
|
|
# Install the module-init-tools package.
|
|
#
|
|
installDebianPackage ${prefix} module-init-tools
|
|
|
|
fi # if pygrub
|
|
|
|
#
|
|
# Log our finish
|
|
#
|
|
logMessage Script $0 finished
|