| Summary: | Anaconda backtraces with "No device found for the requested iface" when PXE booting | ||||||
|---|---|---|---|---|---|---|---|
| Product: | Red Hat Enterprise Linux 7 | Reporter: | Lukas Zapletal <lzap> | ||||
| Component: | doc-Installation_Guide | Assignee: | Petr Bokoc <pbokoc> | ||||
| Status: | CLOSED CURRENTRELEASE | QA Contact: | ecs-bugs | ||||
| Severity: | unspecified | Docs Contact: | Martin Banas <mbanas> | ||||
| Priority: | unspecified | ||||||
| Version: | 7.0 | CC: | jstodola, pbokoc, rrajaram, rvykydal | ||||
| Target Milestone: | rc | Keywords: | Documentation | ||||
| Target Release: | --- | ||||||
| Hardware: | Unspecified | ||||||
| OS: | Unspecified | ||||||
| Whiteboard: | |||||||
| Fixed In Version: | Doc Type: | Bug Fix | |||||
| Doc Text: | Story Points: | --- | |||||
| Clone Of: | Environment: | ||||||
| Last Closed: | 2014-06-11 15:52:51 UTC | Type: | Bug | ||||
| Regression: | --- | Mount Type: | --- | ||||
| Documentation: | --- | CRM: | |||||
| Verified Versions: | Category: | --- | |||||
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |||||
| Cloudforms Team: | --- | Target Upstream Version: | |||||
| Bug Depends On: | |||||||
| Bug Blocks: | 1050111 | ||||||
| Attachments: |
|
||||||
|
Description
Lukas Zapletal
2013-12-20 09:26:15 UTC
Now this is interesting, I am booting via PXE without any special options and Anaconda does not start with the very same error. PXE Linux script: kernel boot/RedHat-7.0-x86_64-vmlinuz append initrd=boot/RedHat-7.0-x86_64-initrd.img ks=http://foreman.virtual.lan/unattended/provision Note there are NO special options there. Relevant part from my kickstart: network --bootproto dhcp --hostname eln.virtual.lan The same error message. Seems to be an issue similar to bug #1023829. The behaviour in cases when --device specified in kickstart does not exist (ie using old eth0 instead of new systemd naming), or is not specified as in your case doesn't work as in rhel 6 currently. I'll investigate if we are able to use ks.device option in case of --device not specified in rhel7 flow (dracut + anaconda vs. loader + anaconda in rhel6), and if bootif value of ks.device works. When reporting a bug please attach the traceback log file (/tmp/anaconda-tb-*) or use bug reporting to bugzilla that should be offered by installer. I wonder where the "network" option is targeted, it is not an anaconda boot option. Okay, I was passing kernel parameters incorrectly, when I do not provide ksdevice=bootif, it works fine. It looks like we just need to properly document that this option value (bootif) is not supported now. Reassigning so the docs team can update the install guide with regards to the information in comment #7. Actually the whole ksdevice boot option is deprecated now. The entire chapter on boot options has been rewritten for RHEL 7 (see BZ#831512, and more importantly, see the attachment describing the options available). We'll add a section into the Installation Guide covering deprecated and removed options for RHEL7. Later this section might be moved into the Migration Planning Guide, but we'll keep it in the IG for now. Hi Petr, Table 20.7. Automatic Interface Configuration Methods says: ksdevice=link Ignored (this is the same as the default behavior) This is not true, it is not ignored. If the "ksdevice=link" parameter is present, anaconda tries to find a network device with a link and activates this device. (In reply to Jan Stodola from comment #16) > Hi Petr, > Table 20.7. Automatic Interface Configuration Methods says: > > ksdevice=link Ignored (this is the same as the default behavior) > > This is not true, it is not ignored. If the "ksdevice=link" parameter is > present, anaconda tries to find a network device with a link and activates > this device. Jan are you sure? I thought that ksdevice=link wrt choosing a device to be activated in initramfs is actually ignored (ie not a network device with link is activated but all network devices with link are activated). Another thing is using the ksdevice value for missing kickstart network --device option, where the first device with link found is actually used. Radek, I tested this way: 1. create a kickstart on /boot partition: install cdrom lang en_US.UTF-8 keyboard us reboot text rootpw redhat timezone --utc America/New_York bootloader --location=mbr zerombr clearpart --all --initlabel autopart %packages @base %end 2. download installation kernel and initramdisk to /boot, modify grub.cfg, use following kernel boot parameters to start the installation: "ks=hd:sda1:/ks.cfg" 3. make sure that _no_ DVD is present in the drive (just to make sure the installation fails in initramfs) 4. restart the system and start the installation The installation fails as expected and networking is not running. Now restart the installation again and add the "ksdevice=link" boot parameter - the installation fails too, but the network device is configured with an IP address. Both installations fail in initramfs and the "ksdevice=link" parameter is obviously not ignored. Is my testing incorrect? Hm, so currently adding ksdevice=link seems to be equivalent to rd.neednet, ie saying "activate network in initramfs", which without further network configuration (ip= argument) means activating of all devices (The same happens when the ksdevice is not present and network is needed in initramfs ... first row of the table). So I wonder what should we write in the doc then... not trivial to find something sensible and not misleading. (In reply to Radek Vykydal from comment #19) > Hm, so currently adding ksdevice=link seems to be equivalent to rd.neednet, > ie saying "activate network in initramfs", which without further network > configuration (ip= argument) means activating of all devices (The same > happens when the ksdevice is not present and network is needed in initramfs > ... first row of the table). > > So I wonder what should we write in the doc then... not trivial to find > something sensible and not misleading. Well, ksdevice=link is the same thing as no ksdevice= at all, we could just say that, right? 'ksdevice=link: same as "not present"' Not exactly. If the installation doesn't require network in initramfs, eg DVD install, with ksdevice=link network would be activated in initramfs while without ksdevice=link it would be not. So maybe let's say something along: same as "not present" but network will be activated in initramfs no matter it is actually needed (but this can be achieved by supported rd.neednet option). Looks good to me, thanks. |