Academy and Foundation unixmens | Your skills, Your future
2.29K subscribers
6.68K photos
1.39K videos
1.24K files
6.17K links
@unixmens_support
@yashar_esm
[email protected]
یک کانال علمی تکنولوژی
فلسفه متن باز-گنو/لینوکس-امنیت - اقتصاد
دیجیتال
Technology-driven -بیزینس های مبتنی بر تکنولوژی
Enterprise open source
ارایه دهنده راهکارهای ارتقای سازمانی - فردی - تیمی
Download Telegram
در آینده در مورد موضوعات #cgroup , #udev , #iproute2 مطالب بیشتری خواهم نوشت
مفهوم dbus چیست ؟!
همینطور که از اسمش مشخصه dBUS مثل یک اتوبوسه ! که وظیفه ی اطلاع رسانی رو داره ٬‌یعنی چی ؟! یعنی وقتی فلان دیوایس رو متصل کردید به نرم افزار میگه که فلان مثلا کیبورد به دستگاه متصل شد میتونی ازش استفاده کنی ...
کاربرد dbus چی هست ؟ برای اینکه پاسخ این سئوال رو پیدا کنید از خودتون یک سئوال بپرسید ، آیا همه نرم افزارها از جمله سیستم عامل و application های کاربردی سیستم باید مستقیما با دایرکتوری های dev یا proc یا sys کار کنن ؟ طبیعتا خیر نیازی نیست ، این بین ما میایم یک واسط قرار میدیم که نقش دلال رو داره و واسطه بین همه این مجموعه ها و نرم افزارها هست ، الان فرض کنید که یک سخت افزار به سیستم شما اضافه میشه و شما از یک دسکتاپ به نام KDE استفاده می کنید ، این dbuss هست که میره اطلاعات مربوط به سخت افزار رو از لایه های پایین دریافت می کنه و سیگنال اینکار رو به سمت Desktop Managerr میفرسته و شما از محیط گرافیکی متوجه میشید که خوب یک سخت افزار جدید به سیستم اضافه شده یا حذف شده ، هر موقع اسم dbus رو شنیدید دقیقا یاد یک اتوبوس بیوفتید که قرار هست مسافرانش رو به مقصد برسونه و به محل کار مسافراش هم میگه کاری نداشته باشید مسافراتون از کجا میان شما باهاشون کار داشتید من آوردمشون ، کاری نداشته باشید هم می برمشون .

مفهوم dev یا udev چیست ؟!
یودو یه قانون گذار به تمام معناست ٬ چیزی که وظیفه ی قانون گذاری روی دستگاه های سخت افزاری رو داره . مثلا شما یک فلش به دستگاه وصل کردی با udev میتونی بهش دستور بدی که هر وقت مثلا این فلش وصل شد فایل های درایو D رو فقط عکس هاش رو کپی کن داخل همین فلش مخصوص ! خیلی هم باحاله !

دایرکتوری sys یا sysfs چی هست ؟!
یک دایرکتوری که اطلاعات HAL رو ذخیره میکنه و HAL وظیفه کنترل کردن sys رو داره . مثلا شما میخوایید یک آمار از سیستمتون بگیرید ببینید چه سخت افزارهایی متصل هستش میتونید با دستور sys کل سخت افزارهای بخش های مختلفی که متصل هستند رو دربیارید . sysfs هم در حقیقت مخفف sys file system هستش که کاربرد نداره و همون از sys باید استفاده بشه .


دایرکتوری Proc یا procfs در لینوکس چیست ؟!
مکانی برای ذخیره اطلاعات پردازنده ها هست و شما با استفاده از دایرکتوری proc میتونید اطلاعات پردازنده هاتون رو داشته باشید .
البته این مفهوم خیلی خیلی قدیمی هست و برمیگرده به سالهای 1990 و همون حدودها بنابراین یه مقدار دیدتون رو قدیمیتر کنید ، خوب در اون وهله زمانی ما مجبور بودیم دونه دونه پردازش ها یا Process های سیستم رو مدیریت کنیم ، خوب قبل از اینکه ادامه بدیم یک یادآوری هم بکنیم ، همه چیز در سیستم عامل لینوکس و خانواده یونیکس در قالب فایل هست و procfs هم همین هست یعنی یک فایل هست که داخلش مدیریت پردازش های CPU ما انجام میشه ، وقتی یک دستگاه یه سیستم ما متصل میشه داخل این فایل محتوایی قرار می گیره که باعث میشه ما بتونیم پردازش های مربوط به اون سخت افزار رو انجام بدیم ، خوب با توجه به حرف خودمون که همه چیز در قالب فایل ذخیره میشه بنابراین محتویات sysfs هم باید داخل یک فایل و یک فولدر قرار بگیرند که این محتویات در دایرکتوری به نام proc/ در سیستم عامل لینوکس وجود داره ، توجه کنید که proc/ یک فایل سیستم هست .

مفهوم lsmod (ال اس مود )‌ چیست ؟!
در واقع ls مخفف list size و بخش بعدی mod مخفف ماژول module هستش . یعنی لیست ماژول های که کرنل (هسته لینوکس) لود کرده است .
برای حذف کردن Drive Kernel Modulee ها ما می توانیم به راحتی با لیست کردن ماژول های کرنل با دستور lsmod و مشاهده نام آن ماژول و در نهایت وارد کردن دستور rmmod آن ماژول را حذف کنیم ، اما چگونه می توانیم آن را نصب کنیم ؟ برای نصب کردن Drive Kernel Module ما از دو دستور insmod و modprobe استفاده می کنیم ، اما مهمترین نکته تفاوت بین این دو دستور است ، زمانیکه صحبت از insmod می شود فقط و فقط درایورهایی نصب می شوند که چند فایل وابسته ندارند ، یعنی در اصطلاح فایل شما دارای Dependency نیست ، در چنین حالتی دستور insmod کار می کند ، اما در بسیاری از موارد ما هیچوقت از چنین دستوری استفاده نمی کنیم زیرا فاقد کارایی می باشد و اکثر درایورهای ما امروزه دارای وابستگی یا Dependency هستند ، برای اینکه در سیستم بصورت خودکار این وابستگی ها یا Dependency ها نصب شوند ما از دستور modprobe استفاده می کنیم .

مفهوم lsusb در لینوکس
مخفف ال اس را که میدانیم usb هم که همه با آن آشنا هستیم ! خب حله الان ؟! LSUSB راهیست برای لیست کردن usb های متصل به سیستم در لینوکس ...


#linux #dbus #udev @unixmens