hostname - لعرض أو تعيين اسم المضيف الخاص بالنظام
domainname - لعرض أو تعيين اسم مجال NIS/YP الخاص بالنظام
ypdomainname - لعرض أو تعيين اسم مجال NIS/YP الخاص بالنظام
nisdomainname - لعرض أو تعيين اسم مجال NIS/YP الخاص بالنظام
dnsdomainname - لعرض اسم مجال DNS الخاص بالنظام
الملخص
hostname [-a|--alias] [-d|--domain] [-f|--fqdn|--long] [-A|--all-fqdns] [-i|--ip-address]
[-I|--all-ip-addresses] [-s|--short] [-y|--yp|--nis]
hostname [-b|--boot] [-F|--file filename] [hostname]
hostname [-h|--help] [-V|--version]
domainname [nisdomain] [-F file]
ypdomainname [nisdomain] [-F file]
nisdomainname [nisdomain] [-F file]
dnsdomainname
الوصف
يُستخدم الأمر hostname لعرض اسم DNS الخاص بالنظام، وعرض أو تعيين اسم المضيف الخاص به أو اسم مجال NIS/YP.
الحصول على الاسم
عند استدعاء البرنامج بدون أي وسيطات، فإنه يعرض الأسماء الحالية:
يقوم الأمر hostname بطباعة اسم النظام كما يتم إرجاعه بواسطة الدالة gethostname(2).
يقوم الأمر domainname بطباعة اسم مجال NIS الخاص بالنظام. يستخدم الأمر domainname الدالة gethostname(2)، بينما يستخدم الأمر ypdomainname والأمر nisdomainname الدالة getdomainname(2).
يقوم الأمر dnsdomainname بطباعة الجزء الخاص بالمجال من FQDN (اسم المجال المؤهل بالكامل). يتم إرجاع FQDN الكامل للنظام باستخدام الأمر hostname --fqdn (ولكن راجع التحذيرات في قسم FQDN أدناه).
تعيين الاسم
عند استدعاء الأمر بوسيطة واحدة أو باستخدام الخيار --file، تقوم الأوامر بتعيين اسم المضيف أو اسم مجال NIS/YP. يستخدم الأمر hostname الدالة sethostname(2)، بينما تستخدم جميع الأوامر الثلاثة domainname و ypdomainname و nisdomainname الدالة setdomainname(2). لاحظ أن هذا فعال فقط حتى إعادة التشغيل التالية. قم بتحرير الملف /etc/hostname لإجراء تغيير دائم.
لاحظ أنه يمكن فقط للمستخدم الجذر تغيير الأسماء.
لا يمكن تعيين FQDN أو اسم مجال DNS باستخدام الأمر dnsdomainname (انظر FQDN أدناه).
عادةً ما يتم تعيين اسم المضيف مرة واحدة عند بدء تشغيل النظام في /etc/init.d/hostname.sh (عادةً عن طريق قراءة محتويات ملف يحتوي على اسم المضيف، على سبيل المثال /etc/hostname).
FQDN
FQDN (اسم المجال المؤهل بالكامل) الخاص بالنظام هو الاسم الذي يُرجعه محلل DNS (resolver(3)) لاسم المضيف، مثل ursula.example.com. عادةً ما يكون اسم المضيف متبوعًا باسم مجال DNS (الجزء الذي يأتي بعد النقطة الأولى). يمكنك التحقق من FQDN باستخدام الأمر hostname --fqdn أو اسم المجال باستخدام الأمر dnsdomainname.
لا يمكنك تغيير FQDN باستخدام الأمر hostname أو dnsdomainname.
الطريقة الموصى بها لتعيين FQDN هي جعل اسم المضيف بمثابة اسم مستعار للاسم المؤهل بالكامل باستخدام /etc/hosts أو DNS أو NIS. على سبيل المثال، إذا كان اسم المضيف هو "ursula"، فقد يكون لديك سطر في /etc/hosts يقرأ:
12.0.1.1 ursula.example.com ursula
من الناحية الفنية: الاسم المؤهل بالكامل (FQDN) هو الاسم الذي تُرجعه الدالة `getaddrinfo(3)` لاسم المضيف الذي تُرجعه الدالة `gethostname(2)`. اسم مجال نظام أسماء النطاقات (DNS) هو الجزء الذي يلي النقطة الأولى.
لذلك، يعتمد الأمر على تكوين محلل DNS (عادةً في `/etc/host.conf`) حول كيفية تغيير ذلك. عادةً ما يتم تحليل ملف المضيفين قبل DNS أو NIS، لذلك من الشائع تغيير الاسم المؤهل بالكامل (FQDN) في `/etc/hosts`.
إذا كان لدى الجهاز واجهات شبكة/عناوين متعددة أو يتم استخدامه في بيئة متنقلة، فقد يكون لديه إما أسماء نطاقات/FQDNs متعددة أو لا شيء على الإطلاق. لذلك، تجنب استخدام `hostname --fqdn` و`hostname --domain` و`dnsdomainname`. خيار `hostname --ip-address` يخضع لنفس القيود، لذلك يجب تجنبه أيضًا.
الخيارات
-a، --alias
عرض الاسم المستعار للمضيف (إذا تم استخدامه). هذا الخيار مهمل ويجب عدم استخدامه بعد الآن.
-A، --all-fqdns
يعرض جميع أسماء النطاقات المؤهلة بالكامل (FQDNs) للجهاز. يقوم هذا الخيار بإدراج جميع العناوين الشبكية التي تم تكوينها على جميع واجهات الشبكة، ويترجمها إلى أسماء نطاقات DNS. يتم تخطي العناوين التي لا يمكن ترجمتها (على سبيل المثال، لأنها لا تحتوي على إدخال IP معكوس مناسب). لاحظ أن العناوين المختلفة قد تحل إلى نفس الاسم، لذلك قد يحتوي الإخراج على إدخالات مكررة. لا تفترض أي شيء حول ترتيب الإخراج.
-b، --boot
يتم دائمًا تعيين اسم مضيف؛ هذا يسمح بأن يكون الملف المحدد بواسطة `-F` غير موجود أو فارغًا، وفي هذه الحالة سيتم استخدام اسم المضيف الافتراضي `localhost` إذا لم يتم تعيين أي اسم مضيف بعد.
-d، --domain
عرض اسم مجال DNS. لا تستخدم الأمر `domainname` للحصول على اسم مجال DNS لأنه سيعرض اسم مجال NIS وليس اسم مجال DNS. استخدم `dnsdomainname` بدلاً من ذلك. انظر إلى التحذيرات في قسم الاسم المؤهل بالكامل (FQDN) أعلاه، وتجنب استخدام هذا الخيار.
-f، --fqdn، --long
عرض الاسم المؤهل بالكامل (FQDN). يتكون الاسم المؤهل بالكامل (FQDN) من اسم مضيف قصير واسم مجال DNS. ما لم تكن تستخدم `bind` أو `NIS` للبحث عن المضيف، يمكنك تغيير الاسم المؤهل بالكامل (FQDN) واسم مجال DNS (الذي هو جزء من الاسم المؤهل بالكامل (FQDN)) في ملف `/etc/hosts`. انظر إلى التحذيرات في قسم الاسم المؤهل بالكامل (FQDN) أعلاه واستخدم `hostname --all-fqdns` بدلاً من ذلك حيثما أمكن.
-F، --file filename
اقرأ اسم المضيف من الملف المحدد. يتم تجاهل التعليقات (الأسطر التي تبدأ بـ `\#`).
-i، --ip-address
عرض عنوان (عناوين) الشبكة لاسم المضيف. لاحظ أن هذا يعمل فقط إذا كان يمكن حل اسم المضيف. تجنب استخدام هذا الخيار؛ استخدم `hostname --all-ip-addresses` بدلاً من ذلك.
-I، --all-ip-addresses
عرض جميع عناوين الشبكة للمضيف. يقوم هذا الخيار بإدراج جميع العناوين التي تم تكوينها على جميع واجهات الشبكة. يتم حذف واجهة التكرار وعناوين الربط المحلية لـ IPv6. على عكس الخيار `-i`، لا يعتمد هذا الخيار على تحليل الاسم. لا تفترض أي شيء حول ترتيب الإخراج.
-s، --short
عرض اسم المضيف القصير. هذا هو اسم المضيف الذي يتم قطعه عند النقطة الأولى.
-V, --version
اطبع معلومات الإصدار على المخرج القياسي واخرج بنجاح.
-y, --yp, --nis
اعرض اسم نطاق NIS. إذا تم إعطاء معلمة (أو --file name)، فيمكن للمستخدم الجذر أيضًا تعيين نطاق NIS جديد.
-h, --help
اطبع رسالة استخدام واخرج.
ملاحظات
تُحدَّد عائلات العناوين التي يحاول اسم المضيف استخدامها عند البحث عن اسم النطاق الكامل (FQDN)، والأسماء المستعارة، وعناوين الشبكة الخاصة بالمضيف من خلال تكوين برنامج الحل الخاص بك. على سبيل المثال، على أنظمة GNU Libc، يمكن توجيه برنامج الحل لمحاولة عمليات بحث IPv6 أولاً باستخدام خيار inet6 في /etc/resolv.conf.
الملفات
/etc/hostname تاريخيًا، كان من المفترض أن يحتوي هذا الملف على اسم المضيف فقط وليس اسم النطاق الكامل (FQDN). في الوقت الحاضر، يمكن لمعظم البرامج التعامل مع اسم النطاق الكامل (FQDN) هنا. يتم قراءة هذا الملف في وقت التمهيد بواسطة نصوص تهيئة النظام لتعيين اسم المضيف.
/etc/hosts عادةً، هذا هو المكان الذي يتم فيه تعيين اسم النطاق عن طريق وضع اسم المضيف كاسم مستعار لاسم النطاق الكامل (FQDN).
المؤلفون
بيتر توبياس، <_> بيرند إكينفيلس، <_> (NIS وصفحة الدليل). مايكل ميسكيس، <_>