auto-biarch (x86_64 + i686) LiveDVD patch + ISO
by Jan Kratochvil
Hi,
finally created a LiveDVD ISO automatically booting x86_64 OS on x86_64
(and i686 otherwise). Regular users will not notice there exists any new arch
while they will benefit from the full performance of their PC:
http://people.redhat.com/jkratoch/x86bilive-2009062000.tar.gz (71KB)
It uses live_dir=LiveOS-x86_64 vs. live_dir=LiveOS-i686 to boot the image.
The syslinux patch provides "default-{x86_64,i386}" keywords in isolinux.cfg.
livecd-iso-to-disk is not patched/compatible with such image.
livecd-creator should create such ISO on a single run, not by merging the
output of two livecd-creator runs by a 3rd party app.
Regards,
Jan
Reasons:
* I still did not understand why I have to carry with me two media - both
x86_64 and i386 - when all the data perfectly fit on a single media.
* Why I have to try to boot x86_64 first to find out if the specific machine
is x86_64? Even common programmers do not know it, "Windows XP works here".
* The OS must "just work", it must be fun and easy. Requiring a special
technical decision before even starting the OS download is a showstopper.
* Checked that a regular user will on http://fedoraproject.org/get-fedora
still download terrible performance degradation of 32-bit OS although her
hadware is in 70%-95%(?) of cases x86_64. x86_64 is here for 6 years now.
* Arguing x86 may be faster than x86_64... I did not find any such case,
x86_64 is a more modern arch (more registers, PIC for free, better ABI).
We already hit the 2GB address space limitations. x86_64 is the future.
* All the friends of mine have 8Mbit+ ADSL and TB disks downloading many DVD
disks so some several more hundreds of MB are not something to notice.
mkisofs -f -J -r -hide-rr-moved -hide-joliet-trans-tbl -V Fedora-11-x86bi-Live -o ../x86bilive.iso -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-info-table -boot-load-size 4 .
mount -r -o loop Fedora-11-x86_64-Live.iso x86_64/
mount -r -o loop Fedora-11-i686-Live.iso i686/
x86bilive:
total 4
lrwxrwxrwx 1 root root 13 2009-06-18 21:10 GPL -> ../x86_64/GPL
lrwxrwxrwx 1 root root 14 2009-06-18 21:11 LiveOS-i686 -> ../i686/LiveOS/
lrwxrwxrwx 1 root root 16 2009-06-18 21:10 LiveOS-x86_64 -> ../x86_64/LiveOS/
lrwxrwxrwx 1 root root 16 2009-06-18 21:10 README -> ../x86_64/README
drwxr-xr-x 2 root root 4096 2009-06-20 21:44 isolinux/
x86bilive/isolinux:
total 184
lrwxrwxrwx 1 root root 30 2009-06-18 21:13 boot.cat -> ../../x86_64/isolinux/boot.cat
lrwxrwxrwx 1 root root 31 2009-06-18 21:17 ii686 -> ../../i686/isolinux/initrd0.img
-rw-r--r-- 1 root root 14336 2009-06-20 21:45 isolinux.bin
-r--r--r-- 1 root root 1411 2009-06-20 21:44 isolinux.cfg
lrwxrwxrwx 1 root root 33 2009-06-18 21:13 ix8664 -> ../../x86_64/isolinux/initrd0.img
lrwxrwxrwx 1 root root 28 2009-06-18 21:17 ki686 -> ../../i686/isolinux/vmlinuz0
lrwxrwxrwx 1 root root 30 2009-06-18 21:13 kx8664 -> ../../x86_64/isolinux/vmlinuz0
lrwxrwxrwx 1 root root 29 2009-06-18 21:13 memtest -> ../../x86_64/isolinux/memtest
lrwxrwxrwx 1 root root 32 2009-06-18 21:13 splash.jpg -> ../../x86_64/isolinux/splash.jpg
-r--r--r-- 1 root root 159888 2009-06-20 20:48 vesamenu.c32
isolinux.cfg:
default vesamenu.c32
timeout 100
menu background splash.jpg
menu title Welcome to Fedora-11-x86bi-Live!
menu color border 0 #ffffffff #00000000
menu color sel 7 #ffffffff #ff000000
menu color title 0 #ffffffff #00000000
menu color tabmsg 0 #ffffffff #00000000
menu color unsel 0 #ffffffff #00000000
menu color hotsel 0 #ff000000 #ffffffff
menu color hotkey 7 #ffffffff #ff000000
menu color timeout_msg 0 #ffffffff #00000000
menu color timeout 0 #ffffffff #00000000
menu color cmdline 0 #ffffffff #00000000
menu hidden
menu hiddenrow 5
label linux0
menu label x86_64 Boot
kernel kx8664
append initrd=ix8664 root=CDLABEL=Fedora-11-x86bi-Live rootfstype=auto live_dir=LiveOS-x86_64 ro liveimg quiet rhgb
menu default-x86_64
label check0
menu label x86_64 Verify and Boot
kernel kx8664
append initrd=ix8664 root=CDLABEL=Fedora-11-x86bi-Live rootfstype=auto live_dir=LiveOS-x86_64 ro liveimg quiet rhgb check
label linux1
menu label i686 Boot
kernel ki686
append initrd=ii686 root=CDLABEL=Fedora-11-x86bi-Live rootfstype=auto live_dir=LiveOS-i686 ro liveimg quiet rhgb
menu default-i386
label check1
menu label i686 Verify and Boot
kernel ki686
append initrd=ii686 root=CDLABEL=Fedora-11-x86bi-Live rootfstype=auto live_dir=LiveOS-i686 ro liveimg quiet rhgb check
label memtest
menu label Memory Test
kernel memtest
label local
menu label Boot from local drive
localboot 0xffff
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ defaults.patch 20 Jun 2009 20:10:46 -0000
@@ -0,0 +1,175 @@
+--- syslinux-3.75-orig/com32/menu/Makefile 2009-04-16 06:42:14.000000000 +0200
++++ syslinux-3.75-defaults/com32/menu/Makefile 2009-06-20 19:21:32.000000000 +0200
+@@ -24,7 +24,7 @@ MODULES = menu.c32 vesamenu.c32
+ TESTFILES =
+
+ COMMONOBJS = menumain.o readconfig.o passwd.o drain.o printmsg.o colors.o \
+- background.o refstr.o execute.o
++ background.o refstr.o execute.o verify_cpu.o
+
+ all: $(MODULES) $(TESTFILES)
+
+--- syslinux-3.75-orig/com32/menu/menu.h 2009-04-16 06:42:14.000000000 +0200
++++ syslinux-3.75-defaults/com32/menu/menu.h 2009-06-20 19:21:32.000000000 +0200
+@@ -224,4 +224,9 @@ void execute(const char *cmdline, enum k
+ /* drain.c */
+ void drain_keyboard(void);
+
++/* verify_cpu.S */
++#if defined(__i386__) || defined(__x86_64__)
++int verify_cpu(void);
++#endif
++
+ #endif /* MENU_H */
+--- syslinux-3.75-orig/com32/menu/readconfig.c 2009-04-16 06:42:14.000000000 +0200
++++ syslinux-3.75-defaults/com32/menu/readconfig.c 2009-06-20 20:23:24.000000000 +0200
+@@ -656,11 +656,22 @@ static void parse_config_file(FILE *f)
+ m->parent_entry->displayname = refstr_get(m->title);
+ }
+ }
+- } else if ( looking_at(p, "default") ) {
+- if (ld.label) {
+- ld.menudefault = 1;
+- } else if (m->parent_entry) {
+- m->parent->defentry = m->parent_entry->entry;
++ } else if ( looking_at(p, "default")
++#if defined(__i386__) || defined(__x86_64__)
++ || looking_at(p, "default-i386")
++ || looking_at(p, "default-x86_64")
++#endif
++ ) {
++#if defined(__i386__) || defined(__x86_64__)
++ if (! ( ( looking_at(p, "default-i386") && verify_cpu () == 0 ) ||
++ ( looking_at(p, "default-x86_64") && verify_cpu () != 0 ) ) )
++#endif
++ {
++ if (ld.label) {
++ ld.menudefault = 1;
++ } else if (m->parent_entry) {
++ m->parent->defentry = m->parent_entry->entry;
++ }
+ }
+ } else if ( looking_at(p, "hide") ) {
+ ld.menuhide = 1;
+--- syslinux-3.75-orig/com32/menu/verify_cpu.S 1970-01-01 01:00:00.000000000 +0100
++++ syslinux-3.75-defaults/com32/menu/verify_cpu.S 2009-06-20 20:30:27.000000000 +0200
+@@ -0,0 +1,119 @@
++/* https://lists.linux-foundation.org/pipermail/fastboot/2006-November/01188... */
++#if defined(__i386__) || defined(__x86_64__)
++ .globl verify_cpu
++verify_cpu:
++ push %ebx
++ push %esi
++ push %edi
++ push %ebp
++ call Xverify_cpu
++ pop %ebp
++ pop %edi
++ pop %esi
++ pop %ebx
++ ret
++
++/*
++ *
++ * verify_cpu.S
++ *
++ * 14 Nov 2006 Vivek Goyal: Created the file
++ *
++ * This is a common code for verification whether CPU supports
++ * long mode and SSE or not. It is not called directly instead this
++ * file is included at various places and compiled in that context.
++ * Following are the current usage.
++ *
++ * This file is included by both 16bit and 32bit code.
++ *
++ * arch/x86_64/boot/setup.S : Boot cpu verification (16bit)
++ * arch/x86_64/boot/compressed/head.S: Boot cpu verification (32bit)
++ * arch/x86_64/kernel/trampoline.S: secondary processor verfication (16bit)
++ * arch/x86_64/kernel/acpi/wakeup.S:Verfication at resume (16bit)
++ *
++ * verify_cpu, returns the status of cpu check in register %eax.
++ * 0: Success 1: Failure
++ *
++ * The caller needs to check for the error code and take the action
++ * appropriately. Either display a message or halt.
++ */
++
++Xverify_cpu:
++
++ pushfl # Save caller passed flags
++ pushl $0 # Kill any dangerous flags
++ popfl
++
++ /* minimum CPUID flags for x86-64 */
++ /* see http://www.x86-64.org/lists/discuss/msg02971.html */
++#define SSE_MASK ((1<<25)|(1<<26))
++#define REQUIRED_MASK1 ((1<<0)|(1<<3)|(1<<4)|(1<<5)|(1<<6)|(1<<8)|\
++ (1<<13)|(1<<15)|(1<<24))
++#define REQUIRED_MASK2 (1<<29)
++ pushfl # standard way to check for cpuid
++ popl %eax
++ movl %eax,%ebx
++ xorl $0x200000,%eax
++ pushl %eax
++ popfl
++ pushfl
++ popl %eax
++ cmpl %eax,%ebx
++ jz verify_cpu_no_longmode # cpu has no cpuid
++
++ movl $0x0,%eax # See if cpuid 1 is implemented
++ cpuid
++ cmpl $0x1,%eax
++ jb verify_cpu_no_longmode # no cpuid 1
++
++ xor %di,%di
++ cmpl $0x68747541,%ebx # AuthenticAMD
++ jnz verify_cpu_noamd
++ cmpl $0x69746e65,%edx
++ jnz verify_cpu_noamd
++ cmpl $0x444d4163,%ecx
++ jnz verify_cpu_noamd
++ mov $1,%di # cpu is from AMD
++
++verify_cpu_noamd:
++ movl $0x1,%eax # Does the cpu have what it takes
++ cpuid
++ andl $REQUIRED_MASK1,%edx
++ xorl $REQUIRED_MASK1,%edx
++ jnz verify_cpu_no_longmode
++
++ movl $0x80000000,%eax # See if extended cpuid is implemented
++ cpuid
++ cmpl $0x80000001,%eax
++ jb verify_cpu_no_longmode # no extended cpuid
++
++ movl $0x80000001,%eax # Does the cpu have what it takes
++ cpuid
++ andl $REQUIRED_MASK2,%edx
++ xorl $REQUIRED_MASK2,%edx
++ jnz verify_cpu_no_longmode
++
++verify_cpu_sse_test:
++ movl $1,%eax
++ cpuid
++ andl $SSE_MASK,%edx
++ cmpl $SSE_MASK,%edx
++ je verify_cpu_sse_ok
++ test %di,%di
++ jz verify_cpu_no_longmode # only try to force SSE on AMD
++ movl $0xc0010015,%ecx # HWCR
++ rdmsr
++ btr $15,%eax # enable SSE
++ wrmsr
++ xor %di,%di # don't loop
++ jmp verify_cpu_sse_test # try again
++
++verify_cpu_no_longmode:
++ popfl # Restore caller passed flags
++ movl $1,%eax
++ ret
++verify_cpu_sse_ok:
++ popfl # Restore caller passed flags
++ xorl %eax, %eax
++ ret
++#endif
--- syslinux.spec 16 Apr 2009 18:11:30 -0000 1.59
+++ syslinux.spec 20 Jun 2009 20:10:46 -0000
@@ -7,6 +7,7 @@ License: GPLv2+
Group: Applications/System
URL: http://syslinux.zytor.com/
Source0: ftp://ftp.kernel.org/pub/linux/utils/boot/syslinux/%{name}-%{tarball_vers...
+Patch9: defaults.patch
ExclusiveArch: %{ix86} x86_64
Buildroot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildRequires: nasm >= 0.98.38-1, perl, netpbm-progs
@@ -33,12 +34,18 @@ MEMDISK, which loads legacy operating sy
%prep
%setup -q -n syslinux-%{tarball_version}
+%patch9 -p1
%build
CFLAGS="-Werror -Wno-unused -finline-limit=2000"
export CFLAGS
# If you make clean here, we lose the provided syslinux.exe
#make clean
+rm -f com32/menu/vesamenu.c32
+make -C com32/lib libcom32.a
+make -C com32/gpllib libcom32gpl.a
+make -C com32/menu vesamenu.c32
+test -f com32/menu/vesamenu.c32
make installer
make -C sample tidy
13 years, 2 months
Custom initrd
by Mads Kiilerich
I am using livecd-creator from livecd-tools-024-1.fc11.i586 and need to
customize the initrd. But I have problems making it work and figuring
out what is going on.
I have figured out that livecd-creator through imgcreate creates a
/etc/sysconfig/mkinitrd. When rpms runs mkinitrd from their %post script
then it will exec mkliveinitrd and use the configured module list.
AFAICS livecd-creator then picks up the initrd from /boot, and the end
result after having written the iso to usb with livecd-iso-to-disk is
that it ends up in /syslinux/initrd0.img.
But if I overwrite the /boot/initrd* in %post like this:
/sbin/mkinitrd -f /boot/initrd-$(rpm -q kernel --qf
'%{version}-%{release}.%{arch}\n').img $(rpm -q kernel --qf
'%{version}-%{release}.%{arch}\n')
then it won't be used.
What am I doing wrong? When is the initrd picked up? What is the code flow?
If I make %post preserve /etc/sysconfig/mkinitrd and boots from usb and
restores /etc/sysconfig/mkinitrd and runs
/sbin/mkinitrd -f /mnt/live/syslinux/initrd0.img $(rpm -q kernel
--qf "%{version}-%{release}.%{arch}\n")
then it works as expected.
/Mads
14 years
Re: Unnecessary SELinux Failure Condition?
by Jay Greguske
Daniel J Walsh wrote:
> On 09/11/2009 04:47 PM, Jay Greguske wrote:
>
>> Hello,
>>
>> While using livecd-creator and poking around the code, I found a check
>> that I don't understand the reason for. livecd-creator will bail out if
>> the host has SELinux disabled and the kickstart file requests it be
>> enabled. Why is that? I would think that if SELinux was disabled but you
>> still had the policy available, that would be all you need to build a
>> properly labeled image.
>>
>> Out of curiosity I made changes to the code just to see what would
>> happen. I attached them to this mail for reference, NOT as proposed
>> changes to be applied to the livecd-tools code. On an F10 system with
>> SELinux disabled I was able to build a working livecd image that I could
>> boot and play around in. SELinux was being enforced in the image too. I
>> was able to do this with a RHEL 5 kernel as well, just to see if maybe
>> something had changed with an earlier version of SELinux.
>>
>> Perhaps the failure condition is no longer necessary?
>>
>> Thanks in advance,
>> - Jay
>>
> Yes I think that is no longer necessary. And it should definitely be supported.
>
>
Attached is a cleaner patch that removes the check and some other
unnecessary code (thanks Dan). With this users should be able to build
livecd images that have SELinux enabled on an SELinux-disabled host.
I've tested this on an F10 system with an F10 and a RHEL 5 kernel. Both
kernels I was able to build images with the SELinux enabled and disabled
on the host (but always enabled in the kickstart file).
Let me know what you guys think!
Thanks,
- Jay
14 years, 3 months
2 commits - imgcreate/kickstart.py Makefile
by Warren Togami 砥上勇
Makefile | 2 +-
imgcreate/kickstart.py | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
New commits:
commit bd7c399756359916628a8016ff69a1064dd2f521
Author: Warren Togami <wtogami(a)redhat.com>
Date: Mon Oct 19 22:22:27 2009 -0400
version 030
diff --git a/Makefile b/Makefile
index 8175ed6..3d1db26 100644
--- a/Makefile
+++ b/Makefile
@@ -1,5 +1,5 @@
-VERSION = 029
+VERSION = 030
INSTALL = /usr/bin/install -c
INSTALL_PROGRAM = ${INSTALL}
commit fb71c65c1d6cb478969b3214c5caa94dc4b2b9af
Author: Warren Togami <wtogami(a)redhat.com>
Date: Mon Oct 19 22:21:59 2009 -0400
I am a moron, committed wrong version of this patch.
diff --git a/imgcreate/kickstart.py b/imgcreate/kickstart.py
index c926977..328043c 100644
--- a/imgcreate/kickstart.py
+++ b/imgcreate/kickstart.py
@@ -406,7 +406,7 @@ class SelinuxConfig(KickstartConfig):
"""A class to apply a kickstart selinux configuration to a system."""
def relabel(self, ksselinux):
# touch some files which get unhappy if they're not labeled correctly
- for fn in ("/etc/resolv.conf"):
+ for fn in ("/etc/resolv.conf",):
path = self.path(fn)
f = file(path, "w+")
os.chmod(path, 0644)
14 years, 4 months
tools/livecd-iso-to-disk.sh
by Warren Togami 砥上勇
tools/livecd-iso-to-disk.sh | 59 +++++++++++++++++++++++++++++++++++++++++---
1 file changed, 56 insertions(+), 3 deletions(-)
New commits:
commit 09678eb9284f2df7618c4609998fd3bd95787251
Author: Warren Togami <wtogami(a)redhat.com>
Date: Thu Oct 29 17:22:58 2009 -0400
livecd-iso-to-disk properly configures a Fedora 12 Installer DVD for USB boot
Requires: ext3 filesystem on target device
diff --git a/tools/livecd-iso-to-disk.sh b/tools/livecd-iso-to-disk.sh
index 3496214..67b25b7 100755
--- a/tools/livecd-iso-to-disk.sh
+++ b/tools/livecd-iso-to-disk.sh
@@ -279,11 +279,25 @@ if [ $(id -u) != 0 ]; then
exit 1
fi
+detectisotype() {
+ if [ -e $CDMNT/LiveOS/squashfs.img ]; then
+ isotype=live
+ return
+ fi
+ if [ -e $CDMNT/images/install.img ]; then
+ isotype=installer
+ return
+ fi
+ echo "ERROR: $ISO does not appear to be a Live image or DVD installer."
+ exitclean
+}
+
cryptedhome=1
keephome=1
homesizemb=0
swapsizemb=0
overlaysizemb=0
+isotype=
LIVEOS=LiveOS
HOMEFILE="home.img"
@@ -440,6 +454,8 @@ mount $mountopts $USBDEV $USBMNT || exitclean
trap exitclean SIGINT SIGTERM
+detectisotype
+
if [ -f "$USBMNT/$LIVEOS/$HOMEFILE" -a -n "$keephome" -a "$homesizemb" -gt 0 ]; then
echo "ERROR: Requested keeping existing /home and specified a size for /home"
echo "Please either don't specify a size or specify --delete-home"
@@ -480,7 +496,8 @@ if [ -n "$skipcompress" ]; then
fi
free=$(df -B1M $USBDEV |tail -n 1 |awk {'print $4;'})
- tba=$(($overlaysizemb + $homesizemb + $livesize + $swapsizemb))
+if [ "$isotype" = "live" ]; then
+tba=$(($overlaysizemb + $homesizemb + $livesize + $swapsizemb))
if [ $tba -gt $(($free + $tbd)) ]; then
echo "Unable to fit live image + overlay on available space on USB stick"
echo "+ Size of live image: $livesize"
@@ -494,8 +511,29 @@ if [ $tba -gt $(($free + $tbd)) ]; then
echo "= To fit, free or decrease requested size total by: $(($tba - $free - $tbd))"
exitclean
fi
+fi
-if [ -z "$skipcopy" ];then
+# Verify available space for DVD installer
+if [ "$isotype" = "installer" ]; then
+ isosize=$(du -s -B 1M $ISO | awk {'print $1;'})
+ installimgsize=$(du -s -B 1M $CDMNT/images/install.img | awk {'print $1;'})
+ tbd=0
+ if [ -e $USBMNT/images/install.img ]; then
+ tbd=$(du -s -B 1M $USBMNT/images/install.img | awk {'print $1;'})
+ fi
+ if [ -e $USBMNT/$(basename $ISO) ]; then
+ tbd=$(($tbd + $(du -s -B 1M $USBMNT/$(basename $ISO) | awk {'print $1;'})))
+ fi
+ echo "Size of DVD image: $isosize"
+ echo "Size of install.img: $installimgsize"
+ echo "Available space: $(($free + $tbd))"
+ if [ $(($isosize + $installimgsize)) -gt $(($free + $tbd)) ]; then
+ echo "ERROR: Unable to fit DVD image + install.img on available space on USB stick"
+ exitclean
+ fi
+fi
+
+if [ -z "$skipcopy" ] && [ "$isotype" = "live" ]; then
if [ -d $USBMNT/$LIVEOS -a -z "$force" ]; then
echo "Already set up as live image."
if [ -z "$keephome" -a -e $USBMNT/$LIVEOS/$HOMEFILE ]; then
@@ -517,7 +555,8 @@ fi
[ ! -d $USBMNT/$SYSLINUXPATH ] && mkdir -p $USBMNT/$SYSLINUXPATH
[ -n "$efi" -a ! -d $USBMNT/EFI/boot ] && mkdir -p $USBMNT/EFI/boot
-if [ -z "$skipcopy" ];then
+# Live image copy
+if [ -z "$skipcopy" ] && [ "$isotype" = "live" ]; then
echo "Copying live image to USB stick"
[ ! -d $USBMNT/$LIVEOS ] && mkdir $USBMNT/$LIVEOS
[ -n "$keephome" -a -f "$USBMNT/$HOMEFILE" ] && mv $USBMNT/$HOMEFILE $USBMNT/$LIVEOS/$HOMEFILE
@@ -535,6 +574,14 @@ if [ -z "$skipcopy" ];then
fi
fi
+# DVD installer copy
+if [ "$isotype" = "installer" ] && [ -z "$skipcopy" ]; then
+ echo "Copying DVD image to USB stick"
+ mkdir -p $USBMNT/images/
+ cp $CDMNT/images/install.img $USBMNT/images/install.img || exitclean
+ cp $ISO $USBMNT/
+fi
+
cp $CDMNT/isolinux/* $USBMNT/$SYSLINUXPATH
BOOTCONFIG=$USBMNT/$SYSLINUXPATH/isolinux.cfg
# Set this to nothing so sed doesn't care
@@ -553,6 +600,12 @@ sed -i -e "s/CDLABEL=[^ ]*/$USBLABEL/" -e "s/rootfstype=[^ ]*/rootfstype=$USBFS/
if [ -n "$kernelargs" ]; then sed -i -e "s/liveimg/liveimg ${kernelargs}/" $BOOTCONFIG $BOOTCONFIG_EFI ; fi
if [ "$LIVEOS" != "LiveOS" ]; then sed -i -e "s;liveimg;liveimg live_dir=$LIVEOS;" $BOOTCONFIG $BOOTCONFIG_EFI ; fi
+# DVD Installer
+if [ "$isotype" = "installer" ]; then
+ sed -i -e "s;initrd=initrd.img;initrd=initrd.img repo=hd:$USBLABEL:/;g" $BOOTCONFIG $BOOTCONFIG_EFI
+ sed -i -e "s;stage2=\S*;;g" $BOOTCONFIG $BOOTCONFIG_EFI
+fi
+
if [ "$overlaysizemb" -gt 0 ]; then
echo "Initializing persistent overlay file"
OVERFILE="overlay-$( /sbin/blkid -s LABEL -o value $USBDEV )-$( /sbin/blkid -s UUID -o value $USBDEV )"
14 years, 4 months
Makefile
by Warren Togami 砥上勇
Makefile | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
New commits:
commit a21856a0bcb690643b015c9d38466fc963b1f489
Author: Warren Togami <wtogami(a)redhat.com>
Date: Thu Oct 29 17:26:09 2009 -0400
version 031
diff --git a/Makefile b/Makefile
index 3d1db26..991b27b 100644
--- a/Makefile
+++ b/Makefile
@@ -1,5 +1,5 @@
-VERSION = 030
+VERSION = 031
INSTALL = /usr/bin/install -c
INSTALL_PROGRAM = ${INSTALL}
14 years, 4 months
Error during the livecd-creator process
by Danishka Navin
I got following error while running the livecd-creator
I used mirror-url of the rawhide
I did the same thing for F11 two days ago on the same Fedora11 Box.
what could be the issue?
Removing password for user root.
passwd: Success
Traceback (most recent call last):
File "/usr/bin/livecd-creator", line 140, in <module>
sys.exit(main())
File "/usr/bin/livecd-creator", line 124, in main
creator.configure()
File "/usr/lib/python2.6/site-packages/imgcreate/creator.py", line 732, in
configure
self._create_bootconfig()
File "/usr/lib/python2.6/site-packages/imgcreate/live.py", line 197, in
_create_bootconfig
self._configure_bootloader(self.__ensure_isodir())
File "/usr/lib/python2.6/site-packages/imgcreate/live.py", line 604, in
_configure_bootloader
self._configure_syslinux_bootloader(isodir)
File "/usr/lib/python2.6/site-packages/imgcreate/live.py", line 508, in
_configure_syslinux_bootloader
cfg += self.__get_image_stanzas(isodir)
File "/usr/lib/python2.6/site-packages/imgcreate/live.py", line 435, in
__get_image_stanzas
is_xen = self.__copy_kernel_and_initramfs(isodir, version, index)
File "/usr/lib/python2.6/site-packages/imgcreate/live.py", line 362, in
__copy_kernel_and_initramfs
isodir + "/isolinux/initrd" + index + ".img")
File "/usr/lib/python2.6/shutil.py", line 52, in copyfile
fsrc = open(src, 'rb')
IOError: [Errno 2] No such file or directory:
'/more/os/newInst/Hanthana12/tmp/imgcreate-bBuVMa/install_root/boot/initrd-2.6.31.5-96.fc12.i686.img'
--
Danishka Navin
http://danishkanavin.blogspot.com
14 years, 4 months
livecd - configuration changes - which way to go?
by Michal
Hallo Group Members.
My parents asked me to prepare a live cd to allow them to log in to
their e-bank.
Most of the task is performed really well with kde fedora live cd. there
are some steps left. which ones?
1) They use PPPoE, so I need to manually run network manager applet and
put username/password. I (probably) need to modify /etc/ppp/ directory.
How to apply changes to /etc/ in live cd.
2) I want web browser be automatically run - ? ~/.kde/Autostart/
modifications. how to do it?
as You see both of them affect configuration. Could You suggest me best
practice on that?
best regards,
Michal
14 years, 4 months
udev hangs with livecd on VMware 6.5.2
by Harshavardhana
Hi Everyone,
I have seen a peculiar problem with Fedora Livecd, i have the latest
release
Fedora 11. But i have been unsuccessful in using it through Vmware 6.5.2
and
6.5.3. Livecd boots its way upto starting udev daemon and hangs in
initramfs.
From there on it just stays there for ever with nothing really
happening.
I have seen the actual hang occurs at line "/sbin/udevadm trigger" this
right
after udev daemon is started, this i came to a guess by seeing the
"sbin/real-init" script which runs udev.
I wanted to know if anyone here has stumbled upon this issue that Fedora
live
cd was not working with Vmware, any work arounds if possible. If anyone
can
help me going with this it would be really helpful thanks.
PS: Fedora live normally works prelly well with all the HW available i
have tested.
Even KVM and xen works. Is it really a problem with Vmware?
Thanks
--
Harshavardhana
Gluster - http://www.gluster.com
14 years, 5 months
3 commits - imgcreate/kickstart.py imgcreate/live.py Makefile
by Warren Togami 砥上勇
Makefile | 2 +-
imgcreate/kickstart.py | 2 +-
imgcreate/live.py | 9 ++++++++-
3 files changed, 10 insertions(+), 3 deletions(-)
New commits:
commit 5ab5f01adc69f23ade5170b14d7b61d3ff7e3a37
Author: Warren Togami <wtogami(a)redhat.com>
Date: Mon Oct 19 15:16:06 2009 -0400
version 029
diff --git a/Makefile b/Makefile
index 18dcba6..8175ed6 100644
--- a/Makefile
+++ b/Makefile
@@ -1,5 +1,5 @@
-VERSION = 028
+VERSION = 029
INSTALL = /usr/bin/install -c
INSTALL_PROGRAM = ${INSTALL}
commit bfe8df0560339eedcef2958171eb6b04fe438e76
Author: Hans de Goede <hdegoede(a)redhat.com>
Date: Mon Oct 19 15:12:00 2009 -0400
Tell dracut not to ask for LUKS passwords or activate mdraid sets
By default dracut will try to activate any LUKS devices it finds while
looking for the rootfs, and bring up any mdraid arrays it finds, this is
undesirable behaviour for the livecd, to tell it to not do this.
diff --git a/imgcreate/live.py b/imgcreate/live.py
index ed3d563..78cbff7 100644
--- a/imgcreate/live.py
+++ b/imgcreate/live.py
@@ -462,10 +462,17 @@ menu hiddenrow 5
else:
long = "Boot %s(%s)" % (self.name, kernel)
+
+ # tell dracut not to ask for LUKS passwords or activate mdraid sets
+ if isDracut:
+ kern_opts = kernel_options + " rd_NO_LUKS rd_NO_MD"
+ else:
+ kern_opts = kernel_options
+
cfg += self.__get_image_stanza(is_xen, isDracut,
fslabel = self.fslabel,
isofstype = "auto",
- liveargs = kernel_options,
+ liveargs = kern_opts,
long = long,
short = "linux" + index,
extra = "",
commit 3cf56948c863ef8642a39f4cf77a9b53c12a4fa8
Author: Warren Togami <wtogami(a)redhat.com>
Date: Mon Oct 19 15:10:39 2009 -0400
Silence the /etc/modprobe.conf deprecation warning.
diff --git a/imgcreate/kickstart.py b/imgcreate/kickstart.py
index 98db856..c926977 100644
--- a/imgcreate/kickstart.py
+++ b/imgcreate/kickstart.py
@@ -406,7 +406,7 @@ class SelinuxConfig(KickstartConfig):
"""A class to apply a kickstart selinux configuration to a system."""
def relabel(self, ksselinux):
# touch some files which get unhappy if they're not labeled correctly
- for fn in ("/etc/modprobe.conf", "/etc/resolv.conf"):
+ for fn in ("/etc/resolv.conf"):
path = self.path(fn)
f = file(path, "w+")
os.chmod(path, 0644)
14 years, 5 months