You may also need to add/change the hostname in the /etc/hosts file. By default this would look something like this, using our www.example.com example again:
127.0.0.1 www.example.com localhost localhost.localdomain
The file /etc/sysconfig/network contains the hostname and will look something like this:
This change won't take affect until the next reboot, but you can make the change happen immediately using the hostname command like so:
$ hostname ftp.example.com
service syslog restart
========================================================================Change your Hostname without Rebooting in RedHat Linux
Written by Tony Bhimani
September 8, 2005
RedHat Linux (should apply to 7.x and up)
This tutorial covers changing your hostname in RedHat Linux without having to do a reboot for the changes to take effect. I've tested this on RedHat 7.3, 9, Fedora Core 3, and CentOS 4.1. It should work for all the versions in between since they all closely follow the same RedHat configuration. What's the point of this tutorial? Never reboot if you don't have to and keep your uptime intact.
Make sure you are logged in as root and move to /etc/sysconfig and open the network file in vi.
Look for the HOSTNAME line and replace it with the new hostname you want to use. In this example I want to replace localhost with redhat9.
When you are done, save your changes and exit vi. Next we will edit the /etc/hosts file and set the new hostname.
In hosts, edit the line that has the old hostname and replace it with your new one.
Save your changes and exit vi. The changes to /etc/hosts and /etc/sysconfig/network are necessary to make your changes persistent (in the event of an unscheduled reboot).
Now we use the hostname program to change the hostname that is currently set.
And run it again without any parameters to see if the hostname changed.
Finally we will restart the network to apply the changes we made to /etc/hosts and /etc/sysconfig/network.
service network restart
To verify the hostname has been fully changed, logout of your system and you should see your new hostname being used at the login prompt and after you've logged back in.
Quick, painless, and you won't lose your server's uptime.