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

لطفاً به انجمن‌ها وارد شده و یا جهت ورود ثبت‌نام نمائید

لطفاً جهت ورود نام کاربری و رمز عبورتان را وارد نمائید

نویسنده موضوع: گراب دو و استفاده بهینه از آن  (دفعات بازدید: 3368 بار)

0 کاربر و 1 مهمان درحال مشاهده موضوع.

آفلاین امیرمهری

  • High Hero Member
  • *
  • ارسال: 1270
  • جنسیت : پسر
  • درورد بر اوبونتو
گراب دو و استفاده بهینه از آن
« : 29 آذر 1389، 08:27 ب‌ظ »
مدیر بوت استانداردی که لینوکس به همراه خود دارد (یعنی GRUB) به دومین نسل خود رسیده. این مدیر بوت تازه با نام GRUB2 در نگارش بتای بسیاری از گونه های کنونی لینوکس وجود دارد. در این مقاله می خواهیم شما را با ویژگی ها و برتری های آن آشنا کنیم.

GRUB2 راه خود در دنیای لینوکس را با آهستگی اما با اطمینان می پیماید. دومین نسل Grand Unified Bootloader برخی نوآوری ها را دارد. این مدیریت برخلاف سلف خود یعنی GRUB Legacy می تواند از سیستم فایل ext4 نیز به کار بیفتد. افزون بر این، تازه ترین نگارش آن از روی LVM یا Logical Volume Manager و دیسک های RAID نیز به کار می افتد. GRUB2 برای ارتباط با root از استاندارد UUID یا Universally Unique Identifier استفاده می کند. از دیگر نوآوری های آن می توان از پشتیبانی از EFI یا Extensible Firmware Interface که برای کاربران Mac جالب است نام برد.

تفاوت های اصلی میان GRUB Legacy و GRUB2
GRUB2 برخلاف مدیر بوت پیشین به Stage 1.5 نیازی ندارد. Stage 1.5 میان MBR و اولین بلوک از اولین پارتیشن قرار دارد. Stage 2 در GRUB2 یک هسته (Kernel) دارد که فقط ضروری ترین کدها روی آن قرار می گیرند. برخی از این کدها عبارتند از بارگذار ELF ، Media Access ، یک پوسته برای موارد اضطراری و کد مربوط به عملیات باز کردن داده های فشرده سازی شده. GRUB2 هنگام نصب ، ماجول مربوط به سیستم فایل را در فایل core.img ساخته و آن را با روش LZMA یا LZO فشرده می کند. معمولاً این فایل آنقدر کوچک است که می توان آن را در پشت سر MBR جا داد. GRUB2 هنگام به کار افتادن کامپیوتر، ماجول مربوطه را باز کرده و فایل پیکربندی grub.cfg را بارگذاری می کند.
کسانی که تجربه کار با سیستم های قبلی را دارند ممکن است تصور کنند که فایل grub.cfg به جای menu.lst آمده. اما فایل grub.cfg برای کنترل منوهاست و اسکریپت های GRUB2 آن را به طور خودکار می سازند. از آنجا که برخی فرمان ها در GRUB2 تغییر کرده اند نمی توان همان محتویات nemu.lst را در grub.cfg کپی کرد. کاربران به هیچ وجه نباید این فایل را دستکاری کنند چون محتویات آن بسیار حساس است. البته برخی مداخل باید در فایل /etc/grub.d/40_custom قرار بگیرند. در GRUB2 تنظیم منوی بوت مطابق سلیقه ، کمی ساده تر شده. اکنون GRUB2 از Themeهایی پشتیبانی می کند که می توانند به منوی بوت ظاهر زیباتری بدهند. فایل مربوط به این تنظیمات در /etc/default/grub قرار دارد. هرگونه تغییر در فایل های پیکربندی پس از اجرای فرمان
grub-mkconfig -o /boot/grub/grub.cfgفعال خواهد شد. سیستم عامل های دیگر مانند ویندوز باید خودشان بارگذار بوت را شناسایی کرده و به منوی خود اضافه کنند.

GRUB2 و Coreboot
GRUB2 را می توان به عنوان Payload برای Coreboot به کار برد. Coreboot یک بایوس با کدباز است که پیش از این با نام LinuxBIOS ایجاد شده بود. در اینحالت GRUB2 از MBR سخت دیسک استفاده نمی کند بلکه مستقیماً در تراشه بایوس می نشیند. به این ترتیب Coreboot ارزشدهی های آغازین را انجام داده و سپس کنترل را به GRUB2 می سپارد.

نصب بارگذار بوت از Live-CD
اگر بخواهید GRUB2 را از روی یک Live-CD نصب کنید اصولاً کار مشکلی نیست. برای نمونه Ubuntu 9.10 را در نظر می گیریم. به حالت Live-Mode بروید. اکنون می توانید به کمک terminal و فرمان df-Th پارتیشن سیستمی را پیدا کنید. سپس آن را به مسیری مانند /media/tmp ، mount کنید. اگر می خواهید برای بوت یک پارتیشن جدا داشته باشید باید آن را به /media/tmp/boot ، mount کنید. سپس می توانید بارگذار بوت را با فرمان زیر نصب کنید:

grub-install -root-directory=/media/tmp/dev/sdx
فهرست /etc/grub.d
فهرست /etc/grub.d رفتار و نقشی مانند فهرست های init در لینوکس دارد. اسکریپت ها هر کدام شماره ای دارند که یک توضیح همراه آن می آید. GRUB2 این اسکریپت ها را به ترتیب شماره شان اجرا می کند برای نمونه بارگذار بوت فایل 30_osprober را پیش از 40_custom فراخوانی می کند.
شما می توانید اسکریپت های خود را در فایل ها دلخواهی که ایجاد می کنید بنویسید و به این ترتیب چگونگی اجرای GRUB2 را کنترل کنید. اما توجه داشته باشید که فایل باید قابل اجرا باشد. در لینوکس با فرمان
chmod+x <نام فایل>
فایل اجرایی می شود. برای فعال شدن تغییرات باید فرمان
grubmkconfig -o /boot/grub/grub.cfgرا اجرا کنید.

حفاظت با گذرواژه در GRUB2
GRUB2 در حال حاضر برای حفاظت با گذرواژه از روش ساده ای استفاده می کند که البته توان رمزگذاری ندارد. بنابراین هر کس از تجربه کافی در کار با لینوکس برخوردار باشد می تواند بسادگی به گذرواژه ها دسترسی پیدا کند. کاربران GRUB می توانند از کاربران سیستم جدا باشند.
برای به کار انداختن مکانیزم حفاظت با گذرواژه ها باید در فایل /etc/grub.d/00_heafer یک Superuser تعریف کنید. پس از آن می توانید به تعداد دلخواه کاربر ایجاد کنید. تنها کافی است در همین فایل
set seuperusers="<username>" password <username 1> <password 1> را وارد کنید. برای ایجاد کاربر بعدی از فرمان زیر استفاده کنید:
password <username 2> <password 2> Superuser اجازه به کار انداختن هر یک از گزینه های منو و استفاده از سطر فرمان GRUB2 را دارد.
پس از این کار باید در فایل اسکریپت مربوطه تعریف کنید که کدام کاربر به کدام گزینه دسترسی دارد. برای نمونه در فایل /etc/grub.d/10_linux سطری که با menuentry آغاز می شود را بیابید و پیش از پرانتز --users user1 را اضافه کنید. به این ترتیب تنها User1 اجازه به کار انداختن این گزینه را خواهد داشت. در نتیجه دست کم به طور نظری کنترل سیستم ممکن می شود. در ubuntuforums.org مباحث فصلی درباره محافظت از گذرواژه ها در GRUB2 وجود دارد.

محیط زیباتر برای بوت

For I in{/boot/grub,/usr/share/images/desktop-base}/moreblue-orbit-grub,{png,tga};do
در صورت لزوم، زیباسازی GRUB2 کار دشواری نیست. برای نمونه در ubuntu 9.10 تنها کافی است که بسته grub2-splashimages را نصب کنید. تصاویر در فهرست /usr/share/images/grub جای می گیرد. اگر می خواهید از یک پارتیشن مجزا برای بوت و یک پارتیشن رمزگذاری شده برای root استفاده کنید می توانید عکس ها را در /boot/grub هم کپی کنید.
پس از آن باید فایل /etc/grub.d/05_debian_theme را ویرایش کرده سطر زیر را در این فایل بیابید:

for i in {/boot/grub/usr/share/images/grub}/Hortensia-1.{png.tga};do
سپس سطر را برای نمونه به شکل زیر تغییر بدهید:

for i in {/boot/grub/usr/share/imags/grub}/Hortensia-1.{png,tga};do
تا کامپیوتر در آغاز کار خود با صفحه تازه ای به شما خوش آمد بگوید. روشن است که شما می توانید برای این کار از تصاویر مورد نظر خود استفاده کنید.
رنگ نوشته را هم می توانید مطابق سلیقه با set color_normal و set color_highlight تنظیم کنید. به کمک فایل /etc/default/grub می توانید وضوح تصویر را برای محیط بوت تنظیم کنید. گزینه مربوط به این کار، پارامتر GRUB_GFXMODE است. پس از تغییر این پارامتر، فراخوانی update-grub را فراموش نکنید چون تنها با این کار است که تغییرات در مدیر بوت به کار می افتد.

خلاصه
بی هیچ شکی GRUB2 گامی رو به جلوست؛ دست کم به دلیل پشتیبانی از ext4 ، LVM و RAID. اما اینجا هم قانون همیشگی "Never Change a Running System" صادق است. بنابراین اگر استفاده از توانایی های تازه آن برای تان ضرورتی ندارد می توانید با آن کاری نداشته باشید. نصب GRUB2 در سرعت کار کامپیوترهای سرویس دهنده تاثیری ندارد.
اما اگر می خواهید سیستم را از اول نصب کنید یا می خواهید از ext4 ، LVM یا RAID بهره ببرید استفاده از GRUB2 را حتماً توصیه می کنیم . بد نیست بدانید که سیستم فایل ext4 در آزمایش ها سرعت و چالاکی بیشتری از خود نشان داده. اما پیش از اقدام به استفاده از آن حتما درباره جزئیات آن بخوبی مطالعه کنید تا اتفاق ناگواری روی ندهد.
در گونه های مختلف لینوکس استفاده از GRUB2 به عنوان مدیر بوت استاندارد آغاز شده. GRUB2 در مقایسه با نگارش پیشین GRUB انعطاف پذیرتر بوده و از فناوری های تازه پشتیبانی می کند. البته همانگونه که در مقاله نیز اشاره شد GRUB2 هنوز در مرحله Beta است و پیش از کار با آن باید حتماً مستندات آن را مطالعه کنید.
« آخرین ویرایش: 30 آذر 1389، 12:27 ب‌ظ توسط amir mehri »
خداحافظ وبلاگ نويسي

من كاربر حرفه اي لينوكس نيستم
فقط خوب جستجو ميكنم.

آفلاین alend

  • High Hero Member
  • *
  • ارسال: 1319
پاسخ به: گراب دو و استفاده بهینه از آن
« پاسخ #1 : 30 آذر 1389، 09:37 ق‌ظ »
خیل جالب و کامل بود.

آفلاین سید وحید رضا برهانی

  • High Hero Member
  • *
  • ارسال: 1668
  • جنسیت : پسر
  • یک مخالف نرم افزار اوپن سورس
پاسخ به: گراب دو و استفاده بهینه از آن
« پاسخ #2 : 30 آذر 1389، 01:17 ب‌ظ »
+1
سلام
خیلی مقاله خوبی بود
نرم افزاری که نشه سیخ انگولکش کرد (به هر دلیلی چه به‌خاطر قانون و چه پیچیدگی یا توسعه سریع)نرم افزار آزاد نیست حالا مهم نیست چه بنیادی یا چه افرادی اون رو نوشته باشند یا GPL باشه یانه!
نرم افزار آزاد یک جنبش هست نه یک تیکه کاغذ پاره(GPL)
حق فهمیدن از حق خوندن مهمتره

آفلاین mah454

  • Jr. Member
  • *
  • ارسال: 48
پاسخ به: گراب دو و استفاده بهینه از آن
« پاسخ #3 : 04 دی 1389، 12:40 ب‌ظ »
سلام
من یک مقاله کامل از دستورات گراب توی ویکی سایت تکنوتاکس گزاشتم .
میتونید از اینجا مطالعه کنید .
با تشکر .

آفلاین سید وحید رضا برهانی

  • High Hero Member
  • *
  • ارسال: 1668
  • جنسیت : پسر
  • یک مخالف نرم افزار اوپن سورس
پاسخ به: گراب دو و استفاده بهینه از آن
« پاسخ #4 : 04 دی 1389، 01:23 ب‌ظ »
سلام
من یک مقاله کامل از دستورات گراب توی ویکی سایت تکنوتاکس گزاشتم .
میتونید از اینجا مطالعه کنید .
با تشکر .
ممنون
مستند سازی کار سخت ولی خیلی لازم هست امید وارم مستندات بیشتری رو تهیه کنید
موفق باشید
نرم افزاری که نشه سیخ انگولکش کرد (به هر دلیلی چه به‌خاطر قانون و چه پیچیدگی یا توسعه سریع)نرم افزار آزاد نیست حالا مهم نیست چه بنیادی یا چه افرادی اون رو نوشته باشند یا GPL باشه یانه!
نرم افزار آزاد یک جنبش هست نه یک تیکه کاغذ پاره(GPL)
حق فهمیدن از حق خوندن مهمتره

آفلاین علیرضا غریب

  • Sr. Member
  • *
  • ارسال: 329
  • جنسیت : پسر
پاسخ : گراب دو و استفاده بهینه از آن
« پاسخ #5 : 20 آبان 1391، 03:13 ب‌ظ »
امیدوارم جای مناسبی سوالمو پرسیده باشم و اگر هم جاش مناسب نیست بجا غر زدن لطف کنید جوابمو در پیام خصوصی بدین.

۱. من Gnomebuntu plymouth رو از http://gnome-look.org/content/show.php/Gnomebuntu+plymouth?content=152878 گرفتم و نصب کردم و ما الان که میخوام حذفش کنم و همون حالت اولیشو بزارم از مرکز نرم افزاری حذف نمیشه و باید چیکار کنم؟
زملنی که در مرکز نرم افزاری حذف نمیشه این پیغامو میده
This error could be caused by required additional software packages which are missing or not installable. Furthermore there could be a conflict between software packages which are not allowed to be installed at the same time.و در جزئیاتش نوشتهThe following packages have unmet dependencies:

libunity-webapps0: Depends: libglib2.0-0 (>= 2.31.8) but 2.34.0-1ubuntu1 is to be installed
                   Depends: libgtk-3-0 (>= 3.0.0) but 3.6.0-0ubuntu3 is to be installed
                   Depends: libsqlite3-0 (>= 3.5.9) but 3.7.13-1 is to be installed
                   Depends: libwnck-3-0 (>= 2.91.6) but 3.4.3-0ubuntu1 is to be installed
openssh-client: ssh:
۲. من بسته grub2-splashimages رو نصب کردم اما نمیدونم چطوری میتونم از عکس هاش به عنوان پس زمینه برای boot loader استفاده کنم.
میشه راهنمایی کنید؟
۳. چطور میشه گراب رو به حالت اولیه برگردوند؟
« آخرین ویرایش: 20 آبان 1391، 04:00 ب‌ظ توسط به کدامین گناه؟ »

آفلاین دانیال بهزادی

  • ناظر انجمن
  • *
  • ارسال: 19722
  • جنسیت : پسر
  • Urahara Kiesuke
    • وبلاگ
پاسخ : گراب دو و استفاده بهینه از آن
« پاسخ #6 : 21 آبان 1391، 12:53 ق‌ظ »
۱. کدوم بسته رو می‌خوای نصب کنی؟ از برنامه‌های مدیریت پلی‌ماث استفاده کن
۲. http://wiki.ubuntu.ir/Grub2Howto/#head-9ae5ddfc2d0ba9c14c09ef82950ee5c0e1619752
۳. http://wiki.ubuntu.ir/Grub2Howto/Recover
اگه این ارسال بهت کمک کرد، دنبال دکمهٔ تشکر نگرد. به جاش تو هم به جامعهٔ آزادت کمک کن

آفلاین علیرضا غریب

  • Sr. Member
  • *
  • ارسال: 329
  • جنسیت : پسر
پاسخ : گراب دو و استفاده بهینه از آن
« پاسخ #7 : 21 آبان 1391، 01:24 ق‌ظ »
۱. کدوم بسته رو می‌خوای نصب کنی؟ از برنامه‌های مدیریت پلی‌ماث استفاده کن
۲. http://wiki.ubuntu.ir/Grub2Howto/#head-9ae5ddfc2d0ba9c14c09ef82950ee5c0e1619752
۳. http://wiki.ubuntu.ir/Grub2Howto/Recover
بابت جواب ۲ تشکر و قبلا هم دیده بودم اما چندتا سوال ازش دارم که باید بپزسم ازتون.
بابت جواب ۳ باید بگم که منظورم خرابی یا ناسازگاریش با ویندوز نیست.منظورم اینه که بعد تغییراتی که میدم چطور این تغییرات رو خیلی ساده به حالت اول برگردونم.آیا نمیشه از گراب پشتیبان گرفت؟
من با این دستور sudo cp /boot/grub/menu.lst /boot/grub/menu.lst.back خواستم پشتیبان بگیرم اما بعد وارد کردن دستور این خروجی رو داد
cp: cannot stat `/boot/grub/menu.lst': No such file or directory
« آخرین ویرایش: 21 آبان 1391، 01:28 ق‌ظ توسط به کدامین گناه؟ »

آفلاین دانیال بهزادی

  • ناظر انجمن
  • *
  • ارسال: 19722
  • جنسیت : پسر
  • Urahara Kiesuke
    • وبلاگ
پاسخ : گراب دو و استفاده بهینه از آن
« پاسخ #8 : 21 آبان 1391، 02:13 ق‌ظ »
خب menu.lst نداره گراب۲ که!
اگه این ارسال بهت کمک کرد، دنبال دکمهٔ تشکر نگرد. به جاش تو هم به جامعهٔ آزادت کمک کن

آفلاین علیرضا غریب

  • Sr. Member
  • *
  • ارسال: 329
  • جنسیت : پسر
پاسخ : گراب دو و استفاده بهینه از آن
« پاسخ #9 : 21 آبان 1391، 02:23 ق‌ظ »
خب menu.lst نداره گراب۲ که!
بله واس همین پرسیدم چطور باید پشتیبان بگیرم آقای بهزادی.

آفلاین دانیال بهزادی

  • ناظر انجمن
  • *
  • ارسال: 19722
  • جنسیت : پسر
  • Urahara Kiesuke
    • وبلاگ
پاسخ : گراب دو و استفاده بهینه از آن
« پاسخ #10 : 22 آبان 1391، 06:43 ب‌ظ »
$ cd /boot/grub/
$ sudo cp grub.cfg grub.cfg.old
اگه این ارسال بهت کمک کرد، دنبال دکمهٔ تشکر نگرد. به جاش تو هم به جامعهٔ آزادت کمک کن