Modifier le fichier hosts sous Ubuntu (2026)
Tutoriel Ubuntu 22.04/24.04 : éditer /etc/hosts, systemd-resolved, NetworkManager, WSL, flush DNS et bonnes pratiques dev.
Équipe Locahl
Sommaire
- Structure par défaut d’/etc/hosts sur Ubuntu
- Procédure complète Ubuntu
- 1. Sauvegarde (bon réflexe)
- 2. Édition
- 3. Flush DNS
- 4. Vérification
- systemd-resolved sur Ubuntu
- Stack dev courante sur Ubuntu
- Nginx + PHP-FPM
- Docker Compose
- Snap / Firefox
- Ubuntu sous WSL2 (Windows)
- cloud-init sur VPS Ubuntu
- Permissions sudo
- Dépannage Ubuntu
- « Temporary failure in name resolution »
- sudo: unable to resolve host ubuntu-laptop
- Modification non visible dans le navigateur
- Conflit avec Pi-hole ou DNS chiffré
- Bloquer des sites sur Ubuntu
- Bonnes pratiques équipe Ubuntu
- Hosts Ubuntu
- Comparaison rapide LTS
- Laravel, Symfony et PHP sur Ubuntu
- Laravel Valet Linux (ou équivalent)
- Symfony local
- Composer et scripts post-install
- Node.js, Vite et ports multiples
- Snap Firefox sur Ubuntu 24.04
- Multipass et VMs Ubuntu locales
- Netplan et résolution (ne pas confondre)
- Checklist onboarding Ubuntu (copier-coller wiki)
- Setup hosts — Ubuntu dev
- Performance : fichier hosts volumineux
- PostgreSQL, Redis et noms de service locaux
- GitHub Codespaces et dev distant
- systemd-resolved et DNSSEC
- AppArmor et édition /etc/hosts
- Journalctl et diagnostic réseau
- Conclusion
Ubuntu est la distribution Linux la plus utilisée en développement web — nativement, sous WSL2 sur Windows, ou sur VPS. Le fichier hosts reste /etc/hosts, mais Ubuntu ajoute des subtilités : systemd-resolved, la ligne 127.0.1.1, et l’interaction avec NetworkManager.
Ce guide cible Ubuntu 22.04 LTS et 24.04 LTS (2026). Linux général : guide Linux. Pilier : multi-plateforme.
Structure par défaut d’/etc/hosts sur Ubuntu
Après installation :
127.0.0.1 localhost
127.0.1.1 ubuntu-laptop
# The following lines are desirable for IPv6 capable hosts
::1 ip6-localhost ip6-loopback
ff02::1 ip6-allnodes
ff02::2 ip6-allroutersubuntu-laptop correspond à /etc/hostname. Cette entrée évite des warnings sudo et des retards sur hostname -f.
Procédure complète Ubuntu
1. Sauvegarde (bon réflexe)
sudo cp /etc/hosts /etc/hosts.backup.$(date +%Y%m%d)2. Édition
sudo nano /etc/hostsAjout type projet Laravel / Symfony / Node :
# === MonProjet — dev local ===
127.0.0.1 monprojet.test
127.0.0.1 api.monprojet.test
127.0.0.1 vite.monprojet.testSyntaxe : guide syntaxe.
3. Flush DNS
sudo resolvectl flush-cachesSi commande introuvable (Ubuntu minimal) :
sudo systemctl restart systemd-resolved4. Vérification
getent hosts monprojet.test
ping -c 2 monprojet.testsystemd-resolved sur Ubuntu
Ubuntu pointe souvent /etc/resolv.conf vers 127.0.0.53 (stub resolver). Le fichier hosts reste lu avant cette couche.
Diagnostic :
resolvectl status
resolvectl query monprojet.testSi resolvectl query montre votre IP hosts, la résolution système est OK.
Stack dev courante sur Ubuntu
Nginx + PHP-FPM
Virtual host server_name monprojet.test; + entrée hosts → 127.0.0.1.
Docker Compose
Préférez extra_hosts plutôt que modifier hosts dans le conteneur :
extra_hosts:
- "monprojet.test:host-gateway"Snap / Firefox
Le navigateur peut cacher DNS séparément. Testez aussi curl en CLI.
Ubuntu sous WSL2 (Windows)
Double configuration :
| Environnement | Fichier | Usage |
|---|---|---|
| Windows | C:\Windows\System32\drivers\etc\hosts | Chrome/Edge Windows |
| WSL Ubuntu | /etc/hosts | curl, npm, php artisan serve |
Procédure WSL :
sudo nano /etc/hosts
# mêmes entrées que sur Windows si vous testez les deuxWindows : guide Windows 11.
Note : WSL2 peut régénérer partiellement hosts au restart dans certains scénarios — documentez un script ~/bin/sync-hosts.sh pour l’équipe.
cloud-init sur VPS Ubuntu
Sur instances cloud, cloud-init injecte parfois des entrées metadata :
grep cloud-init /etc/hostsPour persister vos ajouts, utilisez des snippets cloud-init ou Ansible plutôt qu’une édition manuelle oubliée.
Permissions sudo
Utilisateur doit être dans groupe sudo. Entreprise : guide admin.
Sans mot de passe sudo (poste dev isolé uniquement) :
# /etc/sudoers.d/hosts-dev — DANGEREUX en prod
username ALL=(ALL) NOPASSWD: /usr/bin/nano /etc/hostsDéconseillé en environnement partagé.
Dépannage Ubuntu
« Temporary failure in name resolution »
- Vérifiez
/etc/resolv.confetsystemd-resolved - Entrée hosts mal formée (caractère invisible copié depuis Word)
sudo: unable to resolve host ubuntu-laptop
→ Ligne 127.0.1.1 ubuntu-laptop manquante ou hostname incohérent.
Modification non visible dans le navigateur
→ Flush resolvectl et cache navigateur.
Conflit avec Pi-hole ou DNS chiffré
DoH dans Firefox bypass parfois le resolver — testez en navigation privée sans extensions.
Bloquer des sites sur Ubuntu
0.0.0.0 distraction.social
0.0.0.0 www.distraction.socialGuide : bloquer un site. Sécurité : est-ce sûr ?.
Bonnes pratiques équipe Ubuntu
1. Domaines .test (RFC réservés) plutôt que .local 2. Backup daté avant import liste pub 3. README avec commande flush copiable 4. Entrées datées pour migrations temporaires 5. Collègues Mac : partager tableau domaines — eux : Mac ou Locahl
Exemple README :
## Hosts Ubuntu
sudo nano /etc/hosts
sudo resolvectl flush-caches
127.0.0.1 app.equipe.testComparaison rapide LTS
| Version | resolved | Notes |
|---|---|---|
| 22.04 LTS | Oui | Standard entreprise |
| 24.04 LTS | Oui | Même procédure |
Laravel, Symfony et PHP sur Ubuntu
Laravel Valet Linux (ou équivalent)
Beaucoup d’équipes PHP utilisent des domaines .test :
127.0.0.1 monapp.test
127.0.0.1 api.monapp.testPuis php artisan serve --host=0.0.0.0 ou Nginx site-enabled. Oublier resolvectl flush-caches après ajout = ticket « 404 seulement chez moi ».
Symfony local
Fichier .env.local :
APP_URL=https://symfony.testHosts obligatoire si vous testez cookies domain-scoped ou CORS entre sous-domaines.
Composer et scripts post-install
Automatisez l’onboarding :
#!/bin/bash
# scripts/setup-hosts.sh
grep -q "monapp.test" /etc/hosts || echo "127.0.0.1 monapp.test" | sudo tee -a /etc/hosts
sudo resolvectl flush-cachesVersionnez le script, pas le fichier hosts système du développeur.
Node.js, Vite et ports multiples
127.0.0.1 frontend.dev.test
127.0.0.1 backend.dev.testProxy Vite :
// vite.config.js
server: { host: 'frontend.dev.test', port: 5173 }Test : curl -H "Host: frontend.dev.test" http://127.0.0.1:5173
Snap Firefox sur Ubuntu 24.04
Firefox Snap est le défaut. En cas de doute :
sudo apt install firefox --no-install-recommends # deb natif si politique équipe le permetComparez résolution Snap vs deb si le navigateur seul échoue.
Multipass et VMs Ubuntu locales
Canonical Multipass crée des VMs Ubuntu isolées — chacune a son /etc/hosts. Modifiez l’hôte Ubuntu et la VM si vous accédez depuis les deux.
Netplan et résolution (ne pas confondre)
Netplan configure interfaces réseau, pas le contenu de /etc/hosts. Les confusions mènent à éditer le mauvais fichier YAML dans /etc/netplan — restez sur /etc/hosts pour les noms locaux.
Checklist onboarding Ubuntu (copier-coller wiki)
## Setup hosts — Ubuntu dev
1. sudo cp /etc/hosts /etc/hosts.backup
2. sudo nano /etc/hosts
3. Coller bloc projet (voir repo docs/hosts.txt)
4. sudo resolvectl flush-caches
5. getent hosts app.equipe.test
6. Ouvrir https://app.equipe.testPerformance : fichier hosts volumineux
Si un dev importe une liste anti-pub de 50 Mo sur Ubuntu :
wc -l /etc/hostsPlus de 20 000 lignes → mesurer latence time getent hosts google.com. Envisager Pi-hole réseau plutôt qu’hosts local — guide blocage.
PostgreSQL, Redis et noms de service locaux
Pattern microservices Ubuntu :
127.0.0.1 postgres.dev.test
127.0.0.1 redis.dev.test
127.0.0.1 api.dev.testDocker Compose expose 5432 sur localhost ; votre app lit DATABASE_URL=postgres://postgres.dev.test:5432 — hosts unifie la doc équipe même si les ports changent.
GitHub Codespaces et dev distant
Codespaces ignore le hosts de votre laptop — l’environnement distant a son propre /etc/hosts. Si vous basculez entre local Ubuntu et Codespace, maintenez deux checklists séparées.
systemd-resolved et DNSSEC
resolvectl query affiche parfois « DNSSEC validated » pour le DNS upstream — cela n’affecte pas la priorité du fichier hosts local. Vos entrées 127.0.0.1 restent prioritaires.
AppArmor et édition /etc/hosts
Sur Ubuntu, AppArmor ne bloque généralement pas sudo nano /etc/hosts. Si vous voyez « Permission denied » malgré sudo, vérifiez que le filesystem n’est pas monté en read-only (mount | grep ' / ') après une mise à jour kernel ratée.
Journalctl et diagnostic réseau
Après modification hosts, si un service systemd échoue au démarrage :
journalctl -u nginx -n 50 --no-pagerUn unknown host indique souvent une faute de frappe dans /etc/hosts, pas un problème nginx.
Comparez toujours /etc/hostname, /etc/hosts et la sortie de hostname -f lors d’un onboarding Ubuntu — trois sources qui doivent rester cohérentes.
Conclusion
Sur Ubuntu : backup, sudo nano /etc/hosts, respecter 127.0.1.1, resolvectl flush-caches, getent pour tester. WSL et cloud-init sont les deux pièges qui surprennent même les devs expérimentés.
Suite : Linux, guide complet, pilier.
Prêt à simplifier votre workflow ?
Arrêtez de perdre du temps avec le terminal. Locahl vous permet de gérer votre fichier hosts en quelques clics, avec validation automatique et sans risque d'erreur.
- Interface visuelle intuitive
- Flush DNS automatique
- Gestion multi-environnements
- Sauvegardes automatiques
- Import/Export JSON
Avis des lecteurs
"La sauvegarde automatique avec date dans le howTo est un détail qui m’a évité une panique."
8 février 2026
"Section WSL claire — je modifiais seulement Ubuntu sans toucher Windows hosts."
12 mars 2026
"Parfait pour Ubuntu 24.04 LTS. resolvectl bien documenté."
18 avril 2026
Questions fréquentes
Où est le fichier hosts sur Ubuntu ?
/etc/hosts — identique à la plupart des distributions Linux.
Pourquoi Ubuntu a une ligne 127.0.1.1 avec mon hostname ?
L’installateur l’ajoute pour que le nom de machine soit résolvable sans DNS externe. Ne la supprimez pas sans ajuster /etc/hostname.
Comment vider le cache DNS sur Ubuntu ?
sudo resolvectl flush-caches — Ubuntu utilise systemd-resolved par défaut depuis plusieurs versions LTS.
NetworkManager modifie-t-il /etc/hosts ?
Rarement directement pour les entrées manuelles. Les entrées que vous ajoutez restent en général persistantes.
Ubuntu sous WSL : même procédure ?
Oui pour éditer /etc/hosts dans WSL, mais le hosts Windows reste séparé pour les apps Windows.
Comment restaurer un backup ?
sudo cp /etc/hosts.backup.YYYYMMDD /etc/hosts puis sudo resolvectl flush-caches
Articles similaires
Modifier le fichier hosts sous Linux (2026)
Guide Linux : éditer /etc/hosts avec nano ou vim, permissions root, flush DNS systemd, Docker et dépannage sur toutes distributions.
Équipe Locahl
Comment modifier le fichier hosts sous Windows, Mac et Linux (2026)
Guide complet pour éditer le fichier hosts sur Windows, macOS et Linux : emplacements, droits administrateur, syntaxe, flush DNS et dépannage en 2026.
Équipe Locahl
Modifier le fichier hosts sous Windows 11 (2026)
Guide Windows 11 : éditer hosts avec Bloc-notes admin, nouveau menu Démarrer, UAC, PowerShell 7, flush DNS et dépannage spécifique.
Équipe Locahl
Est-ce sûr de modifier le fichier hosts ? (2026)
Risques réels, mythes et bonnes pratiques : modifier /etc/hosts est-il dangereux ? Malware, listes tierces, entreprise et restauration expliqués.
Équipe Locahl
Modifier le fichier hosts sous Windows (2026)
Tutoriel complet pour éditer C:\Windows\System32\drivers\etc\hosts sur Windows 10 et 11 : Bloc-notes admin, PowerShell, flush DNS et dépannage.
Équipe Locahl