hostname -f says “hostname: the specified hostname is invalid”

hostname -f says “hostname: the specified hostname is invalid”

Check - your /etc/hostname and /etc/hosts. Maybe the hostname is in fact invalid.

On Ubuntu and Debian

Debian based systems use the file /etc/hostname to read the hostname of the computer at boot time and set it up using the init script /etc/init.d/hostname.sh

We can edit the file /etc/hostname and change the hostname and then run:

/etc/init.d/hostname.sh start

Steps:

1. sudo gedit /etc/hostname and edit /etc/hosts
2. Save the file with the hostname you like to set
3. sudo /etc/init.d/hostname.sh start