نگاهی دقیق تر به فرایند راه اندازی لینوکس

توسعه نرم افزار منظم - خدمات وب - نرم افزار عادل طالبی - طراحی و توسعه نرم افزار - وب سایت    
  
صفحه اول
English
سایت قدیمی
لیست همه مطالب سایت
راهنمای دسترسی سایت
تماس - ارسال پیام

مطالب و مقالات آموزشی کامپیوتر
حسابداری و امور مالی
تجارت، مدیریت، بازاریابی

آموزش و مقالات آموزشی


اینترنت
سخت افزار
مقاله
مدیریت و بهره وری
امنیت
شبکه
طراحی سایت
تجارت و بازاریابی
حسابداری
رایانه
تجارت الکترونیک
ویندوز
لینوکس
بازاریابی الکترونیک
بهینه سازی موتورهای جستجو
پایگاه داده ها
عمومی
نرم افزار
بازی های رایانه ای
ویندوز XP
ویندوز ویستا
برنامه نویسی
معرفی سایت
وبلاگ
صوتی و تصویری
هوش مصنوعی
ASP.NET
ویژوال بیسیک
SQL Server
نوت بوک و لپ تاپ
آموزش
معرفی کتاب

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

 

جستجو های مرتبط :


run level در لینوکس

lilo و grub تفاوت

تفاوت لینوکس و ویندوز

نصب سیستم عامل لینوکس و راه اندازی آن

راه اندازی لینوکس

inittab در لینوکس

تفاوت Grub - lilo

یونیکس

 

نگاهی دقیق تر به فرایند راه اندازی لینوکس  
کد مطلب : 382  موضوع : لینوکس

همه مطالب سایت آموزش و مقالات آموزشی رایانه - کامپیوتر سیستم عامل لینوکس Linux
اصطلاح فنی راه اندازی کامپیوتر را فرایند بوت یا Bootstrapping می گویند و یا بطور خلاصه تر بوت (boot یا booting). بخش آغازین این فرایند توسط کدهای ذخیره شده در ROM کامپیوتر انجام می شود.  

 

امروزه شما قادرید تا براحتی یکی از توزیع های لینوکس را تهیه کرده و آنرا نصب و استفاده نمایید بدون اینکه واقعا نیاز داشته باشید تا بخش های فنی سیستم عامل را درک نمایید. مقاله حاضر نگاهی اجمالی به فرایند راه اندازی سیستم لینوکس شما دارد. اصطلاح فنی راه اندازی کامپیوتر را فرایند بوت یا Bootstrapping می گویند و یا بطور خلاصه تر بوت (boot یا booting). بخش آغازین این فرایند توسط کدهای ذخیره شده در ROM کامپیوتر انجام می شود. این بخش در همه سیستم عامل ها یکسان می باشد. وظیفه این کد بارگذاری مدیر بوت لینوکس (Linux Boot Loader) برای ادامه فرایند می باشد. ● برنامه های مدیر بوت برنامه های مدیر بوت برنامه هایی هستند که توسط ROM کامپیوتر (یا همان BIOS) بارگذاری می شوند. در لینوکس دو مدیر بوت رایج وجود دارد. لیلو (LiLO) مدیر بوت سنتی لینوکس و گراب (Grub) مدیر بوتی جدیدتر می باشد.هرکدام از این برنامه ها ابتدا مقداری اطلاعات پیکربندی را دریافت کرده و سپس هسته لینوکس یا سیستم عامل دیگری را بارگذاری می کند و ادامه فرایند بوت را به آن می سپارد. قبلا دو مقاله برای آشنایی بیشتر با نحوه مدیریت و پیکربندی این دو مدیر بوت منتشر کرده ام که می توانید آنها را در بخش مقالات سایت مطالعه نمایید. مهمترین تفاوت بین لیلو و گراب در نحوه دریافت اطلاعات پیکربندی است. فایل پیکربندی لیلو با اجرای دستور lilo بصورت ثابت ذخیره می گردد. این اطلاعات یا در رکورد بوت اصلی (MBR یا Master Boot Record) دیسک یا در رکورد بوت پارتیشن لینوکس ذخیره می شود. اطلاعات پیکربندی که توسط دستور lilo استفاده می شود، عموما در فایل etc/lilo.conf ذخیره می شود. در زیر یک مثال از این فایل پیکربندی را مشاهده می نمایید.

boot=/dev/hda boot loader to MBR root=/dev/hda1 root partition install=/boot/boot.b map=/boot/map delay=50 5 second delay before auto-boot image=/vmlinuz kernel label=linux name to refer to entry read-only image=/vmlinuz.old backup entry label=old read-only

در مثال بالا امکان انجام بوت از روی دو هسته مختلف یعنی vmlinuz و vmlinuz.old وجود دارد. هنگام بوت شما می توانید یکی از این هسته ها را انتخاب نمایید. با فشردن کلید TAB در اعلان لیلو، گزینه های موجود لیست می شوند. در صورتی که هسته جدیدی را با ویرایش فایل etc/lilo.conf اضافه کرده اید و یا هر تغییر دیگری در فایل پیکربندی لیلو اعمال کرده اید، باید پس از آن دستور lilo را اجرا نمایید تا این تغییرات اعمال شوند. گراب فایل پیکربندی را هنگام بوت می خواند. حجم MBR فقط 512 بایت است و تنها بخشی از گراب که عهده دار فرایند های بسیار ابتدایی بوت است در آن ذخیره می شود. بقیه اطلاعات از روی پارتیشنی که اطلاعات بوت گراب در آن ذخیره شده است، بارگذاری می گردد. گراب توسط برنامه grub-install نصب می شود. فایل پیکربندی گراب به طور معمول در مسیر boot/grub/menu.lst قرار دارد. در زیر یک مثال از این فایل را مشاهده می نمایید:

default 0 timeout 8 gfxmenu (hd0,1)/boot/message title Linux kernel (hd0,1)/boot/vmlinuz root=/dev/hda2 desktop showopts initrd (hd0,1)/boot/initrd title Failsafe kernel (hd0,1)/boot/vmlinuz root=/dev/hda2 showopts ide=nodma apm=off acpi=o ff vga=normal nosmp noapic maxcpus=0 3 initrd (hd0,1)/boot/initrd title Memory Test kernel (hd0,1)/boot/memtest.bin

در صورتی که شما کامپیوتر خود را با یک سیستم عامل عامل اختصاصی از ردموند به اشتراک گذاشته اید، حواستان باشد که آنها اعتقاد دارند که سیستم عاملی جز سیستم عامل خودشان وجود ندارد و بنابراین اگر ویندوز را پس از لینوکس نصب کنید، بر روی MBR خواهد نوشت. به همین علت ابتدا ویندوز را نصب نمایید. ● سطوح اجرایی لینوکس سطوح اجرایی لینوکس به شما آرایه ای از پیکربندی های سیستمی ارایه می کنند. بدون مشخص کردن، معمولا سیستم با سطح اجرایی پیش گزیده که ممکن است 3، 2 یا 5 باشد، بوت می شود. این سطح اجرایی پیش گزیده را می توانید با ورود برخی کلمات کلیدی هنگام بوت تغییر دهید. به طور استاندارد 7 سطح اجرایی در لینوکس وجود دارد. از 0 تا 7. سطح اجرایی 0 به معنی خاموش کردن سیستم، سطح اجرایی 1 به معنی حالت تک کاربر و سطح اجرایی 6 به معنی بوت مجدد (Reboot) سیستم هستند. سطوح اجرایی دیگری که رایج هستند عبارتند از سطح اجرایی 3 که یک سیستم چند کاربره بدون محیط گرافیکی است، حالت اجرایی 5 که محیط اجرایی چندکاربره همراه با محیط گرافیکی است. البته در سیستم های مبتنی بر لینوکس دبیان، سطوح اجرایی 3 و 5 با سطح اجرایی 2 جایگزین شده اند. در بسیاری از سیستم ها، یک سطح اجرایی دیگر موسوم به S وجود دارد که مشابه به سطح اجرایی 1 بوده ولی برای ورود به آن نیاز به کلمه عبور ریشه می باشد. این بدلیل مسایل امنیتی است. محتویات فایل etc/inittab مشخص کننده سطوح اجرایی سیستم شما و سطح اجرایی پیش گزیده می باشد. در زیر مثالی از این فایل را مشاهده می نمایید:

/etc/inittab This is the main configuration file of /sbin/init, which is executed by the kernel on startup. The default runlevel id:5:initdefault: /etc/init.d/rc takes care of runlevel handling runlevel 0 is System halt (Do not use this for initdefault!) runlevel 1 is Single user mode runlevel 2 is Local multiuser without remote network (e.g. NFS) runlevel 3 is Full multiuser with network runlevel 4 is Not used runlevel 5 is Full multiuser with network and xdm runlevel 6 is System reboot l0:0:wait:/etc/init.d/rc 0 l1:1:wait:/etc/init.d/rc 1 l2:2:wait:/etc/init.d/rc 2 l3:3:wait:/etc/init.d/rc 3 l5:5:wait:/etc/init.d/rc 5 l6:6:wait:/etc/init.d/rc 6 what to do in single-user mode ls:S:wait:/etc/init.d/rc S ~~:S:respawn:/sbin/sulogin what to do when CTRL-ALT-DEL is pressed ca::ctrlaltdel:/sbin/shutdown -r -t 4 now getty-programs for the normal runlevels The "id" field MUST be the same as the last characters of the device (after "tty"). 1:2345:respawn:/sbin/mingetty --noclear tty1 2:2345:respawn:/sbin/mingetty tty2 3:2345:respawn:/sbin/mingetty tty3 4:2345:respawn:/sbin/mingetty tty4 5:2345:respawn:/sbin/mingetty tty5 6:2345:respawn:/sbin/mingetty tty6

خط id:5:initdefault به معنی این است که سطح اجرایی پیش گزیده کامپیوتر شما سطح اجرایی 5 است. خطوط l1:1:wait:/etc/init.d/rc 1 و به همین ترتیب، باعث می شوند تا اسکریپت etc/init.d/rc سطح اجرایی مربوطه را بصورت یک آرگومان ارسال نماید. سپس این اسکریپت پروسه های خاص سطح اجرایی ارسال شده را آغاز می کند. تمام اسکریپت های کنترل کننده پروسه های مختلف در مسیر etc/init.d/ ذخیره شده اند. به طور معمول، بطور معمول پروسه هایی که با ورود به یک سطح اجرایی، اجرا یا متوقف خواهند شد در زیر دایرکتوری هایی مانند rc2.d یا rc5.d (همنام با شماره سطح اجرایی مربوطه شان) ذخیره شده اند. این فایل ها لینک های Symbolic به اسکریپت های موجود در etc/init.d/ می باشند. لینک هایی که با K آغاز می شوند، هنگام ورود به سطح اجرایی مربوطه نابود (Kill) خواهند شد. لینک هایی که با S شروع می شوند، هنگام ورود به آن سطح اجرایی شروع (Start) خواهند شد. این لینک ها بصورت الفبایی اجرا می شوند، به این معنی که ابتدا لینک های K آغاز شده و سپس لینک های S. ترتیب اجرای لینک های K و S با عددی دو رقمی که بلافاصله پس از حروف S یا K قرار می گیرد، تعیین می شود. این روش، روش استاندارد برای اجرای پروسه ها در آغاز فرایند بوت می باشد. این سیستم استاندارد به System V Init موسوم می باشد که مشابه با سیستم عامل یونیکس است. در صورتی که همه چیز به خوبی پیش رفته باشد، سیستم شما هم اکنون در حال اجرا بر روی سطح اجرایی انتخاب شده است. برای تغییر سطح اجرایی می توانید بصورت کاربر ریشه وارد شده و دستور init را در خط فرمان تایپ نمایید. برای مثال init 3. technotux

 

 

آخرین مطالب مشابه
 
KDE چیست؟ بررسی اجمالی و مقایسه دو سیستم عامل عمومی ویندوز و لینوکس
آیا لینوکس یک راز ناگفته دارد؟ لینوکس و سودای جایگزینی ویندوز
نصب وب سرور آپاچی بر روی حافظه فلش کدام توزیع گنو/لینوکس را انتخاب کنیم؟
تعیین سطوح دسترسی کاربران در لینوکس ساختار سیستم فایل لینوکس و یونیکس
برپا سازی کلاسترهای OpenMosix پروژه فدورا و آشنایی با Fedora Core 2
ترفند لینوکس آشنایی با برنامه حسابداری شخصی Grisbi
نخستین نگاه به GNOME 2.14 هفت گناه نابخشودنی راهبر لینوکس
یک سیستم فایل موازی نسل جدید برای کلاسترهای لینوکس