شما برای مطالعه این مقاله فقط 5 دقیقه وقت نیاز دارید

ifconfig-not-found
دسته بندی : آموزش لینوکس

ارور ifconfig: command not found در لینوکس: ۵ روش حل خطا

5/5 - (1 امتیاز)

دستور ifconfig یکی از ابزارهای قدیمی برای پیکربندی و مدیریت رابط های شبکه در لینوکس است ولی اگر موقع اجرای دستورات ifconfig با ارور ifconfig: command not found در لینوکس مواجه شدید، احتمالاً با مسائلی از جمله نصب نبودن یا نصب ناقص ifconfig و قرار نداشتن فایل باینری دستور ifconfig در PATH روبرو هستید.

اولین کاری که باید برای حل خطای عدم شناسایی ifconfig انجام دهید این است که بررسی کنید ifconfig در سیستم شما به درستی نصب شده است یا نه. اگر مطمئن شدید که این ابزار در سیستم نصب است، می توانید راهکارهای دیگر مثل آپدیت متغیر PATH و اجرای ifconfig با sudo و در نهایت استفاده از ابزارهای جایگزین مثل ip، این مشکل را برطرف کنید.

دلایل بروز ارور ifconfig: command not found در لینوکس

  • نصب نبودن بسته net-tools
  • حذف یا پاک شدن ناخواسته پکیج net-tools
  • قرار نداشتن مسیر دسترسی به دستور ifconfig در متغیر PATH
  • محدود بودن سطح دسترسی برای اجرای دستورات
  • قدیمی یا ناسازگار بودن نسخه توزیع لینوکس

اگر به دلیل خطاهایی مثل ifconfig: command not found در مدیریت سرورهای لینوکسی خود به طور مداوم دچار مشکل می‌شوید، خرید سرور مجازی لینوکس با پشتیبانی فنی متخصص می‌تواند از این دردسرها جلوگیری کند، چرا که این سرورها اغلب بسته های موردنیاز را به صورت نصب شده دارند و نیاز به تنظیمات پیچیده توسط کاربر را به حداقل می رسانند.

پیش نیازهای برطرف کردن خطای پیدا نشدن دستور ifconfig در لینوکس

  • سیستم یا سرور مجهز به لینوکس
  • دسترسی به ترمینال
  • یک کاربر با امتیازات ریشه

راهکارهای حل خطای ifconfig not found

  • نصب پکیج net-tools
  • تعریف مسیر فایل اجرایی ifconfig در متغیر PATH
  • اجرای دستور ifconfig با sudo
  • اجرای ifconfig از طریق مسیر فایل اجرایی
  • استفاده از ابزارهای جایگزین ifconfig مثل ip

۱. از نصب بودن ifconfig در سیستم لینوکس خود مطمئن شوید.

دستور ifconfig بخشی از بسته net-tools است که به طور پیش فرض در اکثر توزیع های لینوکس نصب است. 

پس بهتر است قدم اول را با بررسی وضعیت نصب دستور ifconfig بردارید.

برای این کار می توانید از دو دستور زیر کمک بگیرید:

which ifconfig

whereis ifconfig

اگر خروجی این دستورات حاوی مسیر نصب ifconfig بود، یعنی سیستم شما مجهز به این ابزار است و منشا مشکل اجرا نشدن ifconfig به مسائل دیگر مربوط می شود.

ولی اگر با بررسی خروجی این دستورات متوجه شدید که سیستم شما دارای ابزار ifconfig نیست، باید نسبت به نصب آن اقدام کنید.

دستور نصب ifconfig در توزیع های مبتنی بر دبیان مثل اوبونتو

sudo apt install net-tools

دستور نصب ifconfig در توزیع های مبتنی بر redhat مثل centos و فدورا

sudo yum install net-tools

یا

sudo dnf install net-tools

دستور نصب ifconfig در توزیع های مبتنی بر آرچ مثل آرچ لینوکس و مانجارو

sudo pacman -S net-tools

بعد از اجرای دستور نصب، بهتر است با دستور زیر از نصب موفقیت آمیز ifconfig مطمئن شوید:

ifconfig

اگر با اجرای دستور بالا، اطلاعات مربوط به اینترفیس های شبکه را دیدید، یعنی این ابزار به درستی روی سیستم نصب شده است و آماده استفاده است.خروجی دستور ifconfig بعد از برطرف کردن ارور ifconfig: command not found در لینوکس

البته، این امکان هم وجود دارد که ifconfig روی سیستم نصب باشد ولی باز هم قادر به استفاده از آن نباشید و همچنان با خطای ifconfig: command not found مواجه شوید. در اینگونه مواقع، حتماً باید راهکارهای بعدی را نیز امتحان کنید.

۲. فایل باینری ifconfig را به متغیر PATH اضافه کنید.

متغیر محیطی path در لینوکس یک لیست از مسیر ها یا دایرکتوری های که برای اجرای دستورات لینوکسی موردنیاز هستند را نگهداری می کند. در واقع، فایل اجرایی مربوط به دستورات در PATH قرار دارد و سیستم برای اجرای دستورات به این متغیر مراجعه می کند.

حالا اگر فایل اجرایی ifconfig در محلی نصب شده باشد که مسیر آن در متغیر PATH قرار ندارد، موقع اجرای  ifconfig به مشکل خواهید خورد.

کلیک کنید  جلوگیری از حذف تصادفی فایل ها در لینوکس با دستور chattr

ابتدا باید با اجرای یکی از دو دستور زیر، از مسیر نصب ifconfig مطلع شوید:

which ifconfig

whereis ifconfig

اگر با خروجی مثل sbin/ifconfig/ مواجه شدید، پس باید فولدر sbin را به PATH اضافه کنید که برای این کار دو راه دارید:

* توجه داشته باشید که برای اجرای این عملیات باید از دسترسی و مجوز روت برخوردار باشید.

اضافه کردن مسیر به PATH به صورت موقت 

اگر فقط در جلسه فعلی به این تغییر نیاز دارد و می خواهید به طور موقت این مشکل را حل کنید که کمی غیر منطقی است! کافیست دستور زیر را اجرا کنید:

export PATH=$PATH:/sbin

اضافه کردن مسیر به PATH به صورت دائمی

اگر نمی خواهید این تغییر موقت باشد و با بستن و باز کردن مجدد ترمینال همچنان با این مشکل مواجه باشید، کافیست مراحل زیر را طی کنید:

  • با دستور زیر، فایل profile را باز کنید:
sudo nano /etc/profile
  • دستور زیر را به انتهای آن اضافه کنید:
export PATH=$PATH: /sbin/
  • با فشردن کلید ترکیب CTRL + X، این فایل را ذخیره کنید و ویرایشگر را ببندید.
  • سیستم خود را ریستارت کنید تا این تغییرات اعمال شوند.
  • سپس با اجرای دستور زیر، عملکرد ifconfig را چک کنید.
ifconfig

خروجی دستور ifconfigاگر باز هم با خطای ifconfig: command not found در لینوکس مواجه شدید، با راهکار بعدی ادامه دهید.

۳. دستور ifconfig را به عنوان کاربر روت یا sudo اجرا کنید.

به طور کلی، دستور ifconfig برای مشاهده اطلاعات شبکه استفاده می شود و نیازی به دسترسی روت ندارد. اما اگر بخواهید با استفاده از این دستور، تغییراتی را در تنظیمات شبکه ایجاد کنید، نیاز به دسترسی روت یا sudo خواهید داشت.

پس بسته به کاری که می خواهید انجام دهید، بهتر است sudo را هم به ابتدای دستور اضافه کنید تا ببینید همچنان با خطا مواجه می شوید یا نه.

به عنوان مثال اگر می خواهید رابط eth0 را غیرفعال کنید، دستور ifconfig را به صورت زیر اجرا کنید:

sudo ifconfig eth0 down

۴. دستور ifconfig را از طریق مسیر آن اجرا کنید.

اگر با امتحان کردن روش های بالا، باز هم به نتیجه نرسیده اید، بهتر است ایده اجرای دستور با مسیر را امتحان کنید. 

در واقع، اگر با اضافه کردن مسیر فایل اجرایی به path همچنان با ارور ifconfig: command not found در لینوکس مواجه هستید، بهتر است به جای اکتفا به path، مسیر نصب ifconfig را پیدا کنید و دستور را مستقیماً از طریق آن اجرا کنید.

  • پس با استفاده از دستور زیر مسیر دقیق ifconfig را پیدا کنید:
which ifconfig
  • سپس مسیری که در خروجی این دستور می بینید را یادداشت یا کپی کنید.
  • این بار به جای ifconfig از مسیر آن مثلاً sbin/ifconfig/ برای اجرای دستور استفاده کنید.
/sbin/ifconfig

sudo /sbin/ifconfig eth0 up

۵. از ابزارهای جایگزین ifconfig استفاده کنید.

در گذشته ifconfig جزو ابزارهای پیش فرض سیستم های لینوکس بود و اصلاً نیازی به نصب آن نبود ولی اکنون در اکثر توزیع های مدرن لینوکس خبری از ifconfig نیست چون جزو ابزارهای منسوخ شده است. 

به همین خاطر اگر نمی توانید از ifconfig استفاده کنید، نیازی به نگرانی نیست چون ابزارهای جدیدتر و آپدیت تری وجود دارند که می توانند جایگزین فوق العاده ای برای این ابزار باشند.

دستور ip از پکیج iproute2 یکی از این ابزارها است که در توزیع های مدرن لینوکس هم به طور پیش فرض نصب و آماده استفاده است. این دستور از لحاظ انعطاف پذیری و پشتیبانی از انواع قابلیت ها و ویژگی های جدید شبکه چند قدم از ifconfig جلوتر است.

البته ابزارهای دیگری مثل nmcli ،ethtool و ss هم گزینه های خوبی برای انجام عملیات مربوط به مدیریت و پیکربندی تنظیمات شبکه هستند.

سخن آخر

ارور ifconfig: command not found در لینوکس می تواند به خاطر دلایل مثل نصب نبودن net-tools، تعریف نشدن مسیر ifconfig در path و … رخ دهد که با نصب net-tools و تعریف آن در path می توانید مشکل را حل کنید. اگر باز هم نتوانستید این مشکل را از سر راه خود بردارید، می توانید از ابزارهای جایگزین آن مثل ip و nmcli استفاده کنید. 

مطالب مشابهی که شاید علاقمند باشید

من زهرا پیرجانی دانشجوی رشته نرم افزار هستم. علاقه ای که به یادگیری مطالب جدید دارم باعث شد که انگیزم برای فعالیت در حوزه تولیدمحتوا بیشتر شود. تمام تلاشم این است که با درک کامل موضوع، محتوایی ساده و کامل تهیه کنم که برای همه علاقمندان مفید و کاربردی باشد. یادگیری مطالب جدید و آموزش اونها به بقیه، بهترین کاری هست که می توانم برای رشد خودم و همچنین کمک به رشد علاقمندان به مباحث مورنظر انجام بدم.

دیدگاه های شما

برای دریافت این مقاله لطفا ایمیلتان را وارد کنید

می توانید مقاله را دانلود کنید یا پرینت بگیرید