Khác biệt giữa bản sửa đổi của “GRUB”
Nội dung được xóa Nội dung được thêm vào
n →Phát triển: clean up, replaced: |url-status=dead → |url hỏng=yes using AWB |
CS1 errors fixes using AWB |
||
Dòng 14:
| url = https://lists.gnu.org/archive/html/grub-devel/2019-07/msg00000.html
| title = GRUB 2.04 release
| date =
| accessdate =
| mailinglist = grub-devel
| first = Daniel
Dòng 21:
| latest preview version = 2.04~rc1 (GRUB 2)<ref>https://alpha.gnu.org/gnu/grub/</ref>
| latest preview date = {{Start date and age|2019|04|09}}
| programming language = [[Hợp ngữ|Assembly]], [[C (ngôn ngữ lập trình)|C]]<ref name="ohloh">{{
| url = http://www.ohloh.net/p/grub
| title = Ohloh Analysis Summary – GNU GRUB
| publisher = [[Ohloh]]
| accessdate =
| operating_system = [[Linux]], [[macOS]], [[Berkeley Software Distribution|BSD]], [[Solaris (hệ điều hành)|Solaris]] (x86 port), va [[Microsoft Windows|Windows]] (thong qua chainloading)
| platform = [[IA-32]], [[x86-64]], [[IA-64]], [[kiến trúc ARM|ARM]], [[PowerPC]], [[s390x]], [[kien truc MIPS|MIPS]] va [[SPARC]]
Dòng 31:
| language = Đa ngôn ngữ
| genre = [[Bootloader]]
| license = [[GNU General Public License|GPLv3]]<ref name="GNU GRUB license">{{
| url = http://bzr.savannah.gnu.org/lh/grub/trunk/grub/annotate/head:/COPYING
| archive-url = https://archive.is/20130911174027/http://bzr.savannah.gnu.org/lh/grub/trunk/grub/annotate/head:/COPYING
| url-status = dead
| archive-date =
| website = {{URL|https://www.gnu.org/software/grub/}}
}}
Hàng 44 ⟶ 43:
== Tính năng ==
Người dùng có thể tự động cấu hình các hệ thống con GRUB. GRUB nạp cấu hình của nó lúc khởi động, cho phép thay đổi thời gian khởi động, chẳng hạn như việc lựa chọn [[Nhân hệ điều hành|hạt nhân]] khác nhau hoặc đĩa RAM ban đầu. Để kết thúc, GRUB cung cấp một [[giao diện dòng lệnh]] đơn giản, tương tự [[
GRUB có tính cơ động cao. Nó hỗ trợ nhiều định dạng thực thi. Nó hỗ trợ tất cả các hệ thống tập tin Unix thường được sử dụng, [[hệ thống tập tin]] [[FAT]] và [[NTFS]] của Windows, và [[
GRUB có thể tải ảnh khởi động của hệ điều hành từ mạng, do đó nó hỗ trợ các hệ thống không có ổ cứng. Nó cũng hỗ trợ giải nén tự động của các hình ảnh khởi động trước khi khởi động chúng. GRUB hỗ trợ các hệ điều hành mà không hỗ trợ đa khởi động, bằng cách sử dụng chuỗi tải. Nó sử dụng hai hoặc ba dòng của chuỗi lệnh để khởi động bất kỳ hệ thống [[DOS]], [[Windows]], [[Linux]], [[BSD]] hay [[Solaris (hệ điều hành)|Solaris]], làm cho nó rất dễ dàng để làm việc với nó. Chuỗi tải hỗ trợ các hệ điều hành tương tự [[Unix]] cũng đã tích hợp trong GRUB.
Hàng 60 ⟶ 59:
=== <span id="MAP-FILE" contenteditable="false"></span>Khởi động ===
Khi một máy tính được bật, [[BIOS]] của máy tính sẽ tìm thiết bị được cấu hình khởi động chính (thường là [[ổ cứng]]) tải và thực thi chương trình bootstrap đầu tiên từ [[Boot record|master boot record]] (MBR). MBR là những [[
[[Boot record]] MBR [[legacy]] hỗ trợ tối đa 4 phân vùng primary và chiếm 64 byte. Cùng với tùy chọn chữ ký đĩa (4 byte) và nhãn đĩa (6 byte), chuỗi dữ liệu này chiếm từ 434 đến 446 byte [[mã máy]] của boot loader. Mặc dù một kích thước nhỏ có thể chứa đủ một boot loader đơn giản,<ref>{{Chú thích web|url=http://mbldr.sourceforge.net/|tiêu đề=mbldr (Master Boot LoaDeR)|năm=2009|ngày truy cập = ngày 10 tháng 10 năm 2013 |nhà xuất bản=sourceforge.net}}</ref> nó không đủ lớn để chứa một boot loader hỗ trợ một [[hệ thống tập tin]] lớn và phức tạp, menu điều khiển các lựa chọn khởi động hệ thống là ví dụ. Boot loader với footprints lớn hơn do đó được chia thành nhiều phần, nơi những phần nhỏ nhất được tích hợp bên trong MBR, trong khi những phần lớn hơn chứa trong các khu vực khác (ví dụ,trong một sector trống ở giữa MBR phân vùng đầu tiên) và được gọi đến bởi mã MBR của boot loader.
Hàng 79 ⟶ 78:
Với kích thước nhỏ của một [[boot sector]] (512 Byte), ''stage 1'' có thể làm ít hơn so với tải các giai đoạn tiếp theo của GRUB bằng cách tải một vài sector từ một vùng cố định gần điểm đầu đĩa cứng (trong 1024 cylinder đầu tiên).
''Stage 1'' có thể tải ''stage 2'' trực tiếp, nhưng nó thường được thiết lập để tải ''stage 1.5.'' GRUB ''stage 1.5'' ở khu vực 30 [[
=== {{Anchor|GRUB 2}}GRUB 2 (GRUB) ===
[[Tập tin:GNU_GRUB_components.svg|phải|nhỏ|400x400px|<code>boot.img</code> có kích thước 446 byte và được ghi vào [[Boot record|MBR]] (sector 0). <code>core.img</code> được ghi vào phần trống giữa MBR và phân vùng đầu tiên. Thư mục <code>/boot/grub</code> có thể được lưu trên một phân vùng riêng biệt, hoặc trên phân vùng ''root''.]]
* '''Stage 1''': <code>boot.img</code> được lưu trữ trên master boot record (MBR) hoặc có thể bất kỳ vị trí nào thuộc [[
* '''Stage 1.5''': <code>core.img</code> mặc định được ghi vào các sector giữa MBR và phân vùng đầu tiên, khi những sector này trống và có sẵn. Với các phân vùng legacy, phân vùng đầu tiên của ổ cứng không bắt đầu từ sector 1 (bộ đếm bắt đầu từ 0) mà từ sector 63,để lại một khoảng trống 62 sector. không gian đó không phải là một phần của bất kỳ phân vùng hoặc tập tin hệ thống, và do đó không dễ bị bất kỳ vấn đề liên quan với nó.Mỗi khi thực thi, <code>core.img</code> sẽ tải file cấu hình của nó và các module cần thiết khác, trình điều khiển hệ thống file riêng biệt; lúc cài đặt, nó được tạo ra từ <code>diskboot.img</code> và được cấu hình để tải ''stage 2 ''bằng đường dẫn của nó
* '''Stage 2''': file thuộc ''stage 2'' đều được lưu trữ trong thư mục <code>/boot/grub</code> một thư mục con của thư mục <code>/boot</code> quy định bởi Filesystem Hierarchy Standard (FHS).
==Lịch sử==
GRUB ban đầu được phát triển bởi Erich Boleyn như là một phần của hệ thống khởi động [[hệ điều hành]] [[GNU]]/[[GNU Hurd|Hurd]], phát triển bởi [[Free Software Foundation]].<ref name="history">[https://www.gnu.org/software/grub/manual/html_node/History.html GRUB Manual – 1.2 Grub History]. Gnu.org (2012-06-23).
| url = http://www.extremetech.com/gaming/159476-ps4-runs-orbis-os-a-modified-version-of-freebsd-thats-similar-to-linux
| title = PS4 runs Orbis OS, a modified version of FreeBSD that's similar to Linux
| date = ngày 24 tháng 6 năm 2013 | accessdate = ngày 23 tháng 10 năm 2013 | website = extremetech.com}}</ref>
===Phát triển===
GRUB phiên bản 1 (còn được gọi là "GRUB Legacy") không còn được phát triển và đang bị loại bỏ dần.<ref>[https://www.gnu.org/software/grub/grub-legacy.html GNU GRUB – GRUB Legacy]. Gnu.org.
Một số mục tiêu của dự án GRUB 2 bao gồm hỗ trợ cho các [[Nền tảng máy tính|nền tảng]] không phải x86, [[Toàn cầu hóa|quốc tế hóa]] và [[bản địa hóa]], các ký tự không phải ASCII, mô-đun động, quản lý bộ nhớ, một [[ngôn ngữ script]] mini, [[Porting|Port]] mã nền tảng cụ thể (x86) sang các mô-đun cụ thể của nền tảng, và một khung hướng đối tượng. GNU GRUB v2.00 chính thức được phát hành vào ngày 26 tháng 6 năm 2012.<ref>{{cite mailing list |url=http://lists.gnu.org/archive/html/grub-devel/2012-06/msg00093.html |title=GRUB 2.00 released |date=
Ba trong số các [[bản phân phối Linux]] được sử dụng rộng rãi nhất sử dụng GRUB 2 làm boot loader chính của chúng.<ref>{{
Cuối năm 2015, việc [[Exploit (an ninh mạng)|exploit]] nhấn phím [[backspace]] 28 lần để vượt qua mật khẩu đăng nhập đã được tìm thấy và nhanh chóng được sửa.<ref>{{
===Biến thể===
GNU GRUB là một [[phần mềm tự do nguồn mở]], vì vậy một số biến thể đã được tạo ra. Một số đáng chú ý, chưa được hợp nhất vào dòng chính GRUB:
* [[OpenSolaris]] bao gồm GRUB Legacy đã được sửa đổi hỗ trợ [[BSD disklabel]]s, lựa chọn hạt nhân 64-bit tự động và khởi động từ [[ZFS]].<ref>[http://dlc.sun.com/osol/docs/content/SYSADV1/getov.html#fwbqs x86: Modifying Boot Behavior by Editing the GRUB Menu at Boot Time] {{webarchive|url=https://web.archive.org/web/20110719115732/http://dlc.sun.com/osol/docs/content/SYSADV1/getov.html |date=
* [[Google Summer of Code]] 2008có một dự án hỗ trợt GRUB Legacy để khởi động từ các phân vùng có định dạng [[ext4]].<ref>{{
| last = Peng
| first = Tao
| title = Grub4ext4
| url = https://code.google.com/archive/p/grub4ext4/
| accessdate =
* Dự án [[Syllable Desktop|Syllable]] đã tạo một phiên bản GRUB sửa đổi để khởi động hệ thống từ [[AtheOS File System]].<ref>[http://web.syllable.org/documentation/FAQ.html#2_3 2.3 Why does Syllable have its own version of GRUB?] {{webarchive|url=https://web.archive.org/web/20110107003333/http://web.syllable.org/documentation/FAQ.html |date=
* ''TrustedGRUB'' mở rộng GRUB bằng cách triển khai xác minh tính toàn vẹn của hệ thống và bảo mật quy trình khởi động, sử dụng [[Trusted Platform Module]] (TPM).<ref>{{
| url = http://sourceforge.net/projects/trustedgrub/
| title = TrustedGRUB project
| accessdate =
| website = sourceforge.net}}</ref>
* Intel BIOS Implementation Test Suite (BITS) cung cấp môi trường GRUB để kiểm tra BIOS và đặc biệt là việc khởi tạo bộ xử lý, phần cứng và công nghệ Intel. BITS hỗ trợ tập lệnh qua Python và bao gồm các API Python để truy cập các chức năng cấp thấp khác nhau của nền tảng phần cứng, bao gồm ACPI, thanh ghi CPU và chipset, PCI và PCI Express.<ref>[https://biosbits.org: BIOS Implementation Test Suite], Official BITS website</ref>
* GRUB4DOS là bản fork kế thừa của GRUB legacy hiện đã không còn tồn tại giúp cải thiện trải nghiệm cài đặt trên DOS và Microsoft Windows bằng cách đặt mọi thứ ngoài cấu hình GRLDR vào một tệp hình ảnh. Nó có thể được tải bởi [[Windows Boot Manager]].<ref>{{
==Tiện ích==
=== Công cụ cấu hình GRUB ===
[[
Các công cụ thiết lập được các bản phân phối khác nhau sử dụng thường bao gồm các mô-đun để thiết lập. Ví dụ, [[YaST2]] trên các bản phân phối [[Các bản phân phối SUSE Linux|SUSE Linux]] và [[openSUSE]] và [[Anaconda (phần mềm)|Anaconda]] trên trên các bản phân phối [[Fedora]]/[[Red Hat Enterprise Linux|RHEL]].[[StartUp-Manager]] và GRUB Customizer là các trình soạn thảo cấu hình đồ họa cho các bản phân phối dựa trên Debian. Việc phát triển StartUp-Manager đã dừng lại vào ngày 6 tháng 5 năm 2011 sau khi nhà phát triển chính viện lý do cá nhân không tích cực phát triển chương trình.<ref>{{
Đối với GRUB 2 có KDE Control Modules.<ref>[http://kde-apps.org/content/show.php/GRUB2+Bootloader+Editor?content=139643 GRUB2 Bootloader Editor]. Kde-apps.org (2012-06-18).
GRLDR ICE là một công cụ nhỏ để sửa đổi cấu hình mặc định của tệp grldr cho [[GRUB4DOS]].<ref>{{
=== Các tiện ích sửa chữa khởi động ===
[[sourceforge:p/boot-repair/home/Home/|Boot-Repair]] là một công cụ đồ họa đơn giản để khôi phục các sự cố thường xuyên liên quan đến khởi động với GRUB và [[Microsoft Windows]] bootloader. Ứng dụng này có sẵn theo giấy phép [[Giấy phép Công cộng GNU|GNU GPL license]]. Boot-Repair có thể sử lỗi GRUB trên nhiều bản phân phối Linux, bao gồm nhưng không giới hạn ở Debian, Ubuntu, [[Linux Mint|Mint]], Fedora, openSUSE, và[[Arch Linux]].[[
===Trình cài đặt cho Windows===
Hàng 172 ⟶ 169:
* [[GUID Partition Table]] (GPT) – handles hard drives bigger than 2 [[TiB]] and more than 4 partitions
* [[Master boot record]] used with [[BIOS|BIOS firmware]] (motherboards roughly before 2012)
* [http://www.scs.stanford.edu/05au-cs240c/lab/specsbbs101.pdf BIOS Boot Specification Version 1.01 (
===Xem thêm===
|