How to set the fully qualified domain name in 12.04?

I tried adding

dns-domain domain.com

to /etc/network/interfaces with no luck. When I run

hostname -d

I get an empty string


Solution 1:

Edit /etc/hostname and add your unqualified hostname:

boson

Edit /etc/hosts:

sudo vi /etc/hosts

Add an entry of your desired hostname by replacing boson.dev.local boson where boson.dev.local is the fully qualified hostname and boson is hostname.

127.0.1.1 boson.dev.local boson

Restart the hostname service:

sudo service hostname restart

Test your configuration by opening a terminal and enter the below commands:

  • hostname
    • This should output boson
  • hostname -f
    • This should output boson.dev.local

Hope this helps.

Solution 2:

The hostname command can be used to set the fully qualified hostname as well. Run it with the name passed as the first argument for that :

hostname www.example.com

This is only effective till a reboot, though. You can edit /etc/hostname for permanent changes.

For changing domainnames, the man page recommends the following :

Note, that only the super-user can change the names.

It is not possible to set the FQDN or the DNS domain name with the dnsdomainname command (see THE FQDN below).

The host name is usually set once at system startup in /etc/init.d/hostname.sh (normally by reading the contents of a file which contains the host name, e.g. /etc/hostname).

Usually you can set it in /etc/hosts

Solution 3:

Put it in /etc/hostname.

For example, my machine is called hubble, so in my /etc/hostname I have:

ashton@hubble:~$ cat /etc/hostname
hubble.mydomain.blah.blah

You might need to reboot to get it to show up when you run uname though.

Solution 4:

​I use domain names to bind my shared storage to my user group TIGERGROUP. This method allows for the domain name TIGERGROUP to be used as a CIFS share. Think of TIGERGROUP domain name as WORKGROUP domain in windows. If you have a server HOST name (myhost.com) then just add that to then end after the domain name.

example:

vi /etc/hosts
127.0.0.1       localhost
127.0.1.1       Aspire-Petra16.TIGERGROUP          #i.e. desktop running Petra Mint16
192.168.1.25    sharedstorage-1.local.TIGERGROUP.myhost-name.com   #shared storage media player

If I want Samba to also pickup the domain name then I also add it to the smb.conf I don't use samba at home so it is really unnecessary unless you want to be though.

example:

vi /etc/samba/smb.conf

#scrolling down the file for workgroup   

# workgroup = WORKGROUP              # pen out the old name with pound key
   **workgroup = TIGERGROUP**         # add the preferred domain name.

restart services (can be done from the GUI or use cmd line.)

sudo /etc/init.d/samba restart
sudo /etc/init.d/networking restart