新しいバージョンのfedoraでホスト名を変更するには、コマンド。さらに、最近(そして正常に)Arch Linuxのホスト名をこの方法で変更しました。ただし、実行時:

 [root@localhost ~]# hostnamectl set-hostname --static paragon.localdomain [root@localhost ~]# hostnamectl set-hostname --transient paragon.localdomain [root@localhost ~]# hostnamectl set-hostname --pretty paragon.localdomain  

再起動後、変更は保持されません(多くの人の主張に反して)。何が問題になっていますか?

  • 私は本当に /etc/hostnameを手動で編集したくありません。

これは完全にストックフェドーラであることに注意する必要があります。コアアプリのインストールについてはまだ理解していません。

コメント

  • この問題に関しても同様の情報がありました: ask.fedoraproject.org/en/question/37413/ … &これ: dbaora.com/install-fedora-20
  • 確かに、これは私の情報源の1つです。しかし、そのページから抽出できる解決策はどれも機能しませんでした…
  • このシステムをインストール/セットアップしたのはどのくらい最近ですか?インストール後に問題が発生しましたか?また、これらのhostnamectlコマンドでエラーが発生しましたか?何かが投稿したバグジラバグへのリンクは、あなたの最善のリードのようです。
  • 2014年10月1日にインストールしましたが、それ以降、hostnamectlコマンドはインストールしませんでした。動作しますが、現在は動作します。
  • 受け入れられたソリューションにリンクされているバグは、あなたにとって不幸なタイミングでした。彼らは'それをアップストリームで修正し、将来のユーザーのためにうまくいくはずです。

回答

ホスト名を設定するコマンドは間違いなくhostnamectlです。

root ~ # hostnamectl set-hostname --static "YOUR-HOSTNAME-HERE" 

この機能をもう少し詳しく説明する追加のソースは次のとおりです:ホスト名を正しく設定する-AmazonEC2のFedora20

さらに、hostnamectlのmanページ:

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がファイルホスト名へのアクセスを「リンク解除」できないようにしています

このバグ関連しているようです。インストール時にSELinuxコンテキストがファイル/etc/hostnameに正しく適用されないという問題があります。これは、ツールhostnamectlがファイル/etc/hostnameを操作できないことで明らかになります。同じスレッドがこの回避策を提供しました:

$sudo restorecon -v /etc/hostname 

注:そのパッチはAnaconda(インストールツール)に適用されたため、この問題は将来、新しいユーザーに対して解消されるはずです。

回答

これの考えられる原因は、dhcpクライアントです。一般的なdhcpcdを使用している場合、解決策は次の行を/etc/dhcpcd.confに追加することです。

nohook hostname 

これにより、dhcpcdがシステムのホスト名を変更するスクリプトを呼び出すのを防ぎます。

デフォルトでは、dhcpcdは存在するすべてのフックを実行します/lib/dhcpcd/dhcpcd-run-hooks(パスは異なる場合があります) nohookを使用すると、特定のものが無効になります。

コメント

  • 21とrawhideがインストールされ、/etc/dhcpd.confは存在しません。さらに、systemctl status dhcpcdnot-found (Reason: No such file or directory)

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です