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 AL2
Lorsque vous lancez une instance dans un VPC privé, Amazon EC2 attribue un nom d'hôte au système d'exploitation invité. Le type de nom d'hôte attribué par Amazon dépend EC2 des paramètres de votre sous-réseau. Pour plus d'informations sur les EC2 noms d'hôtes, consultez les types de noms d'hôtes des EC2 instances Amazon dans le guide de EC2 l'utilisateur Amazon.
Un nom DNS EC2 privé Amazon typique pour une EC2 instance configurée pour utiliser une dénomination basée sur l'IP avec une IPv4 adresse ressemble à ceci : ip-12-34-56-78.us-west-2.compute.internal le nom comprend le domaine interne, le service (dans ce cas,compute), la région et une forme d' IPv4 adresse 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 redémarrez votre EC2 instance Amazon (sauf si vous utilisez une adresse IP élastique), l' IPv4 adresse publique change, de même que votre nom DNS public, votre nom d'hôte système et votre 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 AL2 : utilisez la hostnamectl commande pour définir votre nom d'hôte afin qu'il reflète le nom de domaine complet (tel que
webserver.mydomain.com).[ec2-user ~]$sudo hostnamectl set-hostnamewebserver.mydomain.com -
Pour Amazon Linux AMI : Sur votre instance, ouvrez le fichier de configuration
/etc/sysconfig/networkdans votre éditeur de texte et modifiez l’entréeHOSTNAMEpour 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 rebootVous pouvez également redémarrer à l'aide de la EC2 console Amazon (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 ~]$hostnamewebserver.mydomain.com
Pour remplacer le nom d’hôte du système sans nom DNS public
-
-
Pour AL2 : utilisez la hostnamectl commande pour définir votre nom d'hôte afin qu'il reflète le nom d'hôte du système souhaité (par exemple).
webserver[ec2-user ~]$sudo hostnamectl set-hostnamewebserver.localdomain -
Pour Amazon Linux AMI : Sur votre instance, ouvrez le fichier de configuration
/etc/sysconfig/networkdans votre éditeur de texte préféré et modifiez l’entréeHOSTNAMEpour refléter le nom d’hôte du système souhaité (commewebserver).HOSTNAME=webserver.localdomain
-
-
Ouvrez le fichier
/etc/hostsdans votre éditeur de texte préféré et modifiez l’entrée commençant par127.0.0.1pour correspondre à l’exemple ci-dessous, en remplaçant votre propre nom d’hôte.127.0.0.1webserver.localdomainwebserverlocalhost4 localhost4.localdomain4 -
Redémarrez l’instance pour récupérer le nouveau nom d’hôte.
[ec2-user ~]$sudo rebootVous pouvez également redémarrer à l'aide de la EC2 console Amazon (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 ~]$hostnamewebserver.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.dqui définit la variable d’environnement appeléeNICKNAMEavec 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/bashrcet/etc/bash.bashrcappartiennent à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/bashrcou/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-xtermavec 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-xtermest 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 :