update:
set -e; for FILE in docs/parameters.txt; \
do \
- sed -i -e 's/2007\\-10\\-01/2007\\-10\\-08/' \
- -e 's/2007-10-01/2007-10-08/' \
- -e 's/01.10.2007/08.10.2007/' \
- -e 's/1.107.1/1.107.2/' \
+ sed -i -e 's/2007\\-10\\-08/2007\\-10\\-15/' \
+ -e 's/2007-10-08/2007-10-15/' \
+ -e 's/09.10.2007/15.10.2007/' \
+ -e 's/1.110.1/1.110.2/' \
$$FILE; \
done
+casper (1.110) gutsy; urgency=low
+
+ * Don't generate fglrx or the nvidia modules in the live session at boot;
+ we disable restricted-manager in the live session anyway so they aren't
+ straightforward to use (see #43706). Saves about 19 MB of memory.
+
+ -- Colin Watson <cjwatson@ubuntu.com> Fri, 05 Oct 2007 21:28:29 +0100
+
+casper (1.109) gutsy; urgency=low
+
+ * Cache the stty binary before ejecting the CD.
+ * Skip the CD eject prompt if 'noprompt' is on the kernel command line
+ (LP: #149159).
+ * Try each of (e.g.) 2.6.22-13-generic, 2.6.22-13, and 2.6.22 in turn as
+ directory names for driver updates (LP: #122430).
+
+ -- Colin Watson <cjwatson@ubuntu.com> Fri, 05 Oct 2007 03:24:43 +0100
+
+casper (1.108) gutsy; urgency=low
+
+ * If CASPER_GENERATE_UUID is set, generate a random UUID in the initramfs,
+ and check it against the discovered medium (unless booting with the
+ ignore_uuid parameter). This allows live CD images to be safely copied
+ to the hard disk without causing problems when booting future live CDs
+ (LP: #144800).
+
+ -- Colin Watson <cjwatson@ubuntu.com> Thu, 04 Oct 2007 14:23:37 +0100
+
casper (1.107) gutsy; urgency=low
* Fix gconf keys for suspend and hibernate (thanks, Oliver Grawert;
Boot Parameters for Debian Live
-------------------------------
-Updated for live-initramfs 1.107.1-1 on 2007-10-01.
+Updated for live-initramfs 1.110.1-1 on 2007-10-08.
These options (can be combined) work from the bootloader prompt:
cp /etc/console/boottime.kmap.gz "${DESTDIR}"/etc
fi
+# Configuration: Unique ID
+if [ -n "${LIVE_GENERATE_UUID}" ]
+then
+ mkdir -p "${DESTDIR}"/conf
+ uuidgen -r > "${DESTDIR}"/conf/uuid.conf
+fi
+
# Filesystem: cifs
if [ -x /sbin/mount.cifs ]
then
Those parameters lets you override values read from the config file.
+ ignore_uuid
+
+Do not check that any UUID embedded in the initramfs matches the discovered
+medium. live-initramfs may be told to generate a UUID by setting
+LIVE_GENERATE_UUID=1 when building the initramfs.
+
integrity-check::
If specified, an MD5 sum is calculated on the live media during boot and
disables the "persistent" feature, useful if the bootloader (like syslinux) has
been installed with persistent enabled.
+ noprompt
+
+Do not prompt to eject the CD on reboot.
+
nosudo::
This parameter disables the automatic configuration of sudo.
export USERFULLNAME LIVECONF
;;
+ ignore_uuid)
+ IGNORE_UUID="Yes"
+ export IGNORE_UUID
+ ;;
+
ip=*)
STATICIP="${ARGUMENT#ip=}"
return 1
}
+matches_uuid ()
+{
+ if [ "${IGNORE_UUID}" ] || [ ! -e /conf/uuid.conf ]
+ then
+ return 0
+ fi
+
+ path="${1}"
+ uuid="$(cat /conf/uuid.conf)"
+
+ for try_uuid_file in "${mountpoint}/.disk/casper-uuid"*
+ do
+ [ -e "${try_uuid_file}" ] || continue
+
+ try_uuid="$(cat "${try_uuid_file}")"
+
+ if [ "${uuid}" = "${try_uuid}" ]
+ then
+ return 0
+ fi
+ done
+
+ return 1
+}
+
get_backing_device ()
{
case "${1}" in
if [ -n "${fstype}" ]
then
# Copying stuff...
- mount -t "${fstype}" -o ro,noatime "${fromdev}" "${tomount}"
+ mount -t "${fstype}" -o ro,noatime,nodiratime "${fromdev}" "${tomount}"
cp -a "${tomount}"/* ${todir}
umount "${tomount}"
else
mkdir -p "${croot}/${imagename}"
echo "debug: Can not mount backdev ${backdev} (image = ${image}) on croot/imagename ${croot}/${imagename}"
- mount -t "${fstype}" -o ro,noatime "${backdev}" "${croot}/${imagename}" || panic "Can not mount ${backdev} (${image}) on ${croot}/${imagename}" && rofsstring="${croot}/${imagename}=${roopt}:${rofsstring}" && rofslist="${croot}/${imagename} ${rofslist}"
+ mount -t "${fstype}" -o ro,noatime,nodiratime "${backdev}" "${croot}/${imagename}" || panic "Can not mount ${backdev} (${image}) on ${croot}/${imagename}" && rofsstring="${croot}/${imagename}=${roopt}:${rofsstring}" && rofslist="${croot}/${imagename} ${rofslist}"
fi
done
fi
fi
- mount ${cowdevice} -t ${cow_fstype} -o rw,noatime /cow || panic "Can not mount ${cowdevice} on /cow"
+ mount ${cowdevice} -t ${cow_fstype} -o rw,noatime,nodiratime /cow || panic "Can not mount ${cowdevice} on /cow"
- mount -t ${UNIONTYPE} -o noatime,dirs=/cow=rw:${rofsstring} ${UNIONTYPE} "${rootmnt}" || panic "${UNIONTYPE} mount failed"
+ mount -t ${UNIONTYPE} -o noatime,nodiratime,dirs=/cow=rw:${rofsstring} ${UNIONTYPE} "${rootmnt}" || panic "${UNIONTYPE} mount failed"
# Adding other custom mounts
if [ -n "${PERSISTENT}" ]
if [ -b "${homecow}" ]
then
- mount -t $(get_fstype "${homecow}") -o rw,noatime "${homecow}" "${rootmnt}/home"
+ mount -t $(get_fstype "${homecow}") -o rw,noatime,nodiratime "${homecow}" "${rootmnt}/home"
export HOMEMOUNTED=1 # used to proper calculate free space in do_snap_copy()
else
[ "${quiet}" != "y" ] && log_warning_msg "Unable to find the persistent home medium"
{
sysdev="${1}"
devname="${2}"
+ skip_uuid_check="${3}"
if [ -z "${devname}" ]
then
if is_supported_fs ${fstype}
then
- mount -t ${fstype} -o ro,noatime "${devname}" ${mountpoint} || continue
+ mount -t ${fstype} -o ro,noatime,nodiratime "${devname}" ${mountpoint} || continue
- if is_live_path ${mountpoint}
+ if is_live_path ${mountpoint} && \
+ ([ "${skip_uuid_check}" ] || matches_uuid ${mountpoint})
then
echo ${mountpoint}
return 0
# first look at the one specified in the command line
if [ ! -z "${LIVE_MEDIA}" ]
then
- if check_dev "null" "${LIVE_MEDIA}"
+ if check_dev "null" "${LIVE_MEDIA}" "skip_uuid_check"
then
return 0
fi
rm -f /root/etc/xdg/autostart/restricted-manager.desktop
rm -f /root/etc/xdg/autostart/restricted-manager-kde.desktop
+# Since we disable restricted-manager, there isn't much point generating the
+# fglrx or nvidia modules either. The other restricted modules may still be
+# useful.
+sed -i 's/^DISABLED_MODULES=""/DISABLED_MODULES="fglrx nv"/' \
+ /root/etc/default/linux-restricted-modules-common
+
log_end_msg
# kernel flavour.
path=${1}
- kbase=$(uname -r | sed 's/^\([0-9]*\.[0-9]*\.[0-9]*\)-.*/\1/')
- update_dir="${path}/ubuntu-drivers/${kbase}"
+ abi="$(uname -r)"
+ kver="$(echo "$abi" | cut -d- -f1,2)"
+ kbase="$(echo "$abi" | cut -d- -f1)"
+
+ for leaf in "$abi" "$kver" "$kbase"
+ do
+ update_dir="$path/ubuntu-drivers/$leaf"
+
+ [ -d "$update_dir" ] || continue
- if [ -d "${update_dir}" ]
- then
if [ "$(echo ${update_dir}/*_${DPKG_ARCH}.deb)" != \
"${update_dir}/*_${DPKG_ARCH}.deb" ]
then
echo "${update_dir}"
- return 0;
+ return 0
fi
- fi
+ done
- return 1;
+ return 1
}
is_nice_device ()