در عرصهی فناوری اطلاعات و بهخصوص در دنیای شبکهها و سرورها، تعیین هویت و تمایز بین ابزارهای مختلف از اهمیت ویژهای برخوردار است. یکی از مهمترین عناصر در این مسیر، نام هاست یا "Hostname" است که نقش کلیدی در شناسایی دستگاهها در شبکه دارد. اگرچه نام هاست معمولاً در زمان نصب سیستم عامل لینوکس تنظیم میشود، اما شرایطی پیش میآید که نیاز به تغییر آن داریم. این تغییر میتواند به دلایل مختلفی از جمله تعارض نام در شبکه، تغییر ساختار شبکه یا بهروزرسانی استانداردهای نامگذاری انجام شود.
در این مقاله، ما به بررسی دقیق دلایل نیاز به تغییر نام هاست در سیستمهای لینوکس و روشهای مختلف انجام این کار برای توزیعهای متنوعی چون CentOS، Ubuntu، Debian و Red Hat Enterprise Linux (RHEL) خواهیم پرداخت. ما روشهای دائمی که تغییرات حتی پس از راهاندازی مجدد سیستم حفظ میشوند و همچنین روشهای موقت که بدون نیاز به ری استارت قابل اجرا هستند را معرفی مینماییم.
چرا باید نام هاست را در لینوکس تغییر دهیم؟
تغییر نام هاست در لینوکس ممکن است به دلایل متعددی انجام شود. از جمله این دلایل میتوان به جلوگیری از تداخل نامها در شبکه، نیاز به رعایت استانداردهای جدید نامگذاری در یک سازمان، یا سادهسازی مدیریت شبکه اشاره کرد. تغییر نام هاست میتواند به بهبود شفافیت در شناسایی دستگاهها و افزایش امنیت شبکه کمک کند.
هاست لینوکس چیست؟ بررسی مزایا، معایب و کاربردهای هاست Linux
نحوه تغییر اسم هاست در لینوکس به طور دائم
در این بخش نحوه تغییر اسم هاست در لینوکس به طور دائم در سرورهای مجازی لینوکس را خواهیم آموخت.
روش اول: تغییر اسم هاست لینوکس با دستور hostnamectl
دستور systemd در اکثر توزیعهای لینوکس وجود دارد. با استفاده از این دستور و hostnamectl به راحتی میتوانید اسم هاست پیشفرض لینوکس خود را تغییر دهید. این روش بر روی هر نسخه از لینوکس که از systemd استفاده میکند که اکثر توزیعهای لینوکس است، کار میکند که شامل Ubuntu، Debian، Redhat، CentOS، OpenSUSE، Fedora و Arch Linux است.
برای انجام این کار:
-
ترمینال را باز کنید.
-
از طریق SSH وارد سرور لینوکس خود شوید.
-
اگر سیستم شما systemd ندارد میتوانید از دستور زیر برای نصب آن استفاده کنید. دستور زیر را تایپ کنید و Enter را فشار دهید:
apt-get install systemd
-
پس از اتمام نصب، دستور زیر را برای مشاهده اسم فعلی هاست لینوکس خود تایپ کرده و سپس Enter را فشار دهید:
hostnamectl
-
خروجی باید مشابه کد زیر باشد:
Static hostname: AzarOnline
Icon name: computer-vm
Chassis: vm
Machine ID: 45598cbdb6ee462e8696166b520fe788
Boot ID: 99526e56aeea45c2a0f3b2ffaaffe9d9
Virtualization: openvz
Operating System: Ubuntu 22.04.4 LTS
Kernel: Linux 5.15.0
Architecture: x86-64
-
در این خروجی، اسم هاست لینوکس شما در جلوی عبارت Static hostname قابل مشاهده است. برای تغییر دائمی آن، دستور زیر را به همراه اسم جدید هاست لینوکس خود وارد کرده و Enter را بزنید:
hostnamectl set-hostname NewName
توجه داشته باشید این دستور تمامی نامهای static ، transient و pretty را یکباره تغییر میدهد. اگر میخواهید یک نوع نام را عوض کنید میتوانید از فلگهای –static، --transient و –pretty استفاده کنید
-
دستور بالا خروجی ندارد؛ بنابراین میتوانید برای اطمینان از تغییر نام هاست خود دستور زیر را اجرا کنید و نام هاست جدید خود را مشاهده کنید:
hostnamectl
خروجی:
Static hostname: NewName
Icon name: computer-vm
Chassis: vm
Machine ID: 45598cbdb6ee462e8696166b520fe788
Boot ID: 99526e56aeea45c2a0f3b2ffaaffe9d9
Virtualization: openvz
Operating System: Ubuntu 22.04.4 LTS
Kernel: Linux 5.15.0
Architecture: x86-64
در این خروجی اسم لینوکس شما به NewName تغییر کرده است.
اگر نام سرور شما تغییر نکرده دستور زیر را برای ری استارت systemd-hostnamed اجرا کنید:
sudo systemctl restart systemd-hostnamed
روش دوم: استفاده از Network Manager Text User Interface (nmtui)
رابط کاربری متنی مدیر شبکه (nmtui) همانطور که از نام آن پیداست یک رابط کاربری متنی است که به شما امکان مشاهده و پیکربندی اطلاعات شبکه و نام هاست شبکه در یک پنجره ترمینال را میدهد. این ابزار در توزیعهای مختلف لینوکس از جمله CentOS و RHEL موجود است.
برای تغییر اسم هاست لینوکس با استفاده از nmtui مراحل زیر را اجرا کنید:
-
ترمینال را باز کنید و از طریق SSH به سرور خود متصل شوید.
-
با وارد کردن دستور زیر و زدن Enter بسته NetworkManager-tui را نصب کنید:
sudo yum install NetworkManager-tui
در Redhat و سایر توزیعهای لینوکس مبتنی بر RH ، از دستور زیر استفاده کنید:
sudo dnf install NetworkManager-tui
-
پس از اجرای این دستور، پکیج اصلی و دیپندنسیهای مربوطه دانلود میشوند. y را تایپ کرده و Enter را فشار دهید تا مراحل نصب شروع شود.
-
هنگامی که پکیج nmtui با موفقیت نصب شود پیغام زیر ظاهر میشود:
-
در ادامه دستور زیر را برای بررسی وضعیت شبکه تایپ و Enter را بزنید:
service NetworkManager status
-
برای راه اندازی سرویس nmtui، دستور زیر را تایپ کرده و Enter را بزنید:
service NetworkManager start
-
سپس این دستور را تایپ کرده و روی Enter کلیک کنید:
sudo nmtui
-
در پنجره NetworkManager TUI، گزینه "Set system hostname" را انتخاب کرده و Enter را فشار دهید.
-
اسم هاست جدید خود را وارد کنید و در نهایت OK را بزنید.
شما با موفقیت اسم هاست لینوکس خود را تغییر دادید.
-
برای اطمینان از تغییر نام، دستور زیر را برای نمایش نام هاست خود اجرا کنید:
hostname
اگر نام سرور شما تغییر نکرده دستور زیر را برای ری استارت systemd-hostnamed اجرا کنید:
sudo systemctl restart systemd-hostnamed
روش سوم: ویرایش فایلهای پیکربندی
روش بعدی برای تغیر اسم هاست در لینوکس، تغییر فایلهای پیکربندی /etc/hostname و /etc/hosts است.
برای انجام این کار مراحل زیر را دنبال کنید:
-
ترمینال را باز کنید.
-
فایل /etc/hostname را با ویرایشگری مانند vi باز کنید و نام هاست قدیمی را با نام جدید جایگزین کنید:
vi /etc/hostname
AzarOnline
-
در مرحله بعد باید اسم هاست لینوکس خود را در فایل /etc/hosts نیز تغییر دهید تا نام سرور شما در شبکه نیز ثبت شود. برای انجام این کار با ویرایشگری مانند vi وارد این فایل شوید:
# vi /etc/hosts
127.0.0.1 hostinger
در این مرحله، بهروزرسانی رکوردها در فایلهای پیکربندی به پایان رسید. برای اعمال تغییرات جدید، باید فایل پیکربندی ابری را ویرایش کنید.
نکته: اگر فایل پیکربندی ابری در سیستم شما موجود نیست، میتوانید با خیال راحت از این مراحل صرف نظر کنید.
برای انجام این کار:
-
با قرار دادن این دستور در ترمینال و فشار دادن Enter ، فایل پیکربندی ابری را باز کنید:
sudo vim /etc/cloud/cloud.cfg
-
مقدار عبارت preserve_hostname را به true تغییر دهید.
preserve_hostname: true
-
لینوکس خود را مجدداً راه اندازی کنید و وارد ترمینال شوید. برای مشاهده اسم هاست لینوکس و اطمینان از تغییر نام دستور زیر را وارد کنید.
hostname
روش چهارم: استفاده از Network Manager CLI (nmcli)
روش بعدی استفاده از ابزار Network Manager Command Line Interface (nmcli) برای تغییر نام هاست لینوکس است. Nmcui با برخی توزیعها از جمله RedHat و CentOS به صورت خودکار نصب میشود.
برای انجام این کار مراحل زیر را دنبال کنید:
-
وارد ترمینال لینوکس شوید و برای نصب nmcli دستور زیر را اجرا کنید:
sudo apt install network-manager
-
پس از نصب این ابزار دستور زیر را برای نمایش نام هاست خود اجرا کنید:
nmcli general hostname
-
برای تغییر اسم هاست لینوکس خود، نام جدید خود را در دستور زیر جاگذاری و را اجرا کنید:
sudo nmcli general hostname NewName
در نهایت اسم سرور شما فوراً تغییر خواهد کرد و نیازی به راه اندازی مجدد نیست.
-
برای اطمینان از تغییر نام، دستور زیر را برای نمایش نام هاست خود اجرا کنید:
hostname
اگر نام سرور شما تغییر نکرده دستور زیر را برای ری استارت systemd-hostnamed اجرا کنید:
sudo systemctl restart systemd-hostnamed
روش پنجم: تنظیمات GNOME نسخه دسکتاپ
اگر از محیط دسکتاپ گنوم در اوبونتو، فدورا یا هر نسخه دیگری از لینوکس استفاده میکنید، میتوانید اسم هاست را در تنظیمات خود به راحتی تغییر دهید.
برای انجام این کار مراحل زیر را دنبال کنید:
-
وارد Settings لینوکس خود شوید.
-
گزینه About را انتخاب کنید.
-
در قسمت Device Name نام دستگاه خود را مشاهده خواهید کرد.
-
به راحتی روی دکمه Device Name کلیک کنید و نام دستگاه خود را تغییر دهید.
با انجام این کار نام دستگاه شما فوراً تغییر خواهد کرد.
نحوه تغییر اسم هاست لینوکس بدون راه اندازی مجدد
در ادامه روشهایی برای تغییر اسم هاست لینوکس خود بدون نیاز به راه اندازی مجدد را بررسی خواهیم کرد. دقت داشته باشید تغییر نام با این روش دائمی نبوده و پس از راه اندازی مجدد تغییرات به حالت قبل باز میگردند.
این روش زمانی کاربردی است که شما نیازمند تغییر موقتی اسم هاست لینوکس خود هستید. سینتکس اصلی این دستور به صورت زیر است:
hostname [new_host_name]
برای تغییر موقتی اسم هاست لینوکس خود مراحل زیر را دنبال کنید:
-
وارد ترمینال شوید و کامند hostname را به همراه اسم جدید هاست لینوکس خود وارد کنید و Enter بزنید:
hostname NewName
-
سپس برای مشاهده نام جدید سرور خود دستور زیر را اجرا کنید:
hostname
خروجی این دستور اسم هاست به روز شده را نمایش میدهد.
اگر نام سرور شما تغییر نکرده دستور زیر را برای ری استارت systemd-hostnamed اجرا کنید:
sudo systemctl restart systemd-hostnamed
جمع بندی
نام هاست در لینوکس، نقش کلیدی در شناسایی و مدیریت سرورها در شبکه ایفا میکند. این نام به عنوان هویت دیجیتالی سرور، امکان تعامل و ارتباط مؤثر با سایر دستگاهها و سرویسها را فراهم میآورد. در دنیای لینوکس، ابزارها و دستورات متنوعی وجود دارند که به کاربران امکان میدهند تا نام هاست خود را متناسب با نیازهای خاص خود تنظیم و تغییر دهند. در این مقاله، شش روش کاربردی برای تغییر نام هاست در لینوکس را معرفی میکنیم:
-
اجرای دستور hostnamectl ، با استفاده از nmtui ، ویرایش فایل پیکربندی لینوکس، nmcli، بخش تنظیمات برای تغییر نام میزبان به طور دائم.
-
با استفاده از دستور hostname [new_host_name] برای تغییر نام میزبان به طور موقت و بدون راه اندازی مجدد سیستم.