Recentemente ho aggiornato il mio PC a Ubuntu 14.04. Ho quindi riscontrato un grosso problema nella risoluzione DNS che non funzionava più. Ho finalmente trovato il seguente: in / etc, c’è un ‘resolv.conf‘ che è un collegamento simbolico a ../run/resolvconf.resolv.conf
. Sul mio sistema questo è un file vuoto. Tuttavia, “/run/resolvconf/resolv.conf” è lì. Ho manualmente rimosso il collegamento simbolico a /run/resolvconf/resolv.conf
. Funziona perfettamente. Tuttavia il link originale non funziona. Per illustrare questo, ho creato due collegamenti simbolici in “/ etc”:
[email protected]:/etc$ ls -irl dns.* 787036 lrwxrwxrwx 1 root root 27 aoû 29 17:50 dns.ok -> /run/resolvconf/resolv.conf 787080 lrwxrwxrwx 1 root root 29 aoû 29 17:51 dns.nok -> ../run/resolvconf/resolv.conf [email protected]:/etc$ cat dns.ok # Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8) # DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN nameserver 127.0.1.1 [email protected]:/etc$ cat dns.nok [email protected]stro-420-Series:/etc$
Come vedi, il secondo è vuoto. Ora, la domanda: perché il link simbolico originale punta alla versione “../” (errata)?
Questo è normale se il tuo DNS è gestito dal pacchetto resolveconf (il default per 14.04). Se hai bisogno di aggiungere i nameserver, aggiungili a /etc/resolvconf/resolv.conf.d/base sudo nano /etc/resolvconf/resolv.conf.d/base
e riavvia il service resolvconf restart
e ricostruirà il file / etc / resolv.conf “file”.