「hostnameとdomainnameの違いがよくわからない」
domainname コマンドは、LinuxシステムのNIS(Network Information Service)ドメイン名を確認・設定するためのコマンドです。DNSのドメイン名とは別物なので、混同しないよう注意が必要です。
この記事では、
domainname コマンドの使い方と、hostname や DNS ドメイン名との違いを解説します。現代のLinuxでの代替コマンドについても説明します。
・domainnameが扱うのはNIS/YPドメイン名。DNSドメイン名ではない
・引数なしで現在のNISドメイン名を表示、引数ありでroot権限で設定できる
・現代のLinuxではhostnamectl set-hostname等が推奨される場合もある
でも安心してください。プロのエンジニアはコマンドを暗記していません。
「現場で使える型」を効率よく使いこなしているだけです。
domainnameコマンドとは?NISドメイン名について
domainname コマンドは、システムに設定されているNIS(Network Information Service)ドメイン名を表示・設定するコマンドです。NISとは、複数のLinuxサーバー間でユーザー情報やホスト情報を共有するための仕組みです。
企業の大規模サーバー環境で使われることがあります。
重要な注意点:
domainname が扱うのはNIS/YPのドメイン名であり、DNSのドメイン名(example.comなど)とは全く別物です。
DNSドメイン名の確認には
hostname -d または dnsdomainname を使ってください。基本的な使い方
1. 現在のNISドメイン名を確認する
引数なしで実行すると、設定されているNISドメイン名が表示されます。# NISドメイン名を確認する $ domainname sonic # NISドメイン名が未設定の場合は "(none)" と表示される $ domainname (none)
2. NISドメイン名を設定する(root権限必要)
引数にドメイン名を指定すると、NISドメイン名を設定できます。root権限が必要です。# root権限で設定する $ su - Password: # domainname sonic # 設定を確認する # domainname sonic
永続化するには設定ファイルへの追記が必要です(後述)。
domainnameとhostnameの違い
| コマンド | 表示する情報 | 用途 |
|---|---|---|
| domainname | NIS/YPドメイン名 | NIS環境のドメイン管理 |
| hostname | ホスト名 | サーバーのホスト名確認・設定 |
| hostname -d | DNSドメイン名 | DNSドメイン名(FQDN)の確認 |
| dnsdomainname | DNSドメイン名 | domainnameのDNS版 |
| hostnamectl | ホスト名(systemd環境) | 現代のLinuxでの設定・確認 |
設定を永続化する方法
domainname で設定した値は再起動すると消えます。永続化するには、ディストリビューションに応じた設定ファイルに記述します。
# CentOS/RHEL の場合(/etc/sysconfig/network に記述) $ cat /etc/sysconfig/network NETWORKING=yes HOSTNAME=server01 NISDOMAIN=sonic # Ubuntu/Debianの場合(/etc/defaultdomain に記述) $ echo "sonic" > /etc/defaultdomain
トラブルシュート:domainnameが「(none)」と表示される
domainname が (none) を返す場合、NISドメイン名が設定されていない状態です。NISを使用しない環境では、これが正常な状態です。
・NISを使う場合:上記の手順でdomainnameを設定し、NISクライアントの設定を行う
・NISを使わない場合:
(none) のままでも通常の運用に支障はない本記事のまとめ
| やりたいこと | コマンド |
|---|---|
| NISドメイン名を確認する | domainname |
| NISドメイン名を設定する(root権限) | domainname NISドメイン名 |
| DNSドメイン名を確認する | hostname -d |
| ホスト名を確認する | hostname |
Linuxのネットワーク設定を体系的に理解したいですか?
ホスト名・ドメイン名・NISの仕組みを正しく理解すると、ネットワークトラブルの原因特定が格段に速くなります。
ネットの切れ端の情報をコピペするだけでなく、現場で通用する安全なLinuxサーバー構築の「型」を体系的に身につけたい方へ、『Linuxサーバー構築入門マニュアル(図解60P)』を完全無料でプレゼントしています。
「独学の時間がもったいない」「プロから直接、現場の技術を最短で学びたい」という本気の方には、2日で実務レベルのスキルが身につく【初心者向けハンズオンセミナー】も開催しています。
3,100名以上が実践した「型」を無料で公開中
プロのエンジニアはコマンドを暗記していません。
「現場で使える型」を効率よく使いこなしているだけです。
その「型」を図解60Pにまとめた入門マニュアルを、完全無料でプレゼントしています。
登録10秒/合わなければ解除3秒 / 詳細はこちら
- 次のページへ:hostnameコマンドでホスト名を確認・変更する方法|hostnamectlの永続設定も
- 前のページへ:dateコマンドの使い方|日付・時刻の表示から書式指定・設定変更まで
- この記事の属するカテゴリ:Linuxコマンド・LinuxコマンドA-E・システム管理コマンドへ戻る

無料メルマガで学習を続ける
Linuxの実践スキルをメールで毎週お届け。
登録は1分、解除もいつでも可。
登録無料・いつでも解除できます