ホスト名を設定するコマンドは間違いなく、hostnamectl
です。
root ~ # hostnamectl set-hostname --static "YOUR-HOSTNAME-HERE"
ホスト名を正しく設定する-Amazon EC2のFedora 20というタイトルの、この機能についてもう少し詳しく説明している追加ソースがあります。
さらに、次のmanページhostnamectl
:
HOSTNAMECTL(1) hostnamectl HOSTNAMECTL(1)
NAME
hostnamectl - Control the system hostname
SYNOPSIS
hostnamectl [OPTIONS...] {COMMAND}
DESCRIPTION
hostnamectl may be used to query and change the system hostname and
related settings.
This tool distinguishes three different hostnames: the high-level
"pretty" hostname which might include all kinds of special characters
(e.g. "Lennart's Laptop"), the static hostname which is used to
initialize the kernel hostname at boot (e.g. "lennarts-laptop"), and
the transient hostname which is a default received from network
configuration. If a static hostname is set, and is valid (something
other than localhost), then the transient hostname is not used.
Note that the pretty hostname has little restrictions on the characters
used, while the static and transient hostnames are limited to the
usually accepted characters of Internet domain names.
The static hostname is stored in /etc/hostname, see hostname(5) for
more information. The pretty hostname, chassis type, and icon name are
stored in /etc/machine-info, see machine-info(5).
Use systemd-firstboot(1) to initialize the system host name for mounted
(but not booted) system images.
Fedora 21には、SELinuxがhostnamectlアクセスを妨げるバグがあります。バグ1133368-SELinuxがsystemd-hostnamがファイルhostnameでの「リンク解除」アクセスを妨げています。
このバグは関連しているようです。/etc/hostname
インストール時にSELinuxコンテキストがファイルに適切に適用されないという問題があります。これhostnamectl
は、ファイルを操作できないツールに現れます/etc/hostname
。同じスレッドがこの回避策を提供しました。
$sudo restorecon -v /etc/hostname
注:そのパッチはAnaconda(インストールツール)に適用されたため、この問題は将来、新しいユーザーに解決されるはずです。