如何从终端创建可启动的Ubuntu USB闪存盘?
有没有办法从终端创建可启动的Ubuntu USB闪存驱动器,而不使用任何第三方应用程序,如YUMI , Unetbootin , Startup Disk Creator等。
我尝试用dd
方法创建一个可启动的Ubuntu闪存驱动器,
sudo umount /dev/sdb sudo dd if=/path/to/ubuntu.iso of=/dev/sdb bs=1M
它在USB磁盘上创建文件,但是当我尝试启动USB磁盘时,它会显示“ Operating System Not Found
错误。
你可以用dd
。
sudo umount /dev/sd>>
其中>>
是一个字母后跟一个数字,查找它。 接下来:
sudo dd bs=4M if=input.iso of=/dev/sd> conv=fdatasync
其中input.iso
是输入文件, /dev/sd>
是您要写入的USB设备(运行lsblk
查看所有驱动器以找出>
适用于您的USB)。
这种方法很快,从来没有让我失望过。
编辑:对于那些在Mac上结束的人,使用小写表示bs=4m
:
sudo dd if=inputfile.img of=/dev/disk> bs=4m && sync
编辑:如果USB驱动器无法启动(这发生在我身上),那是因为目标是驱动器上的特定分区而不是驱动器。 所以目标需要是/ dev / sdc而不是dev / sdc >
对我来说它是/ dev / sdb。
参考: https : //superuser.com/a/407327和https://askubuntu.com/a/579615/669976
从终端创建可启动的Ubuntu USB闪存驱动器
-
将
ubuntu.iso
文件放在任何硬盘分区中。 -
然后在终端中使用以下命令安装
ubuntu.iso
文件:sudo mkdir /media/iso/ sudo mount -o loop /path/to/ubuntu.iso /media/iso
-
插入USB闪存盘。 我的驱动器是
/dev/sdd
。 这是一个截图:
-
您的驱动器可能会自动安装在
/media/
。 我们假设它已安装在/media/xxx/
。 -
通过运行以下命令将所有文件从
/media/iso/
复制到已安装的USB闪存驱动器(确保包含点):cp -a /media/iso/. /media/xxx/
-
接下来,您需要USB闪存驱动器中的
ldlinux.sys
文件才能使USB 启动 。 我的USB分区是/dev/sdd1
; 输入lsblk
看看你的是什么。 运行以下命令:sudo apt-get install syslinux mtools sudo syslinux -s /dev/sdd1
-
导航到
/media/xxx
mount文件夹,并将isolinux
目录重命名为syslinux
。 然后进入重命名的文件夹并将文件isolinux.cfg
重命名为syslinux.cfg
。 -
重新启动PC并更改BIOS中的引导顺序以允许从USB驱动器引导。 现在您的Ubuntu USB闪存驱动器将启动,您可以安装它。
这种方法适用于任何Linux发行版,而不仅仅适用于Ubuntu。 您无需安装任何第三方软件即可制作Linux USB闪存驱动器 。
你几乎和dd
在一起,但是你错过了一步。
sudo umount /dev/sdX sudo dd if=/path/to/ubuntu.iso of=/dev/sdX bs=4M && sync
其中sdX
是你的usb设备(这可以用lsblk
validation)。
sync
位很重要,因为dd
可以在写操作完成之前返回。
你有两个选择。
如果您需要图形界面,请使用usb-creator(它位于ubuntu repos中)
如果需要命令行工具,请使用dd
#Replace X accordingly in both commands sudo umount /dev/sdX sudo dd if=/path/to/ubuntu.iso of=/dev/sdbX bs=1M
请确保/dev/sdX
是您要使用的闪存驱动器(它会破坏闪存驱动器上的数据)。
有关其他信息,请参阅https://help.ubuntu.com/community/Installation/FromUSBStick 。
首先,卸载USB设备,然后使用lsblk
validation设备。
有时(通常是旧的iso文件)dd是不够的,pendrive将无法启动。 在这种情况下,您可能需要安装syslinux:
sudo apt-get install syslinux
然后运行以下命令:
sudo mkfs -t vfat -I /dev/sdX
您希望将最后一个命令运行到/dev/sdX
而不是 /dev/sdX1
。
然后,继续执行以下命令:
isohybrid /path/to/file.iso --entry 4 --type 0x1c dd if='/path/to/file.iso' of=/dev/sdX bs=8M
或者,要查看图像写入的进度:
pv -tpreb /path/to/file.iso | dd of=/dev/sdX bs=8M
或者代替dd
,你可以用cat
代替:
sudo -s cat /path/to/file.iso > /dev/sdX
记住发出sync命令来刷新写入缓存
sync
web.archive.org/web/20140327085331/https://tails.boum.org/doc/first_steps/installation/manual/linux/index.en.html
$ dd if=ubuntu-14.04.1-desktop-amd64.iso of=/dev/sdX bs=1MB
不要使用位路径。
- 使用
cd
命令转到包含.iso文件的文件夹 - 使用命令
dd if=FILE NAME HERE.iso of=/dev/sdX bs=1MB
-
等到控制台输出看起来像这样:
1028+1 records in 1028+1 records out 1028653056 bytes (1.0 GB) copied, 55.4844 s, 18.5 MB/s
-
从USB启动。
注意:确保写入正确的设备,usb不会始终安装在: dev/sdX
,其中X可以是任何字母。
如果用“第三方”表示“gui”, 我建议在Avinash Raj回答之后使用名为bootiso的轻量级脚本 ,因为dd
并不总是有效。 最重要的是它非常安全(执行许多安全检查,不会弄乱系统),易于安装和移植。
此外, bootiso
将检查ISO文件以从两种模式中进行选择:当ISO文件是混合时,图像复制( dd
),这是USB友好的。 当ISO文件是非混合模式时的mount-rsync模式,在这种情况下,如果支持,将自动安装SYSLINUX引导加载程序[ 有关自动行为的更多详细信息 ]。
如何使用它
第一个选项,只提供ISO作为第一个参数,系统会提示您从lsblk
中提取的列表中选择一个驱动器:
bootiso myfile.iso
或明确提供USB设备:
bootiso -d /dev/sde myfile.iso
快速安装
curl -L https://git.io/bootiso -O chmod +x bootiso
看到它在行动:
试试这个,从来没有让我失败100多次:
格式化卡:
$ sudo mkfs.vfat -F32 /dev/sdx
挂载ISO映像:
$ sudo mount ubuntu.iso /mnt
将内容复制到卡片:
$ sudo cp -rvf /mnt/* /SD_CardMountPoint
然后:
- 将
isolinux
文件夹重命名为syslinux
- 将
syslinux/isolinux.cfg
重命名为syslinux/syslinux.cfg
- 将
syslinux/isolinux.bin
重命名为syslinux/syslinux.bin
- 运行
syslinux -s /dev/sdx