• توجه: در صورتی که از کاربران قدیمی ایران انجمن هستید و امکان ورود به سایت را ندارید، میتوانید با آیدی altin_admin@ در تلگرام تماس حاصل نمایید.

چگونه دو ورژن لینوکس را در کنار هم نصب کنیم؟

..::آبی دل::..

متخصص بخش
چگونه دو ورژن لینوکس را در کنار هم نصب کنیم؟
3091qgp.png

امروزه با افزایش تنوع ورژن*های لینوکس و همچنین فراهم شدن دسترسی به بخشی از این ورژن*ها در ایران، کاربران زیادی مایل هستند تا دو یا چند ورژن را درکنار هم نصب کرده و ویژگی*ها و امکانات آنها را بررسی نمایند و ورژن مناسب برای نیازهایشان را انتخاب کنند. بنابراین لازم دیدم تا در یک مقاله تشریحی، نحوه نصب دو یا چند ورژن لینوکس را در کنار هم شرح دهم.
به چه چیزهایی نیاز داریم؟
چیز زیادی لازم نیست! شما حداقل به موارد زیر نیاز خواهید داشت:
۱) سه پارتیشن لینوکس که حداقل یکی از آنها قابل بوت باشد. (برای استفاده به عنوان پارتیشن boot) این در صورتی است که بخواهید تمامی نقاط اتصال مانند var، home و/ در یک پارتیشن قرار گیرند. در غیر این صورت تعداد پارتیشن*های مورد نیاز افزایش خواهد یافت اما همچنان تنها یکی از آنها باید قابل بوت باشد.
۲) حداقل یک ورژن (اگر بخواهید آنرا دوبار نصب کنید!) و ترجیحا دو ورژن مختلف لینوکس.
شروع کار
برای شروع کار، یک نسخه پشتیبان از نقطه اتصال /boot در یک فضای جداگانه مانند home تهیه کنید. این کار را می*توانید با استفاده از دستور زیر انجام دهید:
# cp -r /boot /home/alan
کافی است بجای home/alan/ مسیر دلخواه خود را قرار دهید. این کار را به این دلیل انجام می*دهید که ممکن است بخواهید ورژن دوم برنامه مدیر بوت خود را روی سیستم نصب نماید و معمولا اکثر ورژن*ها نیاز دارند تا قبل از نصب مدیر بوت، پارتیشن بوت را فرمت کنند. اگر بخواهید تنها از دو پارتیشن استفاده نمایید (یکی برای اولین ورژن و دومی برای ورژن) برای اینکه برنامه نصب ورژن دوم آنرا فرمت نکند، مجبور هستید از نصب برنامه مدیر بوت روی دیسک سخت صرف نظر کرده و بجای آن از فلاپی استفاده کنید که فکر نمی*کنم چندان این کار را دوست داشته باشید!
پس از اینکه کپی دایرکتوری بوت را انجام دادید، نصب ورژن دوم را انجام دهید. اگر فضای خالی بر روی دیسک سخت خود ندارید، باید قبل از آن با استفاده از ابزارهایی مانند qtparted یا cfdisk فضای خالی لازم را ایجاد نمایید. نصب ورژن دوم را ادامه داده و آنرا بر روی پارتیشن جدیدی که ایجاد کرده*اید (ویا آنرا قبلا داشتید و برای نصب ورژن دوم در نظر گرفته بودید) نصب کنید و اجازه دهید تا برنامه نصب پارتیشن بوت شما را فرمت کرده و مدیر بوت ورژن جدید را به طور عادی روی آن نصب نماید. به اینصورت دیگر لینوکس قدیمی شما قابل دسترسی نخواهد بود! نگران نباشید. آنرا برخواهید گرداند.
نگاهی به فرایند خاموش شدن لینوکس
بدلیل اینکه RAM بسیار سریعتر از خواندن و نوشتن روی دیسک سخت است، فایل سیستم لینوکس تغییرات ایجاد شده را در RAM بافر می*کند. این به این معنی است که در صورتی که شما سیستم*تان را بطور صحیح خاموش نکنید، جدیدترین تغییرات ذخیره نخواهند شد. ممکن است این مسئله وقتی تنها پای یک فایل در میان باشد، زیاد مهم نباشد، ولی به یاد داشته باشید که اطلاعات شما فقط همان فایل نیست. پروسه*های بسیاری مانند سیستم ثبت وقایع سیستم، اطلاعات خود را در فایل سیستم می*نویسند. از این مهمتر، اطلاعات خود فایل سیستم مانند تعداد بلاک استفاده شده، تعداد فایل*ها و دایرکتوری*ها موجود و مانند این است.
این خصوصیت در فایل سیستم*های قدیمی یونیکس و لینوکس مسئله*ای جدی به شمار می*رفت. البته در فایل سیستم*های جدید موسوم به روزنامه*ای یا Journaling file systems این مسئله حل شده و تمام تبادلات در یک فایل جایگزین ذخیره می*شود که امکان بازیافت و اجرای مجدد آن در راه*اندازی سیستم وجود دارد. فایل سیستم*های ReiserFS و ext3 مثالی از این فایل سیستم*های روزنامه*ای هستند. حتی با وجود این سیستم فایل*های جدید امن*تر آن است که سیستم خود را بطور صحیح خاموش کنید!

آیا باید کامپیوتر خود را خاموش کنید؟
اگر تنها می*خواهید کامپیوترتان را خاموش کنید، پاسخ بله است. من این بخش را به این علت نوشتم که برخی از کاربران کامپیوتر، تنها راه حل «برطرف کردن» برخی مشکلات را خاموش و روشن کردن یا reboot کامپیوترشان می*دانند. بدتر از این، این افراد فکر می*کنند که اگر خاموش و روشن کردن مشکلشان را برطرف نکرد، قدم بعدی نصب مجدد سیستم*عامل خواهد بود!
دلایل زیادی وجود دارد که در مورد سیستم*عامل لینوکس، این قدم*ها به هیچ وجه صحیح نیستند. به طور تاریخی، برخی از سیستم*عامل*ها یا آنقدر قدیمی بودند تا نتوانند از قابلیت Memory Access Protection استفاده کنند و یا این قابلیت اصلا در آنها پیاده سازی نشده بود. بنابراین هر برنامه خطازا، می*توانست حتی به حافظه مصرفی توسط برنامه*های دیگر یا حتی خود سیستم*عامل آسیب رساند. در چنین شرایطی، یک بوت مجدد، حل کننده مشکلات به شمار می*رود. به همین صورت، یک برنامه خطازا می*تواند به محتویات دیسک سخت نیز آسیب رسانده و شما را مجبور به نصب مجدد برنامه*ها یا سیستم*عامل نماید.
امروزه، حتی با سایر سیستم*عامل*ها نیز این مشکلات کمتر پیش می*آیند. ولی این عادت همچنان در کاربران باقی مانده است! در مورد لینوکس، این سیستم*عامل از همان ابتدا از Memory Access Protection استفاده کرده و مجوز*های دسترسی به فایل*ها، امکان نیاز به بوت مجدد و یا نصب مجدد نرم*افزار را به حداقل و محدود به خود نرم*افزار آسیب دیده و خطازا نموده است. با این حال این دلیل نمی*شود که این رفتارها به دنیای لینوکس هم سرایت نکرده باشند !
نگاهی دقیق* به فرایند راه*اندازی لینوکس
امروزه شما قادرید تا براحتی یکی از ورژن های لینوکس را تهیه کرده و آنرا نصب و استفاده نمایید بدون اینکه واقعا نیاز داشته باشید تا بخش*های فنی سیستم*عامل را درک نمایید. توضیح مختصری از فرایند راه*اندازی سیستم لینوکس را خدمتتان عرض میکنم.
اصطلاح فنی راه*اندازی کامپیوتر را فرایند بوت یا 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 MBRroot=/dev/hda1 # root partitioninstall=/boot/boot.bmap=/boot/mapdelay=50 # 5 second delay before auto-bootimage=/vmlinuz # kernel label=linux # name to refer to entry read-onlyimage=/vmlinuz.old # backup entry label=old read-only
در مثال بالا امکان انجام بوت از روی دو هسته مختلف یعنی vmlinuz وvmlinuz.old وجود دارد. هنگام بوت شما می*توانید یکی از این هسته*ها را انتخاب نمایید. با فشردن کلید TAB در اعلان لیلو، گزینه*های موجود لیست می*شوند. در صورتی که هسته جدیدی را با ویرایش فایل etc/lilo.conf اضافه کرده*اید و یا هر تغییر دیگری در فایل پیکربندی لیلو اعمال کرده*اید، باید پس از آن دستور lilo را اجرا نمایید تا این تغییرات اعمال شوند.
گراب فایل پیکربندی را هنگام بوت می*خواند. حجم MBR فقط ۵۱۲ بایت است و تنها بخشی از گراب که عهده دار فرایند*های بسیار ابتدایی بوت است در آن ذخیره می*شود. بقیه اطلاعات از روی پارتیشنی که اطلاعات بوت گراب در آن ذخیره شده است، بارگذاری می*گردد.
 
بالا