再起動時に一時ホスト名がホスト名を上書きしないようにする

再起動時に一時ホスト名がホスト名を上書きしないようにする

私のサーバーはCentOS 7.1です。再起動後、mail一時ホスト名()がホスト名を上書きするのを防ぐ方法が見つかりません。 AutoDNSとMXレコードがmailこの問題を引き起こす可能性はありますか?

  • /etc/hostname正しい値が含まれています。
  • hostnamectl --transient set-hostname my.desired.name動作しますが、次の再起動までのみ可能

したがって、再起動後:

  • hostnamectl status正しい静的ホスト名が表示されますが、無効な一時ホスト名が表示されます(mail)。
  • hostname -sまたは、hostname -f無効なホスト名が表示されます。

ファイルは/etc/sysconfig/network"by anaconda"で上書きされ、HOSTNAME="mail"正しい名前を設定するためにこのファイルを編集しようとしましたが、再起動後に上書きされました。

再起動後に一時ホスト名が設定されないようにするにはmail


編集:/etc/sysconfig/network-scripts/ifcfg-e.....に
追加しようとしましたが、DHCP_HOSTNAME="my.desired.name"成功しませんでした(再起動後に行が削除されました)。再起動時に実行を追加しよ
うとしましたがhostnamectl set-hostname "" --transient(これにより一時ホスト名が静的ホスト名の値に設定されます)、/etc/rc.localを有効にしたときとchkconfigサポートサービス(#chkconfig: - 11 91を使用)を有効にすると失敗しますしました。他のすべてのサービスの後に実行する必要があります)。

追加の提案を歓迎します。

答え1

一時ホスト名は起動時に静的ホスト名で初期化されますが、DHCPまたはmDNSを介して変更できます。

動的ホスト構成プロトコル

DHCPを使用している場合は、ネットワークデバイスの設定に無効なホスト名が設定されていることを確認する必要があります。実行して、ip addr show現在使用しているネットワークデバイスを確認してください。次に、適切な構成スクリプトを編集します。たとえば、ネットワークインターフェイスがある場合は、その設定eth0ファイルを編集する必要があります/etc/sysconfig/network-scripts/ifcfg-eth0

Red Hat ドキュメントからifcfg ファイルを使用したネットワークインタフェースの設定、オプションがあります

DHCP サーバーに別のホスト名を送信するようにインターフェイスを設定します。

DHCP_HOSTNAME=hostname

mail システムにこのスクリプトに設定されているホスト名がないことを確認してください。

これが問題でない場合は、ローカルDHCPサーバーがホスト名をに設定するように構成されていないことを確認する必要がありますmailmailLANでDNS / DHCP用にホストを設定したネットワーク管理者がいる場合は、管理者に連絡する必要があります。ベスト プラクティスは、役割ベースではなく名前でホストを構成し、DNS CNAMES を関連サーバーのエイリアスとして構成することです。

DHCPが問題の原因であり、上記の提案が役に立たない場合は、別のオプションは静的IPアドレスを使用するようにネットワークインターフェイスを設定することです。

答え2

私はこれがずっと前のことであることを知っていますが、なぜこれが起こるのかを答える人のために:一部のプロバイダ(ISP、会社VPNなど)はホストに送り返し、コンピュータに基づいて現在のコンピュータのホスト名に設定します。構成

私の問題(そして私がここに来た理由)は、マニュアルページlocalhostに従ってホスト名をデフォルトに設定したことです。hostnamectl

このツールは、さまざまな特殊文字を含むことができる高レベルの「きれいな」ホスト名(「Lennart's Laptop」など)、ブート時にカーネルホスト名を初期化するために使用される静的ホスト名(「lennarts-laptop」など) )という3つのホスト名を区別します。 )とネットワーク構成でデフォルトで受信された一時ホスト名。静的ホスト名が設定され有効な場合(localhostを除く)、一時ホスト名は使用されません。

だから一つの解決策はホスト名を次に設定しないでください。 localhost

別のソリューション/etc/dhcp/dhclient.conf属性から削除し(おそらく)、DHCP設定がホスト名を要求しないようにします。host-namedomain-namerequest

答え3

ついに私はそれを得た。
当社ホスティングプロバイダー(Host Europe)は、各サーバー(仮想ルートサーバー)のコントロールパネルからオプションを提供しています。 「ホスト名/RDNS」ページには、「ホスト名:」入力フィールドがあります。正しい値に変更しましたが、期待どおりに機能します。

答え4

$ vi /etc/sysconfig/network-scripts/ifcfg-eth0

$ vi /etc/sysconfig/network

HOSTNAME="hostname<FQDN>"
DHCP_HOSTNAME="hostname<FQDN>"

$ vi /etc/rc.local

#!/bin/bash
# THIS FILE IS ADDED FOR COMPATIBILITY PURPOSES
#
# It is highly advisable to create own systemd services or udev rules
# to run scripts during boot instead of using this file.
#
# In contrast to previous versions due to parallel execution during boot
# this script will NOT be run after all other services.
#
# Please note that you must run 'chmod +x /etc/rc.d/rc.local' to ensure
# that this script will be executed during boot.

touch /var/lock/subsys/local
hostnamectl --transient set-hostname "hostname"

#exit vi <:wq>

$ chmod +x /etc/rc.d/rc.local <This will make the file unchanged even after reboot>

$ Reboot

*You are ready to go the Cpanel installation for CentOS7 :)*

関連情報