How to restore/recreate etc/resolv.conf files

Solution 1:

You could reinstall resolvconf to restore the default configuration:

sudo apt-get install --reinstall resolvconf

Another idea would be remove "resolvconf" and then install:

sudo apt-get remove --purge resolvconf && sudo apt-get install resolvconf

Solution 2:

If resolvconf -u shows the WARNING that /etc/resolv.conf is not a symbolic link to /run/resolvconf/resolv.conf then just backup that resolv.conf and make the symbolic link:

$ cd /etc
$ sudo ln -s /run/resolvconf/resolv.conf

Solution 3:

Try this:

nano /etc/resolv.conf

add:

nameserver 8.8.8.8

nameserver 192.168.x.x (check your ifconfig output for the correct address)

then

sudo service resolvconf start
sudo systemctl enable resolvconf

Solution 4:

The accepted answer did not work for me. After reinstalling resolvconf, the system would completely wipe my resolv.conf file after each reboot.

To fix this, I had to reinstall the network-manager and libnss-resolve packages in addition to resolvconf.

  1. Manually add a nameserver to resolve.conf (this is so you can fetch packages from the Ubuntu repos):

    1. sudo vi /etc/resolv.conf
      
    2. Add nameserver 8.8.8.8 to the file.
  2. Reinstall the network-manager, libnss-resolve, and resolvconf packages:

    apt install --reinstall resolvconf network-manager libnss-resolve