Nơi nhận tệp grub mà không cần sử dụng grub-install


1

Tôi đang ở trong một tình huống cụ thể. Tôi có MacBook Pro không có ổ đĩa CD bên trong và cả MacOS X (thiết lập tối thiểu) và Linux (hệ thống chính của tôi) đã được cài đặt. Trong quá trình nâng cấp chéo lên Ubuntu 12.04, tôi đã làm hỏng grub, do đó thư mục / boot / grub của tôi về cơ bản là trống rỗng. Điều này có nghĩa là tôi không thể khởi động Linux trên máy tính xách tay nữa mà chỉ được giải cứu.

Thông thường, điều này không có vấn đề gì vì bạn chỉ khởi động từ đĩa CD hoặc USB cứu hộ, nhưng thật không may với MacBook Pro, điều này là không thể (tôi đã cài đặt lại reFIT và nó cố khởi động, nhưng nó không thành công và EFI của Apple firmware không thể xử lý tình huống này).

Tuy nhiên, từ MacOS X, tôi vẫn có quyền truy cập ghi vào phân vùng Linux. Bây giờ tôi đã cố gắng tìm ra cách để tạo thư mục / boot / grub với các tệp cần thiết cho đến nay. Ảnh ISO của Ubuntu 12.04 chứa thư mục EFI không phải là thứ tôi đang tìm, thay vào đó tôi cần các tệp normal.mod cho phiên bản grub của Ubuntu 12.04. Tôi không có máy nào khác để thiết lập máy ảo Ubuntu 12.04 để giải nén điều này sau khi cài đặt grub, vì vậy tôi đang hỏi ý tưởng ở đây cách giải quyết mớ hỗn độn này.

Tái bút: Tôi đã cài đặt Linux trước đây khi tôi vẫn còn ổ đĩa CD bên trong đang hoạt động. Điều này đã biến mất ngay bây giờ.

Câu trả lời:


1

Sẽ giúp biết phiên bản Grub nào bạn đang chạy. Grub1 vs Grub2 thực sự có một số lượng lớn (thường gây khó chịu). Cái liên quan chính ở đây là liệu bạn có tệp /boot/grub/menu.lst (grub1) hay /boot/grub/grub.cfg (grub2).

Đây là những tệp kiểm soát những gì bạn thấy trong menu Grub khi bạn bật máy tính lần đầu tiên. Trong điều kiện bình thường, bạn không nên chỉnh sửa chúng theo cách thủ công vì các tập lệnh cập nhật xử lý việc đó cho bạn, nhưng như bạn đã nói là không thể trong tình huống này. Vì vậy, sao lưu các tệp này, sau đó chỉnh sửa thủ công chúng cho các phiên bản kernel phù hợp của bạn. Nếu chỉ sửa một trong những tệp này là không đủ (như bạn đã nói, / boot / grub hầu như trống rỗng), tôi sẽ cài đặt cùng một phiên bản ubfox trên máy hoặc ổ đĩa khác, sau đó sao chép nội dung. Hy vọng rằng các cấu hình tương tự nhau đủ để bạn có thể khởi động, nhưng không có gì đảm bảo rằng nó sẽ hoạt động.

Dù bạn làm gì, hãy sao lưu mọi tệp trước khi chỉnh sửa hoặc thay thế chúng!


Tôi đang chạy phiên bản mà Ubuntu 12.04 có (grub2-1.99 một cái gì đó). Tuy nhiên, vấn đề là tôi không thể cài đặt bất cứ thứ gì mới trên máy này và tôi không có cái khác. Cũng không có điểm nào khắc phục grub.cfg vì tôi thiếu tất cả các tệp khác (ví dụ: normal.mod).
Jacky

Tôi khuyên bạn nên tìm một hệ thống khác, vì nếu bạn thậm chí không thể khởi động hệ thống này từ CD, USB hoặc đĩa, thì bạn phải có một cái gì đó làm việc để thực sự cố gắng và khắc phục vấn đề.
New sysadmin

0

Nếu bạn có quyền truy cập vào một máy khác với ổ đĩa cd hoạt động, bạn có thể tạo một usb có thể khởi động với một số bản phân phối linux, như knoppix. Sau đó, bạn có thể khởi động máy từ đĩa cd và sửa lỗi grub.


Như tôi đã nói, tôi không thể khởi động từ USB hoặc CD trên máy này.
Jacky

Trong trường hợp đó, tôi nghĩ rằng ngay cả khi bạn điền / boot / grub, bạn không thể chạy linux để thực hiện update-grub2, vì vậy có lẽ grub sẽ không chạy.
linux with a hammer
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.