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

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

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




نویسنده موضوع: تجربه من در حلّ مساله کرنل پنیک آرچ  (دفعات بازدید: 2004 بار)

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

آفلاین Arcush

  • Sr. Member
  • *
  • ارسال: 331
  • جنسیت : پسر
تجربه من در حلّ مساله کرنل پنیک آرچ
« : 09 امرداد 1394، 01:25 ب‌ظ »
سلام

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


در ادامه، فرض بر این است که یک آرچ که میهمان یک آرچ دیگر است، دچار کرنل پنیک شده است:



 مرحله صفر-  اگر اطّلاعات مهمی دارید، با یک دیسک گنو/لینوکس chroot  کنید و آن ها را بردارید (گرچه برای کسی که یک بار آرچ را نصب کرده باشد، اتفاق بدی نخواهد افتاد).

 مرحله نیم-  سیستم عامل کرنل پنیک شده را start  کنید. از شاخه Device، یکی از زبانه های CD/DVD Devices یا USB Devices  را برگزیده و Deviceی را که قرار است بوت دیسک از آن انجام شود، انتخاب کنید. در ادامه فرض کرده ایم که یک دیسک نوری حاوی توزیع گنو/لینوکس bootable است.

 مرحله۱-  ابتدا روی آپشن سیستم عامل کرنل پنیک شده کلیک راست می کنیم و از منوی ستینگ و سپس زبانه system، گزینه firdt boot option  را روی CD/DVD  قرار می دهیم. بعد، سیستم عامل کرنل پنیک شده را راه می اندازیم تا سی دی آرچ بوت شود.

 مرحله۲-  در این مرحله، وارد نصّاب بوت می شویم. سپس تمام پارتیشن های موجود را ماونت می کنیم. من ابتدا با دستور
lsblkپارتیشن های خود را یادآوری کرده و سپس همه آن ها را ماونت می کنم.

mount /dev/sda2 /mnt
mount /dev/sda4 /mnt


پارتیشن /dev/sdaی من swap  است که  در مورد آن به صورت زیر عمل می کنم.

mkswap /dev/sda3
swapon /dev/sda3


 مرحله۳-  حال یک دایرکتوری برای ماونت کردن پارتیشن روت ایجاد کرده و پارتیشن روت را در آن ماونت کنید:

mkdir /mnt/arch
mount /dev/sda2 /mnt/arch
اکنون بایستی به root  سیستم کرنل پنیک شده، chroot  کنید. این کار را با دستور زیر انجام دهید.
arch-chroot /mnt/arch
توجّه کنید که تا قبل از این مرحله، کنار تمام دستورات،
root@archiso~#
قرار دارد ولی بعد از chroot، وارد شل روت سیستم کرنل پنیک شده خواهید شد.


 مرحله۴-  در این مرحله، باید مطمین شویم تا pacman  می تواند به درستی کار خود را انجام دهد. درواقع ممکن است یک یا چند بسته یا کتابخانه که پکمن به آن ها وابسته است، تخریب یا حذف شده باشند. دستور
pacman --version
را وارد کنید. یک پیام شبیه به
.--.                  Pacman v4.2.1 - libalpm v9.0.1
/ _.-' .-.  .-.  .-.   Copyright (C) 2006-2014 Pacman Development Team
\  '-. '-'  '-'  '-'   Copyright (C) 2002-2006 Judd Vinet
 '--'
                       This program may be freely redistributed under
                       the terms of the GNU General Public License.
نشان دهنده این است که هیچ مشکلی برای گذر به مرحله (۵) وجود ندارد. درغیراینصورت، متن پیام خطا دربرگیرنده بسته/کتابخانه (های) تخریب شده است. فرض کنیم نام یکی از آن بسته/کتابخانه (ها) مثلا mesal باشد. در اینصورت با دستور

ls -l /var/cache/pacman/pkg/mesal*مطمین شوید که فایل compressed  شده آن در کش پکمن موجود است. سپس تحقیق کنید که این فایل بایستی در چه مسیری درحالت عادی قرار داشته باشد. مثلا در مسیر /masir. سپس دستور زیر را وارد کنید.

cp /var/cache/pacman/pkg/mesal* /masir
tar -xf /masir/mesal*
حال، دوباره خروجی دستور
pacman --versionرا ملاحظه کنید.


 مرحله۵-  اکنون موقع آن است که کرنل سیستم کرنل پنیک شده را بازگردانید. ابتدا باید از جزییات دقیق کرنل پنیک شده، اطلاع حاصل کنید. من اینکار را با  زدن دستور

find /var/cache -name linux-و دوبار زدن دکمه tab  متوالی، انجام می دهم. چند فایل که یکی از  آن ها عبارت از

linux-4.0.5-1-x86_64.pkg.tar.xz
است، یافته خواهند شد( چنین فایلی برای شما ممکن است دارای عددهای متفاوتی باشد).

حال با دستور زیر، این کرنل را بازگردانی می کنم.

pacman -U /var/cache/pacman/pkg/linux-4.0.5-1-x86_64.pkg.tar.xz                   

پیغام زیر نشان دهنده اتمام موفقیت آمیز فرایند است.



 مرحله۶-  اکنون دستور زیر را وارد کنید.
mkinitcpio -p linuxکه خروجی مشابه



دارد. سپس
grub-mkconfig -o /boot/grub/grub.cfg
که خروجی مشابه
 


دارد.


 مرحله۷-  حالا ctrl+D  را زده و از حالت chroot  خارج شوید. سپس

دستور
umount -R /mnt
reboot


را بزنید. توجه کنید که بعد از زدن این دستور، منتظر باشید تا یک بار دیگر سی دی آرچ بوت شود. سپس سیستم مجازی را power off  کرده و تیک گزینه CD/DVD  را از منوی boot order  بردارید. اکنون سیستم عامل مجازی را start  کنید. اگر خبری از کرنل پنیک نبود، که کار تمام است. یک خروجی مشابه



نشان دهنده حل مساله است  که همانطور که توضیح داده، یک و نیم دقیقه طول می کشد تا همه چیز به حالت اوّل بازگردد.

  مرحله۸−  درحالتی که هنوز کرنل پنیک مرتفع نشده، از ابتدا تمام مراحل قبل را- به استثنای مرحله (4) که یک بار انجام دادن آن کافیست،- انجام دهید و بعد از دستور
pacman -U /var/cache/pacman/pkg/linux-4.0.5-1-x86_64.pkg.tar.xz                     

در مرحله آخر، دستور

pacmasn -Syu

را زده و سپس از chroot خارج شده و ریبوت کنید (این مرحله برای صرفه جویی در مصرف ترافیک اینترنت جدا شده است).

توجّه: با توجّه به خروجی مرحله (۵)، گاهی نیاز به استفاده از دستور

mkinitcpio -p linux
در مرحله (۶) نیست.
« آخرین ویرایش: 09 امرداد 1394، 02:03 ب‌ظ توسط Arcush »
pacman -Rs ubuntu

آفلاین محمد فدوی

  • Sr. Member
  • *
  • ارسال: 485
  • جنسیت : پسر
  • آغاز آزادی از رایانهٔ شخصی
    • آغاز آزادی از رایانهٔ شخصی
پاسخ : تجربه من در حلّ مساله کرنل پنیک آرچ
« پاسخ #1 : 09 امرداد 1394، 03:01 ب‌ظ »
عالی! خسته نباشی. هرچند تابحال این مشکل رو توی آرچ‌لینوکس تجربه نکردم ولی به نظر کامل و جامع بود.. به نظرم توی ویکی بنویسش ;)
اگر به بهداشت و فرهنگ رفتار با حیوانات علاقه دارید، از vetMD.ir دیدن کنید.
وبلاگ شخصی من: http://fadavi.net