
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.localdomain2️⃣ 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をしっかり“名乗らせて”あげましょう😊
