Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Modifier le nom d’hôte de votre instance Amazon Linux
Lorsque vous lancez une instance dans un VPC privé, Amazon EC2 attribue un nom d’hôte de système d’exploitation invité. Le type de nom d’hôte attribué par Amazon EC2 dépend des paramètres de votre sous-réseau. Pour plus d’informations sur les noms d’hôte EC2, consultez Types de noms d’hôtes des instances Amazon EC2.
Le nom DNS privé Amazon EC2 classique d’une instance EC2 configurée pour l’utilisation de l’appellation basée sur l’adresse IP avec une adresse IPv4 ressemble à ip-12-34-56-78.us-west-2.compute.internal
. Le nom se compose du domaine interne, du service (dans ce cas, compute
), de la région et d’une forme d’adresse IPv4 privée. Une partie de ce nom d’hôte est affiché sur l’invite shell lorsque vous vous connectez dans votre instance (par exemple, ip-12-34-56-78
). Chaque fois que vous arrêtez et relancez votre instance Amazon EC2 (à moins que vous n’utilisiez une adresse IP Elastic), l’adresse IPv4 publique change, au même titre que le nom DNS public, le nom d’hôte du système et l’invite shell.
Important
Ces informations s’appliquent à Amazon Linux. Pour obtenir des informations sur d’autres distributions, consultez leur documentation spécifique.
Modifier le nom d’hôte du système
Si vous avez un nom DNS public enregistré pour l’adresse IP de votre instance (comme webserver.mydomain.com
), vous pouvez régler le nom d’hôte du système pour que votre instance s’identifie comme une partie de ce domaine. Cela modifie également l'invite du shell afin qu'elle affiche la première partie de ce nom au lieu du nom d'hôte fourni par AWS (par exemple,ip-12-34-56-78
). Si vous n’avez pas de nom DNS public enregistré, vous pouvez toujours changer le nom d’hôte, mais le processus est un peu différent.
Pour que la mise à jour de votre nom d’hôte persiste, vous devez vérifier que le paramètre cloud-init preserve_hostname
est défini sur true
. Vous pouvez exécuter la commande suivante afin de modifier ou d’ajouter ce paramètre :
sudo vi /etc/cloud/cloud.cfg
Si le paramètre preserve_hostname
n’est pas répertorié, ajoutez la ligne de texte suivante à la fin du fichier :
preserve_hostname: true
Pour remplacer le nom d’hôte du système par un nom DNS public
Suivez cette procédure si vous avez déjà un nom DNS public enregistré.
-
-
Pour Amazon Linux 2 : Utilisez la commande hostnamectl afin de définir votre nom d’hôte pour refléter le nom de domaine complet (comme
webserver.mydomain.com
).[ec2-user ~]$
sudo hostnamectl set-hostname
webserver.mydomain.com
-
Pour Amazon Linux AMI : Sur votre instance, ouvrez le fichier de configuration
/etc/sysconfig/network
dans votre éditeur de texte et modifiez l’entréeHOSTNAME
pour refléter le nom de domaine complet (commewebserver.mydomain.com
).HOSTNAME=
webserver.mydomain.com
-
-
Redémarrez l’instance pour récupérer le nouveau nom d’hôte.
[ec2-user ~]$
sudo reboot
Vous pouvez également redémarrer à l’aide de la console Amazon EC2 (sur la page Instances, sélectionnez l’instance et choisissez État de l’instance, Redémarrer l’instance).
-
Connectez-vous à votre instance et vérifiez que le nom d’hôte a été mis à jour. Votre invite devrait indiquer le nouveau no d’hôte (jusqu’au premier « . ») et la commande hostname doit afficher le nom de domaine complet.
[ec2-user@webserver ~]$
hostname
webserver.mydomain.com
Pour remplacer le nom d’hôte du système sans nom DNS public
-
-
Pour Amazon Linux 2 : Utilisez la commande hostnamectl afin de définir votre nom d’hôte pour refléter le nom d’hôte du système souhaité (comme
webserver
).[ec2-user ~]$
sudo hostnamectl set-hostname
webserver
.localdomain -
Pour Amazon Linux AMI : Sur votre instance, ouvrez le fichier de configuration
/etc/sysconfig/network
dans votre éditeur de texte préféré et modifiez l’entréeHOSTNAME
pour refléter le nom d’hôte du système souhaité (commewebserver
).HOSTNAME=
webserver
.localdomain
-
-
Ouvrez le fichier
/etc/hosts
dans votre éditeur de texte préféré et modifiez l’entrée commençant par127.0.0.1
pour correspondre à l’exemple ci-dessous, en remplaçant votre propre nom d’hôte.127.0.0.1
webserver
.localdomainwebserver
localhost4 localhost4.localdomain4 -
Redémarrez l’instance pour récupérer le nouveau nom d’hôte.
[ec2-user ~]$
sudo reboot
Vous pouvez également redémarrer à l’aide de la console Amazon EC2 (sur la page Instances, sélectionnez l’instance et choisissez État de l’instance, Redémarrer l’instance).
-
Connectez-vous à votre instance et vérifiez que le nom d’hôte a été mis à jour. Votre invite devrait indiquer le nouveau no d’hôte (jusqu’au premier « . ») et la commande hostname doit afficher le nom de domaine complet.
[ec2-user@webserver ~]$
hostname
webserver.localdomain
Vous pouvez également implémenter des solutions plus programmatiques, telles que la spécification des données utilisateur pour configurer votre instance. Si votre instance fait partie d’un groupe Auto Scaling, vous pouvez utiliser des hooks de cycle de vie pour définir les données utilisateur. Pour de plus amples informations, veuillez consulter les rubriques Run commands on your Linux instance at launch (Exécution des commandes sur votre instance Linux lors de son lancement) et Lifecycle hook for instance launch (Hook de cycle de vie pour le lancement d’instance) dans le Guide de l’utilisateur AWS CloudFormation .
Modifier l’invite shell sans affecter le nom d’hôte
Si vous ne souhaitez pas modifier le nom d'hôte de votre instance, mais que vous souhaitez afficher un nom de système plus utile (tel quewebserver
) que le nom privé fourni par AWS (par exemple,ip-12-34-56-78
), vous pouvez modifier les fichiers de configuration des invites du shell pour afficher le surnom de votre système au lieu du nom d'hôte.
Pour remplacer l’invite shell par un pseudonyme d’hôte
-
Créez un fichier dans
/etc/profile.d
qui définit la variable d’environnement appeléeNICKNAME
avec la valeur que vous souhaitez dans l’invite shell. Par exemple, pour définir le pseudonyme du système surwebserver
, exécutez la commande suivante.[ec2-user ~]$
sudo sh -c 'echo "export NICKNAME=
webserver
" > /etc/profile.d/prompt.sh' -
Ouvrez le fichier
/etc/bashrc
(Red Hat) ou/etc/bash.bashrc
(Debian/Ubuntu) dans l’éditeur de texte de votre choix (par exemple, vim ou nano). Vous devez utiliser sudo avec la commande de l’éditeur, car/etc/bashrc
et/etc/bash.bashrc
appartiennent àroot
. -
Modifiez le fichier et changez la variable d’invite shell (
PS1
) pour afficher votre pseudonyme au lieu du nom d’hôte. Recherchez la ligne suivante qui définit l’invite shell dans/etc/bashrc
ou/etc/bash.bashrc
(plusieurs lignes sont affichées ci-dessous pour illustrer le contexte ; recherchez la ligne qui commence par[ "$PS1"
) :# Turn on checkwinsize shopt -s checkwinsize [ "$PS1" = "\\s-\\v\\\$ " ] && PS1="[\u@
\h
\W]\\$ " # You might want to have e.g. tty in prompt (e.g. more virtual machines) # and console windowsModifiez
\h
(symbole dehostname
) sur cette ligne en la valeur de la variableNICKNAME
.# Turn on checkwinsize shopt -s checkwinsize [ "$PS1" = "\\s-\\v\\\$ " ] && PS1="[\u@
$NICKNAME
\W]\\$ " # You might want to have e.g. tty in prompt (e.g. more virtual machines) # and console windows -
(Facultatif) Pour définir le titre sur les fenêtres shell avec le nouveau pseudonyme, suivez les étapes suivantes.
-
Créez un fichier nommé
/etc/sysconfig/bash-prompt-xterm
.[ec2-user ~]$
sudo touch /etc/sysconfig/bash-prompt-xterm
-
Rendez le fichier exécutable avec la commande suivante.
[ec2-user ~]$
sudo chmod +x /etc/sysconfig/bash-prompt-xterm
-
Ouvrez le fichier
/etc/sysconfig/bash-prompt-xterm
avec votre éditeur de texte préféré (comme vim ou nano). Vous devez utiliser sudo avec la commande de votre éditeur, car/etc/sysconfig/bash-prompt-xterm
est détenu parroot
. -
Ajoutez la ligne suivante au fichier.
echo -ne "\033]0;${USER}@${NICKNAME}:${PWD/#$HOME/~}\007"
-
-
Déconnectez-vous puis reconnectez-vous pour récupérer la nouvelle valeur du pseudonyme.
Modifier le nom d’hôte sur d’autres distributions Linux
Les procédures de cette page sont destinées à une utilisation avec Amazon Linux uniquement. Pour plus d’informations sur les autres distributions Linux, consultez leur documentation spécifique et les articles suivants :