लिनक्स पर / आदि / मेजबानों का प्रारूप (विंडोज से अलग?)


22

इस प्रश्न के नीचे पास्ट /etc/hostsएक लिनक्स (CentOS) और एक विंडोज मशीन से फाइल का एक नमूना है । लिनक्स फ़ाइल में IP पता (जो कि localhost.localdomain localhost है) के बाद दो वर्जित प्रविष्टियाँ हैं और विंडोज में केवल एक ही है। अगर मैं लोकलहोस्ट के बजाय मशीन नाम (एटेस्ट) के लिए विंडोज में मेजबानों की फाइल को एडिट करना चाहता हूं, तो मैं बस लोकलहोस्ट शब्द को उस मशीन के नाम से बदल दूंगा जिसे मैं चाहता हूं। मशीन को एक डोमेन का हिस्सा नहीं होना चाहिए।

एक लिनक्स मशीन में, दो प्रविष्टियाँ localhost.localdomainऔर localhostयह इंगित करने के लिए लगता है कि मुझे एक डोमेन का हिस्सा बनने के लिए मशीन की आवश्यकता होगी। क्या ये सच है?

क्या मैं बस दोनों प्रविष्टियों को संपादित कर सकता हूं etestताकि यह पढ़े:

127.0.0.1       etest etest

या यह आवश्यक है कि मैं एक डोमेन नाम के साथ एक प्रविष्टि स्थानापन्न करूं?

इसके अतिरिक्त, कृपया मुझे बताएं कि /etc/hostsलिनक्स मशीन पर फ़ाइल की दूसरी पंक्ति क्या है।

::1     localhost6.localdomain6 localhost6

hosts लिनक्स मशीन पर फ़ाइल:

# Do not remove the following line, or various programs
# that require network functionality will fail.
127.0.0.1       localhost.localdomain localhost
::1     localhost6.localdomain6 localhost6

hosts एक विंडोज़ मशीन पर फ़ाइल:

# Copyright (c) 1993-1999 Microsoft Corp.
#
# This is a sample HOSTS file used by Microsoft TCP/IP for Windows.
#
# This file contains the mappings of IP addresses to host names. Each
# entry should be kept on an individual line. The IP address should
# be placed in the first column followed by the corresponding host name.
# The IP address and the host name should be separated by at least one
# space.
#
# Additionally, comments (such as these) may be inserted on individual
# lines or following the machine name denoted by a '#' symbol.
#
# For example:
#
#      102.54.94.97     rhino.acme.com          # source server
#       38.25.63.10     x.acme.com              # x client host

127.0.0.1       localhost

मैंने हाल ही में इसी तरह का प्रश्न पोस्ट किया था, लेकिन यह ज्यादा दिलचस्पी को आकर्षित नहीं करता था। unix.stackexchange.com/questions/11844/etc-hosts-for-debian । यह एक बेहतर लिखा है, यद्यपि।
फहीम मीठा

जवाबों:


13

आप हमेशा पहले लोकलहोस्ट को हल करने के लिए 127.0.0.1 एड्रेस चाहते हैं। यदि कोई ऐसा डोमेन है जिसे आप भी उपयोग कर सकते हैं, लेकिन फिर सुनिश्चित करें कि स्थानीयहोस्ट को दूसरे स्थान पर सूचीबद्ध किया गया है। यदि आप अपनी मशीन के लिए उपनाम जोड़ना चाहते हैं जो लूपबैक पते को देखेगा तो आप उन्हें उस पंक्ति में अंतरिक्ष अलग मान के रूप में जोड़ सकते हैं। यहां एक डोमेन निर्दिष्ट करना वैकल्पिक है, लेकिन विकल्पों में से "लोकलहोस्ट" को न हटाएं।


5
इसके अलावा ":: 1" आईपीवी 6 127.0.0.1 (जो कि आईपीवी 4 के लिए है) के बराबर है।
XQYZ

क्या इसका मतलब यह है कि मैं अपने प्रश्न के साथ पोस्ट करने वाले के बजाय इस तरह की रेखा रखना समझदार होगा? मैंने localhost.localdomain लोकलहोस्ट को बरकरार रखते हुए एक अलग अलियास (एटेस्ट माय होस्टनाम) को शामिल किया है। यदि नहीं, तो कृपया मेरी मशीन होस्टनाम को शामिल करने के लिए आदर्श प्रविष्टि के रूप में आपके द्वारा सुझाए गए उदाहरणों का एक उदाहरण पोस्ट करें और होस्ट्स फ़ाइल में लोकलहोस्ट प्रविष्टियाँ हों।
थॉमस

1
127.0.0.1 localhost.localdomain localhost etest
थॉमस

1
@ थोमस: आपका उदाहरण वैसा ही है जैसा कि होना चाहिए। उस के साथ जाओ, और यदि आपको परीक्षण के लिए अधिक उपनाम जोड़ने की आवश्यकता है (उदाहरण के लिए अपाचे में आभासी मेजबान के साथ) तो आप उन्हें लाइन में जोड़ सकते हैं।
कालेब

22

/etc/hostsलिनक्स और विंडोज पर प्रारूप समान है:

IP address        hostname [hostalias]...

जहां कोष्ठक यह इंगित करने का सामान्य तरीका है कि कुछ वैकल्पिक है (वास्तव में उन्हें टाइप न करें) और डॉट्स ( ...) का अर्थ है कि एक से अधिक हो सकते हैं।

आपको अपने होस्ट को किसी डोमेन का हिस्सा नहीं बनाना चाहिए। यह कोशिश करो और देखो। लेकिन .localdomainअगर आपके पास वास्तविक डोमेन नाम नहीं है तो इसका उपयोग करना अच्छा होगा । यह ndotsविकल्प के कारण होस्ट नाम रिज़ॉल्यूशन को थोड़ा तेज़ बना सकता है /etc/resolv.conf

ध्यान दें कि इस अर्थ में, डोमेन का अर्थ है DNS डोमेन (जैसे google.comया stackexchange.com), विंडोज डोमेन या ऐसा कुछ भी नहीं।

रेखा के साथ शुरू ::1करने के लिए है आईपीवी 6::1की तरह है 127.0.0.1नए को संबोधित योजना के तहत। चलाएं ifconfig loऔर आपको यह देखना चाहिए कि इसके दो पते हैं। के साथ शुरू होने वाले प्रवेश पर ध्यान दें inet6

$ ifconfig lo
lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
...

देखें मेजबान (5) आदमी पेज अधिक जानकारी के लिए।


(...) का अर्थ है कि एक से अधिक हो सकते हैं: क्या एक्स्ट्रा रिक्त स्थान या कॉमा या दोनों के साथ सीमांकित हैं?
गाइ

1
रिक्त स्थान। मुझे लगता है कि यह अधिक सही है, यह है hostname [hostalias[,hostalias]*]
मिकेल

6

मैं नहीं बोल सकता कि विंडोज लिनक्स से कैसे भिन्न हो सकता है, लेकिन स्थानीय मशीन की परिभाषा का प्रारूप उन परिणामों को प्रभावित करता है जिन्हें आप 'होस्टनाम' कमांड से प्राप्त करेंगे।

मुझे लगता है कि सबसे अच्छी तरह से काम करता है यह प्रारूप है:

127.0.0.1 etest.mydomain.com etest localhost

मुझे जो महत्वपूर्ण चीज मिली है, वह है FQDN पहले और उपनाम, किसी भी क्रम में, उसके बाद।

यदि आप आईपी पते के बाद नामों को फिर से व्यवस्थित करने के साथ प्रयोग करते हैं और फिर 'hostname -s' (संक्षिप्त नाम) और 'hostname -f' (पूरी तरह से योग्य डोमेन नाम या FQDN) कमांड का उपयोग करते हुए आप देखेंगे कि मेरा क्या मतलब है। यह कुछ इस तरह दिखना चाहिए:

$ hostname -s
etest

$ hostname -f
etest.mydomain.com

'' hostname '' को आपके द्वारा होस्ट के लिए /etc/conf.d/hostname या / etc / hostname में दर्ज किए गए किसी भी नाम को वापस करना चाहिए (फ़ाइल का स्थान वितरण से भिन्न होता है, लेकिन कहीं और / आदि के तहत पाया जाना चाहिए)।

यदि आप उन नामों के क्रम को बदलते हैं जो आपको मिल सकते हैं कि "hostname -f" आपको "स्थानीय होस्ट" या "होस्टनाम: सिस्टम त्रुटि" जैसी प्रतिक्रियाएं देता है। एकमात्र व्यवस्था जो मैंने पाया है कि सही ढंग से काम करता है FQDN पहले डाल रहा है।

मैं हमेशा IPv6 स्थानीय पता पंक्ति (# 1) को उसी तरह सेट करता हूं, अर्थात:

::1 etest.mydomain.com etest localhost

मुझे पता है कि कुछ वितरण IPv6 नाम को IP6-localhost की तरह सेट करते हैं। मैं वास्तव में अभी तक IPv6 का उपयोग नहीं करता हूं, इसलिए इस पर कोई टिप्पणी नहीं कर सकता कि इस पंक्ति के लिए सबसे अच्छी सेटिंग क्या होगी। मैं सिर्फ यह कह सकता हूं कि एक आईपीवी 4 नेटवर्क में यह एक ही नाम के साथ दोनों लाइनें लगाने का काम करता है।


0

दास मेजबानों को फ़ाइल के रूप में रखें

127.0.0.1 localhost

मास्टर होस्ट फ़ाइल को रखें

<private ip> master
<private ip> slave1
<private ip> slave2

100% काम कर रहा है


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