Bug 844478 - RHEL7 Alpha2 install fails when using initramfs-provided kickstart and booting via PXE
RHEL7 Alpha2 install fails when using initramfs-provided kickstart and bootin...
Status: CLOSED CURRENTRELEASE
Product: Red Hat Enterprise Linux 7
Classification: Red Hat
Component: anaconda (Show other bugs)
7.0
x86_64 Unspecified
unspecified Severity unspecified
: alpha
: ---
Assigned To: Will Woods
Release Test Team
:
: 846378 (view as bug list)
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2012-07-30 16:26 EDT by Jon Stanley
Modified: 2014-06-13 08:28 EDT (History)
8 users (show)

See Also:
Fixed In Version: anaconda-18.7-1.el7
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2014-06-13 08:28:21 EDT
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)
kickstart file (1.05 KB, text/plain)
2012-07-30 16:42 EDT, Jon Stanley
no flags Details

  None (edit)
Description Jon Stanley 2012-07-30 16:26:13 EDT
(I'm not able to open RHEL7 bugs, and I'm opening this to facilitate a current conversation with the Anaconda team - please change the product!)

When attempting to install when PXE booted, and providing a kickstart via the initramfs, the install fails. I'm providing below everything that was produced on the serial console when using rd.debug on the command line. Trying rd.break=pre-mount gave me no shell.


/init@42(): '[' yes = yes ']'
/init@43(): getarg quiet
/lib/dracut-lib.sh@97(getarg): set +x
/lib/dracut-lib.sh@120(getarg): return 1
//init@44(): getarg loglevel=
//lib/dracut-lib.sh@97(getarg): set +x
//lib/dracut-lib.sh@120(getarg): return 1
/init@44(): a=
/init@45(): '[' -n '' ']'
/init@48(): ismounted /dev
/lib/dracut-lib.sh@385(ismounted): read a m a
/lib/dracut-lib.sh@386(ismounted): '[' / = /dev ']'
/lib/dracut-lib.sh@385(ismounted): read a m a
/lib/dracut-lib.sh@386(ismounted): '[' /proc = /dev ']'
/lib/dracut-lib.sh@385(ismounted): read a m a
/lib/dracut-lib.sh@386(ismounted): '[' /sys = /dev ']'
/lib/dracut-lib.sh@385(ismounted): read a m a
/lib/dracut-lib.sh@388(ismounted): return 1
/init@49(): mount -t devtmpfs -o mode=0755,nosuid,strictatime devtmpfs /dev
/init@53(): '[' '!' -h /dev/fd ']'
/init@53(): ln -s /proc/self/fd /dev/fd
/init@54(): '[' '!' -h /dev/stdin ']'
/init@54(): ln -s /proc/self/fd/0 /dev/stdin
/init@55(): '[' '!' -h /dev/stdout ']'
/init@55(): ln -s /proc/self/fd/1 /dev/stdout
/init@56(): '[' '!' -h /dev/stderr ']'
/init@56(): ln -s /proc/self/fd/2 /dev/stderr
/init@58(): ismounted /dev/pts
/lib/dracut-lib.sh@385(ismounted): read a m a
/lib/dracut-lib.sh@386(ismounted): '[' / = /dev/pts ']'
/lib/dracut-lib.sh@385(ismounted): read a m a
/lib/dracut-lib.sh@386(ismounted): '[' /proc = /dev/pts ']'
/lib/dracut-lib.sh@385(ismounted): read a m a
/lib/dracut-lib.sh@386(ismounted): '[' /sys = /dev/pts ']'
/lib/dracut-lib.sh@385(ismounted): read a m a
/lib/dracut-lib.sh@386(ismounted): '[' /dev = /dev/pts ']'
/lib/dracut-lib.sh@385(ismounted): read a m a
/lib/dracut-lib.sh@388(ismounted): return 1
/init@59(): mkdir -m 0755 /dev/pts
/init@60(): mount -t devpts -o gid=5,mode=620,noexec,nosuid devpts /dev/pts
/init@63(): ismounted /dev/shm
/lib/dracut-lib.sh@385(ismounted): read a m a
/lib/dracut-lib.sh@386(ismounted): '[' / = /dev/shm ']'
/lib/dracut-lib.sh@385(ismounted): read a m a
/lib/dracut-lib.sh@386(ismounted): '[' /proc = /dev/shm ']'
/lib/dracut-lib.sh@385(ismounted): read a m a
/lib/dracut-lib.sh@386(ismounted): '[' /sys = /dev/shm ']'
/lib/dracut-lib.sh@385(ismounted): read a m a
/lib/dracut-lib.sh@386(ismounted): '[' /dev = /dev/shm ']'
/lib/dracut-lib.sh@385(ismounted): read a m a
/lib/dracut-lib.sh@386(ismounted): '[' /dev/pts = /dev/shm ']'
/lib/dracut-lib.sh@385(ismounted): read a m a
/lib/dracut-lib.sh@388(ismounted): return 1
/init@64(): mkdir -m 0755 /dev/shm
/init@65(): mount -t tmpfs -o mode=1777,nosuid,nodev,strictatime tmpfs /dev/shm
/init@68(): ismounted /run
/lib/dracut-lib.sh@385(ismounted): read a m a
/lib/dracut-lib.sh@386(ismounted): '[' / = /run ']'
/lib/dracut-lib.sh@385(ismounted): read a m a
/lib/dracut-lib.sh@386(ismounted): '[' /proc = /run ']'
/lib/dracut-lib.sh@385(ismounted): read a m a
/lib/dracut-lib.sh@386(ismounted): '[' /sys = /run ']'
/lib/dracut-lib.sh@385(ismounted): read a m a
/lib/dracut-lib.sh@386(ismounted): '[' /dev = /run ']'
/lib/dracut-lib.sh@385(ismounted): read a m a
/lib/dracut-lib.sh@386(ismounted): '[' /dev/pts = /run ']'
/lib/dracut-lib.sh@385(ismounted): read a m a
/lib/dracut-lib.sh@386(ismounted): '[' /dev/shm = /run ']'
/lib/dracut-lib.sh@385(ismounted): read a m a
/lib/dracut-lib.sh@388(ismounted): return 1
/init@69(): mkdir -m 0755 /newrun
/init@70(): mount -t tmpfs -o mode=0755,nosuid,nodev,strictatime tmpfs /newrun
/init@71(): cp -a /run/initramfs /run/lock /run/udev /newrun
[    3.701193] usb 6-1: new full-speed USB device number 2 using uhci_hcd
[    3.839070] usb 6-1: New USB device found, idVendor=03f0, idProduct=1027
[    3.840556] usb 6-1: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[    3.842164] usb 6-1: Product: Virtual Keyboard
[    3.843166] usb 6-1: Manufacturer: HP
[    3.857467] input: HP Virtual Keyboard as /devices/pci0000:00/0000:00:1e.0/0000:01:04.4/usb6/6-1/6-1:1.0/input/input1
[    3.862336] generic-usb 0003:03F0:1027.0001: input,hidraw0: USB HID v1.01 Keyboard [HP Virtual Keyboard] on usb-0000:01:04.4-1/input0
[    3.875182] input: HP Virtual Keyboard as /devices/pci0000:00/0000:00:1e.0/0000:01:04.4/usb6/6-1/6-1:1.1/input/input2
[    3.879665] generic-usb 0003:03F0:1027.0002: input,hidraw1: USB HID v1.01 Mouse [HP Virtual Keyboard] on usb-0000:01:04.4-1/input1
[    3.973983] Refined TSC clocksource calibration: 2533.422 MHz.
[    3.975458] Switching to clocksource tsc
/init@72(): mount --move /newrun /run
[    4.604798] mount used greatest stack depth: 4840 bytes left
/init@73(): rm -fr /newrun
/init@76(): '[' -d /run/initramfs ']'
//init@78(): udevadm --version
/init@78(): UDEVVERSION=182
/init@79(): '[' 182 -gt 166 ']'
/init@81(): export UDEVRULESD=/run/udev/rules.d
/init@81(): UDEVRULESD=/run/udev/rules.d
/init@82(): '[' -d /run/udev ']'
/init@83(): '[' -d /run/udev/rules.d ']'
/init@89(): '[' yes = yes ']'
/init@90(): mkfifo /run/initramfs/loginit.pipe
/init@92(): exec
/init@91(): loginit
[    4.684005] dracut: dracut-018-65.git20120612.el7
[    4.822514] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[    4.841544] Loading iSCSI transport class v2.0-870.
[    4.857086] iscsi: registered transport (tcp)
[    5.041586] Floppy drive(s): fd0 is 1.44M
[    8.060509] floppy0: no floppy controllers found
[    8.085528] BIOS EDD facility v0.16 2004-Jun-25, 1 devices found
[    8.107683] No iBFT detected.
[    8.122724] md: raid0 personality registered for level 0
[    8.139332] md: raid1 personality registered for level 1
[    8.156105] async_tx: api initialized (async)
[    8.161668] xor: automatically using best checksumming function: generic_sse
[    8.167868]    generic_sse:  5924.000 MB/sec
[    8.168704] xor: using function: generic_sse (5924.000 MB/sec)
[    8.195804] raid6: int64x1   1390 MB/s
[    8.212758] raid6: int64x2   1734 MB/s
[    8.229755] raid6: int64x4   1136 MB/s
[    8.246854] raid6: int64x8   1277 MB/s
[    8.263749] raid6: sse2x1    3761 MB/s
[    8.280697] raid6: sse2x2    7066 MB/s
[    8.297746] raid6: sse2x4    8496 MB/s
[    8.298463] raid6: using algorithm sse2x4 (8496 MB/s)
[    8.317930] md: raid6 personality registered for level 6
[    8.318979] md: raid5 personality registered for level 5
[    8.320085] md: raid4 personality registered for level 4
[    8.344561] md: raid10 personality registered for level 10
[    8.356502] md: linear personality registered for level -1
[    8.370308] device-mapper: uevent: version 1.0.3
[    8.372241] device-mapper: ioctl: 4.22.0-ioctl (2011-10-19) initialised: dm-devel@redhat.com
[    8.441116] device-mapper: multipath: version 1.3.0 loaded
[    8.453824] device-mapper: multipath round-robin: version 1.0.0 loaded
[    8.686814] dracut: anaconda: parsing kickstart ks.cfg
[    9.269898] parse-kickstart used greatest stack depth: 4832 bytes left
[    9.397321] dracut: rd.luks=0: removing cryptoluks activation
[    9.417510] dracut: rd.lvm=0: removing LVM activation
[    9.443245] dracut: FATAL: Mixing BOOTIF and ip= lines is dangerous
[    9.444568] dracut: Refusing to continue
[    9.446481] dracut Warning: Signal caught!
[    9.448694] dracut Warning: dracut: FATAL: Mixing BOOTIF and ip= lines is dangerous
[    9.450540] dracut Warning: dracut: Refusing to continue
[    9.461551] dracut Warning: /dev/root does not exist
/lib/dracut-lib.sh@764(wait_for_loginit): rm -f /run/initramfs/loginit.pipe /run/initramfs/loginit.pid
/lib/dracut-lib.sh@784(emergency_shell): '[' -e /run/initramfs/.die ']'
/lib/dracut-lib.sh@784(emergency_shell): exit 1
[    9.580949] init used greatest stack depth: 3352 bytes left
[    9.582540] Kernel panic - not syncing: Attempted to kill init!
Comment 2 Will Woods 2012-07-30 16:35:09 EDT
Can you attach your kickstart (or at least the network lines), and the exact arguments used to boot?

Booting with 'rd.break=cmdline' should give you a shell; check /proc/cmdline for the boot arguments. Also check for /etc/cmdline and /etc/cmdline.d.
Comment 3 Jon Stanley 2012-07-30 16:42:09 EDT
Created attachment 601341 [details]
kickstart file

Here's the dead-simple kickstart that I'm using. As of now, the exact pxelinux config file is this:

default linux
label linux
		kernel linux7/latest/isolinux/vmlinuz
		append initrd=linux7/latest/isolinux/newrd.img rd.break=cmdline rd.debug ks=file:ks.cfg inst.repo=http://yum.web.gs.com/yum.meta/linux7/latest text console=ttyS0,57600
		ipappend 2
Comment 4 Jon Stanley 2012-07-30 16:43:53 EDT
cmdline:/# cat /proc/cmdline
initrd=linux7/latest/isolinux/newrd.img rd.break=cmdline rd.debug ks=file:ks.cfg inst.repo=http://yum.web.gs.com/yum.meta/linux7/latest text console=ttyS0,57600 BOOT_IMAGE=linux7/latest/isolinux/vmlinuz BOOTIF=01-00-25-b3-a7-bb-40 


cmdline:/etc/cmdline.d# ls
distroinit.conf
cmdline:/etc/cmdline.d# cat distroinit.conf 
rd.distroinit=/usr/lib/systemd/systemd
cmdline:/etc/cmdline.d#
Comment 5 Will Woods 2012-07-30 18:38:13 EDT
Ah. So, note that 'ipappend 2' makes pxelinux add BOOTIF=01-00-25-b3-a7-bb-40, and the 'network' line in the kickstart makes parse-kickstart add 'ip=dhcp', and then dracut gets mad and explodes.

This will probably require patching parse-kickstart to avoid emitting 'ip=...' when 'BOOTIF=' is present.
Comment 6 Will Woods 2012-07-30 18:39:32 EDT
Patch sent for review: https://lists.fedorahosted.org/pipermail/anaconda-patches/2012-July/000322.html
Comment 7 Jon Stanley 2012-07-31 10:49:33 EDT
I patched my parse-kickstart with the above patch and can confirm that everything works as expected now.
Comment 8 Will Woods 2012-08-13 12:57:20 EDT
*** Bug 846378 has been marked as a duplicate of this bug. ***
Comment 10 Paul W. Frields 2013-01-25 10:11:25 EST
Looks like this was fixed some time ago -- marking appropriately for QE to verify.
Comment 12 Ludek Smid 2014-06-13 08:28:21 EDT
This request was resolved in Red Hat Enterprise Linux 7.0.

Contact your manager or support representative in case you have further questions about the request.

Note You need to log in before you can comment on or make changes to this bug.