This can be complicated really, and it depends on your Linux
distribution. For example, Slackware automatically rewrites
/etc/hostname as the default from one of the /etc/rc.d/ files on
startup. the hostname is always stored in /etc/hostname, but grep
/etc/rc.d for /etc/hostname just to make sure your system isn't
overwriting /etc/hostname.
You don't need to reboot your machine, but you might want to restart all
your network daemons.