Ventoy Boot Conf Replace Plugin

When we booting some Linux distros, sometimes we need to add or modify the boot options for special hardware or some other purpose.
These boot options are generally in the bootloader configuration file, such as isolinux.cfg, grub.cfg, etc.

Currently, we can do this by the following two methods:
1. Press Tab or e to enter the boot menu editing mode and modify the options.
    But this is one-time effective and needed for every boot.
2. Modify the configuration file and make a new ISO file.
    This is more troublesome and you have to make a new ISO file again once you update the boot option.

With this plugin, you can specify a new configuration file to replace an original configuration file at boot time.
So you can modify the boot options easily, no need to make new ISO file and no need to do it manually every time.

  • Json Configuration

A conf_replace array is defined in /ventoy/ventoy.json for this plugin.

{
    "conf_replace": [
        {
            "iso": "/CentOS-7-x86_64-DVD-1908.iso",
            "org": "/isolinux/isolinux.cfg",
            "new": "/ventoy/centos.cfg"
        },
        {
            "iso": "/ubuntu-20.04-desktop-amd64.iso",
            "org": "/isolinux/txt.cfg",
            "new": "/ventoy/ubuntu.cfg"
        }
    ]
}

Dual Mode Option is supported, so it can be specified separately for Legacy BIOS mode and UEFI mode:

{
    "conf_replace_legacy": [
        {
            "iso": "/CentOS-7-x86_64-DVD-1908.iso",
            "org": "/isolinux/isolinux.cfg",
            "new": "/ventoy/centos_isolinux.cfg"
        }
    ],

    "conf_replace_uefi": [
        {
            "iso": "/CentOS-7-x86_64-DVD-1908.iso",
            "org": "/EFI/BOOT/grub.cfg",
            "new": "/ventoy/centos_grub.cfg"
        }
    ]
}

Key Type Desc
iso STRING full path of the iso file. Yes, only ISO file supported.
org STRING full path of the original configuration file in the ISO file. Must begin with / .
new STRING full path of the new configuration file. Begin with / and this file must in the same partition with the ISO file. File size must < 2MB
  • Notes

  1. Only ISO files in iso9660 format are supported
  2. So windows iso files (UDF format) are not supported.

  3. The file replacement is virtual and will not really modify the ISO file in disk

  4. The replacement only take effect during boot phase.

  5. User must ensure that the new configuration file is valid
  6. Ventoy will only replace the file and will not check its content.

  7. All the paths are case-sensitive. The path of org must be the same with it parsed in grub2.
  8. You can follow the steps to check the path of org. Press c to enter grub shell in Ventoy boot menu and run commands as follows:
    loopback viso $vtoy_iso_part/manjaro-xfce-20.1.2-201019-linux58.iso
    ls (viso)/
    ls (viso)/boot/
    ls (viso)/boot/grub/
    

  • Multi-Mode

Supported. You can set different configurations for different BIOS mode. Please refer Multi-Mode Option for details.