Linux多系统并存的GRUB配置文件内容分析

GRUB(Grand unified bootloader)是一个开源的、多操作系统引导程序。它被广泛用作Linux系统的启动程序,可以在多个操作系统之间切换引导。在同一计算机上存在多个操作系统时,需要配置GRUB以保证各个操作系统正确地引导。本攻略将讲解Linux多系统并存时,对GRUB配置文件内容的分析过程。

  1. 确认系统分区情况

在进行GRUB配置文件的编辑之前,必须先确认磁盘分区情况。可以使用fdisk 或 parted命令,查看各分区的编号及挂载点。

例如,命令fdisk -l可以列出所有磁盘分区的详细信息。

```
Disk /dev/sda: 457.8 GiB, 492581078016 bytes, 963470576 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: gpt
Disk identifier: B8C11EB5-5E61-44B5-B2DD-729DEA74210A

Device Start End Sectors Size Type
/dev/sda1 2048 1050623 1048576 512M EFI System
/dev/sda2 1050624 211181567 210131944 100.2G Linux filesystem
/dev/sda3 211181568 854974415 643792848 307.4G Linux filesystem
/dev/sda4 854974416 963467775 108493360 52G Linux swap
```

  1. 编辑GRUB配置文件

GRUB的配置文件通常位于/boot/grub/menu.lst 或 /boot/grub/grub.cfg。修改该文件时,需要使用root权限,推荐使用vim或nano编辑器。

2.1 设置默认系统

当计算机重启时,默认启动哪个操作系统至关重要。可以通过修改GRUB配置文件中的default条目来更改默认引导的操作系统。

在配置文件中找到default行,将其值更改为想要启动的操作系统的编号,该编号是从0开始的选项列表中的位置。例如,将default设置为2将引导第三个操作系统,编号为2。

default 2

2.2 设置超时时间

GRUB配置文件包含timeout行,它控制默认引导系统之前的等待时间(以秒为单位)。如果不希望等待任何时间,请将该值设置为0。

timeout 5

2.3 添加新系统

如果计算机新安装了操作系统,则需要在GRUB配置文件中添加新系统。要添加新的GRUB菜单选项,请先切换到根目录,并在/boot/grub/目录下执行以下命令:

grub-mkconfig -o /boot/grub/grub.cfg

该命令会自动检测已安装的操作系统,并向GRUB配置文件中添加新的条目。可以在文件末尾查看新添加的内容。

End of file

如果想手动添加一个新的菜单项,则需要在GRUB配置文件中添加以下内容:

menuentry "New OS" {
    set root='(hd0,1)'   # 设置引导分区 root 设备
    chainloader +1        # 启动引导程序
}

这里,“New OS”是新安装的操作系统的名称;(hd0,1)是根目录的物理设备;+1意味着GRUB将从该分区中的最新引导程序启动。

实例代码:

menuentry 'New Operating System' {
        insmod part_msdos
        insmod ext2
        set root='(hd0,msdos3)'
        linux /boot/vmlinuz-4.4.0-21-generic root=/dev/sda3 ro quiet splash
        initrd  /boot/initrd.img-4.4.0-21-generic
}

上述代码中menuentry的语句名称为“New Operating System”,insmod用于加载模块,而set root则指定新安装操作系统的根目录硬盘分区(例如,(hd0,msdos3)指第一个物理硬盘上的第3个MSDOS磁盘分区)。“linux”语句的参数是新系统的内核映像文件和根设备,而“initrd”的参数是内核中用于初始化系统的RAM磁盘映像。

  1. 保存修改并测试

对于所有修改,一定要保存GRUB配置文件。之后,需要使用以下命令来测试更改是否生效:

grub-mkconfig -o /boot/grub/grub.cfg

该命令重新生成GRUB配置文件,并将其保存到/boot/grub/grub.cfg中。如果没有错误,则已成功修改GRUB配置文件。现在可以重启计算机并测试是否启动正确。

阅读剩余 49%

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Linux多系统并存的GRUB配置文件内容分析 - Python技术站

(0)
上一篇 2023年3月25日
下一篇 2023年3月25日

相关文章

  • 详解Linux RPM包验证和数字证书

    在Linux系统中,RPM包验证和数字证书(数字签名)是保证软件安全性与可信度的重要手段。下面,我们将分别讲解这两个方面的攻略,并提供代码示例。 一、Linux RPM包验证 1. RPM包介绍 在Linux系统中,RPM包是一种预编译的软件包格式,主要用于在Red Hat、Fedora、CentOS等基于RPM的Linux发行版中安装软件。RPM包包含了软…

    Linux软件安装 2023年3月25日
    00
  • 详解Linux swapon命令:激活交换分区

    Linux swapon 命令用于启用和禁用交换空间。交换空间是在 RAM(随机存取存储器)不足时用作虚拟内存的一部分硬盘空间。 命令格式 swapon 命令的基本语法如下: swapon [ -v ] [ -p priority ] [ -e ] [ -h ] [ -f ] [ -a ] [ specialfile… ] 各选项含义如下:- -v:执行…

    Linux函数大全 2023年3月24日
    00
  • 详解Linux RPM包统一命名规则

    Linux下的RPM包是一种将一组文件打包成单个文件的打包工具,是方便软件的安装、更新和管理的一种工具。 在Linux RPM包统一命名规则中,正确的名称应该遵循以下格式: name-version-release.architecture.rpm name:软件包的名称 version:软件包的版本号 release:软件包发行的次数 architectu…

    Linux软件安装 2023年3月25日
    00
  • 详解Linux mkfs命令:格式化磁盘

    下面是Linux中mkfs命令的作用和使用方法的完整攻略。 1. 命令作用 mkfs是Linux下的一个命令,用于格式化指定的文件系统。在Linux系统中,如果要使用某个设备或分区作为文件系统使用,那么必须先将其格式化为相应的文件系统格式,这就是mkfs命令的作用。 2. 使用方法 mkfs命令的基本使用方法如下: mkfs [-t 文件系统类型] [-V]…

    Linux函数大全 2023年3月24日
    00
  • Linux启动引导程序(GRUB)加载内核的过程

    GRUB是Linux启动引导程序,会在Linux系统启动时加载内核。下面是GRUB加载内核的完整攻略: 打开计算机并开始引导过程。BIOS将检测计算机内安装的所有硬件设备,并将检测到的信息存储到内存中。 BIOS将检查计算机的启动设备列表,查找能启动操作系统的设备。一旦找到一个可用的启动设备,BIOS会从该设备中读取引导扇区。 引导扇区位于启动设备的第一个物…

    Linux启动管理 2023年3月25日
    00
  • 详解Linux ls命令:列出当前目录下的文件和文件夹

    当我们使用Linux操作系统时,经常需要查看当前所在目录下的文件及其相关属性。这时就需要用到ls命令。 1. 命令作用 ls命令用于显示当前工作目录下的文件和子目录。它有很多选项和功能,可以帮助用户查看文件的类型、时间戳、权限和大小等属性。 2. 命令格式 ls [选项] [文件或目录名] 其中,选项包括: -a:显示所有文件,包括隐藏文件。 -l:以长格式…

    Linux函数大全 2023年3月24日
    00
  • 详解Linux groupmod命令:修改用户组信息

    Linux groupmod 命令用于修改系统中已经存在的用户组的属性,比如修改用户组 ID,用户组名称等等。它可以帮助管理员对已有的用户组进行管理和调整,保证系统中的用户组始终有良好的组织和分类。 命令格式 groupmod [options] GROUP 其中 GROUP 表示要修改的用户组名称,options 表示修改选项。 常用选项 -g, –gi…

    Linux函数大全 2023年3月24日
    00
  • 详解Linux rmdir命令:删除空目录

    当您需要在Linux环境中删除目录时,可以使用 rmdir 命令。 rmdir 命令用于将目录(空目录)从文件系统中删除。以下是有关Linux rmdir 命令的详细说明: 语法 rmdir [OPTION] DIRECTORY 参数说明: -p:删除父目录时同时删除其所有的空子目录。 -v:显示每个被删除的目录名。 使用方法 删除单个空目录 使用 rmdi…

    Linux函数大全 2023年3月24日
    00
合作推广
合作推广
分享本页
返回顶部