خوش آموز درخت تو گر بار دانش بگیرد، به زیر آوری چرخ نیلوفری را
آموزش استفاده از دستور modprobe در لینوکس
کرنل نه فقط در لینوکس بلکه در هر سیستم عامل دیگری کامپوننت اصلی و مهم آن سیستم عامل می باشد. کرنل منابع سیستم را مدیریت کرده و پلی بین سخت افزار و نرم افزار کامپیوتر شما است.
یک کرنل ماژول، که اغلب به از آن با نام درایور یاد می شود، قطعه کدی است که عملکرد کرنل را گسترش می دهد. ماژول ها را می توان به صورت ماژول های قابل Load شدن کامپایل کرد و یا اینکه در کرنل قرار داد. ماژول های قابل Load را می توان به صورت داینامیک در کرنلی که در حال اجراست، بدون نیاز به ریستارت سیستم، Load و Unload کرد.
به طور کلی، ماژول ها بر حسب تقاضا توسط udev یا device manager اقدام به Load می شوند. اما بعضا لازم است نحوه Load شدن ماژول ها را دقیق تنظیم کنید. برای مثال، شاید لازم باشد یک ماژول را با پارامترهای اضافی Load کنید یا از Load شدن خودکار یک ماژول جلوگیری کنید. همچنین می توانید به صورت دستی یک ماژول را با استفاده از دستور modprobe یا به صورت خودکار در زمان بوت با استفاده از etc/modules یا etc/modules-load.d/*.conf لود کنید.
در این مقاله نحوه استفاده از modprobe برای افزودن و حذف ماژول ها از کرنل لینوکس را توضیح خواهیم داد. modprobe بخشی از kmod است که چندین برنامه را برای مدیریت ماژولهای کرنل لینوکس اجرا میکند.
ماژول های کرنل در دایرکتوری lib/modules/kernel_version ذخیره می شوند. برای پیدا کردن نسخه کرنل لینوکس در حال اجرا ، از دستور uname -r استفاده کنید.
فقط کاربر root و کاربرانی که دسترسی Admin دارند می توانند ماژول به کرنل اضافه کرده و یا ماژولی را حذف کنند. برای load کردن یک ماژول، دستور modprobe و سپس نام ماژول را اجرا کنید:
دستور modprobe ماژول داده شده و هر ماژول اضافی وابسته دیگر را load می کند. فقط یک ماژول را می توان در خط فرمان مشخص کرد.
از دستور lsmod برای تایید load شدن ماژول استفاده کنید:
برای load کردن یک ماژول با پارامترهای اضافی، به syntax زیر دقت کنید:
دستور می توانید چندین parameter=value که با space از هم جدا شده باشند را بپذیرد.
به طور کلی، شما باید ماژول را در هنگام بوت شدن سیستم load کنید. شما می توانید این کار را با تعیین ماژول و پارامترهای آن در فایلی در داخل فولدر etc/modules-load.d انجام دهید. فایل ها باید فرمت conf. داشته باشند ولی نام انها اختیاری است و هر نامی می توانید بدان ها اختصاص دهید:
تنظیمات مشخص شده در این فایل ها توسط udev خوانده می شود که ماژول ها را در هنگام راه اندازی سیستم با استفاده از modprobe لود می کند.
modprobe همچنین سایر ماژول های وابسته به این ماژول که در وضعیت unused و غیر استفاده هستند را هم حذف می کند.
هنگامی که modprobe با r- اجرا می شود، دستور چندین ماژول را به عنوان پارامتر می پذیرد:
همچنین می توانید از دستور rmmod برای unload کردن یک ماژول از کرنل لینوکس استفاده کنید. در این خصوص می توانید به لینک زیر مراجعه کنید:
یک کرنل ماژول، که اغلب به از آن با نام درایور یاد می شود، قطعه کدی است که عملکرد کرنل را گسترش می دهد. ماژول ها را می توان به صورت ماژول های قابل Load شدن کامپایل کرد و یا اینکه در کرنل قرار داد. ماژول های قابل Load را می توان به صورت داینامیک در کرنلی که در حال اجراست، بدون نیاز به ریستارت سیستم، Load و Unload کرد.
به طور کلی، ماژول ها بر حسب تقاضا توسط udev یا device manager اقدام به Load می شوند. اما بعضا لازم است نحوه Load شدن ماژول ها را دقیق تنظیم کنید. برای مثال، شاید لازم باشد یک ماژول را با پارامترهای اضافی Load کنید یا از Load شدن خودکار یک ماژول جلوگیری کنید. همچنین می توانید به صورت دستی یک ماژول را با استفاده از دستور modprobe یا به صورت خودکار در زمان بوت با استفاده از etc/modules یا etc/modules-load.d/*.conf لود کنید.
در این مقاله نحوه استفاده از modprobe برای افزودن و حذف ماژول ها از کرنل لینوکس را توضیح خواهیم داد. modprobe بخشی از kmod است که چندین برنامه را برای مدیریت ماژولهای کرنل لینوکس اجرا میکند.
ماژول های کرنل در دایرکتوری lib/modules/kernel_version ذخیره می شوند. برای پیدا کردن نسخه کرنل لینوکس در حال اجرا ، از دستور uname -r استفاده کنید.
فقط کاربر root و کاربرانی که دسترسی Admin دارند می توانند ماژول به کرنل اضافه کرده و یا ماژولی را حذف کنند. برای load کردن یک ماژول، دستور modprobe و سپس نام ماژول را اجرا کنید:
modprobe module_name
دستور modprobe ماژول داده شده و هر ماژول اضافی وابسته دیگر را load می کند. فقط یک ماژول را می توان در خط فرمان مشخص کرد.
از دستور lsmod برای تایید load شدن ماژول استفاده کنید:
lsmod | grep module_name
برای load کردن یک ماژول با پارامترهای اضافی، به syntax زیر دقت کنید:
modprobe module_name parameter=value
دستور می توانید چندین parameter=value که با space از هم جدا شده باشند را بپذیرد.
به طور کلی، شما باید ماژول را در هنگام بوت شدن سیستم load کنید. شما می توانید این کار را با تعیین ماژول و پارامترهای آن در فایلی در داخل فولدر etc/modules-load.d انجام دهید. فایل ها باید فرمت conf. داشته باشند ولی نام انها اختیاری است و هر نامی می توانید بدان ها اختصاص دهید:
تنظیمات مشخص شده در این فایل ها توسط udev خوانده می شود که ماژول ها را در هنگام راه اندازی سیستم با استفاده از modprobe لود می کند.
حذف کردن ماژول های کرنل لینوکس با دستور modprobe
برای حذف یک ماژول، دستور modprobe را با گزینه r- و سپس نام ماژول اجرا کنید:
modprobe -r module_name
modprobe همچنین سایر ماژول های وابسته به این ماژول که در وضعیت unused و غیر استفاده هستند را هم حذف می کند.
هنگامی که modprobe با r- اجرا می شود، دستور چندین ماژول را به عنوان پارامتر می پذیرد:
modprobe -r module_name1 module_name2
همچنین می توانید از دستور rmmod برای unload کردن یک ماژول از کرنل لینوکس استفاده کنید. در این خصوص می توانید به لینک زیر مراجعه کنید:
نمایش دیدگاه ها (0 دیدگاه)
دیدگاه خود را ثبت کنید: