جدول محتوایی
دستور ifconfig یک ابزار قدیمی است که برای پیکربندی رابط های شبکه در لینوکس استفاده می شود. حتی اگر این ابزار منسوخ شده و با دستور ip جایگزین شده است، ifconfig هنوز اغلب استفاده می شود. پیکربندی رابط های شبکه در سیستم لینوکس شما با ifconfig ممکن است منجر به خطای “ifconfig: command not found” شود.
در این مقاله نحوه رفع خطای دستور “ifconfig: command not found” را با استفاده از چهار روش توضیح می دهیم.
خرید سرور مجازی میکروتیک ایران و سرور مجازی میکروتیک خارج
پیش نیاز ها :
- سرور مجازی لینوکس (در این مقاله از سیستم عامل دبیان 11 استفاده میکنیم)
- دسترسی به ترمینال یا ssh
- دسترسی اکانت root
چگونه ifconfig Command Not Found را رفع کنیم؟
دستور ifconfig بخشی از بسته net-tools است، یک ابزار شبکه لینوکس که به دلیل عدم نگهداری و پشتیبانی IPv6 منسوخ شده است. در حالی که توزیعهای خاصی هنوز با ابزارهای شبکه از پیش نصب شده ارائه میشوند، برخی دیگر این کار را نمیکنند، که میتواند باعث این خطا شود.
مثلا :
این خطا ممکن است به این دلیل رخ دهد که سیستم ابزارهای net ندارد یا دایرکتوری ifconfig به متغیر استاندارد PATH اضافه نشده است.
در بخشهای زیر نحوه رفع مشکل «ifconfig: command not found» را توضیح میدهیم.
روش1: نصب net-tools
ساده ترین راه حل برای حل این مشکل نصب بسته net-tools است. اکثر توزیعهای لینوکس از ابزارهای شبکه پشتیبانی میکنند، اگرچه ممکن است در برخی از آنها از پیش نصب نشده باشد. در این بخش نحوه نصب ابزارهای شبکه در چندین توزیع رایج لینوکس توضیح داده شده است.
توزیعهای مبتنی بر دبیان (اوبونتو، دبیان، لینوکس مینت و غیره)
برای نصب net-tools در توزیع های مبتنی بر Debian مراحل زیر را دنبال کنید:
1. اطلاعات مخزن بسته سیستم را به روز کنید تا مطمئن شوید آخرین نسخه بسته را دریافت می کنید. دستور زیر را اجرا کنید:
sudo apt update
2. Net-Tools را با apt نصب کنید:
sudo apt install net-tools
توزیعهای مبتنی بر RHEL (راکی لینوکس، لینوکس Red Hat Enterprise، فدورا و غیره)
این بخش به تشریح مراحل نصب ابزارهای شبکه در توزیعهای مبتنی بر RHEL میپردازد. با توجه به مدیر بسته ای که استفاده می کنید، dnf یا yum، دستورالعمل ها را دنبال کنید:
راکی لینوکس و RHEL:
1. اطلاعات مخزن بسته سیستم را آپدیت کنید:
sudo yum update
2. نصب ابزارهای شبکه:
sudo yum install net-tools
Fedora:
1. اطلاعات مخزن بسته سیستم را با دستور زیر به روز کنید:
sudo dnf update
2. دستور زیر را برای نصب net-tools اجرا کنید:
sudo dnf install net-tools
توزیعهای مبتنی بر Arch (Arch Linux، Manjaro و غیره)
مراحل زیر نحوه نصب net-tools را در توزیع های لینوکس مبتنی بر Arch نشان می دهد:
1. اطلاعات مخزن بسته سیستم را آپدیت کنید:
sudo pacman -Sy
2. نصب net-tools :
sudo pacman -S net-tools
تأیید نصب
پس از نصب net-tools بر روی سیستم خود، ifconfig را برای تایید نصب اجرا کنید:
ifconfig
اگر سیستم همچنان همان خطای قبل از نصب را چاپ می کند و ifconfig را حتی پس از نصب net-tools اجرا نمی کند، به بخش های زیر بروید و روش دیگری را امتحان کنید.
روش 2: استفاده از مسیر Full Path استفاده کنید
اگر با نصب net-tools مشکل حل نشد، دستور را با مسیر کامل اجرا کنید. گاهی اوقات، ifconfig ممکن است در متغیر محیط PATH کاربر نباشد.
1. برای یافتن مسیر کامل دستور ifconfig از دستور which استفاده کنید:
which ifconfig
2. ifconfig را به عنوان یک کاربر معمولی اجرا کنید. دستور را با مسیر کاملی که در مرحله قبل به دست آوردید، آماده کنید. به عنوان مثال:
usr/sbin/ifconfig
روش 3: متغیر System PATH را به روز کنید
مشکل “ifconfig: command not found” اغلب زمانی رخ می دهد که سیستم ifconfig را در /sbin/ نصب می کند، که بخشی از متغیر استاندارد PATH کاربر نیست. به طور پیشفرض، کاربران عادی نمیتوانند ifconfig را فراخوانی کنند، مگر اینکه هنگام اجرای دستور از مسیر کامل استفاده کنند یا از sudo استفاده کنند.
با این حال، استفاده از sudo یا کل مسیر برای کارکرد دستور در دراز مدت عملی نیست. هنگامی که دستور ifconfig را چندین بار اجرا می کنید، بهتر است پوشه /sbin/ را به طور دائم به متغیر PATH اضافه کنید.
اگر در سیستم خود دارای حقوق ریشه هستید، مراحل زیر را دنبال کنید تا دستور ifconfig را به PATH اضافه کنید:
1. فایل .profile را در Vim، nano یا ویرایشگر متن دیگری ویرایش کنید.
sudo nano /etc/profile
۲- به انتهای فایل رفته و خط زیر را در آن قرار دهید:
export PATH=$PATH: /sbin/
3. فایل را ذخیره کرده و ببندید.
4. برای اعمال تغییرات، سیستم را ریبوت کنید. هر تغییری را ذخیره کنید، برنامه های در حال اجرا را ببندید و اجرا کنید:
sudo reboot
5. ifconfig را اجرا کنید تا بررسی کنید که آیا کار می کند یا خیر:
ifconfig
روش 4: اجرای ifconfig با sudo یا root
راه دیگر برای اجرای ifconfig بدون افزودن دستور به PATH استفاده از sudo یا سوئیچ به روت با su است. اگر فقط یک بار نیاز دارید ifconfig را اجرا کنید، به جای su از sudo استفاده کنید زیرا گزینه اول یک گزینه امن تر است:
sudo ifconfig
استفاده از دستور ip به جای ifconfig
دستور ifconfig اگر چه موثر است اما منسوخ شده است، و اکثر سیستم ها به عنوان ابزار اصلی برای پیکربندی شبکه، به سمت IP حرکت می کنند. ابزار ip به طور پیش فرض روی اکثر توزیع ها نصب می شود.
برای مشاهده توابع اصلی دستور را بدون هیچ گزینه ای اجرا کنید:
ip
دستور ip لیست رابط های شبکه را با آرگومان های نمایش لینک چاپ می کند:
ip link show
نتیجه گیری
پس از خواندن این آموزش، می دانید که چگونه خطای دستور ifconfig: command not found در لینوکس را برطرف کنید. اگر چه این دستور منسوخ شده است، اما ifconfig هنوز در توزیع های مختلف لینوکس استفاده می شود.