انجمن‌های فارسی اوبونتو

کمک و پشتیبانی => انجمن عمومی => نویسنده: AmirHo3einZ در 20 آذر 1398، 09:41 ب‌ظ

عنوان: init initramfs sysVinit
ارسال شده توسط: AmirHo3einZ در 20 آذر 1398، 09:41 ب‌ظ
آقا این ۳ تا چین دقیقا؟ اینیت رم اف اس اینیت میاره بالا سیس وی اینیت و ... خودمم نفهمیدم چی گفتم. init | initramfs | sysVinit لطفا یکی راجب این ۳ تا یه توضیحی بده. یا یه مقاله ای چیزی خواهشا. از صبحه دارم با این ۳ تا ور میرم  ](*,) هنوز نتونستم به درک نسبتا خوبی برسم. لطفا یکی یه توضیحی یه مقاله ای چیزی بزارم جلوم. خیلی خیلی ممنونم
عنوان: پاسخ : init initramfs sysVinit
ارسال شده توسط: M!lad در 22 آذر 1398، 07:39 ب‌ظ
اگر حافظه‌ام درست یاری کنه به صورت کلی تو یک سیستم که از BIOS استفاده می‌کنه وقتی روشن اش کنید اول BIOS اجرا میشه بعد POST رخ میده اگر همه چیز درست باشه، سکتور صفر دیوایسی که Bootable هست برای یک کد خاص بررسی میشه و در صورت صحت کد، بخش بوت کد اجرا میشه و Boot loader بالا میاد، مثلا گراب.

مرحله بعد این هست که کرنل رو بیاریم رو حافظه و سایر مراحل بوت رو انجام بدیم. یکی از این مراحل این هست که ما فایل سیستم روت رو مانت کنیم که میتونه مثلا رو LVM یا Raid باشه، رمزنگاری شده باشه و ... یه سری ابزار لازم داریم که بتونیم این کارا رو انجام بدیم. برای اینکه تمام این ابزارها رو تو کرنل نزاریم و تمام حالت های مختلف رو تعریف نکنیم که اگر این شد اینکار رو کن اینجا initramfs یا initrd سابق وارد عمل میشند. اینا یک فایل سیستم موقت (یه گنو/لینوکس کوچیک) با یه سری ابزار هستند که سیستم رو آماده می‌کنند برا ادامه بوت. دیوایس ها رو شناسایی می‌کنند، ماژول‌های کرنل رو لود می‌کنند و ...

در ادامه که کرنل آماده هست و کنترل رو به دست گرفته یک init سیستم (پروسه شماره ۱) رو بالا میاره و کنترل سیستم رو می‌سپره بهش. کار این init سیستم کنترل سرویس‌ها، اجرای login manager و... هست و به عنوان والد تمام پروسه‌های دیگه در نظر گرفته میشه.

init system های مختلفی داریم یکیشون sysVinit هست یکی دیگه مثلا systemd هست یا openrc و...