Commande hostname sous Linux
Référence complète des commandes Linux
Qu'est-ce qu'un nom d'hôte
Un nom d'hôte est un nom unique qui identifie un ordinateur sur un réseau. Tout comme chaque personne a son propre nom, chaque ordinateur a également besoin d'un nom unique pour être identifié sur le réseau.
Dans les systèmes Linux, le nom d'hôte est utilisé pour :
- Identifier l'ordinateur local
- Identifier les appareils lors de la communication réseau
- Affecter le fonctionnement de certains services réseau
- S'afficher dans l'invite du terminal
Les noms d'hôtes sont généralement divisés en trois types :
- Nom d'hôte statique: stocké dans le fichier de configuration, reste inchangé après un redémarrage du système
- Nom d'hôte transitoire: défini temporairement à l'exécution, devient invalide après redémarrage
- Nom d'hôte joli: un nom descriptif qui peut contenir des caractères spéciaux (comme "My Laptop")
Syntaxe de base de la commande hostname
Le format d'utilisation de base de la commande hostname est le suivant :
hostname [选项] [新主机名]
S'il est exécuté directement sans aucun paramètre, lahostnamecommande affichera le nom d'hôte du système actuel :
Exemples
ubuntu-server
Options courantes et descriptions des paramètres
La commande hostname prend en charge plusieurs options pour afficher et définir différents types de noms d'hôte :
| Option | Description |
|---|---|
-a, --alias |
Afficher l'alias de l'hôte (si un alias a été défini) |
-A, --all-fqdns |
Afficher le FQDN (nom de domaine pleinement qualifié) de toutes les interfaces réseau |
-b, --boot |
Si le nom d'hôte n'est pas défini, utilisez le nom d'hôte par défaut |
-d, --domain |
Afficher le nom de domaine DNS |
-f, --fqdn, --long |
Afficher le FQDN (nom de domaine pleinement qualifié) |
-F, --file |
Lire le nom d'hôte à partir du fichier spécifié |
-i, --ip-address |
Afficher l'adresse IP de l'hôte |
-I, --all-ip-addresses |
Afficher les adresses IP de toutes les interfaces réseau |
-s, --short |
Afficher le nom d'hôte court (avec la partie domaine supprimée) |
-y, --yp, --nis |
Afficher le nom de domaine NIS |
Trois façons de définir le nom d'hôte
1. Définir temporairement le nom d'hôte (devient invalide après redémarrage)
Exemple
Exemple :
Exemple
$ hostname
test-server
Remarque : le nom d'hôte défini par cette méthode reviendra au nom d'hôte d'origine après un redémarrage du système.
2. Définir définitivement le nom d'hôte (modifier le fichier de configuration)
Sur la plupart des distributions Linux modernes (utilisant systemd), vous pouvez modifier définitivement le nom d'hôte comme ceci :
Exemple
Exemple :
Exemple
Cette commande modifiera les deux :
/etc/hostnamele fichier- le nom d'hôte statique du système
3. Modifier manuellement le fichier de configuration
Vous pouvez également modifier directement le fichier de configuration du nom d'hôte :
Modifiez le
/etc/hostnamefichier :sudo nano /etc/hostname
Supprimez le contenu d'origine et saisissez uniquement le nouveau nom d'hôte
Mettez à jour le
/etc/hostsfichier, en vous assurant qu'il y a une ligne associant le nom d'hôte à 127.0.0.1 :127.0.0.1 localhost new-hostname
Appliquez les modifications (aucun redémarrage requis) :
sudo systemctl restart systemd-hostnamed
Affichage des différents types de noms d'hôte
Afficher le nom d'hôte statique
Exemple
# ou
cat /etc/hostname
Afficher le nom d'hôte transitoire
Exemple
# ou
hostnamectl --transient
Afficher le nom d'hôte convivial
Exemple
Afficher le FQDN (nom de domaine pleinement qualifié)
Exemple
# ou
hostnamectl --fqdn
Exemples d'applications pratiques
Exemple 1 : Afficher les informations complètes sur l'hôte du système actuel
Exemple
Nom d'hôte statique : ubuntu-server
Nom de l'icône : computer-vm
Châssis : vm
ID machine : 1a2b3c4d5e6f7g8h9i0j
ID d'amorçage : 1k2l3m4n5o6p7q8r9s0t
Virtualisation : kvm
Système d'exploitation : Ubuntu 20.04 LTS
Noyau : Linux 5.4.0-42-generic
Architecture : x86-64
Exemple 2 : Définir à la fois le nom d’hôte statique et le joli nom d’hôte
Exemple
Exemple 3 : Obtenir les informations sur le nom d’hôte via le réseau
Exemple
192.168.1.100
$ hostname -I
192.168.1.100 10.0.0.100
Problèmes courants et solutions
Problème 1 : Le nom d’hôte ne prend pas effet après avoir été défini
Solution:
- Veillez également à mettre à jour le
/etc/hostsfichier - Vérifiez si d’autres services (tels que NetworkManager) ne remplacent pas les paramètres du nom d’hôte
- Essayez de redémarrer le système ou d’exécuter :
sudo systemctl restart systemd-hostnamed
Problème 2 : Le nom d’hôte contient des caractères illégaux
Solution:
- Un nom d’hôte ne peut contenir que :
- Lettres a-z
- Chiffres 0-9
- Traits d’union (-)
- Ne peut pas commencer ni se terminer par un trait d’union
- La longueur est généralement limitée à 63 caractères
Problème 3 : Les services réseau ne peuvent pas reconnaître le nouveau nom d’hôte
Solution:
- Redémarrez les services réseau associés :
sudo systemctl restart networking
- Videz le cache DNS (le cas échéant)
- Assurez-vous que le serveur DNS a été mis à jour (s’il s’agit d’un serveur sur le réseau)
Suggestions de bonnes pratiques
Conventions de nommage:
- Utilisez des noms significatifs, tels que « web-prod-01 » ou « db-backup-02 »
- Évitez d’utiliser des caractères spéciaux et des traits de soulignement
- Maintenez la cohérence, en particulier dans les clusters de serveurs
Environnements à noms d’hôte multiples:
- Utilisez le nom d’hôte statique comme identifiant principal
- Utilisez le nom d’hôte convivial pour fournir une description lisible par l’humain
- Utiliser
/etc/hostspour ajouter des alias aux serveurs importants
Gestion automatisée:
- Dans les environnements cloud, vous pouvez utiliser cloud-init pour définir automatiquement les noms d'hôte
- Gérer les noms d'hôte en masse à l'aide d'outils de gestion de configuration (comme Ansible)
Documentation:
- Tenir à jour une documentation qui associe les noms d'hôte aux rôles des serveurs
- Utiliser les noms d'hôte comme identifiants dans les systèmes de supervision
Résumé
hostname est un concept de base mais important dans l'administration des systèmes Linux. Grâce à cet article, vous devriez avoir appris :
- Comment afficher et définir différents types de noms d'hôte
- Le processus correct pour modifier définitivement le nom d'hôte
- Solutions aux problèmes courants liés aux noms d'hôte
- Bonnes pratiques pour la gestion des noms d'hôte
Rappelez-vous : avant de modifier le nom d'hôte d'un environnement de production, veillez à évaluer l'impact possible. En particulier dans les environnements en cluster, les changements de nom d'hôte peuvent affecter la découverte de services et les systèmes de supervision.
Autres extensions