Làm cách nào để biết tôi có bộ tải khởi động nào?


21

Tôi biết Grub là cài đặt mặc định khi cài đặt Ubuntu nhưng tôi phải đối mặt với một hệ thống nhúng chạy 9.10 Desktop Edition. Sau đây là nội dung của tập tin phát hành lsb

ubuntu@ubuntu-desktop:/boot$ cat /etc/lsb-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=9.10
DISTRIB_CODENAME=karmic
DISTRIB_DESCRIPTION="Ubuntu 9.10"

nhưng hệ thống này không có bộ tải khởi động Grub và tôi muốn tìm hiểu xem nó sử dụng cái nào. Vậy có ý kiến ​​gì không?


wiki.debian.org/BootLoader liệt kê tất cả các trình tải khởi động có sẵn trong Debian, nếu bạn muốn kiểm tra từng cái. Hệ thống vòm là gì? Chỉ cần để lại một bình luận vì đây không phải là một câu trả lời thích hợp ...
andrews Something

Câu trả lời:



13

Nếu bạn có /etc/lilo.conftệp thì bạn đang sử dụng LILO (LInux LOader) Điều này có nghĩa là nếu bạn nhập liloví dụ, bạn sẽ thấy hộp thoại lệnh cho trình khởi chạy lilo.

Nếu bạn có /boot/grub/thư mục thì bạn đang sử dụng GRUB (Grand Unified Boot Loader) Điều này có nghĩa là bạn sẽ có thể sử dụng tất cả các tệp grub như grub-install, grub-restart ...

Ubuntu 9.10 là phiên bản đầu tiên sử dụng GRUB2 https://help.ubfox.com/community/DualBoot/Grub

CẬP NHẬT:

Đây là một kịch bản để kiểm tra bên trong khu vực đầu tiên của ổ đĩa cứng để biết nó đang sử dụng trình quản lý khởi động nào:

Giả sử ổ cứng của bạn đang ở SDA thì:

sudo dd if=/dev/sda bs=512 count=1 2>/dev/null | strings | grep -Eoi 'grub|lilo|acronis|reboot'

sẽ cho bạn biết bạn đang sử dụng bộ nạp khởi động nào.

Bạn có thể tưởng tượng phần còn lại ...
Danh sách các bộ tải khởi động có ở đây: http://en.wikipedia.org/wiki/Comparison_of_boot_loadershttp://wiki.debian.org/BootLoader (Dành cho các bản phân phối dựa trên Debian)
Ngoài ra nếu bạn muốn XEM đầu ra nhị phân thực sau đó thêm -a vào phần grep. Ví dụ:

sudo dd if=/dev/sda bs=512 count=1 2>&1 | grep -a GRUB Nó sẽ cho bạn thấy dữ liệu trong khối đầu tiên đó.

Bây giờ với thông tin mới này, bạn phải tìm trình quản lý khởi động mà bạn đang sử dụng.


Nops, không có bất kỳ trong số này.
binW

Cập nhật với một dòng lệnh nhỏ cho bạn.
Luis Alvarado

Ngoài ra, hãy thử đạp xe qua sda1, sda2vv trong trường hợp bạn có một phân vùng cứu hộ được thiết lập.
opyate

Làm cách nào để biết tôi đang sử dụng VPS và phương thức này không hoạt động? (thiết bị là / dev / simfs và lệnh không tạo ra đầu ra)
thegeko

@thegeko đó là một câu hỏi rất lớn bởi vì nó phụ thuộc vào nhà cung cấp của bạn, phần mềm họ đang sử dụng, dịch vụ họ đang cung cấp (IaaS, PaaS, MaaS, Cloud, Chuyên dụng, Ảo, v.v.)
Luis Alvarado

3

Sử dụng ddlệnh để đọc khu vực khởi động, sau đó sử dụng grepđể biết bộ tải khởi động của bạn:

dd if=/dev/hda bs=512 count=1 2>&1 | grep GRUB
dd if=/dev/hda bs=512 count=1 2>&1 | grep LILO

1

Bạn an toàn hơn khi kiểm tra phiên bản từ chính các công cụ (hơn là sử dụng dd cấp thấp hoặc các vật phẩm khác).

Ví dụ: thử nghiệm cho lilo:

root# lilo -V
bash: lilo: command not found

root# grub-install --version
grub-install (GRUB) 2.02~beta2-22

Tất nhiên, điều này sẽ không hoạt động nếu bạn đã cài đặt cả hai. Nếu đó là trường hợp, để tránh nhầm lẫn, hãy gỡ cài đặt những cái bạn không cần.


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.