GNU / Linuxでドメイン名を設定する方法は?


27

さまざまな方法で変更できるホスト名と同様:

  • 一時的にhostnameコマンドを使用する
  • 恒久的に使用して/etc/hostname(または/etc/sysconfig/networkあるいは/etc/HOSTNAME、これらのファイルは、initスクリプトで使用されています)

ドメイン名を変更したい。domainnameコマンドを使用できますが、再起動後も永続的にする方法はありますか?で構成できると思いますが/etc/resolv.conf、このファイルは通常生成されsearchdomainディレクティブとディレクティブの違いは正確にはわかりません。そしてdomainname、ドメイン名を設定するためにプログラムに正確に渡される情報はいつですか?

それについて何かアイデアはありますか?

ほとんどのディストリビューションで互換性を保ちたいです。だから、もし誰かが異なるディストリビューションのフレーバーへのポインタを持っているなら、私は喜んでそれらを受け入れます。


ディストリビューションごとにこれが異なります。どれに興味がありますか?そして、彼らのドキュメントを読みましたか?
マイケルハンプトン

主にRedHatおよびDebianフレーバー。また、ドキュメントに関連情報が見つかりませんでした。しかし、おそらく私は十分に一生懸命に見ていないので、ドキュメントのどこにあるのか(またはドキュメント内にあるとしても)正確にはわからないことを認めます。
ミルドレッド

1
それは公正です。Red Hatのドキュメントでは、付録に埋もれています。Debian では、付録埋もれていませんが、混乱を招きます...
マイケルハンプトン

1
@Michael debianメーリングリストのこのリンクは、特に便利です。特に、最終的に質問に答えるには、名前を解決したい場所でFQDNを設定します。ボックス自体のファイルに含める場合は、/ etc / hostsに入れます。私のように独自のネームサーバーを実行している場合(簡単にするためにdnsmasqを実行しています)、情報を記録する必要があります
Mildred

Red Hat 7および派生システムでは、hostnamectlを使用してホスト名を設定する必要があります。cyberciti.biz/faq/rhel-redhat-c​​entos-7-change-hostname-command/...
Xavy

回答:


42

FQDNを設定

私はDebian 7を使用していますが、これが私にとってうまくいったことです。フェルナンド・リベイロに感謝します。

sudoedit / etc / hostname

server # here's where you put the server's host name

ホスト名を有効にする

sudoホスト名-F / etc / hostname

サーバーにドメイン名とアドレスを追加する

sudoedit / etc / hosts

192.168.1.2   server.domain server

確認

> hostname --short
server

> hostname --domain
domain

> hostname --fqdn
server.domain

> hostname --ip-address
192.168.1.2

サーバー名を変更した後/etc/hostname、編集できない場合があります/etc/hosts。この場合、あなたは使用する必要がありxauth add、この回答に記載されているようにstackoverflow.com/questions/20611783/...
ジュニアM

1
を使用しないでくださいsudo vim。設定$EDITORして使用しますsudoedit
törzsmókus

5

redhat-baseシステムを使用する場合、Linuxは/etc/sysconfig/networkファイルを使用するため、変数HOSTNAMEFQDNに設定する必要があります。使用する場合FQDNlinuxそれ自体がドメイン名を決定します。

例えば:

HOSTNAME=web.mydomain.com

ただし、debian-baseシステムを使用する場合は、/etc/hostnameファイルに以下を入力する必要がありますFQDN

web.mydomain.com

注:設定するdomain name場合は、必ず設定してくださいFQDN(完全修飾ドメイン名)

設定すると、がhostname -d表示されますdomain name


1
ありがとうございますが、これらのファイルにはドメイン部分のないホスト名のみを含めるべきだという印象を受けました。あなたが提案することをすれば、ホスト名はfqdnを直接返します(との違いはhostnameありませんhostname -f)。
ミルドレッド

ところで、hostname web.mydomain.comファイルを構成した後、手動でホスト名を設定する必要があると言うのを忘れています。ファイルメモリを構成するときに変更を適用できないためです。(有用である場合は、有用なフラグを忘れないでください)
PersianGulf

4

man hostname、最後から最初まで引用されている

FILES
       /etc/hostname  Historically  this file was supposed to only contain the hostname and not the full canonical
       FQDN. Nowadays most software is able to cope with a full FQDN here. This file is read at boot time  by  the
       system initialization scripts to set the hostname.

       /etc/hosts Usually, this is where one sets the domain name by aliasing the host name to the FQDN.

   THE FQDN
       The  FQDN (Fully Qualified Domain Name) of the system is the name that the resolver(3) returns for the host
       name, such as, ursula.example.com.  It is usually the hostname followed by the DNS domain  name  (the  part
       after the first dot).  You can check the FQDN using hostname --fqdn or the domain name using dnsdomainname.

       You cannot change the FQDN with hostname or dnsdomainname.

       The recommended method of setting the FQDN is to make the hostname be an alias for the fully qualified name
       using /etc/hosts, DNS, or NIS. For example, if the  hostname  was  "ursula",  one  might  have  a  line  in
       /etc/hosts which reads

              127.0.1.1    ursula.example.com ursula

       Technically: The FQDN is the name getaddrinfo(3) returns for the host name returned by gethostname(2).  The
       DNS domain name is the part after the first dot.

       Therefore it depends on the configuration of the resolver (usually in /etc/host.conf) how  you  can  change
       it.  Usually  the  hosts  file  is  parsed  before  DNS  or NIS, so it is most common to change the FQDN in
       /etc/hosts.

       If a machine has multiple network interfaces/addresses or is used in a  mobile  environment,  then  it  may
       either  have  multiple  FQDNs/domain  names or none at all. Therefore avoid using hostname --fqdn, hostname
       --domain and dnsdomainname.  hostname --ip-address is subject to the  same  limitations  so  it  should  be
       avoided as well.

全体を完全に説明していると思います。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.