| この記事の要点 |
|
hostname コマンドとは
hostname はコンピュータに付けられたホスト名(コンピュータ名)を表示・変更するコマンドです。Windows / Linux / macOS など主要 OS で同じ名前のコマンドが用意されています。
サーバ管理、ログ集約、SSH 接続先の確認など、運用現場の基本ツールです。
基本構文
# 表示
hostname
# 変更(要管理者権限)
hostname 新しいホスト名
Windows での使い方
Windows 版 hostname は表示専用です。コマンドプロンプト / PowerShell から実行できます。
PS C:\> hostname
DESKTOP-ABC123
# PowerShell 専用の表示方法
PS C:\> $env:COMPUTERNAME
DESKTOP-ABC123
# ホスト名変更(要再起動)
PS C:\> Rename-Computer -NewName "NEW-PC" -Restart
Linux での使い方
# 現在のホスト名を表示
$ hostname
server01
# FQDN(完全修飾ドメイン名)を表示
$ hostname -f
server01.example.com
# 短いホスト名のみ
$ hostname -s
server01
# ドメイン名
$ hostname -d
example.com
# IP アドレス一覧
$ hostname -i
192.168.1.10
# すべての IP(複数 NIC 対応)
$ hostname -I
192.168.1.10 10.0.0.5
# 一時的に変更(再起動で消える)
$ sudo hostname new-server
主なオプション(Linux)
| オプション | 意味 |
|---|---|
| なし | 現在のホスト名を表示 |
-s / --short | ドメインを除いた短い名前 |
-f / --fqdn | FQDN(host.domain) |
-d / --domain | ドメイン名のみ |
-i / --ip-address | IP アドレス(/etc/hosts から) |
-I / --all-ip-addresses | すべての IP(NIC ベース、推奨) |
-a / --alias | エイリアス |
--help | ヘルプ表示 |
ホスト名の永続化(Linux)
hostname new-name だけだと再起動で元に戻ります。永続的に変えるには方法を選びます。
方法 1: hostnamectl(推奨・systemd 環境)
# 確認
$ hostnamectl
# 変更(即時反映 + 永続化)
$ sudo hostnamectl set-hostname new-server.example.com
# 「きれいな」表示用ホスト名
$ sudo hostnamectl set-hostname "Production Server" --pretty
方法 2: /etc/hostname を直接編集
$ sudo vi /etc/hostname
# 一行だけで OK
new-server
# 再起動で反映 or 下記で即時反映
$ sudo hostname -F /etc/hostname
hostname と hostnamectl の違い
| 項目 | hostname | hostnamectl |
|---|---|---|
| 表示 | シンプル(1 行) | 静的 / 一時的 / pretty の 3 種を区別表示 |
| 変更 | 一時的(再起動で消える) | 永続化される(/etc/hostname に書き込む) |
| 対応 OS | ほぼすべての Unix 系 | systemd 環境(最近の Linux) |
| 推奨 | 表示のみ | 変更時の第一選択 |
macOS の場合
# 確認
$ hostname
mac-of-john.local
# 変更(3 種類の名前を統一)
$ sudo scutil --set HostName "newmac"
$ sudo scutil --set LocalHostName "newmac"
$ sudo scutil --set ComputerName "newmac"
macOS はHostName / LocalHostName / ComputerNameの 3 種類があり、用途が異なります。SSH や Bonjour、共有名で表示されるものをそれぞれ設定します。
よく使うシーン
| シーン | 使い方 |
|---|---|
| SSH 接続先確認 | ssh user@server && hostname |
| シェルプロンプトに表示 | PS1='\u@\h:\w\$ ' の \h |
| スクリプトで分岐 | if [ "$(hostname)" = "prod" ]; then ... fi |
| クラスタの IP 確認 | hostname -I |
| FQDN 取得 | hostname -f |
よくあるトラブル
| 症状 | 原因と対処 |
|---|---|
hostname -f で unknown host | /etc/hosts に自ホスト名のエントリ不足。127.0.1.1 server01.example.com server01 を追加 |
| 再起動でホスト名が戻る | /etc/hostname または hostnamectl set-hostname で永続化 |
| SSH のプロンプトが localhost のまま | hostname 変更後、シェル再起動が必要(環境変数 HOSTNAME も再評価) |
| クラウド VM でホスト名が勝手に変わる | cloud-init / metadata 由来。cloud.cfg の preserve_hostname: true を設定 |
FAQ
Q: hostname と $HOSTNAME の違いは?
A: hostname はカーネルから現在のホスト名を取得します。$HOSTNAME はシェル起動時に評価された環境変数なので、シェル起動後に変更しても $HOSTNAME は古いまま。
Q: ホスト名にアンダースコアは使える?
A: RFC 1123 では英数字とハイフンのみ。アンダースコアは技術的に動くこともあるが DNS や TLS で問題を起こすので非推奨。
Q: Docker コンテナのホスト名は?
A: docker run --hostname mycontainer ... で指定可能。指定なしの場合はコンテナ ID の先頭 12 桁が使われます。
関連
- コマンド一覧 — 親カテゴリ
- hostnamectl — systemd 環境の推奨コマンド
- /etc/hostname / /etc/hosts — 設定ファイル
- ipconfig / ifconfig / ip addr — IP アドレス確認
- nslookup / dig — DNS 解決
子ページ
子ページはありません
同階層のページ
- cd ディレクトリの移動
- dir ファイル/ディレクトリ一覧表示
- ipconfig IP構成の確認
- hostname ホスト名の確認
- ping コマンド
- start プログラムの実行
人気ページ
- 1 Eclipseで「サーバーに追加または除去できるリソースがありません。」の原因と対処法
- 2 tomcat の起動 / 停止ログと catalina.log・catalina.out の違い
- 3 JavaScript で base URL を取得する方法|window.location.origin
- 4 YouTube Data API v3 エラー一覧|403・400・404 の原因と対処
- 5 Laravel エラー一覧|500/Blade/DB 接続/ルーティングの代表エラー
- 6 3Dグラフィックスとは|モデリング/レンダリング/主要ソフトウェア (Blender / Maya)
- 7 Spring Frameworkのアノテーション一覧
- 8 【Spring】@Valueアノテーションとは
- 9 CATALINA_HOME の確認方法 (Linux / Mac)
- 10 【Spring】@Autowiredアノテーションとは
最近更新/作成されたページ
- JP1/FTS(File Transmission Server/FTP)とは|伝送カードとftstranの使い方 NEW 2026-10-02 22:03:11
- 日立 JP1 (Job Management Partner 1) 完全ガイド (AJS3 / IM / Base / PFM) 2026-10-02 22:03:11
- JP1/Baseとは|ユーザー認証・ユーザーマッピング・イベントサービスの仕組みと主要コマンド NEW 2026-10-02 22:03:10
- JP1/IM(JP1/IM2・IM3)とは|JP1イベントによる統合監視の仕組みとJP1/Baseとの関係 NEW 2026-10-02 22:03:10
- JP1/AJS3 コマンド一覧|ajsentry・ajsshow・ajsrerunなど主要コマンドの使い方とオプション NEW 2026-10-02 22:03:09
- JP1/AJS3とは?ジョブネット・スケジュール・Manager/Agent/Viewの構成を初心者向けに解説 NEW 2026-10-02 22:03:09
- クラウドネットワークの記事一覧 2026-10-02 16:08:51
- ルーティングとスイッチング完全ガイド — 静的/動的ルーティング/RIP/OSPF/BGP/VLAN/STP 2026-10-02 16:08:51
- ネットワークのアドレッシング完全ガイド — IP/MAC/ポート/サブネット/CIDR/IPv6/NAT 2026-10-02 16:08:51
- 本番環境のdll内で参照しているdllファイルの置き場所 2026-10-02 16:08:50
- 【Visual Studio】 C#のForm自動生成時に「値が有効な範囲にありません」エラー 2026-10-02 16:08:50
- 【Laravelエラー】does not comply with psr-4 autoloading standard. Skipping. 2026-10-02 16:08:50
- 【Laravelエラー】could not find driver(Windows, MySQL編) 2026-10-02 16:08:49
- The following channel memory did not pass cpu memory test. 2026-10-02 16:08:49
- 【pycharm】connecting to console が終わらない 2026-10-02 16:08:49