32.35294117647059% Complete

روند بوت سیستم

هر وقت که شما روند بوت کامپیوتر خود را دست‌کاری می کنید این احتمال وجود دارد که به نتیجه مطلوب نرسید.در این شرایط این که بدانید کجا باید برگردید تا اطلاعات بیشتری در مورد اینکه چه اتفاقاتی در هنگام شروع سیستم رخ داده کسب کنید می‌تواند مفید باشد.هنگامی که شما چیزی در مورد آنچه قرار است اتفاق بیافتد می‌دانید گزارشاتی که شما در زمان بوت دریافت می کنید می‌تواند راهنمای خوبی باشد.

استخراج اطلاعات در مورد روند بوت

بخش خاصی از لاگ های کرنل لینوکس و ماژول های آن در kernel ring buffer ذخیره می‌شوند.به صورت پیش‌فرض کرنل لینوکس این پیغام ها در هنگام بوت بر روی صفحه نمایش می‌دهد،این پیغام ها به سرعت رد می‌شوند و به سختی قابل خواندن هستن.حتی در بعضی توزیع ها این پیغام ها نمایش داده نمی‌شوند مگر آن که به کرنل پارامتر خاصی ارسال کنید.برای بررسی این پیغام ها می‌توانید از دستور زیر استفاده کنید:

 # dmesg

این دستور ممکن خروجی زیادی تولید کند بنابراین شاید بهتر باشد خروجی دستور را با less مشاهده کنید.

 # dmesg | less 

توزیع های زیادی خروجی dmesg را در فایل var/log/dmesg/ ذخیره می‌کنند.

تفسیر پیغام های بوت

پیغام های بوت که در kernel ring buffer ذخیره می‌شوند ممکن است برای بعضی تازه‌کار ها نامفهوم و رمزگونه باشد.نکات زیر می‌تواند در تفسیر بهتر این اطلاعات به شما کمک کند.

استفاده از less و قابلیت های جست‌وجوی آن. ابزار less برای خواندن log ها و kernel ring buffer بسیار مناسب است و شما می‌توانید با استفاده از کلید / در اطلاعات دنبال رشته یا کلمه خاصی بگردید.

به دنبال نام های انواع سخت‌افزاری باشید. بسیاری از پیغام های بوت شامل نام سخت‌افزارها می‌باشند.اگر فکر می‌کنید مشکل سخت‌افزاری دارید به دنبال نام نوع سخت‌افزار مانند SCSI بگردید.یادتان باشد لینوکس با اکثر تجهیز ها مانند SCSI رفتار می‌کند!

به دنبال نام chipset سخت‌افزار بگردید. بعضی وقت‌ها درایور های لینوکسی در کنار پیغام‌های log نام درایورشان که معمولا بر اساس chipset است را نیز می‌آورند.اگر شما سخت‌افزار خود را به خوبی می‌شناسید و نام chipset را می‌دانید می‌توانید به دنبال بخشی از نام آن در پیغام ها بگردید.

از خروجی یک سیستم سالم یادبگیرید. سعی کنید با محتوای kernel ring buffer و log فایل ها در یک سیستم سالم آشنا باشید.اگر شما بدانید که باید چه انتظاری از سیستم که به درستی کار می‌کند داشته باشیم،‌وقتی مشکلی پیش می‌آید تشخیص آن راحت‌تر است.

روند بوت

روند بردن یک سیستم x86 از حالت اولیه‌ای که بعد از روشن شدن دارد به حالتی که سیستم‌عامل در آن در حال اجراست پیچیده است.مراحلی که کامپیتر طی می‌کند تا یک سیستم‌عامل را بوت کند به صورت زیر است :

۱-‌ به سیستم برق می‌رسد و جریان های سخت‌افزاری خاصی باعث می‌شود CPU به دنبال آدرس از پیش مشخص شده‌ای بگردد و کدی که در آن جا است را اجرا کند.firmware در این مسیر قرار دارد پس firmware ،CPU را اجرا می‌کند.

۲- firmware وظایف خاصی را انجام می‌دهد این کار شامل چک کردن سخت‌افزار ، پیکربندی سخت‌افزار و جست‌وجوی boot loader و اجرای آن است.

۳- وقتی boot loader کنترل را بدست گرفت،کرنل را بارگذاری کرده یا boot loader دیگری را بارگذاری (chainload) می‌کند.

۴- وقتی لینوکس کنترل را بدست گرفت ابتدا وظایفی مانند مقدار دهی اولیه سخت‌افزار ها، مونت کردن پارتیشن روت (root) و در آخر اجرا کردن برنامه اولیه (initial program) را برای سیستم انجام می‌دهد.به طور پیش‌فرض برنامه اولیه sbin/init/ است.

۵- برنامه اولیه (initail program) شناسه پروسه‌ی ۱ را می‌گیرد زیرا اولین برنامه‌ای است که در سیستم اجرا می‌شود.در سیستم قدیمی بوت این برنامه فایل etc/inittab/ را خوانده تا تشخیص دهد چه برنامه‌هایی را باید اجرا کند.در سیستم هایی جدیدی که از Upstart یا systemd استفاده می‌کنند این فایل متفاوت است.

برنامه init نحوه کارکرد آن در بخش بعدی توضیح داده شده.

بخش‌هایی از این فصل از کتاب بر گرفته از منابع زیر است :

LPIC-1 Linux Professional Institute Study Guide(3rd Edition)
LPI Linux Certification in a Nutshell, 3rd Edition
32.35294117647059% Complete

کامپیوترها، نرم افزارها و سیستم عامل ها کامپیوتر چیست؟ بخش‌های مختلف یک کامپیوتر نرم افزار سیستم عامل‌های مهم لینوکس و نرم افزار آزاد لینوکس: داستان یک موفقیت آزاد یا متن باز نرم افزارهای آزاد مهم توزیع های لینوکس مهم نصب یک توزیع معماری سیستم استخراج و پیکربندی تنظیمات سخت افزار

روند بوت سیستم

مدیریت Runlevelها و shutdown و reboot نصب لینوکس و مدیریت بسته ها طراحی ساختار دیسک نصب یک مدیر بوت مدیریت Share library ها مدیریت بسته‌های نرم افزاری در دبیان استفاده از RPM و YUM دستورات گنو و یونیکس کار با خط فرمان پردازش جریان‌های داده باکمک فیلتر ها مدیریت فایل‌ها - مقدماتی استفاده از stream‌ها, pipe‌ها و redirect ایجاد، رصد و حذف یک فرایند ویرایش اولویت اجرای فرایندها جستجوی فایل‌های متنی توسط regular expressionها ویرایش فایل با کمک vi تجهیزات، فایل سیستم های لینوکسی و فایل سیستم سلسله مراتبی ساخت پارتیشن و فایل سیستم نگهداری از یکپارچگی فایل سیستم کنترل mount و unmount شدن فایل سیستم سهمیه بندی فضای دیسک یا quota مدیریت مجوزهاو مالکیت‌ فایل ساخت و تغییر hard و symbolic link جستجوی فایل سیستم و محل درست فایل‌ها راهنمای استفاده از Docpad نصب و راه اندازی اولیه نحوه تهیه مستندات