Bug 653655

Summary: error downloading kickstart file from nfs with just "ks".
Product: Red Hat Enterprise Linux 6 Reporter: jas
Component: doc-Installation_GuideAssignee: Jack Reed <jreed>
Status: CLOSED CURRENTRELEASE QA Contact: ecs-bugs
Severity: medium Docs Contact:
Priority: low    
Version: 6.0CC: i.goyret, jreed, jskeoch, krowe, pbokoc, rvykydal, rwilliam
Target Milestone: rcKeywords: Documentation
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
: 727874 (view as bug list) Environment:
Last Closed: 2011-12-09 01:04:08 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 658855    
Bug Blocks: 727874    

Description jas 2010-11-15 21:19:11 UTC
Description of problem:

We presently have RHEL 4 and are evaluating RHEL 6 for an upgrade.  Under RHEL 4, when we kickstart, we can specify "ks" on the kernel command line.  Our DHCP server specifies the boot server IP under "next-server", and the kickstart directory under "filename" ending in a "/".  When I do a ks on the host in RHEL 4, the system picks up the kickstart file automatically, and everything works fine.  With RHEL 6, where NetworkManager has been introduced, I get the infamous "Unable to download the kickstart file.  Please modify the kickstart parameter below or press Cancel to proceed as an interactive installation".

On CTRL-ALT-F3, I see: "ERROR : no bootserver was found"

If I specify ks=nfs:<our boot server ip>:/obj/kickstart/ (which is exactly what the dhcp server is reporting) it works perfectly.  There's definitely a bug hiding there...

What I am wondering is whether this has anything to do with the fact that we are running a DHCP v2 server, and not v3.

Comment 2 Radek Vykydal 2010-11-24 15:17:31 UTC
This doesn't work in rhel6 indeed. NetworkManager doesn't expose "next-server" dhcp setting in Options property of org.freedesktop.NetworkManager.DHCP4Config. Why Dan? Is it a bug or is it intentional?

Also there might be a typo in anaconda code, but it is irrelevant now because neither server_name, nor next_server or any similar option is in Options.

--- a/loader/nfsinstall.c
+++ b/loader/nfsinstall.c
@@ -476,7 +476,7 @@ int getFileFromNfs(char * url, char * dest, struct loaderData_s * loaderData) {
                 continue;
             }
 
-            server_name = nm_dhcp4_config_get_one_option(dhcp, "server_name");
+            server_name = nm_dhcp4_config_get_one_option(dhcp, "next_server");
             if (!server_name) {
                 logMessage(ERROR, "no bootserver was found");
                 g_object_unref(client);

Comment 3 i.goyret 2011-04-29 02:33:53 UTC
FYI, the exact same problem also happens with Fedora 14.
Fedora 3 and 5 worked with the "next-server" option (as documented
in the kickstart pages) without a problem.

An alternate solution that worked for me was to add a "server-name"
statement to the DHCP server config, eg:

 group {
  next-server 1.2.3.4;
  server-name "1.2.3.4";     <<<<<<<<<
  ...
  host x1 {
    filename "/kickstart/x1.ks";
    ...
  }
 }

Comment 4 Radek Vykydal 2011-05-27 12:35:05 UTC
(In reply to comment #3)
> FYI, the exact same problem also happens with Fedora 14.
> Fedora 3 and 5 worked with the "next-server" option (as documented
> in the kickstart pages) without a problem.
> 
> An alternate solution that worked for me was to add a "server-name"
> statement to the DHCP server config, eg:
> 
>  group {
>   next-server 1.2.3.4;
>   server-name "1.2.3.4";     <<<<<<<<<
>   ...
>   host x1 {
>     filename "/kickstart/x1.ks";
>     ...
>   }
>  }
Thanks for the information.

With transition from libdhcp to NetworkManager anaconda doesn't have access to next-server parameter. It is using server-name option instead. We need to update the documentation accordingly.

Comment 5 RHEL Program Management 2011-05-31 20:49:48 UTC
This request was evaluated by Red Hat Product Management for inclusion
in a Red Hat Enterprise Linux maintenance release. Product Management has 
requested further review of this request by Red Hat Engineering, for potential
inclusion in a Red Hat Enterprise Linux Update release for currently deployed 
products. This request is not yet committed for inclusion in an Update release.

Comment 6 David Cantrell 2011-07-06 17:10:59 UTC
*** Bug 719359 has been marked as a duplicate of this bug. ***

Comment 7 David Cantrell 2011-08-02 13:38:45 UTC
Docs team,

Please see comment #4 for a summary of what needs changing.

Comment 8 Radek Vykydal 2011-08-03 13:33:56 UTC
I think we should change these parts of installation guide

32.10. Starting a Kickstart Installation, option ks, first paragraph:

"If ks is used alone, the installation program configures the Ethernet card to use DHCP. The kickstart file is read from the "bootServer" from the DHCP response as if it is an NFS server sharing the kickstart file. By default, the bootServer is the same as the DHCP server. The name of the kickstart file is one of the following:"

should be changed to:

"If ks is used alone, the installation program configures the Ethernet card to use DHCP. The kickstart file is read from NFS server specified by DHCP option server-name. The name of the kickstart file is one of the following:"

Comment 9 Radek Vykydal 2011-08-03 13:54:33 UTC
I am cloning the bug to update also Migration Guide.