zoukankan      html  css  js  c++  java
  • 多系统引导 Grub

    目录
    1. 多系统引导程序
    1.1 简介
    1.2 Grub History
    1.3 支持Windows系统下安装的grub版本
    1.4多系统引导程序对比:
    1.5 相关参考
    1.5.1 Grub 2
    1.5.2 GRUB Legacy
    1.5.3 grub4dos
    2. Grub的使用
    2.1 启动菜单命令区别:
    2.2 查找启动Windows
    2.3 查找启动其他系统
    2.4 指定启动Windows
    2.5 指定启动iso镜像文件
    3. 可用于移动存储的引导程序 SYSLINUX
    3.1 syslinux介绍
    3.2 syslinux的使用
    4. 自动化工具

    1. 多系统引导程序

    1.1 简介

    多系统引导程序, 就是可以引导启动多种操作系统的程序,主要用于不同系列的操作系统,比如Windows + Linux。早期比较著名的多系统引导程序是LILO,只要是比较旧的文档,或者书籍,讲到安装Linux系统都会提到LILO。不过当前的主流是GRUB2。

    1.2 Grub History

    https://www.gnu.org/software/grub/manual/legacy/grub.html#History
    GNU GRUB是一个多重 引导加载程序。它源自GRAND统一引导程序 GRUB,最初由Erich Stefan Boleyn设计和实现。GRUB起源与1995年,1999年被收入GNU的官方软件包,2005年Grub V0.97版本成为该项目的最后一个版本,不再增加功能,只会修复必要的bug。官方重命名为grub-legacy。(Grub v0.97版就是Grub Legacy)。
    GRUB 2诞生于2002年,重写了GRUB核心,使其更清洁,更安全,更强大,被命名为GRUB 2。现在大多数Linux都已更新到Grub 2,但Grub Legacy版本一样可以被选择安装使用。

    • GRUB Legacy (Version: 0.97)
    • GNU GRUB (Version: 2.02)


     

    1.3 支持Windows系统下安装的grub版本

    Windows系统下也发展出相应的版本。

    • 源自Grub v0.97的GRUB4DOS; (文档教程很多)
    • 源自Grub v2.02的Grub2win; (相关文档较少)
    • 源自GRUB4DOS的NeoGrub;(NeoGrub是私有软件,随EasyBCD提供.)

    1.4多系统引导程序对比:

    如下只摘抄了一小部分,完整对比请看原文:https://en.wikipedia.org/wiki/Comparison_of_boot_loaders

    1.5 相关参考

    1.5.1 Grub 2

    https://www.gnu.org/software/grub/
    https://www.gnu.org/software/grub/manual/grub/grub.html
    https://en.wikipedia.org/wiki/GNU_GRUB
    http://linux-wiki.cn/wiki/zh-hans/Grub
    http://linux-wiki.cn/wiki/Grub2配置
    http://linux-wiki.cn/wiki/用Windows引导器启动Grub
    http://linux-wiki.cn/wiki/修复被grub覆盖的ntfs分区引导扇区
    https://wiki.archlinux.org/index.php/Dual_boot_with_Windows
    https://wiki.archlinux.org/index.php/Multiboot_USB_drive
    https://wiki.archlinux.org/index.php/GRUB
    https://wiki.gentoo.org/wiki/GRUB2
    https://wiki.gentoo.org/wiki/GRUB2/Chainloading
    http://man.linuxde.net/grub
    https://linux.cn/lfs/LFS-BOOK-7.7-systemd/chapter08/grub.html
    http://www.linuxfromscratch.org/lfs/view/development/chapter08/grub.html

    https://forum.ubuntu.org.cn/viewtopic.php?t=290405

    grub2基础教程-修订版

    1.5.2 GRUB Legacy

    https://www.gnu.org/software/grub/grub-legacy.html
    https://www.gnu.org/software/grub/manual/legacy/grub.html
    https://zh.wikipedia.org/wiki/Grub4Dos
    https://wiki.archlinux.org/index.php/GRUB_Legacy

    1.5.3 grub4dos

    https://zh.wikipedia.org/wiki/Grub4Dos
    https://github.com/chenall/grub4dos/blob/master/README_GRUB4DOS_CN.txt
    http://grub4dos.chenall.net/
    http://grub4dos.chenall.net/downloads/grub4dos-0.4.6a-2019-03-25/
    File: grub4dos-0.4.6a-2019-03-25.7z 520K
    MD5 Checksum: 22524556e40baef1531e3cd473a7c922
    Uploaded: Mon Mar 25 2019 10:29:25 GMT+0800

    2. Grub的使用

    Grub Legacy 与 Grub 2在使用上的区别
    grub2模块化的设计,使用img文件;不再使用grub中的stage1、stage1.5和stage2。

    2.1 启动菜单命令区别:

    2.2查找启动Windows

      

    2.3 查找启动其他系统

     

    2.4 指定启动Windows

     

    2.5 指定启动iso镜像文件

    引导iso文件 GRUB Legacy GNU GRUB
    Ubuntu title Ubuntu18_LiveCD
    root (hd0,2)
    kernel (hd0,2)/ubuntu18/vmlinuz boot=casper iso-scan/filename=/ubuntu18/ubuntu-18.iso ro quiet splash locale=zh_CN.UTF-8
    initrd (hd0,2)/ubuntu18/initrd
    menuentry "Ubuntu18_LiveCD" {
      set root=(hd0,3)
      linux /ubuntu18/vmlinuz boot=casper iso-scan/filename=/ubuntu18/ubuntu-18.iso ro quiet splash locale=zh_CN.UTF-8
      initrd /ubuntu18/initrd
    }
    Mint title Mint LiveCD
    root (hd0,2)
    kernel /mint191/vmlinuz boot=casper iso-scan/filename=/mint191/linuxmint-19.1-xfce-64bit.iso ro quiet splash locale=zh_CN.UTF-8
    initrd /mint191/initrd.lz
    menuentry "Mint LiveCD" {
      set root=(hd0,3)
      linux /mint191/vmlinuz boot=casper iso-scan/filename=/mint191/linuxmint-19.1-xfce-64bit.iso ro quiet splash locale=zh_CN.UTF-8
      initrd /mint191/initrd.lz
    }
    Arch title Install Arch
    root (hd0,2)
    kernel /arch/vmlinuz archisolabel=ARCH_201903
    initrd /arch/archiso.img
    menuentry "Install Arch" {
      set root=(hd0,3)
      linux /arch/vmlinuz archisolabel=ARCH_201903
      initrd /arch/archiso.img
    }
    Manjaro title Manjaro.xfce LiveCD
    root (hd0,2)
    kernel /manjaro/vmlinuz-x86_64 misolabel=M1803 boot=casper iso-scan/filename=/manjaro/manjaro-xfce-18.0.3-stable-x86_64.iso locale=zh_CN.UTF-8
    initrd /manjaro/initramfs-x86_64.img
    menuentry "Manjaro.xfce LiveCD" {
      set root=(hd0,3)
      linux /manjaro/vmlinuz-x86_64 misolabel=M1803 boot=casper iso-scan/filename=/manjaro/manjaro-xfce-18.0.3-stable-x86_64.iso locale=zh_CN.UTF-8
      initrd /manjaro/initramfs-x86_64.img
    }

    3. 可用于移动存储的引导程序 SYSLINUX

    3.1 syslinux介绍

    https://en.wikipedia.org/wiki/SYSLINUX
    https://wiki.archlinux.org/index.php/Syslinux
    https://en.wikipedia.org/wiki/SYSLINUX
    该SYSLINUX项目是一套轻量级的主引导记录(MBR),引导装载程序用于启动IBM PC兼容 的计算机与Linux内核。SYSLINUX捆绑包主要由H. Peter Anvin开发,包含几个用于不同目的的独立系统,包括ISOLINUX,PXELINUX和EXTLINUX。

    • 原始的SYSLINUX,用于从FAT和NTFS文件系统(如软盘和USB驱动器)启动。
    • ISOLINUX,用于从CD-ROM ISO 9660文件系统启动。
    • PXELINUX,用于使用预引导执行环境(PXE)系统从网络服务器引导。
    • EXTLINUX,用于从Linux ext2 / ext3 / ext4,XFS,Btrfs或UFS / UFS2文件系统启动。还支持FAT和NTFS。
    • MEMDISK,用于从这些媒体启动较旧的操作系统,如MS-DOS。

    3.2 syslinux的使用

    由于Linux通常不安装在FAT文件系统上,因此SYSLINUX通常不用于引导完整的Linux安装。
    相反,它通常用于启动或救援软盘,实时USB或其他轻量级启动系统。ISOLINUX通常由Linux live CD和可引导安装CD使用。
    比如在Windows下使用rufus(目前最新版本3.5)软件制作USB启动U盘(将Linux live CD镜像文件写入U盘),就会自动搜索下载匹配的最新syslinux文件:
    (~/rufus_files/syslinux-6.04/ldlinux.bss ldlinux.sys)
    https://rufus.ie/
    https://github.com/pbatard/rufus/issues/487
    https://rufus.ie/files/syslinux-6.04/ldlinux.bss
    https://rufus.ie/files/syslinux-6.04/ldlinux.sys

    4. 自动化工具

    liveusb-builder - 为GNU / Linux发行版创建多引导USB记忆棒的脚本套件
    https://github.com/mytbk/liveusb-builder || liveusb-builder-git AUR
    MultiSystem - 一种图形工具,允许在USB设备上安装,管理和删除多个ISO映像。
    http://liveusb.info/dotclear/ || 多系统AUR
    MultiBootUSB - 具有CLI和GUI界面的跨平台Python软件,允许您在USB记忆棒上安装和删除多个实时Linux映像。
    http://multibootusb.org/ || multibootusb AUR

    https://help.ubuntu.com/community/Grub2/ISOBoot
    Ubuntu ISO旨在允许使用GRUB 2直接从硬盘驱动器启动,无需刻录CD / DVD。
    此功能允许用户启动和使用Ubuntu安装CD的“Try Ubuntu”功能,以及直接从硬盘驱动器上的ISO安装Ubuntu。
    除了Ubuntu ISO之外,许多其他Linux发行版以及流行的救援 CD都可以直接从ISO文件启动。


    grub2基础教程-修订版

  • 相关阅读:
    Atitit.Java exe bat  作为windows系统服务程序运行
    Atitit. Object-c语言 的新的特性  attilax总结
    Atitit. Object-c语言 的新的特性  attilax总结
    Atitit。Time base gc 垃圾 资源 收集的原理与设计
    Atitit。Time base gc 垃圾 资源 收集的原理与设计
    Atitit.go语言golang语言的新的特性  attilax总结
    Atitit.go语言golang语言的新的特性  attilax总结
    Atitit.pdf 预览 转换html attilax总结
    Atitit.pdf 预览 转换html attilax总结
    Atitit.office word  excel  ppt pdf 的web在线预览方案与html转换方案 attilax 总结
  • 原文地址:https://www.cnblogs.com/sztom/p/10729487.html
Copyright © 2011-2022 走看看