web-dev-qa-db-fra.com

Comment obtenir le nom d'hôte à partir de / etc / hostname et le nom de domaine DNS?

Comment puis-je obtenir le nom d'hôte auprès de /etc/hosts? en écrivant hostname? Et que dire du nom de domaine DNS, comment puis-je l'obtenir? Comment puis-je obtenir ces noms via la ligne de commande?

12
dada dudu

Quand vous tapez

hostname

il vous montrera la valeur qui est stockée dans

/etc/hostname

Voir hostname --help pour de nombreuses options. De l'aide ...

-s, --short            short Host name
-a, --alias            alias names
-i, --ip-address       addresses for the Host name
-I, --all-ip-addresses all addresses for the Host
-f, --fqdn, --long     long Host name (FQDN)
-A, --all-fqdns        all long Host names (FQDNs)
-d, --domain           DNS domain name
-y, --yp, --nis        NIS/YP domain name
-b, --boot             set default hostname if none available
-F, --file             read Host name or NIS domain name from given file

Cette commande peut obtenir ou définir le nom d'hôte ou le nom de domaine NIS. Vous pouvez également obtenir le domaine DNS ou le nom de domaine complet (nom de domaine complet). Sauf si vous utilisez des recherches de type bind ou NIS for Host, vous pouvez modifier le nom de domaine complet (FQDN) et le nom de domaine DNS (qui fait partie du nom de domaine complet) dans le fichier/etc/hosts.


Alors

hostname -f

pour le nom d'hôte long (FQDN).

13
Rinzwind

En supposant que vous vouliez votre adresse IPv4 locale (LAN) ....

Pour éviter que votre serveur ne retourne une longue chaîne combinant vos adresses IPv4 et IPv6, utilisez ceci par programme dans un script bash:

LOCALIP=$(hostname -I | awk '{print $1}')

Ou tapez ceci sur la CLI:

hostname -I | awk '{print $1}'
0
MrPotatoHead