مفهوم 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
همینطور که از اسمش مشخصه 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
Forwarded from Academy and Foundation unixmens | Your skills, Your future (yashar esmaildokht 🐧)
بصورت آزاد منتشر کردم // https://www.dropbox.com/s/n3kcgah7ki714o9/iptables.pdf?dl=0// #iptables #yashar_esmaildokht
به درخواست دوستان سروری با مشخصات زیر به فروش میرسد ,
Forwarded from Dan
DELL
✅CPU : 2 x X5650
✅RAM : 74 GB Ram
✅SSD : 256GB
✅HDD: 3 x 4TB WD Enterprise
✅LAN : 2 x 1GB
✅ilo
۱۱ میلیون تومان
فیزیکی موجود می باشد.
در صورت نیاز ، اجاره فضا در دیتاسنتری مانند پارس آنلاین برای این سرور ماهیانه ۲۰۰.۰۰۰ تومان می باشد.
۰۹۱۲۰۳۲۸۲۷۲
پیمان هدایتی
✅CPU : 2 x X5650
✅RAM : 74 GB Ram
✅SSD : 256GB
✅HDD: 3 x 4TB WD Enterprise
✅LAN : 2 x 1GB
✅ilo
۱۱ میلیون تومان
فیزیکی موجود می باشد.
در صورت نیاز ، اجاره فضا در دیتاسنتری مانند پارس آنلاین برای این سرور ماهیانه ۲۰۰.۰۰۰ تومان می باشد.
۰۹۱۲۰۳۲۸۲۷۲
پیمان هدایتی
کتاب مدیریت بسته ها در گنو/لینوکس
https://unixmen.ir/%da%a9%d8%aa%d8%a7%d8%a8-%d9%85%d8%af%db%8c%d8%b1%db%8c%d8%aa-%d8%a8%d8%b3%d8%aa%d9%87-%d9%87%d8%a7-%d8%af%d8%b1-%da%af%d9%86%d9%88-%d9%84%db%8c%d9%86%d9%88%da%a9%d8%b3/
آنچه در این کتاب می خوانیم :
مفهوم نرم افزار های متن باز
مدیریت بسته چیست ؟
بروز رسانی بسته ها در توزیع های محتلف
پیدا کردن بسته ها در توزیع های مختلف
مشاهده مشخصات کامل بسته ها در توزیع های مختلف
نصب بسته ها در توزیع های مختلف
نصب از سیستم محلی
حذف یک بسته در توزیع های مختلف
ویژگی های مدیر بسته Yum
مفهوم ریپوزیتوری ها
انواع ریپوزیتوری در رد هت بیس ها
بررسی رابط گرافیکی نصاب ها ی بسته
بررسی yumdownloader
تبدیل بسته های rpm به deb و سورس و بالعکس
بررسی مدیر بسته pip
بررسی yarn
بررسی slackpkg
ایجاد محزن محلی در دبیان بیس ها
و ...
#linux #package_manager #yashar_esmaildokht @unixmens
https://unixmen.ir/%da%a9%d8%aa%d8%a7%d8%a8-%d9%85%d8%af%db%8c%d8%b1%db%8c%d8%aa-%d8%a8%d8%b3%d8%aa%d9%87-%d9%87%d8%a7-%d8%af%d8%b1-%da%af%d9%86%d9%88-%d9%84%db%8c%d9%86%d9%88%da%a9%d8%b3/
آنچه در این کتاب می خوانیم :
مفهوم نرم افزار های متن باز
مدیریت بسته چیست ؟
بروز رسانی بسته ها در توزیع های محتلف
پیدا کردن بسته ها در توزیع های مختلف
مشاهده مشخصات کامل بسته ها در توزیع های مختلف
نصب بسته ها در توزیع های مختلف
نصب از سیستم محلی
حذف یک بسته در توزیع های مختلف
ویژگی های مدیر بسته Yum
مفهوم ریپوزیتوری ها
انواع ریپوزیتوری در رد هت بیس ها
بررسی رابط گرافیکی نصاب ها ی بسته
بررسی yumdownloader
تبدیل بسته های rpm به deb و سورس و بالعکس
بررسی مدیر بسته pip
بررسی yarn
بررسی slackpkg
ایجاد محزن محلی در دبیان بیس ها
و ...
#linux #package_manager #yashar_esmaildokht @unixmens
مرجع اپن سورس ، گنو/لینوکس
کتاب مدیریت بسته ها در گنو/لینوکس - مرجع اپن سورس ، گنو/لینوکس
کتاب مدیریت بسته ها در گنو/لینوکس نویسنده : مهندس اسمعیل دخت لینک دانلود
با 7 مدرک پردرآمد در رشته IT در سال 2017 آشنا شوید.
مجله معتبر PC Magazine در گزارشی 7 مدرک پردرآمد در حوزه IT را معرفی کرد. این مدارک معتبر عبارتند از:
1. Certified in Risk and Information Systems Control (CRISC)
2. Certified Information Security Manager (CISM)
3. AWS Certified Solutions Architect – Associate
4. Certified Information Systems Security Professional (CISSP)
5. Certified Information Systems Auditor (CISA)
6. Project Management Professional (PMP)
7. Citrix Certified Professional – Virtualization (CCP-V)
🔶از نکات قابل توجه در این گزارش:
▪️3 مدرک از 7 مدرک پر درآمد در حوزه امنیت اطلاعات هستند
▪️2 مدرک مرتبط با مجازی سازی و Cloud هستند
#security @unixmens
مجله معتبر PC Magazine در گزارشی 7 مدرک پردرآمد در حوزه IT را معرفی کرد. این مدارک معتبر عبارتند از:
1. Certified in Risk and Information Systems Control (CRISC)
2. Certified Information Security Manager (CISM)
3. AWS Certified Solutions Architect – Associate
4. Certified Information Systems Security Professional (CISSP)
5. Certified Information Systems Auditor (CISA)
6. Project Management Professional (PMP)
7. Citrix Certified Professional – Virtualization (CCP-V)
🔶از نکات قابل توجه در این گزارش:
▪️3 مدرک از 7 مدرک پر درآمد در حوزه امنیت اطلاعات هستند
▪️2 مدرک مرتبط با مجازی سازی و Cloud هستند
#security @unixmens
life-quality-30.pdf
951.1 KB
کتاب افزایش کیفیت زندگی
معرفی قابلیت جدید Temporal Validity در SQL نسخه 12c
این قابلیت جدید به شما امکان فراخوانی رکوردها با تعریف ستونهای پریود زمانی روی جدول در یک زمان مشخص (point in time) را با استفاده از قابلیت flashback می دهد. ابتدا جدول را به این قابلیت مجهز می کنیم (چه در زمان ایجاد و چه پس از آن).
ALTER TABLE employees ADD PERIOD FOR emp_valid_time (start_time_column, end_time_column);
این دستور دو ستون invisible با نامهای start_time_column و end_time_column را به جدول employees اضافه می کند که شما نمی توانید آنها را visible کنید. در این مثال اگر دستور را بدون تعیین نام ستونها اجرا کنید خود اوراکل دو ستون با نامهای emp_valid_time_start و emp_valid_time_end ایجاد می کند. یکی از محدودیتهای اصلی این قابلیت عدم کارکرد آن در محیط multitenant است. محدودیت دیگر آن عدم کارکرد ILM است مگر اینکه partition بندی را بر اساس ستون end انجام دهید.
پس از تجهیز جدول به این قابلیت نتیجه کوئری آن (به صورت پیش فرض) تمامی نسخه های تغییرات رکوردها (با توجه به flashback retention) خواهد بود. نام خانوادگی کارمند 100 سه بار تغییر کرده است و شما هر سه نسخه را می بینید.
SELECT * FROM employees;
EMPNO LAST_NAME EMP_PERIOD_START EMP_PERIOD_END
—--- —---------- —------— —------—
100 Valad 01-JAN-18
100 Vald 01-JAN-18 11-FEB-18
100 Valadkhani 11-FEB-18
101 Gerard 01-JAN-18 08-FEB-18
101 Grard 08-FEB-18
102 nosin 01-JAN-18
اگر قصد دارید فقط دیتای جاری را در نتیجه کوئری ببینید، در سطح session تنظیم را تغییر دهید و مجدد کوئری را اجرا کنید.
BEGIN
dbms_flashback_archive.enable_at_valid_time('CURRENT');
END;
/
SELECT * FROM employees;
یا کوئری را به صورت زیر اجرا کنید.
SELECT * FROM employees AS OF PERIOD FOR emp_valid_time SYSDATE;
اگر قصد دارید نتیجه کوئری را در یک زمان مشخص ببینید، یکی از روشهای زیر را انتخاب کنید.
BEGIN
sys.dbms_flashback_archive.enable_at_valid_time('ASOF',TO_DATE( '30-01-2018', 'DD-MM-YYYY' ));
END;
/
SELECT * FROM employees;
<OR>
SELECT * FROM employees
AS OF PERIOD FOR emp_valid_time TO_DATE( '30-01-2018', 'DD-MM-YYYY' );
برای برگشتن به وضعیت پیش فرض نمایش دیتا در سطح session دستور زیر را اجرا کنید.
BEGIN
sys.dbms_flashback_archive.enable_at_valid_time('ALL');
END;
/
#oracle @unixmens
این قابلیت جدید به شما امکان فراخوانی رکوردها با تعریف ستونهای پریود زمانی روی جدول در یک زمان مشخص (point in time) را با استفاده از قابلیت flashback می دهد. ابتدا جدول را به این قابلیت مجهز می کنیم (چه در زمان ایجاد و چه پس از آن).
ALTER TABLE employees ADD PERIOD FOR emp_valid_time (start_time_column, end_time_column);
این دستور دو ستون invisible با نامهای start_time_column و end_time_column را به جدول employees اضافه می کند که شما نمی توانید آنها را visible کنید. در این مثال اگر دستور را بدون تعیین نام ستونها اجرا کنید خود اوراکل دو ستون با نامهای emp_valid_time_start و emp_valid_time_end ایجاد می کند. یکی از محدودیتهای اصلی این قابلیت عدم کارکرد آن در محیط multitenant است. محدودیت دیگر آن عدم کارکرد ILM است مگر اینکه partition بندی را بر اساس ستون end انجام دهید.
پس از تجهیز جدول به این قابلیت نتیجه کوئری آن (به صورت پیش فرض) تمامی نسخه های تغییرات رکوردها (با توجه به flashback retention) خواهد بود. نام خانوادگی کارمند 100 سه بار تغییر کرده است و شما هر سه نسخه را می بینید.
SELECT * FROM employees;
EMPNO LAST_NAME EMP_PERIOD_START EMP_PERIOD_END
—--- —---------- —------— —------—
100 Valad 01-JAN-18
100 Vald 01-JAN-18 11-FEB-18
100 Valadkhani 11-FEB-18
101 Gerard 01-JAN-18 08-FEB-18
101 Grard 08-FEB-18
102 nosin 01-JAN-18
اگر قصد دارید فقط دیتای جاری را در نتیجه کوئری ببینید، در سطح session تنظیم را تغییر دهید و مجدد کوئری را اجرا کنید.
BEGIN
dbms_flashback_archive.enable_at_valid_time('CURRENT');
END;
/
SELECT * FROM employees;
یا کوئری را به صورت زیر اجرا کنید.
SELECT * FROM employees AS OF PERIOD FOR emp_valid_time SYSDATE;
اگر قصد دارید نتیجه کوئری را در یک زمان مشخص ببینید، یکی از روشهای زیر را انتخاب کنید.
BEGIN
sys.dbms_flashback_archive.enable_at_valid_time('ASOF',TO_DATE( '30-01-2018', 'DD-MM-YYYY' ));
END;
/
SELECT * FROM employees;
<OR>
SELECT * FROM employees
AS OF PERIOD FOR emp_valid_time TO_DATE( '30-01-2018', 'DD-MM-YYYY' );
برای برگشتن به وضعیت پیش فرض نمایش دیتا در سطح session دستور زیر را اجرا کنید.
BEGIN
sys.dbms_flashback_archive.enable_at_valid_time('ALL');
END;
/
#oracle @unixmens
Introducing
ZFS on Linux
Understand the Basics of Storage
with ZFS https://www.dropbox.com/s/806ccjzo9hlxqpx/ZFS%20on%20Linux.pdf?dl=0 #zfs #storage @unixmens
ZFS on Linux
Understand the Basics of Storage
with ZFS https://www.dropbox.com/s/806ccjzo9hlxqpx/ZFS%20on%20Linux.pdf?dl=0 #zfs #storage @unixmens