Comment changer le nom d'hôte sans redémarrage?

448

Je veux changer le nom d’hôte du système d’exploitation mais je ne veux pas le redémarrer.

J'ai édité /etc/hostname mais cela nécessite un redémarrage pour être implémenté. Comment éviter cela?

    
posée Deepak Rajput 14.12.2011 - 09:56
la source

14 réponses

583

C'est facile. Cliquez simplement sur l'icône en forme d'engrenage (située dans le coin supérieur droit de l'écran), ouvrez l'écran "À propos de cet ordinateur" (situé dans l'icône Gear) et modifiez "Nom du périphérique".

Ou, dans un terminal, utilisez la commande suivante:

sudo hostname your-new-name

Cela définira le nom d'hôte à votre nouveau nom jusqu'à ce que vous redémarriez. Voir man hostname et Comment changer le nom de l'ordinateur? pour plus d'informations. N'utilisez pas _ dans votre nom.

Remarque

Après un redémarrage, vos modifications dans /etc/hostname seront utilisées, donc (comme vous l'avez dit dans la question), vous devriez toujours utiliser

sudo -H gedit /etc/hostname

(ou un autre éditeur) pour que ce fichier contienne le nom d’hôte.

Pour tester que le fichier est configuré correctement, exécutez:

sudo service hostname start

Vous devez également modifier /etc/hosts et modifier la ligne qui se lit comme suit:

127.0.1.1     your-old-hostname

pour qu'il contienne maintenant votre nouveau nom d'hôte. (Ceci est nécessaire sinon beaucoup de commandes cesseront de fonctionner.)

    
réponse donnée jasperado 14.12.2011 - 11:27
la source
248

Ubuntu 13.04 et ultérieur

La commande hostnamectl fait partie de l’installation par défaut des éditions Desktop et Server.

Il associe la définition du nom d'hôte via la commande hostname et l'édition de /etc/hostname . En plus de définir le nom d'hôte statique, il peut définir le "joli" nom d'hôte, qui n'est pas utilisé dans Ubuntu. Malheureusement, éditer /etc/hosts doit encore être fait séparément.

hostnamectl set-hostname new-hostname

Cette commande fait partie du package systemd-services (qui, à partir d’Ubuntu 14.04, inclut également la Commandes timedatectl et localectl ). Comme Ubuntu migre vers systemd , cet outil est l'avenir.

    
réponse donnée muru 27.08.2014 - 23:03
la source
58

Sans redémarrage

Modifier le nom d'hôte ou le nom de l'ordinateur dans ubuntu sans redémarrer

Modifiez / etc / hostname et modifiez la nouvelle valeur,

nano /etc/hostname 

Modifiez / etc / hosts et remplacez l’ancienne ligne 127.0.1.1 par votre nouveau nom d’hôte

127.0.0.1   localhost
127.0.1.1   ubuntu.local    ubuntu   # change to your new hostname/fqdn

Remarque : je l'ai lu sur un forum & gt; Éditez / etc / hosts et remplacez l'ancienne ligne 127.0.1.1 par votre nouveau nom d'hôte (si vous ne le faites pas, vous ne pourrez plus utiliser sudo. Si vous l'avez déjà fait, appuyez sur ÉCHAP dans le menu grub, choisissez la récupération). et modifiez votre fichier hôte aux paramètres corrects)

Maintenant, après un redémarrage, votre nom d'hôte sera le nouveau que vous avez choisi

sans redémarrage

Pour modifier sans redémarrage , vous pouvez simplement utiliser hostname.sh après avoir modifié / etc / hostname. Vous devez conserver vos deux noms d'hôte dans / etc / hosts (127.0.0.1 newhost oldhost) jusqu'à ce que vous exécutiez la commande ci-dessous:

sudo service hostname start

Remarque : commande ci-dessus pour activer le changement. Le nom d'hôte enregistré dans ce fichier (/ etc / hostname) sera conservé lors du redémarrage du système (et sera défini à l'aide du même service).

    
réponse donnée One Zero 13.02.2012 - 21:16
la source
42

Le nom par défaut était défini lors de l'installation d'Ubuntu. Vous pouvez facilement changer ce que vous voulez à la fois Desktop & amp; Serveur en éditant les fichiers hôte et nom d'hôte. Voici comment:

  1. Appuyez sur Ctrl Alt t sur le clavier pour ouvrir le terminal. Lorsqu'il s'ouvre, exécutez la commande ci-dessous: sudo hostname NEW_NAME_HERE

Cela changera le nom d'hôte jusqu'au prochain redémarrage. Le changement ne sera pas visible immédiatement dans votre terminal actuel. Démarrer un nouveau terminal pour voir le nouveau nom d'hôte.

  1. Pour changer le nom de manière permanente, exécutez la commande pour modifier les fichiers hôte:

    sudo -H gedit /etc/hostname et sudo -H gedit /etc/hosts

Pour le serveur Ubuntu sans interface graphique, exécutez sudo vi /etc/hostname et sudo vi /etc/hosts et modifiez-les un par un. Dans les deux fichiers, changez le nom en ce que vous voulez et enregistrez-les.

Enfin, redémarrez votre ordinateur pour appliquer les modifications.

    
réponse donnée Mohsen Gh. 01.11.2014 - 23:47
la source
16

Voici un script qui modifie le nom d’hôte de la manière prescrite. Cela garantit que non seulement sudo mais aussi les applications X11 continuent à fonctionner sans redémarrage requis.

Utilisation: sudo ./change_hostname.sh new-hostname

#!/usr/bin/env bash
NEW_HOSTNAME=
echo $NEW_HOSTNAME > /proc/sys/kernel/hostname
sed -i 's/127.0.1.1.*/127.0.1.1\t'"$NEW_HOSTNAME"'/g' /etc/hosts
echo $NEW_HOSTNAME > /etc/hostname
service hostname start
su $SUDO_USER -c "xauth add $(xauth list | sed 's/^.*\//'"$NEW_HOSTNAME"'\//g' | awk 'NR==1 {sub(,"\"&\""); print}')"
    
réponse donnée Lucas 07.03.2014 - 07:30
la source
11

Sans redémarrage:

  1. changez le nom d'hôte en /etc/hostname
  2. mettre à jour /etc/hosts en conséquence
  3. sudo sysctl kernel.hostname=mynew.local.host

Vérifiez votre nom d'hôte actuel avec hostname -f

    
réponse donnée Tombart 31.03.2015 - 16:46
la source
7

Pour obtenir votre nom d'hôte actuel:

cat /etc/hostname

Cela peut être changé dans n'importe quel éditeur de texte. Vous devrez également mettre à jour l’entrée autre que localhost sur 127.0.0.1 dans / etc / hosts.

    
réponse donnée tagMacher 14.09.2014 - 03:12
la source
4
  1. Remplacez le contenu de /etc/hostname par le nom d'hôte souhaité (vous pouvez le modifier avec sudo nano /etc/hostname )
  2. Dans /etc/hosts , remplacez l'entrée située à côté de 127.0. 1 .1 avec le nom d'hôte souhaité (vous pouvez modifier avec sudo nano /etc/hosts )
  3. Exécuter sudo service hostname restart; sudo service networking restart
réponse donnée George 08.05.2015 - 20:26
la source
4

Ubuntu 16.04

Ceci est sans redémarrer et sans utilisation du terminal.

  • Allez à Paramètres système - & gt; Détails .
  • Voilà. À côté de Nom du périphérique , il y a une zone de texte.
  • Modifier la zone de texte et fermer la fenêtre.

Ouvrir le terminal. Voyez par vous-mêmes.

(Pour les anciennes versions, la zone de texte n'est pas modifiable.)

    
réponse donnée shonku 13.03.2017 - 19:26
la source
3
sudo hostname your-new-name
sudo /etc/init.d/networking restart

Cela devrait faire le travail je pense

    
réponse donnée OmarQunsul 20.12.2013 - 13:43
la source
3

J'ai lu les réponses, mais je pense Probablement que vous cherchez ceci:

Il suffit d’exécuter ces deux commandes après avoir édité le fichier /etc/hostname .

$ sudo service hostname restart
$ exec bash

C'est tout. Pas besoin de redémarrer. Assurez-vous également que vous modifiez également le nom dans le fichier /etc/hosts .

    
réponse donnée Raman 28.09.2016 - 20:55
la source
3

La réponse classique à la question de l’affiche originale est que, une fois que vous avez édité /etc/hostname , vous le faites appliquer sans redémarrer en exécutant hostname (1) avec l'option -F ( --file ) en tant qu'utilisateur root:

sudo hostname -F /etc/hostname

La gestion du nom d'hôte (5) avec /etc/hostname et ledit programme a été le même dans Debian et ses dérivés depuis plus de vingt ans, et le paquet le fournissant a été balisé essential et requis , et IIRC les scripts d'initialisation ont littéralement utilisé la même chose pendant des décennies ( /etc/init/hostname.conf le contient toujours), je dois donc dire que je suis vraiment perplexe de voir que personne ne l'a déjà mentionné:)

    
réponse donnée Josip Rodin 14.10.2017 - 19:55
la source
1

Ubuntu 16.04

Solution basée sur réponse de la communauté DigitalOcean.

Modifier le fichier hosts .

$ sudo nano /etc/hosts

Remplacez oldname par un nouveau.

127.0.0.1 localhost newname

Configurer un nouveau nom d'hôte.

$ sudo hostnamectl set-hostname newname

    
réponse donnée Jekis 12.01.2018 - 07:29
la source
0

Persistance du nom d'hôte Cloud-init (Ubuntu 18+)

Alors que les approches ci-dessus ( hostnamectl , etc/hostname , etc.) fonctionnent pour le changement immédiat du nom d'hôte, avec l'avènement de cloud-init - qui peut contrôler le réglage du nom d'hôte - parmi beaucoup d'autres choses. Donc, il ne collera pas après un redémarrage si cloud-init est installé. Si vous souhaitez que la modification reste après un redémarrage, vous devez modifier les fichiers de configuration cloud-init , désactivez le module de nom d'hôte / mise à jour de cloud-init :

sudo sed 's/preserve_hostname: false/preserve_hostname: true/' /etc/cloud/cloud.cfg

ou désactivez entièrement cloud-init:

sudo touch /etc/cloud/cloud-init.disabled
    
réponse donnée Pierz 18.06.2018 - 16:20
la source

Lire d'autres questions sur les étiquettes