# Changer le nom d'un ordinateur = ![Commandes Linux](1200px-gnulinux.jpg) Dans les blocs de codes ci-dessous, les variables suivantes sont référencées. On considère : - `$CURRENT_HOSTNAME`, le nom actuel de machine - `$NEW_HOSTNAME`, le nom de machine à affecter Je souhaite modifier le nom de l'ordinateur, fixé par défaut sur `rasbperrypi` (`$CURRENT_HOSTNAME`), par la valeur de mon choix (`$NEW_HOSTNAME`). ## Récupérer le nom courant de la machine Pour connaître le nom courant de la machine, il suffit soit : - de lire la valeur dans le fichier `/etc/hosntame` ``` cat /etc/hostname ``` - d’exécuter la commande `hostname` ``` hostname ``` --- Dans un script nous pourrons écrire la ligne suivante. Elle permet de lire la valeur contenu dans le fichier `/etc/hostname`, en supprimant les caractères indésirables : retours à la ligne, tabulations, sauts de lignes... ```BASH CURRENT_HOSTNAME=`cat /etc/hostname | tr -d " \t\n\r"` ``` ## Changer le nom de la machine en ligne de commande Le nom de la machine doit être des lettres [a-z], insensible à la casse et des chiffres [0-9]. Seul le `-` (tiret) est admis comme caractère supplémentaire. Toutefois le nom de la machine ne doit **ni commencer**, **ni finir** par le `-` (tiret). Exécuter la commande `hostnamectl` [^note: * **hmike** sur Twitter //] Le commande `hostnamectl` permet de modifier le nom de la machine avec une prise en compte immédiate. Il faudra toutefois fermer la session puis l'ouvrir de nouveau. ```BASH sudo hostnamectl set-hostname $NEW_HOSTNAME ``` Toutefois, vous pouvez modifier le nom de dans le fichier `/etc/hostname`. Il sera nécessaire de redémarrer la machine. ```BASH echo $NEW_HOSTNAME > /etc/hostname ``` ## Changer les informations du fichier hosts Modifier le nom dans le fichier `/etc/hosts`. Il sera nécessaire de redémarrer la machine. ```BASH sed -i "s/127.0.1.1.*$CURRENT_HOSTNAME/127.0.1.1\t$NEW_HOSTNAME/g" /etc/hosts ``` ## Changer le DNS / NIC Associer le nom de domaine au DNS ![](20201005-204032.png) ## Prendre en compte les modifications Se déconnecter puis se connecter de nouveau