با حوصله بخوان، مثالها را تحلیل کن و تمرینها را انجام بده؛ هدف حفظ کردن تعریفها نیست
Linux Kernel هسته سیستم است
Linux خانوادهای از سیستمعاملها بر پایه Kernel Linux است و Distributionها ابزار و Packageهای متفاوت دارند؛ در پشتیبانی اول Distribution و نسخه را مشخص کن دستور درست روی یک توزیع ممکن است روی دیگری متفاوت باشد در Linux مدیریت سرویسها، فایلها، Userها و شبکه بر پایه ابزارها و فایلهای پیکربندی مشخص انجام میشود؛ systemd وضعیت Serviceها و وابستگی آنها را مدیریت میکند و journal میتواند رویدادهای Kernel، Service و فرایندهای مختلف را ثبت کند؛ Permissionهای فایل از Owner، Group و Other و بیتهای دسترسی تشکیل میشوند و استفاده از sudo باید کنترلشده باشد؛ پیش از تغییر باید مسیر فایل پیکربندی، Service مرتبط و Log همان Service شناخته شود اگر بخواهی این بخش را از حالت تعریف به مهارت عملی تبدیل کنی، Permission و مالکیت در Linux باید با نیاز واقعی Service هماهنگ باشد؛ اجرای همه چیز با root مشکل را پنهان میکند و سطح ریسک را بالا میبرد؛ User و Group مناسب، حداقل Permission لازم و sudo کنترلشده روش قابل نگهداریتری است؛ بعد از تغییر، هم دسترسی مورد نیاز و هم عدم دسترسی ناخواسته بررسی شود
Distribution مجموعه Kernel و ابزارهاست
Linux Distribution فقط Kernel نیست؛ مجموعهای از Kernel، Package Manager، Libraryها، ابزارهای کاربری و تنظیمات پیشفرض است. Ubuntu، Debian و Rocky نمونههای متفاوتی از Distribution هستند در Linux مدیریت سرویسها، فایلها، Userها و شبکه بر پایه ابزارها و فایلهای پیکربندی مشخص انجام میشود؛ systemd وضعیت Serviceها و وابستگی آنها را مدیریت میکند و journal میتواند رویدادهای Kernel، Service و فرایندهای مختلف را ثبت کند؛ Permissionهای فایل از Owner، Group و Other و بیتهای دسترسی تشکیل میشوند و استفاده از sudo باید کنترلشده باشد؛ پیش از تغییر باید مسیر فایل پیکربندی، Service مرتبط و Log همان Service شناخته شود اگر بخواهی این بخش را از حالت تعریف به مهارت عملی تبدیل کنی، Permission و مالکیت در Linux باید با نیاز واقعی Service هماهنگ باشد؛ اجرای همه چیز با root مشکل را پنهان میکند و سطح ریسک را بالا میبرد؛ User و Group مناسب، حداقل Permission لازم و sudo کنترلشده روش قابل نگهداریتری است؛ بعد از تغییر، هم دسترسی مورد نیاز و هم عدم دسترسی ناخواسته بررسی شود برای اینکه این مفهوم در محیط واقعی قابل استفاده شود، در Linux بهتر است هر تغییر را با شناخت Service و فایل پیکربندی مربوط انجام دهی؛ وضعیت Process، Socket، Permission و Log معمولاً سرنخهای اصلی هستند؛ systemd و journal ابزارهای مرکزی در بسیاری از توزیعهای مدرناند و NetworkManager نیز در RHEL برای مدیریت شبکه استفاده میشود؛ قبل از ویرایش، نسخه فایل و راه بازگشت نگه داشته شود
Shell محیط اجرای Command است
Shell رابط متنی برای اجرای Command و Script است؛ Bash یکی از نمونههای رایج است و دستورات با Permission همان کاربر اجرا میشوند در Linux مدیریت سرویسها، فایلها، Userها و شبکه بر پایه ابزارها و فایلهای پیکربندی مشخص انجام میشود؛ systemd وضعیت Serviceها و وابستگی آنها را مدیریت میکند و journal میتواند رویدادهای Kernel، Service و فرایندهای مختلف را ثبت کند؛ Permissionهای فایل از Owner، Group و Other و بیتهای دسترسی تشکیل میشوند و استفاده از sudo باید کنترلشده باشد؛ پیش از تغییر باید مسیر فایل پیکربندی، Service مرتبط و Log همان Service شناخته شود در یک شبکه یا سیستم واقعی، این موضوع زمانی روشن میشود که Permission و مالکیت در Linux باید با نیاز واقعی Service هماهنگ باشد؛ اجرای همه چیز با root مشکل را پنهان میکند و سطح ریسک را بالا میبرد؛ User و Group مناسب، حداقل Permission لازم و sudo کنترلشده روش قابل نگهداریتری است؛ بعد از تغییر، هم دسترسی مورد نیاز و هم عدم دسترسی ناخواسته بررسی شود در کار روزمره بهتر است این موضوع را اینطور بررسی کنی: در Linux بهتر است هر تغییر را با شناخت Service و فایل پیکربندی مربوط انجام دهی؛ وضعیت Process، Socket، Permission و Log معمولاً سرنخهای اصلی هستند؛ systemd و journal ابزارهای مرکزی در بسیاری از توزیعهای مدرناند و NetworkManager نیز در RHEL برای مدیریت شبکه استفاده میشود؛ قبل از ویرایش، نسخه فایل و راه بازگشت نگه داشته شود
root بالاترین دسترسی است
root تقریباً به همه بخشهای سیستم دسترسی دارد؛ اشتباه کوچک با root میتواند اثر سراسری داشته باشد، بنابراین از sudo و دسترسی محدود استفاده کن در Linux مدیریت سرویسها، فایلها، Userها و شبکه بر پایه ابزارها و فایلهای پیکربندی مشخص انجام میشود؛ systemd وضعیت Serviceها و وابستگی آنها را مدیریت میکند و journal میتواند رویدادهای Kernel، Service و فرایندهای مختلف را ثبت کند؛ Permissionهای فایل از Owner، Group و Other و بیتهای دسترسی تشکیل میشوند و استفاده از sudo باید کنترلشده باشد؛ پیش از تغییر باید مسیر فایل پیکربندی، Service مرتبط و Log همان Service شناخته شود نکتهای که هنگام پشتیبانی نباید از آن عبور کنی این است که Permission و مالکیت در Linux باید با نیاز واقعی Service هماهنگ باشد؛ اجرای همه چیز با root مشکل را پنهان میکند و سطح ریسک را بالا میبرد؛ User و Group مناسب، حداقل Permission لازم و sudo کنترلشده روش قابل نگهداریتری است؛ بعد از تغییر، هم دسترسی مورد نیاز و هم عدم دسترسی ناخواسته بررسی شود در یک شبکه یا سیستم واقعی، این موضوع زمانی روشن میشود که در Linux بهتر است هر تغییر را با شناخت Service و فایل پیکربندی مربوط انجام دهی؛ وضعیت Process، Socket، Permission و Log معمولاً سرنخهای اصلی هستند؛ systemd و journal ابزارهای مرکزی در بسیاری از توزیعهای مدرناند و NetworkManager نیز در RHEL برای مدیریت شبکه استفاده میشود؛ قبل از ویرایش، نسخه فایل و راه بازگشت نگه داشته شود
کار روزمره بهتر است با کاربر عادی و sudo باشد
در Linux بهتر است با حساب عادی کار کنی و فقط برای دستور لازم از sudo استفاده کنی؛ این کار هم خطر خطای ناخواسته را کم میکند و هم ردپای مدیریتی بهتری میسازد در Linux مدیریت سرویسها، فایلها، Userها و شبکه بر پایه ابزارها و فایلهای پیکربندی مشخص انجام میشود؛ systemd وضعیت Serviceها و وابستگی آنها را مدیریت میکند و journal میتواند رویدادهای Kernel، Service و فرایندهای مختلف را ثبت کند؛ Permissionهای فایل از Owner، Group و Other و بیتهای دسترسی تشکیل میشوند و استفاده از sudo باید کنترلشده باشد؛ پیش از تغییر باید مسیر فایل پیکربندی، Service مرتبط و Log همان Service شناخته شود برای اینکه این مفهوم در محیط واقعی قابل استفاده شود، در Linux بهتر است هر تغییر را با شناخت Service و فایل پیکربندی مربوط انجام دهی؛ وضعیت Process، Socket، Permission و Log معمولاً سرنخهای اصلی هستند؛ systemd و journal ابزارهای مرکزی در بسیاری از توزیعهای مدرناند و NetworkManager نیز در RHEL برای مدیریت شبکه استفاده میشود؛ قبل از ویرایش، نسخه فایل و راه بازگشت نگه داشته شود
فرض کن در Server Linux مشکلی گزارش شده و احتمال میدهی به Linux و ساختار کلی سیستم مربوط باشد. قبل از تغییر، وضعیت فعلی را با systemctl، journalctl، ip، ss، df، free و ps بررسی میکنی و نتیجه را با یک حالت سالم یا مستند معتبر مقایسه میکنی. اگر شواهد فرضیه را تأیید کردند، فقط همان بخش مرتبط را تغییر میدهی و بعد همان تست را دوباره اجرا میکنی تا مطمئن شوی مشکل واقعاً برطرف شده است
این اشتباهها را تکرار نکن
- root تقریباً به همه بخشهای سیستم دسترسی دارد؛ اشتباه کوچک با root میتواند اثر سراسری داشته باشد، بنابراین از sudo و دسترسی محدود استفاده کن
- تغییر دادن تنظیمات مرتبط با Linux و ساختار کلی سیستم قبل از اینکه مطمئن شوی مشکل واقعاً به همین بخش مربوط است
- نتیجهگیری درباره Linux و ساختار کلی سیستم فقط از روی یک نشانه و بدون انجام تست نهایی
حالا خودت انجام بده
- در یک نمونه آزمایشی مرتبط با Linux و ساختار کلی سیستم، فقط وضعیت فعلی را مشاهده کن و سه نکتهای را که برای تشخیص حالت سالم مهماند یادداشت کن
- با systemctl، journalctl، ip، ss، df، free و ps وضعیت مرتبط با Linux و ساختار کلی سیستم را بدون تغییر بررسی کن، سه داده واقعی جمع کن و توضیح بده هرکدام چه چیزی به تو میگویند
- یک خطای فرضی مرتبط با Linux و ساختار کلی سیستم بنویس و مشخص کن اولین تست کمخطر تو چیست و چه نتیجهای فرضیهات را رد میکند
نکتههایی که باید با خودت ببری
- Linux Kernel هسته سیستم است
- Distribution مجموعه Kernel و ابزارهاست
- Shell محیط اجرای Command است
- root بالاترین دسترسی است
- کار روزمره بهتر است با کاربر عادی و sudo باشد
- با root دائمی کار نکن و قبل از ویرایش فایل تنظیمات نسخه برگشت داشته باش
قبل از رفتن به درس بعد، جواب را برای خودت توضیح بده
این نکته را با یک مثال توضیح بده: Linux Kernel هسته سیستم است. بعد بگو در عمل چطور آن را بررسی میکنی.
Linux خانوادهای از سیستمعاملها بر پایه Kernel Linux است و Distributionها ابزار و Packageهای متفاوت دارند؛ در پشتیبانی اول Distribution و نسخه را مشخص کن
این نکته را با یک مثال توضیح بده: Distribution مجموعه Kernel و ابزارهاست. بعد بگو در عمل چطور آن را بررسی میکنی.
Linux Distribution فقط Kernel نیست؛ مجموعهای از Kernel، Package Manager، Libraryها، ابزارهای کاربری و تنظیمات پیشفرض است. Ubuntu، Debian و Rocky نمونههای متفاوتی از Distribution هستند
این نکته را با یک مثال توضیح بده: Shell محیط اجرای Command است. بعد بگو در عمل چطور آن را بررسی میکنی.
Shell رابط متنی برای اجرای Command و Script است؛ Bash یکی از نمونههای رایج است و دستورات با Permission همان کاربر اجرا میشوند
برای ذخیره پیشرفت، دوره را رسمی شروع کن
با ثبتنام، تکمیل درسها و نمره آزمون روی حساب ذخیره میشود