راهنمای استفاده از دستور ifdown در اوبونتو
دستور ifdown در اوبونتو، مخفف interface down است و همانطورکه از اسم آن هم مشخص است، این دستور برای غیرفعال کردن رابط شبکه موردنظر استفاده می شود.
اگر برای پیکربندی مجدد شبکه، رفع مشکلات شبکه، مدیریت مصرف انرژی یا هر دلیل دیگری قصد قطع اتصال رابط شبکه موردنظر را دارید، می توانید از دستور ifdown کمک بگیرید که البته اگر بعداً از این تصمیم خود منصرف شدید، دستور مکمل آن یعنی ifup، آماده فعال کردن رابط موردنظر شماست.
اگر در شبکه خود به یک سرور لینوکس حرفه ای نیاز دارید تا به خوبی از عهده اجرای انواع عملیات مدیریتی بربیاید، می توانید از صفحه خرید سرور مجازی لینوکس دیدن کنید و با پرداخت یک هزینه مقرون به صرفه، صاحب سرور ایده آل خود شوید.
پیش نیازهای استفاده از دستور ifdown در اوبونتو
- سیستم یا سرور لینوکس اوبونتو
- دسترسی به ترمینال
- یک کاربر با امتیازات sudo
- نصب بودن دستور ifdown
با اینکه دستور ifdown به طور پیش فرض در اکثر نسخه های اوبونتو نصب است ولی قبل استفاده از این دستور ابتدا باید از نصب بودن آن در سیستم خود مطمئن شوید.
برای این کار می توانید از دستور زیر کمک بگیرید:
which ifdown
اگر خروجی این دستور شامل مسیر کامل دستور ifdown بود، پس یعنی این دستور در اوبونتوی شما نصب است. در غیر این صورت، اگر با هیچ نتیجه ای روبرو نشدید، باید برای نصب ifdown در سیستم خود دست به کار شوید.
نصب ifdown در لینوکس اوبونتو
ابتدا ریپازیتوری سیستم را آپدیت و آپگرید کنید:
sudo apt update
sudo apt upgrade
سپس دستور نصب ifdown در اوبونتو را اجرا کنید:
sudo apt install ifupdown
این دستور بسته ifupdown که شامل دستورات ifdown و ifup است را نصب می کند.
سینتکس و آپشن های دستور ifdown در لینوکس
سینتکس پایه این دستور به صورت زیر است:
ifdown [options] [interface]
اگر دستور ifdown را بدون آپشن اجرا کنید، صرفاً interface را غیرفعال می کند و هیچ خروجی هم از این پروسه ارائه نمی دهد.
اما با اضافه کردن آپشن های مختلف به این دستور می توانید رفتار آن را سفارشی سازی کنید که البته استفاده از آنها کاملاً اختیاری است.
آپشن های مهم دستور ifdown
آپشن | کاربرد |
a- یا all– | غیرفعال سازی تمام رابط های شبکه |
n- یا no-act– | شبیه سازی عملیات غیرفعال سازی رابط شبکه بدون اجرای واقعی |
i- یا interfaces– | غیر فعال سازی رابط شبکه بر اساس فایل پیکربندی موردنظر (به جای فایل موجود در etc/network/interfaces/) |
state-dir– | تعیین دایرکتوری موردنظر برای ذخیره فایل های وضعیت |
no-scripts– | نادیده گرفتن اسکریپت های مرتبط با رابط شبکه موقع غیرفعال سازی |
force– | غیرفعال سازی اجباری رابط شبکه موردنظر |
ignore-errors– | نادیده گرفتن ارورها |
X- یا exclude– | نادیده گرفتن رابط های شبکه موردنظر موقع غیرفعال سازی |
v- یا verbose– | نمایش اطلاعات بیشتر در مورد عملیات |
اگر می خواهید به اطلاعات بیشتری در مورد آپشن های ifdown و نحوه استفاده از آنها دست پیدا کنید، می توانید از دو دستور زیر استفاده کنید:
ifdown -h
man ifdown
مثال های کاربردی از دستور ifdown در ابونتو
با اینکه تنها هدف ifdown، غیرفعال سازی رابط های شبکه است ولی با استفاده از آرگومان های مختلف می توان این کار را به شکل های مختلف انجام داد که در این بخش به بررسی آنها می پردازیم:
غیرفعال سازی تمام رابط های شبکه فعال
sudo ifdown -a
این دستور بدون خروجی است و اگر می خواهید از جزئیات پروسه غیرفعال سازی رابط های شبکه باخبر شوید، آپشن v را هم به دستور ifdown اضافه کنید:
sudo ifdown -av
برای تایید غیرفعال بودن رابط های شبکه می توانید دستور ping را اجرا کنید:
ping google.com
بدون خروجی بودن این دستور نشاندهنده این است که عملیات غیرفعال سازی رابط های شبکه را با موفقیت پشت سر گذاشته اید.
غیرفعال سازی رابط شبکه موردنظر
اگر اسم رابط شبکه موردنظر را می دانید که کارتان خیلی راحت تر است. کافیست اسم آن را در دستور زیر لحاظ کنید:
sudo ifdown eth0
اگر اسم رابط های شبکه را نمی دانید، می تواند از دستور ip یا ifconfig کمک بگیرید:
ip link show
ifconfig -a
هر دو دستور، اطلاعات مربوط به رابط های شبکه فعال را به شما نشان می دهند.
اگر بعد از غیرفعال سازی رابط شبکه موردنظر می خواهید وضعیت آن را بررسی کنید، می توانید از دستور زیر استفاده کنید:
ifconfig eth0
شبیه سازی عملیات غیرفعال سازی شبکه
اگر می خواهید رابط شبکه مورد نظر را به صورت آزمایشی غیرفعال کنید تا بدون اعمال تغییر در تنظیمات شبکه، فقط تاثیر آن را بررسی کنید، می توانید از آپشن no-act– استفاده کنید.
sudo ifdown --no-act eth0
غیرفعال سازی اجباری رابط شبکه موردنظر
اگر به طور جدی قصد غیرفعال سازی رابط موردنظر را دارید و اصلاً فرقی نمی کند که این رابط از قبل غیرفعال است یا کلاً پیکربندی نشده است، کافیست آپشن force را به دستور اضافه کنید:
sudo ifdown --force eth0
غیرفعال سازی تمام رابط های شبکه به جز یک رابط خاص
برای این کار کافیست آپشن a و exclude را در یک دستور به کار ببرید و اسم رابط موردنظر را برای آپشن exclude لحاظ کنید:
sudo ifdown -a --exclude=eth0
غیرفعال سازی رابط شبکه بدون اجرای اسکریپ ها
اگر صرفاً فقط می خواهید رابط شبکه موردنظر غیرفعال شود اما اسکریپت های پیش فرضی که ممکن است در این فرآیند اجرا شوند، نادیده گرفته شوند، کافیست آپشن no-scripts– را به دستور ifdown اضافه کنید.
sudo ifdown --no-scripts eth0
این آپشن برای تست و اشکال زدایی مشکلات شبکه و صرفه جویی در زمان بسیار مفید است.
غیرفعال سازی رابط شبکه با استفاده از یک فایل پیکربندی خاص
اگر می خواهید تنظیمات شبکه را از یک فایل دیگر (به جز etc/network/interfaces/) بارگذاری کنید، می توانید آن فایل را با استفاده از آپشن i در دستور ifdown لحاظ کنید:
sudo ifdown -i /etc/network/my_network_config eth1
این آپشن به شما امکان می دهد که به راحتی با فایل های پیکربندی مختلف کار کنید و تنظیمات جداگانه را برای عملیات غیرفعال سازی رابط شبکه امتحان کنید.
تعیین مسیر ذخیره سازی فایل های وضعیت
دستورات ifup و ifdown از فایل های وضعیت برای پیگیری وضعیت اینترفیس ها و مدیریت تنظیمات آنها استفاده می کنند که این فایل ها به طور پیش فرض در مسیر run/network/ ذخیره می شوند.
حالا اگر می خواهید مسیر ذخیره سازی این فایل ها را تغییر دهید، می توانید از آپشن state-dir– استفاده کنید.
کافیست مسیر جدید را در دستور زیر لحاظ کنید:
sudo ifdown --state-dir=/var/run/my_network_state eth0
این آپشن زمانی مفید است که شما نیاز به مدیریت وضعیت شبکه در محیط های خاص با تنظیمات سفارشی دارید.
دستورات مکمل ifdown در ubuntu
تا به اینجا متوجه شدید که دستور ifdown چه کار می کند ولی صد در صد وقتی قرار است غیرفعال سازی یک رابط شبکه را یاد بگیرید، بهتر است نحوه فعال سازی آن را هم بلد باشید تا راه برگشتی هم وجود داشته باشد.
دستور ifup در اوبونتو
این دستور آپشن های مشابهی با دستور ifdown دارد ولی کلاً برعکس دستور ifdown عمل می کند، یعنی جهت فعال سازی رابط های شبکه به کار می رود.
به عنوان مثال برای فعال سازی تمام رابط های شبکه، کافیست دستور زیر را اجرا کنید:
sudo ifup -a
یا اگر قصد فعال سازی یک رابط خاص را دارید، دستور زیر را اجرا کنید:
sudo ifup eth0
دستور ifquery در اوبونتو
دستورات ifdown و ifup برای پیکربندی رابط شبکه استفاده می شوند ولی دستور ifquery برای واکشی داده های پیکربندی رابط شبکه به کار می شود.
به عنوان مثال برای مشاهده لیست رابط های شبکه ای که موقع بوت سیستم به طور خودکار پیکربندی می شود، می توانید از دستور زیر استفاده کنید:
ifqury -l
یا برای مشاهده رابط هایی که با استفاده از کیورد allow-hotplug پیکربندی شده اند، می توانید از دستور زیر استفاده کنید.
ifquery -l --allow=hotplug
در حالت کلی، با استفاده ترکیبی از این ۳ دستور می توانید عملکرد بهتری در مدیریت رابط های شبکه خود داشته باشید.
سخن آخر
دستور ifdown در اوبونتو برای غیرفعال سازی رابط با رابط های شبکه استفاده می شود. با استفاده از آپشن های این دستور می توانید رفتار آن را به شکل دلخواه و مطابق با نیازهای خود تعریف کنید.