منبع اصلی نوشتار زیر در این لینک قرار دارد

مدیریت دیوایس ها در لینوکس – بخش سوم

در مطلب “مدیریت دیوایس ها در لینوکس – بخش نخست” در مورد udev و کاربرد آن در هسته سیستم عامل لینوکس و در مطلب “مدیریت دیوایس ها در لینوکس – بخش دوم” در مورد devfsd و مقایسه آن با udev گفته شد. به دلیل ضعف های devfsd امروزه دیگر از آن در هسته سیستم عامل لینوکس استفاده نمی شود. با استفاده از devfsd تعداد زیادی از Static Device File ها وجود داشت که تعداد بسیار زیاد آنها باعث مدیریت پیچیده می شده است. لازم بود تا Device File ها به صورت استاتیک و از قبل بر روی لینوکس وجود می داشتند که قاعدتا تمامی این فایل ها لازم نبودند.

اما با معرفی udev ایجاد شدن این فایل ها به صورت پویا صورت می گیرد. udev از سه مولفه ۱) فرایند udevd و ۲) فایل های مربوط به Rule های udev و ۳) فایل پیکربندی udev که در مسیر etc/udev/ به نام udev.conf قرار دارد. در این مطلب در مورد فایل های Rule صحبت خواهیم کرد.

فرایند udevd مسئول دریافت رویدادهای صادر شده از هسته است که اصطلاحا uevent نامیده می شوند. فرایند udevd یک فرایند فضای کاربر است. اما رفتار و عکس العمل udev بر اساس فایل های Rule ای است که در یکی از مسیرهای زیر قرار دارند:

ls -l /lib/udev/rules.d

OR

ls -l /etc/udev/rules.d

فایل های Rule های مربوط به udev فایل های متنی ساده ای هستند که دارای پسوند rules. هستند و می توان با هر ویرایشگر متنی مانند vi, nanao, gedit آنها را ویرایش و یا با دستورهایی مانند less و cat آنها را خواند. در واقع rule های udev چگونگی نامگذاری دیوایس ها، مالک و مجوزهایی که دریافت می کنند، کدام ماژول هسته باید بارگذاری شود، کدام برنامه باید اجرا شود و غیره را مشخص می کنند.

توجه داشته باشید که هرگز فایل های زیر دایرکتوری lib/udev/rules.d/ را ویرایش نکنید.

فایل های rule را با فایل پیکربندی udev یعنی etc/udev/udev.conf/ اشتباه نگیرید.

فرایند udevd فایل های rule را در زمان بوت شدن یا راه اندازی سیستم می خواند و آنها را درون حافظه بازگذاری (ذخیره) می کند. در صورتی که هسته سیستم عامل لینوکس یک سخت افزار یا دیوایس جدید را شناسایی کند و یا  متوجه شود که یک دیوایس را قطع شده است، هسته سیستم عامل یک پیغام یا رویداد uevent را به فرایند udevd ارسال می کند و قوانین ذخیره شده در حافظه را در مقابل خصوصیات دیوایس که درون سیستم فایل sys/ هستند تطابق می دهد تا دیوایس را شناسایی کند.

برای پاسخ دادن به رویدادهایی که از هسته سیستم عامل صادر شده و توسط udevd دریافت شده اند، ممکن است برنامه ای برای پیکربندی دیوایس فراخوانی و اجرا شود. شکل زیر یک نمونه از فایل Rule را نشان می دهد.

less /etc/udev/rules.d/50-udev-default.rules

linux_udev_rules_files_1

از شکل بالا مشخص است که:

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

هر Rule سعی می کند تا یک مقدار (Value) را به یک کلید (Key) اختصاص دهد یا سعی می کند که با مقایسه مقدار فعلی با مقادیر مشخص شده یک جفت را به کلید اختصاص دهد.

KEY=VALUE, KEY=VALUE, KEY=VALUE


مدیریت دیوایس ها در لینوکس – بخش نخست

مدیریت دیوایس ها در لینوکس – بخش دوم



برچسب ها : , ,

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

به اين صفحه امتياز دهيد