為了安裝作業系統,我們中的大多數人(包括我)經常從 ISO 檔案中建立一個可啟動的 USB 裝置。為達到這個目的,在 Linux 中有很多自由可用的應用程式。甚至在過去我們寫了幾篇介紹這種實用程式的文章。
每個人使用不同的應用程式,每個應用程式有它們自己的特色和功能。在這些應用程式中,一些應用程式屬於 CLI 程式,一些應用程式則是 GUI 的。
今天,我們將討論名為 BootISO 的實用程式類似工具。它是一個簡單的 bash 指令碼,允許使用者來從 ISO 檔案中建立一個可啟動的 USB 裝置。
很多 Linux 管理員使用 dd
命令開建立可啟動的 ISO ,它是一個著名的原生方法,但是與此同時,它也是一個非常危險的命令。因此,小心,當你用 dd
命令執行一些動作時。
建議閱讀:
BootISO 是一個簡單的 bash 指令碼,允許使用者來安全的從一個 ISO 檔案中建立一個可啟動的 USB 裝置,它是用 bash 編寫的。
它不提供任何圖形化使用者介面而是提供了大量的選項,可以讓初學者順利地在 Linux 上來建立一個可啟動的 USB 裝置。因為它是一個智慧工具,能自動地選擇連線到系統上的 USB 裝置。
當系統有多個 USB 裝置連線,它將列印出列表。當你手動選擇了另一個硬碟而不是 USB 時,在這種情況下,它將安全地退出,而不會在硬碟上寫入任何東西。
這個指令碼也將檢查依賴關係,並提示使用者安裝,它可以與所有的軟體包管理器一起工作,例如 apt-get、yum、dnf、pacman 和 zypper。
在 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