Commit bd5dc17be87b3a3073d50b23802647db3ae3fa8e

Authored by Josh Triplett
Committed by Linus Torvalds
1 parent ca39599c63

uts: make default hostname configurable, rather than always using "(none)"

The "hostname" tool falls back to setting the hostname to "localhost" if
/etc/hostname does not exist.  Distribution init scripts have the same
fallback.  However, if userspace never calls sethostname, such as when
booting with init=/bin/sh, or otherwise booting a minimal system without
the usual init scripts, the default hostname of "(none)" remains,
unhelpfully appearing in various places such as prompts ("root@(none):~#")
and logs.  Furthermore, "(none)" doesn't typically resolve to anything
useful.

Make the default hostname configurable.  This removes the need for the
standard fallback, provides a useful default for systems that never call
sethostname, and makes minimal systems that much more useful with less
configuration.  Distributions could choose to use "localhost" here to
avoid the fallback, while embedded systems may wish to use a specific
target hostname.

Signed-off-by: Josh Triplett <josh@joshtriplett.org>
Acked-by: Linus Torvalds <torvalds@linux-foundation.org>
Acked-by: David Miller <davem@davemloft.net>
Cc: Serge Hallyn <serue@us.ibm.com>
Cc: Kel Modderman <kel@otaku42.de>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

Showing 2 changed files with 10 additions and 1 deletions Side-by-side Diff

... ... @@ -9,7 +9,7 @@
9 9 #endif
10 10  
11 11 #ifndef UTS_NODENAME
12   -#define UTS_NODENAME "(none)" /* set by sethostname() */
  12 +#define UTS_NODENAME CONFIG_DEFAULT_HOSTNAME /* set by sethostname() */
13 13 #endif
14 14  
15 15 #ifndef UTS_DOMAINNAME
... ... @@ -204,6 +204,15 @@
204 204  
205 205 endchoice
206 206  
  207 +config DEFAULT_HOSTNAME
  208 + string "Default hostname"
  209 + default "(none)"
  210 + help
  211 + This option determines the default system hostname before userspace
  212 + calls sethostname(2). The kernel traditionally uses "(none)" here,
  213 + but you may wish to use a different default here to make a minimal
  214 + system more usable with less configuration.
  215 +
207 216 config SWAP
208 217 bool "Support for paging of anonymous memory (swap)"
209 218 depends on MMU && BLOCK