Solved

Hostname keeps changing

Posted on 2004-03-26
16
969 Views
Last Modified: 2013-12-16
Hi there,

I run the Core Dstro with a number of extra packages installed with the help of (B)LFS. I have a strange problem: my hostname 'corelinux' changes at random times to '-f' ...???

I've searched allmost every script now, but can't find any hostname-changing-commands...

Help? Please?

Harold...
0
Comment
Question by:aling
  • 6
  • 5
  • 2
  • +3
16 Comments
 
LVL 7

Expert Comment

by:troopern
Comment Utility
have you checked your /etc/hostname file ?
or /etc/hosts ?
0
 
LVL 14

Expert Comment

by:xberry
Comment Utility
edit your /etc/sysconfig/network file & put

HOSTNAME= 'corelinux'

there

then #hostname corelinux

reboot your system
0
 
LVL 9

Expert Comment

by:Alf666
Comment Utility
I'd have a look at your dhcp client. Most probably, it's invoking a script post lease issuance.

Which dhcp client are you using ?
0
 

Author Comment

by:aling
Comment Utility
OK:

'/etc/hosts' file:
127.0.0.1 localhost
127.0.0.1 corelinux

exerpt from '/etc/rc.d/rc.si'
# setup network [internet connections go in rc.mu]
hostname corelinux
ifconfig lo 127.0.0.1
route add -net 127.0.0.0 netmask 255.0.0.0 lo

exerpt from '/etc/rc.d/rc.mu'
# setup network
ifconfig eth0 192.168.0.20 netmask 255.255.255.0 up
route add -net 192.168.0.0/24 dev eth0
route add default gw 192.168.0.1

I don't use a DHCP  client nor RedHat so I also dont have a /etc/sysconf...

I do have this prompt occasionally :-)

[root@-f] ~ > hostname
-f

Hope to help you helping me with this...

Harold...
0
 
LVL 9

Expert Comment

by:Alf666
Comment Utility
Ok. Change the following in your /etc/hosts :

192.168.0.20<tab>corelinux

And get rid of the second 127.0.0.1 line.

I don't know if this will solve your problem, but it can't be bad.

Some script somewhere is trying to get your fqdn hostname using "hostname -f".
And, for a reason I don't know, it's in fact setting your hostname to "-f"...
Weird.

Does it happen after you start a new X environment ?

You can try the following command to narrow the search :

find /etc/ | xargs grep -- "hostname -f"
0
 
LVL 12

Expert Comment

by:paullamhkg
Comment Utility
Agree with Alf666 that should be change the name of your linux box with the IP

127.0.0.1 is for local loop.
0
 
LVL 51

Expert Comment

by:ahoffmann
Comment Utility
> I do have this prompt occasionally :-)
sounds like you have an alias or function which is mal-programmed
please post results of:
  set|grep hostname
  alias|grep hostname
0
 

Author Comment

by:aling
Comment Utility
Gentlemen,

find /etc/ | xargs grep -- "hostname -f" -> no result
set|grep hostname && alias|grep hostname -> no result

I've looked at the hostname man pag (http://www.die.net/doc/linux/man/man1/hostname.1.html) and none of the command line options work with my hostname binary. For example: hostname -d sets the hostname to '-d' instead of returning a value...

Perhaps things will change if I mak a fresh install of Coreutils-5.0?
0
How to run any project with ease

Manage projects of all sizes how you want. Great for personal to-do lists, project milestones, team priorities and launch plans.
- Combine task lists, docs, spreadsheets, and chat in one
- View and edit from mobile/offline
- Cut down on emails

 
LVL 9

Expert Comment

by:Alf666
Comment Utility
Yes. There is also a chance you have multiple hostname commands on your system.
If you have installed locate, try :

locate hostname

This definitely explains why your hostname changes to "-f" sometimes.
Lots of scripts (including XFree startup scripts) use the hostname command to know who they are.
0
 

Author Comment

by:aling
Comment Utility
Result of locate hostname:

/bin/hostname
/usr/lib/perl5/5.8.0/hostname.pl
/usr/man/man1/hostname.1
/usr/share/man/man3/BIO_get_conn_hostname.3
/usr/share/man/man3/BIO_set_conn_hostname.3
/usr/src/ocaml-3.07/otherlibs/unix/gethostname.c

I'll compile/install today, maybe that will fix things up...

Harold.
0
 
LVL 9

Expert Comment

by:Alf666
Comment Utility
That shoud definitely.
I don't know where that hostname command comes from, but it's suspicious.
0
 

Author Comment

by:aling
Comment Utility
OK,

Here's how I reinstalled coreutils:

coreutils-5.0 (ftp://ftp.nluug.nl/pub/gnu/coreutils/coreutils-5.0.tar.gz)
- tar zxvf coreutils-5.0.tar.gz
- cd coreutils-5.0
- ./configure && make && make install
- mv /usr/local/bin/* /bin -f

(I didn't use the --prefix=/ to be shure that the current binaries are overwritten)

[root@corelinux] / > hostname
corelinux
[root@corelinux] / > hostname -f
[root@corelinux] / > hostname
-f
[root@corelinux] / >

As you'll see, no results here... ;-(
0
 
LVL 9

Accepted Solution

by:
Alf666 earned 500 total points
Comment Utility
Ok. Just got it.

the hostname version from core-utils sucks. It's a very basic one. Juste recompiled it and checked the source.

Get the nettools :

http://www.tazenda.demon.co.uk/phil/net-tools/

They're the ones bundled with most distribs.

Your system will feel much better after that.
0
 
LVL 51

Expert Comment

by:ahoffmann
Comment Utility
if hostname -f does not return a FQDN, then there is none configured
what contains your /etc/resolv.conf
0
 
LVL 9

Expert Comment

by:Alf666
Comment Utility
ahoffmann : Nope. This specific version of hostname does not accept any argument (I checked the sources). If you "hostname -f", then your hostname IS "-f" :-(

Hence the proposal to use a proper version.
0
 

Author Comment

by:aling
Comment Utility
Congratulations!

EE has proven worthy again!

I did had some probs compiling net-tools...

Quote from google search about compiling net-tools on kernel 2.6.x:

Net-tools' make process aborts with a missing declaration about the variable
"x25_address". That is because in the header file <linux/x25.h> there used to
be a typedef for this variable. Nowlonger it does not, being replaced by a
structure of the same name. This problem is easily worked around by acting as
follows: the file x25_sr.c in the lib/ subdirectory of the net-tools suite is
the source of the problem. In line 80 it uses the sizeof() operator to get
the size of the structure x25_address included from the "#include
<linux/x25.h>" line. The workaround I used was to add a line

struct x25_address x25_address_priv

to the beginning of the relevant function, X25_setroute() and change the line
80 use of sizeof(x25_address) to sizeof(x25_address_priv). This gives
sizeof() a structure named x25_address_priv of type x25_address which solves
the problems.

...net-tools-1.60 compiled and installed correctly and replaced my bogus version of hostname...

hostname -f now returns my hostname!!!

Thank you all for contributing to this Q! The points go to Alf666 for pointing out the net-tools package...

Thanx...

Harold.
0

Featured Post

Free Trending Threat Insights Every Day

Enhance your security with threat intelligence from the web. Get trending threat insights on hackers, exploits, and suspicious IP addresses delivered to your inbox with our free Cyber Daily.

Join & Write a Comment

How many times have you wanted to quickly do the same thing to a list but found yourself typing it again and again? I first figured out a small time saver with the up arrow to recall the last command but that can only get you so far if you have a bi…
If you have a server on collocation with the super-fast CPU, that doesn't mean that you get it running at full power. Here is a preamble. When doing inventory of Linux servers, that I'm administering, I've found that some of them are running on l…
Learn several ways to interact with files and get file information from the bash shell. ls lists the contents of a directory: Using the -a flag displays hidden files: Using the -l flag formats the output in a long list: The file command gives us mor…
Learn how to get help with Linux/Unix bash shell commands. Use help to read help documents for built in bash shell commands.: Use man to interface with the online reference manuals for shell commands.: Use man to search man pages for unknown command…

771 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

10 Experts available now in Live!

Get 1:1 Help Now