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基础教程-修订版

  • 相关阅读:
    解决“此计算机上已安装了试用版。必须先卸载以前安装的试用版后才能安装另一个试用版。”
    Windows 7 快捷键
    【译】部署Asp.Net MVC 网站到Winodws Azure
    jqGrid专题:搜索
    jqGrid专题:格式化数据
    jqGrid专题:事件文档
    jqGrid专题:方法文档
    jqGrid专题:数据加载
    jqGrid专题:参数文档
    jqGrid专题:jqGrid原理
  • 原文地址:https://www.cnblogs.com/sztom/p/10729487.html
Copyright © 2011-2022 走看看