尿酸高不能吃什么水果| ucs是什么意思| 什么是灰指甲| 施华蔻属于什么档次| 壶承是什么| 冰妹什么意思| 痛风不能吃什么食物| 中国红是什么颜色| 蛇的贵人是什么生肖| 客之痣是什么意思| 体寒的女人吃什么能调理好身体| 1955年属羊的是什么命| 右肋骨下方隐隐疼痛是什么原因| 胎儿胆囊偏大有什么影响| 小孩半夜哭闹是什么原因| 脱臼是什么感觉| 包皮是什么样子图片| 血常规五项能检查出什么病| 为什么怀不上孩子| 孕妇梦见狗是什么意思| 湿气重能吃什么水果| 闷骚男是什么意思| 什么血型的人最多| cfp是什么证书| 美食家是什么意思| 12.31什么星座| 咽炎是什么原因引起的| 肾积水是什么原因| 白内障有什么症状| 酒糟鼻买什么药膏去红| 葡萄糖氯化钠注射作用是什么| 鸽子炖什么补气血| 鼻子出血挂什么科| 为什么庙里不让孕妇去| 命宫是什么意思| 来例假头晕是什么原因| 60大寿送什么礼物| 牙龈老是出血是什么原因引起的| 孩子肚子疼是什么原因| hy什么意思| hbsab是什么意思| 为什么感冒药吃了想睡觉| 掌中宝是什么东西| 前列腺增生是什么意思| 甲状腺结节吃什么| 梦见刨红薯是什么意思| 为什么端午节要吃粽子| 金字旁加匀念什么| 胸部彩超能检查出什么| 为什么月经前乳房胀痛| 滚床单什么意思| a醇对皮肤有什么作用| 苏轼是什么朝代的| 刘嘉玲什么星座| 天朝是什么意思| 奶昔是什么东西| 怎么算自己五行缺什么| 什么是资本运作| dsa检查是什么意思| 秋天有什么水果成熟| cho是什么意思| 午餐吃什么好又能减肥| 手脚麻是什么原因| 胸部dr是什么| 乌灵参是什么东西| 心开窍于什么| 女人阳虚吃什么药效果最好| 佳偶天成是什么意思| 2019属什么生肖| 大象的鼻子有什么作用| 三刀六洞什么意思| jay什么意思| 教研是什么意思| 上呼吸道感染是什么病| 近亲是什么意思| 80年属什么生肖| 泰格豪雅属于什么档次| 阿罗裤是什么意思| burgundy是什么颜色| 逸五行属性是什么| 脸霜什么牌子的好| 赊事勿取是什么意思| 女人脾肾两虚吃什么好| 冷幽默是什么意思| 历久弥新是什么意思| 扁桃体是什么样子图片| 腊八粥是什么节日| hpv低危型是什么意思| 盐水泡脚有什么好处| 宫腔线分离是什么意思| 1215是什么星座| 麻腮风疫苗什么时候打| 清江鱼又叫什么鱼| green是什么颜色| 158是什么意思| 星月菩提五行属什么| 11月份是什么星座的| 女人没经验开什么店好| 寿元是什么意思| 狼吞虎咽是什么意思| g是什么牌子| 骨骼是什么意思| 家奴是什么生肖| 手淫多了有什么坏处| 3月6号是什么星座的| 扦脚是什么意思| 支气管炎吃什么药好| 诏安是什么意思| 马到成功是什么生肖| 什么吃蟑螂| 一什么书桌| 6月7日什么星座| 右眼睛总跳是什么原因| 黑裙配什么颜色的上衣| 红豆为什么代表相思| 压抑是什么意思| 头痛用什么药好| 一贫如什么| 阳虚湿热吃什么中成药| 为什么要活着| 热敷眼睛有什么好处| 扁桃体发炎发烧吃什么药| 秦昊的父母是干什么的| qa和qc有什么区别| 2023年是属什么生肖| camouflage什么意思| 帆布是什么材质| cordura是什么面料| 清江鱼又叫什么鱼| 碳酸氢铵是什么东西| 五根手指叫什么| 生长痛是什么| 英五行属什么| 疣是什么样子图片| 泡脚用什么东西泡最好| 蜂王浆有什么好处| 0m是什么意思| 神经衰弱吃什么中成药| 智能眼镜有什么功能| 幸福是什么的经典语录| 绿色的蛇是什么蛇| 血管检查什么方法最好| 女性尿道口有小疙瘩是什么原因| 高密度脂蛋白偏低是什么意思| 花荣的绰号是什么| 什么是呆账| 女人补肾吃什么药| 祛火喝什么茶| 吃什么好| 回心转意是什么意思| 梦见办酒席是什么意思| 腰两侧疼痛是什么原因| 肝癌有什么症状| 喜欢蓝色的女人是什么性格| 乙肝检查挂什么科| 痛经是什么感觉| 结婚前一天晚上的宴会叫什么| 什么是素质教育| 社保断了有什么影响| 离异什么意思| 蕃秀什么意思| 口僻是什么病| 荡漾是什么意思| 什么叫精神出轨| 混纺棉是什么面料| 早孕试纸什么时候测最准| 天下乌鸦一般黑是什么生肖| 结膜炎是什么原因引起的| 梦见数字是什么意思| 喝酒喝吐了用什么缓解| 什么是血脂| 颈椎骨质增生吃什么药效果好| 什么病不能吃秋葵| 半夜流鼻血是什么原因| 灵芝长什么样子| 乔迁送什么水果| ii是什么意思| 孤僻是什么意思| 任字五行属什么| 肛裂吃什么药| 肉燕是什么| 黄芪什么功效| prep是什么药| 芒果是什么季节的水果| 甘肃天水有什么好玩的地方| 什么梨最好吃| 肚脐左侧按压疼是什么原因| 旌旗是什么意思| 补体c3偏高说明什么| 体寒的人吃什么食物好| 定义是什么| 血气方刚什么意思| 月字五行属什么| 尼古丁是什么东西| 子宫增厚是什么原因| 双肺纹理增多模糊是什么意思| 小叶增生是什么原因导致的| 复方氯化钠注射作用是什么| 10.19什么星座| 什么草药能治痔疮| 猪脆肠是什么器官| 口僻是什么病| 吃什么能降胆固醇| 中国铁塔是干什么的| 核心抗体阳性说明什么| 白带异味是什么原因| 候和侯有什么区别| 呕心沥血是什么意思| 蚂蚁吃什么| 两特两重指的是什么| 女人缺少雌激素吃什么| 阴道杆菌是什么意思| 号外是什么意思| 梦见西红柿是什么预兆| vp16是什么药| 没有鱼鳞的鱼是什么鱼| 胃溃疡是什么意思| 哪是什么意思| 大量出汗是什么原因| 豆乳是什么| 高血糖吃什么菜好| 均一性红细胞什么意思| 壁报交流是什么意思| 鸡蛋和什么不能一起吃| 阴历7月22是什么日子| 什么是阴历什么是阳历| 梦见床是什么意思| 为什么晚上睡觉会磨牙| 应无所住而生其心什么意思| 右肺上叶钙化灶是什么意思| 一度是什么意思| 点字五行属什么| 孕吐什么时候结束| 大爱什么意思| 晚上10点是什么时辰| 无锡机场叫什么名字| 吃羊肉不能吃什么| 小孩出虚汗是什么原因| 最可爱的动物是什么生肖| 三个毛念什么字| 钾高吃什么可以降下来| 梦到洗衣服是什么意思| 梨状肌综合征挂什么科| 有血流信号是什么意思| 胃酸多吃什么药| 良知是什么意思| c5是什么意思| 吃什么东西能变白| uw是什么单位| 儿童口腔疱疹吃什么药| 人外是什么意思| 指甲看什么科| 兔子的眼睛是什么颜色| 人大是干什么的| 吃什么健脾| 母亲节送什么颜色的康乃馨| 神经性皮炎吃什么药| 梨花代表什么生肖| 什么牙膏好| 后脑勺疼痛什么原因引起的| rsl是什么意思| 肠胃不舒服吃什么| 冲喜是什么意思| 强调是什么意思| 百度Jump to content

崇祯拒绝挪用军饷赈灾,导致明朝陷入两线作战

From Wikipedia, the free encyclopedia
百度 四是中国对于贸易战不会束手就擒,中国也不乏运用反制手段,这将是中美的双输而非共赢,虽然中国并不认可贸易战,但一旦美国开启贸易战,中国也可以“以牙还牙”。

GNU GRUB
Original author(s)Erich Boleyn
Developer(s)GNU Project
Initial release1995; 30 years ago (1995)
Stable release
2.12[1] Edit this on Wikidata / 20 December 2023
Preview release
2.12-rc1[2] Edit this on Wikidata / 10 July 2023
Repository
Written inAssembly, C[3]
Operating systemLinux, GNU/Hurd, macOS, BSD, (Solaris/ illumos (x86 port)), and Windows (through chainloading)
PlatformIA-32, x86-64, IA-64, ARM, PowerPC, Power ISA, s390x, MIPS, RISC-V, LoongArch and SPARC
Available inEnglish and others
TypeBootloader
License2007: GPL-3.0-or-later[a][5]
1999: GPL-2.0-or-later[b]
Websitewww.gnu.org/software/grub

GNU GRUB (short for GNU GRand Unified Bootloader, commonly referred to as GRUB) is a boot loader package from the GNU Project. GRUB is the reference implementation of the Free Software Foundation's Multiboot Specification, which provides a user the choice to boot one of multiple operating systems installed on a computer set up for multi-booting or select a specific kernel configuration available on a particular operating system's partitions.

GNU GRUB was developed from a package called the Grand Unified Bootloader (a play on Grand Unified Theory[6]). It is predominantly used for Unix-like systems.

Operation

[edit]
GRUB2 on MBR-partitioned hard drive; stage 1 (boot.img) can alternatively be written into one of the partition boot sectors.
GRUB2 on a GPT-partitioned hard drive, booting on BIOS firmware, or UEFI compatibility mode (CSM)

Booting

[edit]

When a computer is turned on, its BIOS finds the primary bootable device (usually the computer's hard disk) and runs the initial bootstrap program from the master boot record (MBR). The MBR is the first sector of the hard disk. This bootstrap program must be small because it has to fit in a single sector. For a long time, the size of a sector has been 512 bytes. Since 2009 there are hard disks available with a sector size of 4096 bytes, called Advanced Format disks, but as of October 2013, such hard disks are still accessed in 512-byte sectors, using the 512e emulation.[7] The legacy MBR partition table supports a maximum of four partitions and occupies 64 bytes, combined. Together with the optional disk signature (four bytes) and disk timestamp (six bytes), this leaves between 434 and 446 bytes available for the machine code of a boot loader. Although such a small space can be sufficient for very simple boot loaders,[8] it is not big enough to contain a boot loader supporting complex and multiple file systems, menu-driven selection of boot choices, etc. Boot loaders with bigger footprints are therefore split into pieces, where the smallest piece fits in the MBR, while one or more larger pieces are stored in other locations such as empty sectors between the MBR and the first partition. The code in the MBR then does little more than starting the second part.

The purpose of the remaining part(s) of the boot loader is to actually boot an operating system by configuring it and starting the kernel. Kernels are in most cases stored as files residing on appropriate file systems, but the concept of a file system is unknown to the BIOS. Thus, in BIOS-based systems, the duty of a boot loader is to access the content of those files, so it can be loaded into the RAM and executed.

One possible approach for boot loaders is to load kernel images by directly accessing hard disk sectors without understanding the underlying file system. Usually, an additional level of indirection is required, in form of maps or map files – auxiliary files that contain a list of physical sectors occupied by kernel images. Such maps need to be updated each time a kernel image changes its physical location on disk, due to installing new kernel images, file system defragmentation, etc. Also, in case of the maps changing their physical location, their locations need to be updated within the boot loader's MBR code, so the sectors indirection mechanism continues to work. This is not only cumbersome, but it also leaves the system in need of manual repairs in case something goes wrong during system updates.[9]

Another approach is to make a boot loader aware of the underlying file systems, so kernel images are configured and accessed using their actual file paths. That requires a boot loader to contain a driver for each of the supported file systems, so they can be understood and accessed by the boot loader itself. This approach eliminates the need for hardcoded locations of hard disk sectors and existence of map files, and does not require MBR updates after kernel images are added or moved around. The configuration of a boot loader is stored in a regular file, which is also accessed in a file system-aware way to obtain boot configurations before the actual booting of any kernel images. Thus, fewer things can go wrong during system updates. As a downside, such boot loaders are larger and more complex.[9]

GNU GRUB uses the second approach, by understanding the underlying file systems. The boot loader itself is split into multiple stages so that it fits in the MBR boot scheme.

Two major versions of GRUB are in common use: GRUB version 0, called GRUB legacy, is only prevalent in older releases of Linux distributions. GRUB 2 was written from scratch and intended to replace its predecessor, and is now used by a majority of Linux distributions.

Version 0 (GRUB Legacy)

[edit]
GRUB Legacy menu (running as part of Ubuntu 9.04 installation)

GRUB 0.x follows a two-stage approach. The master boot record (MBR) usually contains GRUB stage 1, or can contain a standard MBR implementation which chainloads GRUB stage 1 from the active partition's boot sector. Given the small size of a boot sector (512 bytes), stage 1 can do little more than load the next stage of GRUB by loading a few disk sectors from a fixed location near the start of the disk (within its first 1024 cylinders).

Stage 1 can load stage 2 directly, but it is normally set up to load the stage 1.5., located in the first 30 KiB of hard disk immediately following the MBR and before the first partition. In case this space is not available (unusual partition table, special disk drivers, GPT or LVM disk) the install of stage 1.5 will fail. The stage 1.5 image contains file system drivers, enabling it to directly load stage 2 from any known location in the filesystem, for example from /boot/grub. Stage 2 will then load the default configuration file and any other modules needed.

Version 2 (GRUB 2)

[edit]
GRUB 2 – MBR vs. GPT partitioning and boot sequence visualized (systems using BIOS firmware).

Startup on systems using BIOS firmware

[edit]
  • See illustration in last image on the right.[10]
  • boot.img (stage 1) is written to the first 440 bytes of the Master Boot Record (MBR boot code in sector 0), or optionally in a partition boot sector (PBR). It addresses diskboot.img by a 64-bit LBA address. The actual sector number is written by grub-install. diskboot.img is the first sector of core.img with the sole purpose to load the rest of core.img identified by LBA sector numbers also written by grub-install.
    • On MBR partitioned disks, core.img (stage 1.5) is stored in the empty sectors (if available) between the MBR and the first partition. Recent operating systems suggest a 1 MiB gap here for alignment (2047 512-byte, or 255 4KiB, sectors). This gap used to be 62 sectors (31 KiB) as a reminder of the sector number limit of Cylinder-Head-Sector (C/H/S) addressing used by BIOS before 1996, therefore core.img is designed to be smaller than 32 KiB.
    • On GPT partitioned disks core.img is written to its own partition. It must be flagged "BIOS_grub", must not be formatted and can be as tiny as 1 MiB.
  • stage 2: core.img loads /boot/grub/i386-pc/normal.mod from the partition configured by grub-install. If the partition index has changed, GRUB will be unable to find the normal.mod, and presents the user with the GRUB Rescue prompt.
  • Depending on how GRUB2 was installed, the /boot/grub/ is either in the root partition of the Linux distribution, or in the separate /boot partition.
  • after normal.mod loaded: normal.mod parses /boot/grub/grub.cfg, optionally loads modules (eg. for graphical UI and file system support) and shows the menu.

Startup on systems using UEFI firmware

[edit]
  • /efi/<distro>/grubx64.efi (for x64 UEFI systems) is installed as a file in the EFI System Partition, and booted by the firmware directly, without a boot.img in MBR sector 0. This file is like stage1 and stage1.5.
  • /boot/grub/ can be installed on the EFI System Partition or the separate /boot partition, among others.
  • For x64 UEFI systems, stage2 are the /boot/grub/x86_64-efi/normal.mod file and other /boot/grub/ files.

After startup

[edit]

GRUB presents a menu where the user can choose from operating systems (OS) found by grub-install. GRUB can be configured to automatically load a specified OS after a user-defined timeout. If the timeout is set to zero seconds, pressing and holding ? Shift, or in some modern GRUB versions loaded using UEFI, pressing Esc rapidly while the computer is booting makes it possible to access the boot menu.[11]

In the operating system selection menu GRUB accepts a couple of commands:

  • By pressing e, it is possible to edit kernel parameters of the selected menu item before the operating system is started. The reason for doing this in GRUB (i.e. not editing the parameters in an already booted system) can be an emergency case: the system has failed to boot. Using the kernel parameters line it is possible, among other things, to specify a module to be disabled (blacklisted) for the kernel. This could be required if the specific kernel module is broken and thus prevents boot-up. For example, to blacklist the kernel module nvidia-current, one could append modprobe.blacklist=nvidia-current at the end of the kernel parameters.
  • By pressing c, the user enters the GRUB command line. The GRUB command line resembles GNU Bash, but only implements a subset of the line editing functions and GRUB-specific commands.[12]

Once boot options have been selected, GRUB loads the selected kernel into memory and passes control to the kernel. Alternatively, GRUB can pass control of the boot process to another boot loader, using chain loading. This is the method used to load operating systems that do not support the Multiboot Specification or are not supported directly by GRUB.

Identifying partitions (UUID workaround)

[edit]

A computer can have multiple hard disks connected to it. These could be identified via their SATA port. Each time the computer POSTs, the hard disk connected to a specific motherboard port could be assigned the same identifier, for example hd0, hd1, …. But what if such consistency cannot be guaranteed? What if the constellation of connected hard disks changed from one start up to another? What if a hard disk will be connected to another computer?

By entering ls into either the GRUB rescue console (available after loading core.img ) or the GRUB console (available after loading normal.mod) a list of all available hard disks and partitions can be obtained. For example, ls (hd0,5)/) will show numbers that can be assigned to actual hard disks and partitions.

As it cannot be guaranteed that the "hd0"style numbering of hard disks via device numbers is consistent, GNU GRUB can use a Universally Unique Identifier (UUID) to identify partitions (actually file system instances).

The file systems ext2, ext3, ext4 and xfs use a UUID to uniquely identify an instance. The UUID is created when a partition is formatted. The UUID is part of the file system and written to the superblock. All operations other than formatting should leave the UUID unaltered. It is possible to change the UUID or duplicate it by using dd to clone an entire partition.

The file grub.cfg is used to configure GRUB. It contains commands to be executed during each start-up. Without an existing and valid grub.cfg, GRUB will present a prompt.

An absolute minimal grub.cfg might contain only the following two commands (cf. initial ramdisk):

linux (hd0,1)/kernel/vmlinuz-3.20.1-4 ro  # use the file name "vmlinuz-…" located in the directory /kernel on the first partition of the first hard disk as linux kernel image
initrd (hd0,1)/boot/initrd.img-3.20.1-4   # use the file named "initrd.img–…" located in the directory /boot on the first partition of the first hard disk as initial ramdisk

A fancier grub.cfg will describe a menu to be presented, use multiple colors, and may specify a background picture.

History

[edit]

GRUB was initially developed by Erich Boleyn as part of work on booting the operating system GNU/Hurd, developed by the Free Software Foundation.[13] In 1999, Gordon Matzigkeit and Yoshinori K. Okuji made GRUB an official software package of the GNU Project and opened the development process to the public.[13] As of 2014, the majority of Linux distributions have adopted GNU GRUB 2.

Development

[edit]

GRUB version 0 (also known as "GRUB Legacy") is no longer under development and is being phased out.[14] The GNU GRUB developers have switched their focus to GRUB 2,[15] a complete rewrite with goals including making GNU GRUB cleaner, more robust, more portable and more powerful. GRUB 2 started under the name PUPA. PUPA was supported by the Information-technology Promotion Agency (IPA) in Japan. PUPA was integrated into GRUB 2 development around 2002, when GRUB version 0.9x was renamed GRUB Legacy.

Some of the goals of the GRUB 2 project include support for non-x86 platforms, internationalization and localization, non-ASCII characters, dynamic modules, memory management, a scripting mini-language, migrating platform specific (x86) code to platform specific modules, and an object-oriented framework. GNU GRUB version 2.00 was officially released on June 26, 2012.[16][17]

Three of the most widely used Linux distributions use GRUB 2 as their mainstream boot loader.[18][19][20] Ubuntu adopted it as the default boot loader in its 9.10 version of October 2009.[21] Fedora followed suit with Fedora 16 released in November 2011.[22] OpenSUSE adopted GRUB 2 as the default boot loader with its 12.2 release of September 2012.[23] Solaris also adopted GRUB 2 on the x86 platform in the Solaris 11.1 release.[24] Buildroot also uses GNU GRUB for x86 and x86_64 targets.

In late 2015, the exploit of pressing backspace 28 times to bypass the login password was found and quickly fixed.[25][26]

Variants

[edit]

GNU GRUB is free software, so several variants have been created. Some notable ones, which have not been merged into GRUB mainline:

  • OpenSolaris includes a modified GRUB Legacy that supports Solaris VTOC slices, automatic 64-bit kernel selection, and booting from ZFS (with compression and multiple boot environments).[27][28]
  • Google Summer of Code 2008 had a project to support GRUB legacy to boot from ext4 formatted partitions.[29]
  • The Syllable project made a modified version of GRUB to load the system from its AtheOS File System.[30]
  • TrustedGRUB extends GRUB by implementing verification of the system integrity and boot process security, using the Trusted Platform Module (TPM).[31]
  • The Intel BIOS Implementation Test Suite (BITS) provides a GRUB environment for testing BIOSes and in particular their initialization of Intel processors, hardware, and technologies. BITS supports scripting via Python, and includes Python APIs to access various low-level functionality of the hardware platform, including ACPI, CPU and chipset registers, PCI, and PCI Express.[32]
  • GRUB4DOS is a GRUB legacy fork that improves the installation experience on DOS and Microsoft Windows by putting everything besides the GRLDR config in one image file. It can be loaded directly from DOS, or by NTLDR or Windows Boot Manager.[33][34] GRUB4DOS is under active development and as of 2021 supports UEFI.[35]

Utilities

[edit]

GRUB configuration tools

[edit]
StartUp-Manager, a program used to configure GRUB

The setup tools in use by various distributions often include modules to set up GRUB. For example, YaST2 on SUSE Linux and openSUSE distributions and Anaconda on Fedora/RHEL distributions. StartUp-Manager and GRUB Customizer are graphical configuration editors for Debian-based distributions. The development of StartUp-Manager stopped on 6 May 2011 after the lead developer cited personal reasons for not actively developing the program.[36] GRUB Customizer is also available for Arch-based distributions.

For GRUB 2 there are KDE Control Modules.[37][38]

GRLDR ICE is a tiny tool for modifying the default configuration of grldr file for GRUB4DOS.[39]

Boot repair utilities

[edit]

Boot-Repair is a simple graphical tool for recovering from frequent boot-related problems with GRUB and Microsoft Windows bootloader. This application is available under GNU GPL license. Boot-Repair can repair GRUB on multiple Linux distributions including, but not limited to, Debian, Ubuntu, Mint, Fedora, openSUSE, and Arch Linux.

GRUB Customizer

Installer for Windows

[edit]

Grub2Win is a Windows open-source software package. It allows GNU GRUB to boot from a Windows directory. The setup program installs GNU GRUB version 2.12 to an NTFS partition. A Windows GUI application is then used to customize the GRUB boot menu, themes, UEFI boot order, scripts etc. All GNU GRUB scripts and commands are supported for both UEFI and legacy systems. Grub2Win can configure GRUB for multiboot of Windows, Ubuntu, openSuse, Fedora and many other Linux distributions. It is freely available under GNU GPL License at SourceForge.

Alternative boot managers

[edit]

The strength of GRUB is the wide range of supported platforms, file systems, and operating systems, making it the default choice for distributions and embedded systems.

However, there are boot managers targeted at the end user that give more friendly user experience, graphical OS selector and simpler configuration:

  • rEFInd – Macintosh-style graphical boot manager, only for UEFI-based computers (BIOS not supported).
  • CloverEFI – Macintosh-style graphical boot manager for BIOS and UEFI-based computers. It emulates UEFI with a heavily modified DUET from the TianoCore project and requires a FAT formatted partition even on BIOS systems. As a benefit, it has a basic filesystem driver in the partition boot sector, avoiding the brittleness of a second or third stage and the infamous GRUB Rescue prompt. The user interface looks similar to rEFInd: both inherit from the abandoned boot manager rEFIt.

Non-graphical alternatives:

  • systemd-boot – Light, UEFI-only boot manager with text-based OS selector menu.
[edit]

How-Tos and troubleshooting

[edit]

Distribution wikis have many solutions for common issues and custom setups that might help you:

Documentation

[edit]

Introductory articles

[edit]

Technicalities

[edit]

See also

[edit]

Notes

[edit]
  1. ^ GPL-3.0-or-later since 2025-08-06.[4]
  2. ^ GPL-2.0-or-later from 1999 until 2025-08-06.

References

[edit]
  1. ^ Daniel Kiper (December 20, 2023). "GRUB 2.12 released". Retrieved December 20, 2023.
  2. ^ "GRUB 2.12 release candidate 1". July 10, 2023.
  3. ^ "Ohloh Analysis Summary – GNU GRUB". Ohloh. Archived from the original on February 4, 2009. Retrieved May 12, 2010.
  4. ^ "Migrate to GNU General Public License Version 3". July 21, 2007. Archived from the original on October 27, 2021. Retrieved October 27, 2021.
  5. ^ "GNU GRUB license". Archived from the original on September 11, 2013.
  6. ^ EnterpriseLinux.com Definitions Archived December 3, 2010, at the Wayback Machine Definition of GRand Unified Bootloader
  7. ^ Smith, Ryan (December 18, 2009). "Western Digital's Advanced Format: The 4K Sector Transition Begins". AnandTech. Archived from the original on March 12, 2012. Retrieved October 10, 2013.
  8. ^ "mbldr (Master Boot LoaDeR)". mbldr.sourceforge.net. 2009. Archived from the original on March 16, 2013. Retrieved October 10, 2013.
  9. ^ a b "Booting and Boot Managers". SUSE. Archived from the original on September 17, 2013. Retrieved October 10, 2013.
  10. ^ "GNU GRUB Manual 2.04". www.gnu.org. Archived from the original on April 3, 2018. Retrieved November 10, 2020.
  11. ^ Hoffman, Chris (September 22, 2014). "How to Configure the GRUB2 Boot Loader's Settings". HowToGeek.com. Archived from the original on April 28, 2015. Retrieved April 25, 2015.
  12. ^ "GNU GRUB documentation". Archived from the original on April 18, 2014. Retrieved April 16, 2014.
  13. ^ a b GRUB Manual – 1.2 Grub History Archived April 16, 2014, at the Wayback Machine. Gnu.org (2025-08-06). Retrieved on 2025-08-06.
  14. ^ GNU GRUB – GRUB Legacy Archived April 20, 2014, at the Wayback Machine. Gnu.org. Retrieved on 2025-08-06.
  15. ^ "GNU GRUB – GRUB 2". Archived from the original on June 7, 2008. Retrieved April 18, 2014.{{cite web}}: CS1 maint: bot: original URL status unknown (link).
  16. ^ Serbinenko, Vladimir (June 28, 2012). "GRUB 2.00 released". grub-devel (Mailing list). Archived from the original on January 13, 2013. Retrieved December 1, 2012.
  17. ^ Larabel, Michael. "GRUB 2.00 Boot-Loader Officially Released". Phoronix.com. Archived from the original on September 13, 2016. Retrieved June 28, 2012.
  18. ^ Haddon, Tom (January 26, 2012). "An Introduction to Ubuntu". WebJunction. Archived from the original on October 28, 2012. Retrieved September 21, 2012.
  19. ^ Janssen, Cory. "What is Red Hat Enterprise Linux (RHEL)?". Technopedia. Archived from the original on October 3, 2012. Retrieved September 21, 2012.
  20. ^ Varghese, Sam (September 20, 2012). "SUSE chief lists progress since privatisation". Archived from the original on September 22, 2012. Retrieved September 21, 2012.
  21. ^ "9.10 Karmic GRUB version". Distrowatch.com. Archived from the original on May 9, 2012. Retrieved July 8, 2012.
  22. ^ GRUB 2 Archived August 5, 2012, at the Wayback Machine. FedoraProject. Retrieved on 2025-08-06.
  23. ^ openSUSE:Upcoming features – openSUSE Archived September 20, 2012, at the Wayback Machine. En.opensuse.org. Retrieved on 2025-08-06.
  24. ^ Solaris 11.1 Archived June 19, 2018, at the Wayback Machine. Oracle Retrieved 2025-08-06.
  25. ^ Khandelwal, Swati (December 16, 2015). "You can Hack into a Linux Computer just by pressing 'Backspace' 28 times". thehackernews.com. Archived from the original on April 30, 2017. Retrieved March 13, 2017.
  26. ^ Marco and, Hector; Ripoll, Ismael (December 2015). "Back to 28: Grub2 Authentication 0-Day". Archived from the original on May 17, 2017. Retrieved March 13, 2017.
  27. ^ x86: Modifying Boot Behavior by Editing the GRUB Menu at Boot Time Archived July 19, 2011, at the Wayback Machine, Modifying Solaris Boot Behavior on x86 Based Systems (Task Map) – System Administration Guide: Basic Administration
  28. ^ x86: Supported GRUB Implementations Archived October 21, 2009, at the Wayback Machine, (System Administration Guide: Basic Administration) – Sun Microsystems
  29. ^ Peng, Tao. "Grub4ext4". Archived from the original on December 31, 2016. Retrieved June 13, 2017.
  30. ^ 2.3 Why does Syllable have its own version of GRUB? Archived January 7, 2011, at the Wayback Machine, Syllable Documentation
  31. ^ "TrustedGRUB project". sourceforge.net. June 5, 2013. Archived from the original on November 29, 2014. Retrieved November 18, 2014.
  32. ^ BIOS Implementation Test Suite Archived October 19, 2016, at the Wayback Machine, Official BITS website
  33. ^ "grub4dos". Google Site. Archived from the original on April 7, 2019. Retrieved April 7, 2019.
  34. ^ "GRUB for DOS Introduction". grub4dos.sourceforge.net. 2007. Archived from the original on April 7, 2019. Retrieved April 7, 2019.
  35. ^ grub4dos on GitHub
  36. ^ "StartUp-Manager is dead : StartUp-Manager". launchpad.net. May 6, 2011. Archived from the original on August 1, 2020. Retrieved April 9, 2017.
  37. ^ GRUB2 Bootloader Editor Archived September 7, 2015, at the Wayback Machine. Kde-apps.org (2025-08-06). Retrieved on 2025-08-06.
  38. ^ "Grub2 KCM". KDE-Apps.org. Archived from the original on September 6, 2015. Retrieved January 27, 2011.
  39. ^ "Grub4dos tutorial". Narod.ru. Archived from the original on May 3, 2015. Retrieved April 25, 2015.
少阳是什么意思 淋巴细胞绝对值偏低是什么意思 头发长的快是什么原因 什么时候入梅 巧囊是什么
双子座是什么星座 苏木是什么意思 spyder是什么品牌 有气质是什么意思 唇色深的人适合什么颜色的口红
什么是手足口病 喉咙突然哑了什么原因 孙俪最新电视剧叫什么 不服是什么意思 泉州有什么好吃的
乳腺导管扩张是什么意思 婢女是什么意思 什么不什么身 急支糖浆是什么梗 中国第一长洞是什么
炭疽病是什么病hcv8jop6ns6r.cn 更年期综合征吃什么药hcv9jop0ns9r.cn 超声诊断科是做什么的hcv8jop9ns5r.cn 瘢痕子宫是什么意思mmeoe.com 什么情况下需要做活检hcv9jop0ns2r.cn
平动是什么意思hcv9jop2ns4r.cn 什么是血友病hcv9jop0ns3r.cn 弥是什么意思hcv8jop5ns6r.cn 地三鲜是什么hlguo.com 宝宝腹泻吃什么药96micro.com
听吧新征程号角吹响是什么歌hcv8jop9ns6r.cn 良代表什么生肖hcv8jop4ns5r.cn pacu是什么意思hcv8jop6ns4r.cn 口腔上火吃什么药hcv9jop2ns9r.cn 什么是职务hcv9jop5ns6r.cn
猪咳嗽用什么药效果好jinxinzhichuang.com 做彩超为什么要憋尿96micro.com 蚕长什么样hcv9jop4ns7r.cn 血小板平均体积偏高是什么意思hcv9jop6ns4r.cn 股癣是什么原因引起的hanqikai.com
百度