C言語入門|Linuxの名前を決めるファイル:/etc/hostnameの書き方と注意点

今回は、Linuxシステムの“名前”を決める大切なファイル、
/etc/hostname についてやさしく解説します🌟

 Linuxサーバーをネットワークに接続するとき、コンピューターを識別するための「名前(ホスト名)」が必要になります。
 人でいえば「名前札」のようなもので、ネットワーク上で「どのマシンがどれか?」を見分けるために使われます。

🖥️ /etc/hostnameファイルとは?

/etc/hostname ファイルは、Linuxシステムが起動する際に読み込まれ、
そのコンピューターの「ホスト名(hostname)」を設定するためのファイルです。

項目説明
役割システムのホスト名を定義
ファイルの場所/etc/hostname
読み込まれるタイミングシステム起動時(systemd により自動適用)
編集方法手動で編集 or コマンドで設定
反映方法systemd-hostnamedの再起動 or 再起動

📘 例:ファイルの内容を確認する

[suzuki@AlmaLinux ~]$ cat /etc/hostname
almalinux9.localdomain

このように、1行だけ ホスト名が書かれています。

🧭 ホスト名とは?

ホスト名とは、ネットワーク上でコンピューターを区別するための名前です。
 IPアドレスと違い、わかりやすい文字列で表現できるため、システム管理や通信確認にとても便利です。

用語意味
ホスト名 (hostname)コンピューターの識別名server1
ドメイン名 (domain name)所属ネットワーク名example.com
FQDN (完全修飾ドメイン名)ホスト名 + ドメイン名server1.example.com

💬 たとえば、Webサーバーを「server1」、データベースを「db01」など、用途に応じて名前をつけるのが一般的です。

🛠️ ホスト名の確認

現在のホスト名を確認するには、以下の2つの方法があります。

1️⃣ hostnameコマンド

[suzuki@AlmaLinux ~]$ hostname
almalinux9.localdomain

2️⃣ hostnamectlコマンド

[suzuki@AlmaLinux ~]$ hostnamectl
   Static hostname: almalinux9.localdomain
         Icon name: computer-vm
           Chassis: vm
  Operating System: AlmaLinux 9.6 (Shamrock Pampas Cat)
            Kernel: Linux 5.14.0-362.13.1.el9_6.x86_64
      Architecture: x86-64

💬 hostnamectl は systemd ベースの環境で推奨される方法で、
詳細なシステム情報も一緒に確認できます✨

🖊️ ホスト名の変更方法

ホスト名を変更する方法は2通りあります。

🧩 方法①:hostnamectl コマンドで変更

もっとも安全で推奨されるのが、この方法です。
再起動しなくても即時反映されます✨

コマンド書式

hostnamectl set-hostname 新しいホスト名

使用例

[root@AlmaLinux ~]# hostnamectl set-hostname server1.localdomain
[root@AlmaLinux ~]# hostnamectl
   Static hostname: server1.localdomain
  Operating System: AlmaLinux 9.6
            Kernel: Linux 5.14.0-362.13.1.el9_6.x86_64
      Architecture: x86-64

主なオプション

オプション説明
set-hostname <名前>ホスト名を設定
status現在のホスト名と関連情報を表示
--transient一時的にホスト名を設定(再起動で元に戻る)
--pretty見やすい形式のホスト名を設定
--static永続的なホスト名を設定(通常はこちらを使用)

🧩 方法②:/etc/hostname ファイルを直接編集

エディタで直接書き換える方法もあります。
ただし、この場合は反映に再起動、または systemctl restart systemd-hostnamed が必要です。

手順

[root@AlmaLinux ~]# vi /etc/hostname

内容を以下のように変更します。

server1.localdomain

設定を反映する

[root@AlmaLinux ~]# systemctl restart systemd-hostnamed

または再起動します。

[root@AlmaLinux ~]# shutdown -r now

⚙️ /etc/hostnameファイルの注意点

ファイルを編集するときには、次の点に注意してください。

項目注意内容
改行不要末尾に改行文字を入れないようにする。
一意性同じネットワーク内で重複しない名前にする。
使用可能文字英数字(a-z, 0-9)、ハイフン(-)のみ
使用禁止文字スペース、アンダースコア(_)、記号(@、#、! など)
長すぎる名前最大63文字まで(RFC 1123に準拠)

💡 ポイント
ホスト名に「_ 」を含めるのはNGです。
DNSで正しく解決されない原因になります⚠️

🖥️ 出力確認

設定が反映されると、プロンプトにも新しいホスト名が反映されます。

[suzuki@server1 ~]$

以前は [suzuki@AlmaLinux ~]$ だった部分が [suzuki@server1 ~]$ に変わっていればOKです✨

🔍 まとめ

  • /etc/hostname は Linux の「名前(ホスト名)」を定義する重要ファイル
  • hostnamectl コマンドを使えば安全に即時変更できる。
  • 手動編集する場合は systemd-hostnamed の再起動が必要
  • 使用できる文字や形式に注意しよう(改行・特殊文字はNG!)

🌟ポイント
ホスト名の設定は、ネットワークの第一歩です。
わかりやすく、重複のない名前を付けて、あなたのLinuxをしっかり“名乗らせて”あげましょう😊