从iso linux命令行和gui创建可启动USB的5种工具

时间:2020-01-09 10:37:52  来源:igfitidea点击:

我个人使用Rufus在Windows环境中从ISO创建可启动USB。

但是目前,Rufus只能安装在Windows环境中,而不能安装在Linux节点上。
因此,我们必须找到Rufus的替代方案,以便从ISO Linux命令行或者GUI创建可启动USB。

在本文中,我将分享5种不同的工具,我们可以使用这些工具通过示例将ISO刻录到U盘。

从ISO Linux命令行或者GUI创建可启动USB

说明:

我将分享不同的方法和工具,以便从ISO linux命令行或者GUI创建可启动USB。
它们中的大多数已在RHEL/CentOS 7环境中进行了验证,而有些也将在RHEK/CentOS 8节点上工作。
我没有在其他发行版(例如Debian,Ubuntu)上测试过这些工具,但是根据大多数这些工具的官方页面,它们确实支持这些Linux风格,因此我们可以尝试使用在下面的注释部分与我分享结果此页面的底部。

方法1:Unetbootin

UNetbootin允许我们从ISO linux创建适用于Ubuntu和其他Linux发行版的可引导USB,而无需刻录CD。
最好的部分是,尽管我们可能需要根据环境来处理很少的依赖项,但是我们无需安装此软件。
但是Unetbootin以二进制形式用于将ISO刻录到USB。

现在,在安装Unetbootin时,我在RHEL/CentOS 8节点上遇到了一些依赖性错误。

如果我们也获得相同的密码,则可以手动安装这些rpm。

说明:

在RHEL系统上,我们必须具有RHN的有效订阅,或者我们可以配置本地脱机存储库,通过该本地脱机存储库,yum软件包管理器可以安装提供的rpm及其依赖项。

我们将需要EPEL版本存储库来处理某些依赖项。

[root@rhel-8 ~]# rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm

接下来,我们可以使用dnf或者yum安装p7zip和p7zip-plugins

[root@rhel-8 ~]# dnf install p7zip p7zip-plugins

我们已经完成了依赖项,现在我们可以使用wget从其官方页面下载unetbootin二进制文件

[root@rhel-8 ~]# wget https://github.com/unetbootin/unetbootin/releases/download/677/unetbootin-linux64-677.bin

接下来提供对下载的二进制文件的执行权限

[root@rhel-8 ~]# chmod u+x unetbootin-linux64-677.bin

使用FAT32文件系统格式化USB。
我们可以使用Linux中的各种方法来检查U盘的现有文件系统类型:

# mkdosfs -I /dev/sdb1 -F 32
mkfs.fat 4.1 (2016-01-24)

重要的提示:

我们需要图形环境才能使用unetbootin从iso linux创建可启动的usb

我们可以使用vnc服务器连接到Linux节点的图形控制台,并执行二进制文件以将ISO转换为可启动USB。

[root@rhel-8 ~]# ./unetbootin-linux64-677.bin

这将打开一个新窗口,我们必须其中提供以下信息

  • 选择"磁盘镜像",然后浏览要从iso linux创建可启动USB的ISO的路径

  • 选择U盘并提供USB路径

单击"确定"开始将ISO刻录到USB的过程。
第二阶段将花费一些时间,具体取决于系统资源和ISO大小

一旦有了ISO即可启动USB的引导,请单击"退出"。

接下来,我们可以验证可启动USB。

方法2:balenaEtcher

balenaEtcher是一个免费的开源图像刻录机,支持Windows,OS X和GNU/Linux,可将ISO转换为可启动USB。
它使USB和SD卡图像刻录尽可能简单,快速。

我们可以根据Linux发行版从官方页面下载balenaEtcher

由于我正在使用RHEL/CentOS 7,因此我将使用yum从官方github页面安装balenaEtcher

说明:

在撰写本文时,balenaEtcher在RHEL/CentOS 8上是不支持的。
如果我们发现它稍后可以使用,请通过评论部分告诉我。

使用以下命令下载yum仓库,并将其存储在`/etc/yum下。

repos.d /。 此步骤将创建etcher-rpm.repo`文件。

[root@centos-7 ~]# wget https://balena.io/etcher/static/etcher-rpm.repo -O /etc/yum.repos.d/etcher-rpm.repo

使用yum命令安装balenaEtcher rpm

[root@centos-7 ~]# yum install -y balena-etcher-electron

重要的提示:

我们需要图形环境才能使用balenaEtcher从iso linux创建可启动的usb

使用FAT32文件系统格式化USB。
我们可以使用Linux中的各种方法来检查U盘的现有文件系统类型:

# mkdosfs -I /dev/sdb1 -F 32
mkfs.fat 4.1 (2016-01-24)

我们可以使用vnc服务器连接到Linux节点的图形控制台,并执行balena-etcher-electron二进制文件,该文件位于/usr/local/bin/balena-etcher-electron中。

这将打开一个新窗口,接下来是屏幕截图。

[root@centos-7 ~]# balena-etcher-electron

单击" Flash"以将ISO转换为可启动USB。

该工具将ISO刻录到USB后,将在屏幕下方显示成功消息。

现在,我们可以使用此可启动USB来启动节点。

方法3:SuSE Studio Imagewriter

SuSE Studio是另一个使用图形界面从iso linux创建可启动USB的工具。
默认情况下,SuSE发行版中提供此工具,但对于其他发行版,我们可以从官方页面下载相应的rpm。

由于我们使用的是RHEL/CentOS 7节点,因此我们将使用wget从官方来源下载兼容的imagewriter rpm

[root@centos-7 ~]# wget https://download.opensuse.org/repositories/home:/billypuzaras:/branches:/SUSE:/SUSEStudio/CentOS_7/x86_64/imagewriter-1.10.1420800585.134a9b3-5.1.x86_64.rpm

下载完成后,我们可以如下所示安装imagewriter rpm:

[root@centos-7 ~]# rpm -Uvh imagewriter-1.10.1420800585.134a9b3-5.1.x86_64.rpm

我们还可以检查imagewriter rpm的内容

[root@centos-7 ~]# rpm -ql imagewriter
/usr/bin/imagewriter
/usr/share/applications/imagewriter.desktop
/usr/share/doc/imagewriter-1.10.1420800585.134a9b3
/usr/share/doc/imagewriter-1.10.1420800585.134a9b3/COPYING
/usr/share/icons/hicolor/128x128/apps/imagewriter.png
/usr/share/icons/hicolor/32x32/apps/imagewriter.png
/usr/share/icons/hicolor/64x64/apps/imagewriter.png
/usr/share/man/man1/imagewriter.1.gz

重要的提示:

我们需要图形环境才能使用SuSE Studio Imagewriter从iso linux创建可启动的usb

使用FAT32文件系统格式化USB。
我们可以使用Linux中的各种方法来检查U盘的现有文件系统类型:

[root@centos-7 ~]# mkdosfs -I /dev/sdb1 -F 32
mkfs.fat 4.1 (2016-01-24)

我们可以使用vnc服务器连接到Linux节点的图形控制台,并执行/usr/bin/imagewriter二进制文件,这将打开一个新窗口,如下所示。

按照屏幕截图。

[root@centos-7 ~]# imagewriter

其中我放置了ISO镜像和U盘,以将ISO转换为可启动的USB。
点击"写"开始转换。

现在,我们将看不到任何显示完成的屏幕,但是在成功转换之后,我们将返回到上面的屏幕。
接下来,我们可以使用此可启动USB来启动服务器。
例如,我从USB那里获得了下面的gparted引导菜单,因此我们知道这些步骤是有效的。

方法4:Rosa Imagewriter

ROSA ImageWriter是用于将ROSA安装镜像写入闪存盘以将ISO刻录到U盘的程序。
再次带来的好处是,我们无需在Linux环境中安装任何工具,只需下载二进制文件并开始使用它即可。

我们将从wosa的官方Rosa Imagewriter页面下载Rosa Imagewriter

[root@centos-7 ~]# wget http://wiki.rosalab.ru/en/images/7/7f/RosaImageWriter-2.6.2-lin-x86_64.tar.xz

使用tar命令提取存档。
这将创建一个目录" RosaImageWriter"并提取该目录下的所有内容

[root@centos-7 ~]# tar -xvf RosaImageWriter-2.6.2-lin-x86_64.tar.xz
RosaImageWriter/
RosaImageWriter/RosaImageWriter
RosaImageWriter/lang/
RosaImageWriter/lang/qtbase_fr.qm
RosaImageWriter/lang/qtbase_de.qm
RosaImageWriter/lang/fr_FR.qm
RosaImageWriter/lang/qtbase_ru.qm
RosaImageWriter/lang/de_DE.qm
RosaImageWriter/lang/ru_RU.qm
RosaImageWriter/LICENSE.html
RosaImageWriter/README.html

重要的提示:

我们需要图形环境才能使用SuSE Studio Imagewriter从iso linux创建可启动的usb

使用FAT32文件系统格式化USB。
我们可以使用Linux中的各种方法来检查U盘的现有文件系统类型:

[root@centos-7 ~]# mkdosfs -I /dev/sdb1 -F 32
mkfs.fat 4.1 (2016-01-24)

我们可以使用vnc服务器连接到Linux节点的图形控制台,并在RosaImageWriter目录中导航

[root@centos-7 ~]# cd RosaImageWriter/

接下来执行RosaImageWriter二进制文件,这将打开一个新窗口,如下所示。

[root@centos-7 RosaImageWriter]# ./RosaImageWriter

接下来跟随屏幕截图。
添加ISO镜像和USB设备位置,如下所示:

单击"写入"以开始从ISO到可启动U盘的转换。
接下来,我们可以看到转换已开始将ISO刻录到U盘。

操作成功后,我们将看到以下图像:

方法5:使用dd ISO到USB

使用dd ISO to USB命令,我们可以从ISO linux命令行创建可启动USB,而无需下载任何第三方工具。
我们不需要图形环境即可使用dd ISO to USB命令来创建可启动U盘。

我们可以使用不同的命令和方法检查U盘的安装点。

[root@rhel-8 ~]# lsscsi
[0:0:0:0]    cd/dvd  VBOX     CD-ROM           1.0   /dev/sr0
[1:0:0:0]    disk    ATA      VBOX HARDDISK    1.0   /dev/sda
[2:0:0:0]    cd/dvd  VBOX     CD-ROM           1.0   /dev/sr1
[3:0:0:0]    disk    SanDisk  Cruzer Blade     1.00  /dev/sdb

使用FAT32文件系统格式化USB。
我们可以使用Linux中的各种方法来检查U盘的现有文件系统类型:

[root@rhel-8 ~]# mkdosfs -v -I /dev/sdb1 -F 32
mkfs.fat 4.1 (2016-01-24)
/dev/sdb1 has 64 heads and 32 sectors per track,
hidden sectors 0x0000;
logical sector size is 512,
using 0xf8 media descriptor, with 8792064 sectors;
drive number 0x80;
filesystem has 2 32-bit FATs and 8 sectors per cluster.
FAT size is 8576 sectors, and provides 1096860 clusters.
There are 32 reserved sectors.
Volume ID is d3edde43, no volume label.

现在,我们可以在源位置使用if =/source/path/iso和of =/destination/path来执行dd命令。
此命令可能需要一些时间,具体取决于ISO和系统资源的大小。

[root@rhel-8 ~]# dd if=/root/rhel-server-7.7-x86_64-dvd.iso of=/dev/sdb bs=4k
1099008+0 records in
1099008+0 records out
4501536768 bytes (4.5 GB, 4.2 GiB) copied, 1323.54 s, 3.4 MB/s

完成后,我们将拥有一个使用dd iso到USB的可启动U盘。