شل اسکریپت برای بررسی وضعیت یک سرویس و فعال کردن آن

در این مطلب یک شل اسکریپت برای بررسی وضعیت یک سرویس گفته می شود. شل اسکریپت از طریق دستور ps چک می کند که آیا یک سرویس مورد نظر در حال حاظر در حال اجرا است یا خیر و اگر سرویس غیر فعال بود آنرا start می کند. شل اسکریپت از طریق crontab زمانبندی می شود تا خودکار اجرا شود. خواندن را ادامه دهید“شل اسکریپت برای بررسی وضعیت یک سرویس و فعال کردن آن”

تعداد کل فرایندها و شناسه آخرین ایجاد شده در سیستم

در لینوکس دایرکتوری proc/ حاوی اطلاعاتی در مورد فعالیت فعلی هسته سیستم عامل است. از فایل های درون این دایرکتوری می توان اطلاعات زیادی را بدست آورد. بسیاری از دستورهای لینوکسی خروجی را نشان می دهند که می توان از فایل های همین دایرکتوری پیدا کرد. خواندن را ادامه دهید“تعداد کل فرایندها و شناسه آخرین ایجاد شده در سیستم”

زمان مصرفی پردازنده در لینوکس-یونیکس ها

در سیستم عامل ها یک فرایند بر اساس مُد (Mode) اجرایش در یکی از دو دسته فضای، ۱) مُد کاربر (یا فضای کاربر – User Space) و ۲) مُد هسته (یا فضای هسته – Kernel Mode) اجرا می شود. فرایند فضای کاربر حق دسترسی مستقیم به فضای هسته را ندارد و زمانی که فرایند فضای کاربر نیاز به سرویسی از فضای هسته داشته باشد توسط فراخوان سیستمی سرویس را درخواست می کند. خواندن را ادامه دهید“زمان مصرفی پردازنده در لینوکس-یونیکس ها”

xkill کردن برنامه های گرافیکی در لینوکس

kill دستوری است که توسط آن می توان یک فرایند، دستور یا یک برنامه گرافیکی را از طریق شناسه یا PID مربوط به آن فرایند (دستور یا برنامه گرافیکی) را kill یا از بین برد. دستور kill شناسه فرایند و سیگنال مربوطه (15 یا 9) را به عنوان ورودی گرفته و سپس آن فرایند را kill می کند. خواندن را ادامه دهید“xkill کردن برنامه های گرافیکی در لینوکس”

انتقال فرایند (دستور) در حال اجرا از یک ترمینال به ترمینال دیگر

reptyr برنامه (دستوری) به زبان C است که این امکان را می دهد تا یک فرایند (دستور) در حال اجرا را از ترمینالی که در حال اجرا بر روی آن است به ترمینالی دیگر منتقل کرد. این کار بدون نیاز به قطع اجرای فرایند (دستور) و راه اندازی مجدد آن فرایند صورت می گیرد. در واقع عملیات مهاجرت فرایند یا Process Migrate بدون قطعی انجام خواهد شد. خواندن را ادامه دهید“انتقال فرایند (دستور) در حال اجرا از یک ترمینال به ترمینال دیگر”

پیدا کردن میزان مصرف فرایند از حافظه

در تمامی سیستم عامل ها یک فرایند برای اجرا شدن لازم است ابتدا در حافظه اصلی قرار بگیرد، در واقع باید در فضای آدرس حافظه اصلی (یا RAM) قرار گرفته و سپس توسط زمانبند فرایند سیستم عامل برای اجرا شدن، پردازنده را دریافت می کند. خواندن را ادامه دهید“پیدا کردن میزان مصرف فرایند از حافظه”

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

در هر سیستم عاملی امکان ایجاد یک فرایند از فرایند دیگر وجود دارد که فرایند ایجاد شده را فرایند فرزند و فرایند دیگر را فرایند والد می گویند. همچنین هر فرایند  فرزند نیز می تواند دیگر فرایند ها را ایجاد کند تا یک ساختار درختی میان فرایند های والد و فرزند ایجاد شود. خواندن را ادامه دهید“نمایش درختواره فرایند ها در لینوکس”

تعداد فرایند متعلق به هر کاربر و تعداد کل فرایند ها

زمانی که سیستم بوت می شود، ابتدا فرایند init تحت مالکیت root ایجاد شده و سپس دیگر فرایندها نیز توسط فرایند init و تحت مالیکت root ایجاد می شوند. همچنین کاربرانی که به سیستم لاگین می کنند نیز تعدادی فرایند را ایجاد می کنند. با استفاده از دستور زیر می توان تعداد فرایند کل فرایندهای ایجاد شده در سیستم چه تعداد است. خواندن را ادامه دهید“تعداد فرایند متعلق به هر کاربر و تعداد کل فرایند ها”

نصب monix ابزار مانیتورینگ سرویس ها در CentOS 6.x

Monit ابزاری اپن سورس به منظور مانیتورینگ فرایند ها و سرویس ها در سیستم عامل لینوکس است. نصب و پیکربندی آن بسیار ساده بوده و تنها لازم است که به ازای هر  سرویس خطوط تنظیماتی را به فایلcl اصلی پیکربندی آن اضافه می کنیم. فایل پیکربندی آن در توزیع های RHLE 6.x و CentOS 6.x فایل etc/monit.conf/ است. در این پست چگونگی نصب و پیکربندی آنرا در توزیع لینوکسی CentOS 6.x توضیح داده خواهد شد. خواندن را ادامه دهید“نصب monix ابزار مانیتورینگ سرویس ها در CentOS 6.x”

دستور pgrep برای پیداکردن شناسه فرایند ها

دستور pgrep برای پیدا کردن اطلاعات یک فرایند مانند شناسه یا مالک آن توسط نام فرایند مورد استفاده قرار می گیرد. اغین دستور  بر اساس نام یا الگویی که به آن داده شده، در میان فرایند های فعال و در حال اجرا جستجو می کند و خروجی را نشان می دهد. بطور مثال می خواهیم بررسی کنیم که آیا فرایند مربوط به سرویس sshd در سیستم وجود دارد یا خیر؟ تنها کافیست دستور زیر را اجرا کنیم، اگر سرویس فعال باشد، شناسه فرایند مربوط به آن نشان داده می شود. خواندن را ادامه دهید“دستور pgrep برای پیداکردن شناسه فرایند ها”

فرایند ورود کابران (Login) به سیستم عامل لینوکس (کاربرد فرایند getty)

نخستین فرایندی که حین بوت شدن لینوکس ایجاد می شود، فرایند init است. init والد تمامی فرایند ها با شناسه PID=1 است. تمامی دیگر فرایند ها توسط init ایجاد می شوند. پس از ایجاد init دستور های درون فایل etc/rc.local/ اجرا می شوند و سپس فرایند init، فرایندی به نام getty را ایجاد می کند. این فرایند نیز دستور login را برای تعیین هویت و اعتبار سنجی کاربران، اجرا می کند. در ادامه مروری بر فرایندی که اتفاق می افتد تا کاربری به سیستم Login کند، گفته شده است. خواندن را ادامه دهید“فرایند ورود کابران (Login) به سیستم عامل لینوکس (کاربرد فرایند getty)”

اولویت فرایند ها

در لینوکس (و البته تمامی سیستم های عامل) تعداد بسیاری (هزاران) فرایند در حال اجرا شدن هستند. هر فرایند برای اجرا شدن ابتدا باید وارد حافظه شود، در حافظه اصلی بر اساس معیار ها و اولویت هایی زمانبندی می شود تا برای شروع اجرا شدن، پردازنده را بدست بیاورد. یک فرایند تا زمانی که پردازنده را بدست نیاورد اجرا نخواهد شد. از این رو یک اولویت Priority میان پردازش ها وجود دارد برای استفاده از پردازنده. در خروجی دستور ps ستون NI مشخص کننده اولویت یک پردازش در حال اجرا است. در لینوکس از دستور های nice و renice برای تغییر اولویت ها استفاده می شود. هنگامی که یک فرایند اجرا می شود، مقدار اولویت پیشفرض 0 را دارد اما محدوده مقادیر اولویت (که به آن مقادیر nice) گویند از عدد 20- تا 19 است بطوریکه عدد 20- بالاترین اولویت و 19 کمترین اولویت را دارند. خواندن را ادامه دهید“اولویت فرایند ها”

12