Fedora 15 - Kernel Panic không đồng bộ hóa: VFS: Không thể gắn root vào khối không xác định (0,0)


4

Nhanh đến điểm ..

Tôi đã cài đặt trên hệ thống của mình một bản sao Fedora 15 và Ubuntu 11.04. Lần đầu tiên tôi cài đặt Ubuntu trên / dev / sda5 và grub2 đã được cài đặt vào lúc bắt đầu của / dev / sda. Tiếp theo tôi đã cài đặt Fedora trên / dev / sda6 và sau một vài lần giới thiệu, tôi đã cài đặt hệ thống khởi động của mình khi bắt đầu / dev / sda6. Sau này, grub không thể hiển thị cho tôi thông tin về cài đặt Fedora của tôi, nhưng tôi đã nhập vào Ubuntu và áp dụng update-grub, và khi tôi khởi động lại, tôi có thể nhập vào Fedora. Vấn đề là khi tôi cập nhật bản phân phối Fedora của tôi từ 2.6,38.6-26.rc1.fc15 lên 2.6.40-4.fc15 và tôi đã áp dụng update-grub trên ubfox sau đó. Tại thời điểm tôi muốn chạy kernel mới trên grub, nó xuất hiện Kernel Panic này. Tôi không biết phải làm gì, vì tôi đã tìm thấy rất nhiều thông tin về vấn đề này nhưng không áp dụng cụ thể cho trường hợp này. Nếu bạn cần biết thêm chi tiết chỉ cần hỏi.

Cập nhật:

Đây là các mục trong tệp /boot/grub/grub.cfg được tạo sau khi chạy update-grub.

### BEGIN /etc/grub.d/30_os-prober ###
menuentry "Fedora (2.6.40-4.fc15.x86_64) (on /dev/sda6)" --class gnu-linux --class gnu --class os {
    insmod part_msdos
    insmod ext2
    set root='(/dev/sda,msdos6)'
    search --no-floppy --fs-uuid --set=root 459a7d80-cc8f-4ae0-89cf-49593a9221e2
    linux /boot/vmlinuz-2.6.40-4.fc15.x86_64 ro root=UUID=459a7d80-cc8f-4ae0-89cf-49593a9221e2 rd_NO_LUKS rd_NO_LVM rd_NO_MD rd_NO_DM LANG=en_US.UTF-8 SYSFONT=latarcyrheb-sun16 KEYTABLE=la-latin1 rhgb quiet
}
menuentry "Fedora (2.6.38.6-26.rc1.fc15.x86_64) (on /dev/sda6)" --class gnu-linux --class gnu --class os {
    insmod part_msdos
    insmod ext2
    set root='(/dev/sda,msdos6)'
    search --no-floppy --fs-uuid --set=root 459a7d80-cc8f-4ae0-89cf-49593a9221e2
    linux /boot/vmlinuz-2.6.38.6-26.rc1.fc15.x86_64 ro root=UUID=459a7d80-cc8f-4ae0-89cf-49593a9221e2 rd_NO_LUKS rd_NO_LVM rd_NO_MD rd_NO_DM LANG=en_US.UTF-8 SYSFONT=latarcyrheb-sun16 KEYTABLE=la-latin1 rhgb quiet
    initrd /boot/initramfs-2.6.38.6-26.rc1.fc15.x86_64.img
}

Hạt nhân không hoạt động là hạt nhân đầu tiên. Sự khác biệt duy nhất tôi thấy là hạt nhân làm việc có một lệnh initrd. Tôi đã cố gắng tái tạo điều này trong kernel không hoạt động, thay đổi giá trị kernerl nhưng nó không hoạt động. Tôi hy vọng điều này có thể là một số trợ giúp.

Trân trọng.

Câu trả lời:


2

Dòng initrd /boot/initramfs-kernel.version.imgnày cho grub biết nơi tìm đĩa RAM ban đầu sẽ được sử dụng bởi kernel khi khởi động. Trong quá trình khởi động, nhân Linux gắn vào đĩa RAM initrd, chứa hệ thống tệp tạm thời, một số mô-đun hạt nhân và các tiện ích khác cần thiết cho quá trình khởi động. Nếu đĩa RAM không thể được gắn vì một số lý do, kết quả là sự hoảng loạn hạt nhân.

Bạn có thể kiểm tra xem hình ảnh đĩa RAM chính xác có được tạo trong quá trình nâng cấp hay không bằng cách xem nó có tồn tại trong thư mục / boot không. Nếu không có tệp nào cho kernel mới của bạn hoặc nếu nó tồn tại nhưng bị lỗi nào đó, bạn có thể tạo một tệp mới bằng lệnh dracut .

Đây là tài liệu Fedora 15 để nâng cấp kernel thủ công , bài viết của IBM về initrd và bài viết của IBM về quy trình khởi động Linux .


1

Nếu Ubuntu tìm thấy cả hai nhân Fedora và bạn có thể khởi động một nhưng không phải cái khác, hãy so sánh cả hai mục trên dấu nhắc GRUB2. Dường như với tôi rằng hạt nhân Fedora mới trỏ đến phân vùng khác nhau.


Tôi đã so sánh cả hai mục và gần như giống hệt nhau, tôi sẽ cập nhật câu hỏi với thông tin này.
Marco Antonio

1

Tôi đã khởi động với một kernel cũ và thử dracut cho kernel mới! Ít nhất là một vài lần thử và không có giải pháp! Vì vậy, tôi tìm thấy một cách giải quyết khác.

Đơn giản chỉ cần gọi lệnh này trong terminal:

yum reinstall kernel

điều này xây dựng lại kernel mới nhất và (tuyệt vời) một initrd mới, bây giờ boot đã hoàn thành


Điều này có thể không hoạt động trên Fedora; gói kernel không thể được cài đặt lại. Thay vào đó, những gì bạn phải làm là UN-install bất kỳ gói kernel nào bạn muốn xây dựng lại bằng cách sử dụng yum remove kernel-x.x.xvà sau đó cài đặt lại. Xem mattiasgeniar.be/2012/07/23/ cường
Dmitri

1

Tôi đã chỉnh sửa grub.conf Tôi đã thêm boot=/dev/sda2trước thông tin kernel. phân vùng của bạn có thể khác nhau. Tôi đã mất ba ngày dùng thử và lỗi để tìm ra điều này.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.