जीएनयू / लिनक्स पर डोमेन नाम कैसे सेट करें?


27

इसी प्रकार hostname कि विभिन्न तरीकों से बदला जा सकता है:

  • अस्थायी रूप से hostnameकमांड का उपयोग करना
  • स्थायी रूप से उपयोग कर रहा /etc/hostnameहै (या /etc/sysconfig/networkया /etc/HOSTNAME, इन फ़ाइलों को init स्क्रिप्ट द्वारा उपयोग किया जाता है)

मैं अपना डोमेन नाम बदलना चाहता हूं। मैं domainnameकमांड का उपयोग कर सकता हूं , लेकिन क्या इसे रीबूट करने के लिए स्थायी बनाने का एक तरीका है? मुझे लगता है कि इसे कॉन्फ़िगर किया जा सकता है, /etc/resolv.confलेकिन यह फ़ाइल आम तौर पर उत्पन्न होती है और मुझे इसके searchऔर domainनिर्देशों के बीच का अंतर बिल्कुल पता नहीं है । और किस समय पर domainnameडोमेन नाम सेट करने के लिए कार्यक्रम में वास्तव में क्या जानकारी है ?

क्या आपके पास उस पर कोई विचार है?

मैं ज्यादातर वितरणों के अनुकूल होना चाहूंगा। इसलिए यदि किसी के पास अलग-अलग वितरण स्वादों के संकेत हैं, तो मैं ख़ुशी से उन्हें स्वीकार करूँगा।


हर वितरण यह अलग तरीके से करता है। आप किन लोगों में रुचि रखते हैं? और क्या आपने उनका प्रलेखन पढ़ा?
माइकल हैम्पटन

ज्यादातर रेडहैट और डेबियन फ्लेवर हैं। और मुझे दस्तावेज़ में प्रासंगिक जानकारी नहीं मिली। लेकिन शायद मैंने बहुत मुश्किल नहीं देखा है, मैं मानता हूं कि मुझे नहीं पता कि प्रलेखन में यह कहाँ हो सकता है (या भले ही यह डॉक्स में हो)।
मृदुल

1
ये उचित है। Red Hat के दस्तावेज़ में, इसे परिशिष्ट में दफन किया गया है । जबकि में डेबियन है यह है एक परिशिष्ट में दफन नहीं है, लेकिन यह है भ्रामक ...
माइकल हैम्पटन

1
@ मिचेल डेबियन मेलिंग सूची पर यह लिंक ज्यादातर उपयोगी है, विशेष रूप से तो अपने सवाल का जवाब देने के लिए, आप अपने FQDN को कॉन्फ़िगर करते हैं, जहाँ भी आप नाम चाहते हैं। यदि आप इसे बॉक्स पर फ़ाइलों में चाहते हैं, तो यह / etc / मेजबान में जाता है। यदि आप अपना खुद का नाम सर्वर चलाते हैं जैसे मैं (मैं सादगी के लिए dnsmasq चलाता हूं) तो आपको केवल जानकारी दर्ज करनी होगी
Mildred

Red Hat 7 और व्युत्पन्न सिस्टम पर आपको होस्टनाम सेट करने के लिए hostnamectl का उपयोग करना चाहिए। cyberciti.biz/faq/rhel-redhat-centos-7-change-hostname-command/…
Xavy

जवाबों:


42

FQDN सेट करें

मैं डेबियन 7 का उपयोग कर रहा हूं और यही मेरे लिए काम कर रहा है; फर्नांडो रिबेरो को धन्यवाद ।

sudoedit / etc / hostname

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

होस्टनाम सक्रिय करें

sudo hostname -F / etc / hostname

सर्वर में डोमेन नाम और पता जोड़ें

sudoedit / etc / मेजबान

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प्रणाली, लिनक्स का उपयोग करता है /etc/sysconfig/networkफ़ाइल और आप चर सेट करना होगा HOSTNAMEकरने के लिए FQDN, जब आप का उपयोग करें FQDN, linuxअपने आप डोमेन नाम निर्धारित करता है।

उदाहरण के लिए:

HOSTNAME=web.mydomain.com

लेकिन जब आप debian-baseसिस्टम का उपयोग करते हैं, तो आपको /etc/hostnameफ़ाइल को भरना चाहिए FQDN:

web.mydomain.com

नोट: यदि आप domain nameनिश्चित सेट करना चाहते हैं FQDN(पूरी तरह से योग्य डोमेन नाम)

जब आप सेट करते हैं, तो आपको hostname -dदिखाता है domain name


1
धन्यवाद, लेकिन मैं इस धारणा के तहत था कि इन फ़ाइलों में केवल डोमेन भाग के बिना होस्टनाम होना चाहिए। यदि मैं आपको क्या सुझाव देता हूं, तो hostname सीधे fqdn लौटा देगा ( hostnameऔर कोई अंतर नहीं hostname -f)।
मिल्ड्रेड

ओह, मैं यह कहना भूल गया कि आपको hostname web.mydomain.comअपनी फ़ाइलों को कॉन्फ़िगर करने के बाद होस्टनाम को हाथ से सेट करना चाहिए । क्योंकि जब आप अपनी फ़ाइल को कॉन्फ़िगर करते हैं तो मेमोरी परिवर्तन लागू नहीं कर सकती है। (यदि यह उपयोगी था, तो उपयोगी ध्वज को न भूलें)
फारसीगुल्फ़

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.

मैं कहूंगा कि यह पूरी बात का अच्छी तरह से वर्णन करता है।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.