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配置文件。现在可以重启计算机并测试是否启动正确。

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

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

相关文章

  • Linux备份策略(完全备份、增量备份和差异备份)详解

    备份是数据保护的重要手段之一,而 Linux 备份策略包括完全备份、增量备份和差异备份三种。接下来我将就这三种备份策略提供完整的攻略进行讲解,包括每种备份策略的详细步骤、优缺点以及适用场景。并针对每种备份策略,请提供两个示例说明。 1. 完全备份 完全备份是指将源数据全部备份,将源文件目录结构及其内容全部复制到备份位置。这种备份策略的优点是数据完整性强,缺点…

    Linux备份与恢复 2023年3月25日
    00
  • 详解Linux ip命令:显示和配置网络接口和路由表

    Linux中的ip命令是网络配置和管理方面的工具,它的功能非常强大,可以用来连接以太网、无线网络、设置网络地址转换、管理用户和组等。 以下是ip命令的一些常用用法: 显示网络接口的信息 ip link show 这个命令可以显示系统中所有网络接口的信息,包括接口名称、MAC地址、MTU等。 设置网络接口的状态 ip link set enp0s3 up/do…

    Linux函数大全 2023年3月24日
    00
  • 详解Linux crontab命令:管理定时任务

    Linux系统中,crontab命令可以让用户在指定的时间间隔内自动执行任务。具体来说,crontab命令会通过一个名为cron的系统程序,去检测本地的crontab文件,以判断哪些任务需要在何时执行。 接下来我将用代码块的形式向你展示如何使用crontab命令: 查看当前用户的crontab设置 crontab -l 这条命令会显示当前用户的所有cront…

    Linux函数大全 2023年3月24日
    00
  • 详解Linux mpstat命令:显示多处理器的使用情况

    mpstat 是一个 Linux 系统性能监控工具,它可以显示处理器和每个 CPU 的使用情况,是 sysstat 工具包的一部分。mpstat 通过收集和显示实时系统的 CPU 使用情况来帮助管理员诊断任务负载和 CPU 资源问题,是一种非常强大的分析工具。 下面是 mpstat 命令的使用方法: 安装 在大多数 Linux 发行版中,mpstat 是通过…

    Linux函数大全 2023年3月24日
    00
  • 详解Linux chown命令:修改文件和目录的所有者和所属组

    Linux chown命令用于将文件或目录的拥有者更改为指定的用户或组。它的作用是为了管理文件和目录的权限,可以让不同的用户或组拥有不同的访问权限。下面是chown命令的使用方法具体攻略: 命令格式 命令格式如下: chown [选项] <用户或组> <文件或目录> 命令参数 chown命令的选项参数如下: 选项 描述 -c 只列出更…

    Linux权限管理 2023年3月25日
    00
  • 详解Linux nslookup命令:查找主机名和 IP 地址

    下面是关于Linux nslookup命令的作用、使用方法以及两条示例说明的详细攻略: 1. nslookup命令的作用 nslookup命令是Linux系统下的一款网络工具软件,主要用于查询DNS域名解析和IP地址解析的信息,并且还可以进行反向查询和CNAME查询等。它可以让我们很方便地获取到当前主机名对应的IP地址,以及其他相关DNS信息,是一款非常实用…

    Linux函数大全 2023年3月24日
    00
  • 详解Linux last命令:显示用户登录历史

    Linux的 last 命令是一个用于显示系统最近登录用户信息的命令,其作用主要有两个方面:一是查看当前系统登录的用户信息,二是用于审计分析,从而帮助管理员分析用户的登录情况、所执行的操作等信息。 命令格式 last [选项] [用户名] 选项说明: -d:显示实际时间而非默认的日历时间。 -x:显示系统关机与启动时间。 -f:显示指定日志文件的登录记录,如…

    Linux函数大全 2023年3月24日
    00
  • 详解Linux reboot命令:重启系统

    Linux下的reboot命令用于重新启动操作系统,其作用是关闭计算机并重新启动它。在正式使用该命令之前,我们需要了解它的使用方法和相关参数。 命令格式 reboot [OPTION]… 命令参数 参数 描述 -f, –force 强制重新启动 -i, –immediate 立即重启 -w, –wtmp-only 只写入系统登录文件(WTMP),不…

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