在Linux中创建可启动USB的Bash脚本

Bootiso 是一个强大的 Bash 脚本,可以轻松安全地从一个 ISO 文件创建可启动的 USB 设备。它帮助您使用终端中的单个命令从 ISO 创建可启动的 USB。这是一个精心设计的脚本,使用 shellcheck 进行仔细组织和验证。

必须以 root 权限运行,如果系统上没有所需的外部程序,它将要求您安装它们并退出。Bootiso 检查所选的 ISO 是否具有正确的 mime-type,否则将退出。为防止系统损坏,它确保所选设备仅通过 USB 连接。

阅读更多: Linux 中从 ISO 镜像中提取和复制文件的 3 种方法

在格式化和分区您的 USB 设备之前,它会提示您接受执行操作以防止任何数据丢失。重要的是,它会适当退出管理来自内部命令的任何失败。此外,它通过使用 trap 实用程序在退出时清理任何临时文件。

在 Linux 中安装 Bootiso 脚本

从源代码安装 bootiso 的简单方法是克隆 git 存储库并设置执行权限如下所示。

$ git clone https://github.com/jsamr/bootiso.git
$ cd bootiso/
$ chmod +x bootiso

然后,将脚本移动到 bin 路径(例如 ~/bin//usr/local/bin/),以便在系统上像运行其他 Linux 命令一样运行它。

$ mv bootiso ~/bin/

安装后,运行bootiso的语法是提供ISO作为第一个参数。

$ bootiso myfile.iso

要从ISO文件创建可启动的USB设备,首先需要列出所有连接到系统的可用USB驱动器,使用如下所示的-l标志。

$ bootiso -l

Listing USB drives available in your system:
NAME    HOTPLUG   SIZE STATE   TYPE
sdb           1   14.9G running disk

接下来,要将设备(/dev/sdb)设置为可启动设备,只需将ISO作为第一个参数提供。请注意,如果系统只连接了一个USB设备(如上述情况),脚本将自动选择它,否则,它将要求您从自动生成的所有连接的USB驱动器列表中进行选择。

$ sudo bootiso ~/Templates/eXternOS.iso 
Create Bootable USB in Linux Terminal

您还可以使用-a标志,与-y(在格式化USB驱动器之前禁用提示用户)选项一起启用自动选择USB驱动器,如下所示。

$ sudo bootiso -a -y ~/Templates/eXternOS.iso

如果系统连接了多个USB设备,您可以使用-d标志在命令行中明确指定要从中制作可启动设备的USB设备,如下所示。

$ sudo bootiso -d /dev/sdb ~/Templates/eXternOS.iso  

默认情况下,bootiso使用mount + rsync来执行dd命令,要改用--dd标志,如下所示。

$ sudo bootiso --dd -d ~/Templates/eXternOS.iso      

此外,对于非混合ISO,您可以使用-b选项安装syslinux引导加载程序,如下所示。但是,此选项不支持dd命令

$ sudo bootiso -b /ptah/to/non-hybrid/file.iso
OR
$ sudo bootiso -bd /usb/device /ptah/to/non-hybrid/file.iso

有关其他bootiso功能和选项的更多信息,请参阅帮助消息。

$ bootiso -h  

Bootiso Github存储库: https://github.com/jsamr/bootiso

就是这样!Bootiso 是一个强大的 Bash 脚本,可以轻松安全地从一个 ISO 文件创建一个可启动的 USB 设备,在终端上只需一个命令。请使用下面的评论表单分享您对它的想法或提出问题。

Source:
https://www.tecmint.com/create-bootable-usb-in-linux-commandline/