Trang chủ / Linux / Bài 3: Tìm hiểu GRUB Boot Loader và quá trình khởi động hệ thống

Bài 3: Tìm hiểu GRUB Boot Loader và quá trình khởi động hệ thống

Trong bài hôm nay chúng ta sẽ tìm hiểu về GRUB Boot Loader và quá trình khởi động của hệ thống. Bạn sẽ có cái nhìn thật chi tiết về cách mà máy tính làm việc.

Qúa trình khởi động hệ thống.

Khi bạn bấm vào nút Power để khởi động máy tính thì:

  1. Bios sẽ được kích hoạt và nó bắt đầu kiểm tra phần cứng máy tính.
  2. GRUB Boot Loader sẽ hiển thị menu để bạn chọn load hệ điều hành nào.
  3. Hệ điều hành đã được khởi động và sẵn sàng phục vụ.

Tìm hiểu về Bios?

Bios (Basic Input/Output System) là một nhóm lệnh được lưu trữ trên chip firmware trên mainboard của máy tính. Nó có nhiệm vụ kiểm tra các thiết bị phần cứng trong máy tính. Bạn hãy để ý khi vừa bấm nút power có một màn hình đen và chữ màu trắng chạy liên tục, đèn bàn phím thì nhấp nháy… Đó là quá trình Bios đang làm việc. Bios có thể giúp bạn thay đổi boot từ ổ cứng, usb, hay DVD… Tuỳ theo chức năng của mainboard Bios còn có thế giúp bạn cấu hình RAID nữa.

Để truy cập vào chỉnh sửa Bios thì trong quá trình khởi động bạn nhấn phím F2 (một số dòng máy có thể là: F1, Del, Esc…)

Thay đổi cấu hình Bios cũng khá nguy hiểm. Ví dụ bạn chỉ cần thay đổi sai trong việc cấu hình RAID cũng có thể mất dữ liệu.

Sau khi quá trình kiểm tra phần cứng hoàn tất. Bios sẽ đọc MBR (Master Boot Record) trên boot drive để tìm kiếm Boot Loader. Nếu nó tìm được Boot Loader thì quá trình khởi động thứ 2 sẽ được thực hiện, nếu không thì bạn sẽ nhận được thông báo lỗi.

Tìm hiểu về GRUB Boot Loader.

Trong thế giới Linux có 2 Boot Loader chính: LiloGRUB. Bởi vì GRUBBoot Loader mặc định của Ubuntu nên trong bài viết này chúng ta chỉ tập trung vào nó.

GRUB Boot loader là gì?

GRUB (Grand Unified Bootloader) là một Boot loader đa dụng. Nó cho phép bạn Boot vào nhiều hệ điều hành trên cùng một Boot Drive. Cho nên bạn có thể cài đặt và sử dụng nhiều hệ điều hành trên cùng một ổ đĩa cứng.

Phiên bản mặc định hiện tại trên Ubuntu 16.04 LTSGRUB 2.

Để xác định phiên bản GRUB hiện tại bạn có thể mở terminal và gõ lệnh: grub-install -V

GRUB Boot Loader

GRUB làm việc như thế nào?

Để có thể làm việc GRUB cần: kernel file, tên ổ đĩa cứng, phân vùng ổ cứng có chứa kernel và initial RAM disk. GRUB có thể boot bằng 2 cách:

  • Trực tiếp: GRUB sẽ tìm và khởi động kernel (đây là cách mặc định trên hệ thống Linux).
  • Chain Loading: GRUB sẽ load một Boot Loader khác (ví dụ NTLDR của Microsoft Windows hoặc Boot Camp của Mac OS X.).

Cấu hình GRUB Boot Loader.

Đối với phiên bản GRUB 2 này thì:

  • File script thực thi menu boot nằm tại /boot/grub/grub.cfg. File grub.cfg sẽ bị ghi đè mỗi khi cập nhật GRUB, khi thêm hoặc xoá bỏ kernel, hoặc khi user chạy lệnh update-grub.
  • Các file cấu hình chính sẽ nằm trong thư mục /boot/grub.
  • Nếu muốn thay đổi các tham số của GRUB bạn có thể chỉnh sửa file /etc/default/grub hoặc các file trong thư mục /etc/grub.d/.

Thông thường các tham số mà mọi người hay sử dụng trong file /etc/default/grub là:

  • GRUB_DEFAULT=0 – Nếu gán giá trị 0 thì mặc định GRUB sẽ boot vào dòng đầu tiên trong menu. Nếu gán giá trị 1 thì mặc định GRUB sẽ boot vào dòng thứ 2.
  • GRUB_TIMEOUT=2 – Chọn thời gian hiển thị menu boot (đơn vị tính là giây).

virtualbox_ubuntu-server-16-04_29_10_2016_21_59_54

Nếu bạn sử dụng dual boot Ubuntu với Windows và muốn GRUB tự động boot vào hệ điều hành lần trước mình đã chọn. Thì thêm thông số như sau:

  • GRUB_DEFAULT=saved
  • GRUB_SAVEDEFAULT=true

virtualbox_ubuntu-server-16-04_29_10_2016_22_12_49

Xem video hướng dẫn cấu hình GRUB.

Trong video này mình sẽ:

  • Giới thiệu chi tiết về các file cấu hình GRUB.
  • Cách truy cập vào Recovery Mode để xử lý sự cố hệ thống.
  • Cách đặt mật khẩu bảo mật GRUB Boot Loader của bạn.

Giới thiệu chipchip

Chipchip là một chú gà con đam mê công nghệ và ham học hỏi. Thích màu hồng. Câu nói yêu thích "Kiến thức không của riêng ai, kiến thức là để chia sẻ"

Đọc thêm

Ubuntu 17.04 Beta 1 đã ra mắt người dùng

Theo kế hoạch phát hành của Canonical, phiên bản chính thức của Ubuntu 17.04 sẽ …

Gửi phản hồi

Nhắn tin cho chúng tôi