今天,我们将讨论名为 BootISO 的实用程序类似工具。它是一个简单的 bash 脚本,允许用户来从 ISO 文件中创建一个可启动的 USB 设备。

-- Prakash Subramanian(作者)

为了安装操作系统,我们中的大多数人(包括我)经常从 ISO 文件中创建一个可启动的 USB 设备。为达到这个目的,在 Linux 中有很多自由可用的应用程序。甚至在过去我们写了几篇介绍这种实用程序的文章。

每个人使用不同的应用程序,每个应用程序有它们自己的特色和功能。在这些应用程序中,一些应用程序属于 CLI 程序,一些应用程序则是 GUI 的。

今天,我们将讨论名为 BootISO 的实用程序类似工具。它是一个简单的 bash 脚本,允许用户来从 ISO 文件中创建一个可启动的 USB 设备。

很多 Linux 管理员使用 dd 命令开创建可启动的 ISO ,它是一个著名的原生方法,但是与此同时,它也是一个非常危险的命令。因此,小心,当你用 dd 命令执行一些动作时。

建议阅读:

  • Etcher:从一个 ISO 镜像中创建一个可启动的 USB 驱动器 & SD 卡的简单方法
  • 在 Linux 上使用 dd 命令来从一个 ISO 镜像中创建一个可启动的 USB 驱动器

BootISO 是什么

BootISO 是一个简单的 bash 脚本,允许用户来安全的从一个 ISO 文件中创建一个可启动的 USB 设备,它是用 bash 编写的。

它不提供任何图形用户界面而是提供了大量的选项,可以让初学者顺利地在 Linux 上来创建一个可启动的 USB 设备。因为它是一个智能工具,能自动地选择连接到系统上的 USB 设备。

当系统有多个 USB 设备连接,它将打印出列表。当你手动选择了另一个硬盘而不是 USB 时,在这种情况下,它将安全地退出,而不会在硬盘上写入任何东西。

这个脚本也将检查依赖关系,并提示用户安装,它可以与所有的软件包管理器一起工作,例如 apt-get、yum、dnf、pacman 和 zypper。

BootISO 的功能

  • 它检查选择的 ISO 是否是正确的 mime 类型。如果不是,那么退出。
  • 如果你选择除 USB 设备以外的任何其它的磁盘(本地硬盘),BootISO 将自动地退出。
  • 当你有多个驱动器时,BootISO 允许用户选择想要使用的 USB 驱动器。
  • 在擦除和分区 USB 设备前,BootISO 会提示用户确认。
  • BootISO 将正确地处理来自一个命令的任何错误,并退出。
  • BootISO 在遇到问题退出时将调用一个清理例行程序。

如何在 Linux 中安装 BootISO

在 Linux 中安装 BootISO 有几个可用的方法,但是,我建议用户使用下面的方法安装。

$ curl -L https://git.io/bootiso -O$ chmod +x bootiso$ sudo mv bootiso /usr/local/bin/

一旦 BootISO 已经安装,运行下面的命令来列出可用的 USB 设备。

$ bootiso -lListing USB drives available in your system:NAME HOTPLUG SIZE STATE TYPEsdd 1 32G running disk

如果你仅有一个 USB 设备,那么简单地运行下面的命令来从一个 ISO 文件中创建一个可启动的 USB 设备。

$ bootiso /path/to/iso file$ bootiso /opt/iso_images/archlinux-2018.05.01-x86_64.isoGranting root privileges for bootiso.Listing USB drives available in your system:NAME HOTPLUG SIZE STATE TYPEsdd 1 32G running diskAutoselecting `sdd' (only USB device candidate)The selected device `/dev/sdd' is connected through USB.Created ISO mount point at `/tmp/iso.vXo'`bootiso' is about to wipe out the content of device `/dev/sdd'.Are you sure you want to proceed? (y/n)>yErasing contents of /dev/sdd...Creating FAT32 partition on `/dev/sdd1'...Created USB device mount point at `/tmp/usb.0j5'Copying files from ISO to USB device with `rsync' Synchronizing writes on device `/dev/sdd' `bootiso' took 250 seconds to write ISO to USB device with `rsync' method.ISO succesfully unmounted.USB device succesfully unmounted.USB device succesfully ejected.You can safely remove it !

当你有多个 USB 设备时,可以使用 --device 选项指明你的设备名称。

$ bootiso -d /dev/sde /opt/iso_images/archlinux-2018.05.01-x86_64.iso

默认情况下,BootISO 使用 rsync 命令来执行所有的动作,如果你想使用 dd 命令代替它,使用下面的格式。

$ bootiso --dd -d /dev/sde /opt/iso_images/archlinux-2018.05.01-x86_64.iso

如果你想跳过 mime 类型检查,BootISO 实用程序带有下面的选项。

$ bootiso --no-mime-check -d /dev/sde /opt/iso_images/archlinux-2018.05.01-x86_64.iso

为 BootISO 添加下面的选项来跳过在擦除和分区 USB 设备前的用户确认。

$ bootiso -y -d /dev/sde /opt/iso_images/archlinux-2018.05.01-x86_64.iso

连同 -y 选项一起,启用自动选择 USB 设备。

$ bootiso -y -a /opt/iso_images/archlinux-2018.05.01-x86_64.iso

为知道更多的 BootISO 选项,运行下面的命令。

$ bootiso -hCreate a bootable USB from any ISO securely.Usage: bootiso [...] Options-h, --help, help Display this help message and exit.-v, --version Display version and exit.-d, --device Select block file as USB device. If is not connected through USB, `bootiso' will fail and exit. Device block files are usually situated in /dev/sXX or /dev/hXX. You will be prompted to select a device if you don't use this option.-b, --bootloader Install a bootloader with syslinux (safe mode) for non-hybrid ISOs. Does not work with `--dd' option.-y, --assume-yes `bootiso' won't prompt the user for confirmation before erasing and partitioning USB device. Use at your own risks.-a, --autoselect Enable autoselecting USB devices in conjunction with -y option. Autoselect will automatically select a USB drive device if there is exactly one connected to the system. Enabled by default when neither -d nor --no-usb-check options are given.-J, --no-eject Do not eject device after unmounting.-l, --list-usb-drives List available USB drives.-M, --no-mime-check `bootiso' won't assert that selected ISO file has the right mime-type.-s, --strict-mime-check Disallow loose application/octet-stream mime type in ISO file.-- POSIX end of options.--dd Use `dd' utility instead of mounting + `rsync'. Does not allow bootloader installation with syslinux.--no-usb-check `bootiso' won't assert that selected device is a USB (connected through USB bus). Use at your own risks.Readme Bootiso v2.5.2. Author: Jules Samuel Randolph Bugs and new features: https://github.com/jsamr/bootiso/issues If you like bootiso, please help the community by making it visible: * star the project at https://github.com/jsamr/bootiso * upvote those SE post: https://goo.gl/BNRmvm https://goo.gl/YDBvFe

基类和派生类写在一个文件中_BootISO:从 ISO 文件中创建一个可启动的 USB 设备...相关推荐

  1. BootISO:从 ISO 文件中创建一个可启动的 USB 设备

    为了安装操作系统,我们中的大多数人(包括我)经常从 ISO 文件中创建一个可启动的 USB 设备.为达到这个目的,在 Linux 中有很多自由可用的应用程序.甚至在过去我们写了几篇介绍这种实用程序的文 ...

  2. dd命令iso linux_BootISO:从 ISO 文件中创建一个可启动的 USB 设备

    今天,我们将讨论名为 BootISO 的实用程序类似工具.它是一个简单的 bash 脚本,允许用户来从 ISO 文件中创建一个可启动的 USB 设备. -- Prakash Subramanian(作 ...

  3. c++中基类与派生类中隐含的this指针的分析

    先不要看结果,看一下你是否真正了解了this指针? 1 #include<iostream> 2 using namespace std; 3 4 class Parent{ 5 publ ...

  4. 基类、派生类、虚基类、虚函数、虚析构、纯虚函数、抽象类

    基类:被其它类通过继承方式作为父类继承的类称为基类:描述派生类的统一种类的方式. 派生类:通过继承其他类(并可能含有自定义成员)实现的子类:为提高代码的重用性及与同样继承于同一个父类的其它类形成统一种 ...

  5. C++学习 十五、类继承(1)基类,派生类,访问权限,protected

    C++学习 十五.类继承(1)基类,派生类 前言 类继承 类的关系与继承 基类, 派生类 基类 派生类 构造函数,析构函数 文件位置 访问权限 protected 后记 前言 本篇开始学习C++类的继 ...

  6. python根据一个基类生成派生类_python中的封装继承多态

    1.封装 类的封装可以隐藏类的实现细节,迫使用户只能通过方法去访问数据,这样就可以增强程序的安全性.接下来演示未使用封装可能出现的问题,如例所示. 在例中,运行结果输出的成绩为-68,在程序中不会有任 ...

  7. 14.11 基类与派生类关系的详细再探讨

    一:派生类对象模型简述 Men mymen:子类(派生类对象),包含多个组成部分(也就是多个子对象); <1>一个是含有派生类自己定义的成员变量,成员函数的子对象: <2>一个 ...

  8. C++中基类与派生类的构造函数和析构函数

    1.Cpp中的基类与派生类的构造函数 基类的成员函数可以被继承,可以通过派生类的对象访问,但这仅仅指的是普通的成员函数,类的构造函数不能被继承.构造函数不能被继承是有道理的,因为即使继承了,它的名字和 ...

  9. 派生类到基类的转换 和基类到派生类的转换

    一. 基类与派生类的转换     3种继承方式(公用.保护.私有继承)中,公用派生类才是基类真正的子类型,它完整地继承了基类的功能.     不同类型数据之间在一定条件下可以进行类型的转换.基类与派生 ...

最新文章

  1. sm4加密 解密(oc)
  2. VS2005 宽字符 unicode字符集和多字节字符集
  3. 剑指 Offer 29. 顺时针打印矩阵
  4. 牛客 - 动物森友会(二分+最大流)
  5. 前端用sql 还是mysql_前端小白安装MySQL的踩坑路
  6. (Docker实战) 第5篇:Centos7 拉取和部署搭建 NEXUS私服
  7. asp.net下的“Eval()、XPath() 和 Bind() 这类数据绑定方法只能在数据绑定控件的上下文中使用。”错误的一个可能的成因...
  8. 关于安卓listview获得item中的控件问题
  9. L1-051 打折-PAT团体程序设计天梯赛GPLT
  10. 拓端tecdat|Matlab正态分布、历史模拟法、加权移动平均线 EWMA估计风险价值VaR和回测Backtest标准普尔指数 SP500时间序列
  11. 安卓(android)毕业设计各种app项目
  12. postgresql性能分析工具-pgstatpack-2.3.3.1
  13. 公司邮箱如何申请?如何申请公司邮箱?公司邮箱号码大全
  14. 从OPPO Finder看手机产品的差异化体现
  15. xshell免费版绿化版下载
  16. @GetMapping注解的理解
  17. 密码学之数字签名是什么
  18. 含有js的英文单词_js-组成-dom-常见单词
  19. C++控制台RPG游戏(序)
  20. C程序设计习题 - 顺序结构

热门文章

  1. 牛客华为机试第3题python
  2. HTML5 drag drop 拖拽与拖放简介
  3. UVA10534-----Wavio Sequence-----动态规划之LIS
  4. NameNode任务线程之FSNamesystem$ReplicationMonitor
  5. pycharm中python解释器的配置
  6. matplotlib画图中文显示
  7. where()函数的用法
  8. 【Linux基础】查看硬件信息-内存和硬盘
  9. 根据输入的数字显示日期(新手)
  10. ArcGIS里shp文件连接Excel的字段,出现无法显示Excel里全部字段的问题