diff options
author | Robin H. Johnson <robbat2@gentoo.org> | 2012-10-13 22:52:42 +0000 |
---|---|---|
committer | Robin H. Johnson <robbat2@gentoo.org> | 2012-10-13 22:52:42 +0000 |
commit | bddbeeb8874bd22b8b60e27dd366bc5f3a8d1cee (patch) | |
tree | 407f40c12eaa99a17bf52e75fb05cd9b9656b4f9 /defaults | |
parent | Bug #336170: amd74xx was long-replaced by pata_amd. (diff) | |
download | genkernel-bddbeeb8874bd22b8b60e27dd366bc5f3a8d1cee.tar.gz genkernel-bddbeeb8874bd22b8b60e27dd366bc5f3a8d1cee.tar.bz2 genkernel-bddbeeb8874bd22b8b60e27dd366bc5f3a8d1cee.zip |
Bug #351873: More livecd control, and initramfs livecd argument documentation.
Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
Diffstat (limited to 'defaults')
-rwxr-xr-x | defaults/initrd.defaults | 7 | ||||
-rwxr-xr-x | defaults/initrd.scripts | 2 | ||||
-rwxr-xr-x | defaults/linuxrc | 6 |
3 files changed, 11 insertions, 4 deletions
diff --git a/defaults/initrd.defaults b/defaults/initrd.defaults index 73fe4c9..90f73f4 100755 --- a/defaults/initrd.defaults +++ b/defaults/initrd.defaults @@ -67,12 +67,15 @@ else fi REAL_ROOT='' +CONSOLE='/dev/console' +NEW_ROOT='/newroot' CDROOT='0' CDROOT_DEV='' CDROOT_TYPE='auto' -NEW_ROOT='/newroot' CDROOT_PATH='/mnt/cdrom' -CONSOLE='/dev/console' +# This is the file that the cdroot will be checked for as a +# marker. It must exist RELATIVE to the cdroot. +CDROOT_MARKER='/livecd' LOOPS='/livecd.loop /zisofs /livecd.squashfs /image.squashfs /livecd.gcloop' diff --git a/defaults/initrd.scripts b/defaults/initrd.scripts index 03e61e0..227fc99 100755 --- a/defaults/initrd.scripts +++ b/defaults/initrd.scripts @@ -159,7 +159,7 @@ bootstrapCD() { # a bunch of extra devices [ -n "${CDROOT_DEV}" ] && DEVICES="${CDROOT_DEV}" - findmediamount "cdrom" "${SUBDIR}/livecd" "REAL_ROOT" "${CDROOT_PATH}" ${DEVICES} + findmediamount "cdrom" "${SUBDIR}/${CDROOT_MARKER}" "REAL_ROOT" "${CDROOT_PATH}" ${DEVICES} } bootstrapKey() { diff --git a/defaults/linuxrc b/defaults/linuxrc index 011505c..54a57c6 100755 --- a/defaults/linuxrc +++ b/defaults/linuxrc @@ -39,6 +39,7 @@ FAKE_ROOT='' REAL_ROOTFLAGS='' ROOTFSTYPE='auto' CRYPT_SILENT=0 + mkdir -p /etc/cmdline /etc/modprobe.d for x in ${CMDLINE} do @@ -69,6 +70,9 @@ do cdroot_type=*) CDROOT_TYPE=${x#*=} ;; + cdroot_marker=*) + CDROOT_MARKER=${x#*=} + ;; # Start livecd loop, looptype options loop=*) LOOP=${x#*=} @@ -657,7 +661,7 @@ then # If encrypted, find key and mount, otherwise mount as usual if [ -n "${CRYPT_ROOT}" ] then - CRYPT_ROOT_KEY="$(head -n 1 "${CDROOT_PATH}"/livecd)" + CRYPT_ROOT_KEY="$(head -n 1 "${CDROOT_PATH}"/${CDROOT_MARKER})" CRYPT_ROOT='/dev/loop0' good_msg 'You booted an encrypted livecd' "${CRYPT_SILENT}" |