コマンドラインのマニュアル

Man » hostname マニュアルオンライン - hostname マニュアルページの詳細なオンラインドキュメント

🌍
hostname - システムのホスト名を表示または設定します
domainname - システムの NIS/YP ドメイン名を表示または設定します
ypdomainname - システムの NIS/YP ドメイン名を表示または設定します
nisdomainname - システムの NIS/YP ドメイン名を表示または設定します
dnsdomainname - システムの DNS ドメイン名を表示します

概要

hostname [-a|--alias] [-d|--domain] [-f|--fqdn|--long] [-A|--all-fqdns] [-i|--ip-address]
[-I|--all-ip-addresses] [-s|--short] [-y|--yp|--nis]
hostname [-b|--boot] [-F|--file filename] [hostname]
hostname [-h|--help] [-V|--version]

domainname [nisdomain] [-F file]
ypdomainname [nisdomain] [-F file]
nisdomainname [nisdomain] [-F file]

dnsdomainname

説明

Hostname は、システムの DNS 名を表示し、ホスト名または NIS ドメイン名を表示または設定するために使用されます。

名前の取得

引数なしで呼び出すと、プログラムは現在の名前を表示します。

hostname は、gethostname(2) 関数によって返されるシステムの名前を出力します。

domainname は、システムの NIS ドメイン名を出力します。domainname は gethostname(2) 関数を使用するのに対し、ypdomainname および nisdomainname は getdomainname(2) を使用します。

dnsdomainname は、FQDN (完全修飾ドメイン名) のドメイン部分を出力します。システムの完全な
FQDN は、hostname --fqdn を使用して返されます (ただし、セクション「FQDN」の警告を参照してください)。

名前の設定

1 つの引数または --file オプションを指定して呼び出すと、コマンドはホスト名または NIS/YP ドメイン名を設定します。hostname は sethostname(2) 関数を使用し、domainname、ypdomainname、および nisdomainname の 3 つのドメイン名はいずれも setdomainname(2) を使用します。ただし、これは次の再起動までのみ有効です。/etc/hostname を編集して、永続的な変更を行います。

名前の変更は、スーパーユーザーのみが可能です。

FQDN または DNS ドメイン名は、dnsdomainname コマンドを使用して設定することはできません (「FQDN」を参照)。

ホスト名は、通常、システム起動時に /etc/init.d/hostname.sh に設定されます (通常、ホスト名を含むファイルの内容を読み取ります。たとえば、/etc/hostname)。

FQDN

システムの FQDN (完全修飾ドメイン名) は、resolver(3) がホスト名に対して返す名前であり、たとえば、ursula.example.com のようになります。通常、ホスト名の後に DNS ドメイン名 (最初のドット以降の部分) が続きます。FQDN は、hostname --fqdn または ドメイン名は、dnsdomainname を使用して確認できます。

hostname または dnsdomainname を使用して FQDN を変更することはできません。

FQDN を設定するための推奨される方法は、ホスト名を完全修飾名 (FQDN) のエイリアスにすることです。これには、/etc/hosts、DNS、または NIS を使用します。たとえば、ホスト名が「ursula」の場合、/etc/hosts に次のような行を含めることができます。


12.0.1.1    ursula.example.com ursula

技術的には、FQDNは、gethostname(2)によって返されるホスト名に対して、getaddrinfo(3)が返す名前です。DNSドメイン名は、最初のドットの後の部分です。

そのため、リゾルバー(通常は/etc/host.conf)の設定によって、FQDNの変更方法が決まります。通常、/etc/hostsファイルはDNSまたはNISよりも前に解析されるため、FQDNを/etc/hostsファイルで変更するのが最も一般的です。

マシンに複数のネットワークインターフェース/アドレスがある場合、またはモバイル環境で使用されている場合、複数のFQDN/ドメイン名を持つか、まったく持たない場合があります。したがって、hostname --fqdn、hostname --domain、dnsdomainnameの使用は避けてください。hostname --ip-addressも同様の制限があるため、使用を避けるべきです。

オプション

-a, --alias
ホストのエイリアス名(使用されている場合)を表示します。このオプションは非推奨であり、これ以上使用しないでください。

-A, --all-fqdns
マシンのすべてのFQDNを表示します。このオプションは、すべての設定されたネットワークインターフェース上のすべての設定されたネットワークアドレスを列挙し、それらをDNSドメイン名に変換します。適切な逆IPエントリがないため、変換できないアドレスはスキップされます。異なるアドレスが同じ名前に解決される可能性があるため、出力に重複するエントリが含まれる可能性があります。出力の順序については、前提を立てないでください。

-b, --boot
常にホスト名を設定します。これにより、-Fで指定されたファイルが存在しないか、空であっても、ホスト名を設定できます。その場合、まだホスト名が設定されていない場合は、デフォルトのホスト名であるlocalhostが使用されます。

-d, --domain
DNSドメイン名を表示します。DNSドメイン名を取得するために、domainnameコマンドを使用しないでください。domainnameコマンドは、DNSドメイン名ではなく、NISドメイン名を表示します。代わりにdnsdomainnameを使用してください。上記の「THE FQDN」セクションの警告を参照し、このオプションの使用は避けてください。

-f, --fqdn, --long
FQDN(完全修飾ドメイン名)を表示します。FQDNは、短いホスト名とDNSドメイン名で構成されます。bindまたはNISを使用してホストの参照を行っている場合は、/etc/hostsファイルでFQDNとDNSドメイン名(FQDNの一部)を変更できます。上記の「THE FQDN」セクションの警告を参照し、可能な限りhostname --all-fqdnsを使用してください。

-F, --file filename
指定されたファイルからホスト名を読み込みます。コメント(\`#\`で始まる行)は無視されます。

-i, --ip-address
ホスト名のネットワークアドレスを表示します。ただし、これはホスト名を解決できる場合にのみ機能します。このオプションの使用は避け、代わりにhostname --all-ip-addressesを使用してください。

-I, --all-ip-addresses
すべてのネットワークアドレスを表示します。このオプションは、すべてのネットワークインターフェース上のすべての設定されたアドレスを列挙します。ループバックインターフェースとIPv6リンクローカルアドレスは省略されます。-iオプションとは異なり、このオプションは名前解決に依存しません。出力の順序については、前提を立てないでください。

-s, --short
短いホスト名を表示します。これは、最初のドットでホスト名を切り取ったものです。

-V, --version

バージョン情報を標準出力に出力して正常終了します。

-y, --yp, --nis

NISドメイン名を表示します。引数(または--file ファイル名)が与えられた場合、rootユーザーは新しいNISドメインを設定することもできます。

-h, --help

使用法メッセージを出力して終了します。

注意事項

ホストのFQDN、エイリアス、ネットワークアドレスを検索する際に、hostnameが試すアドレスファミリは、resolverの構成によって決定されます。たとえば、GNU libcシステムでは、/etc/resolv.confのinet6オプションを使用して、resolverにIPv6ルックアップを最初に試すように指示できます。

ファイル

/etc/hostname 歴史的に、このファイルにはホスト名のみを含め、完全な正規のFQDNを含めないようにするとされていました。現在では、ほとんどのソフトウェアは、ここに完全なFQDNを含めることができるようになりました。このファイルは、システムの起動時に初期化スクリプトによって読み取られ、ホスト名が設定されます。

/etc/hosts 通常、ホスト名をFQDNにエイリアスすることで、ここでドメイン名を設定します。

著者

Peter Tobias, <_> Bernd Eckenfels, <_>(NISおよびマニュアルページ)。 Michael Meskes, <_>