GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — GitHub - Mexit/MultiOS-USB: Boot operating systems directly from ISO/WIM images

BranchesTags
Open more actions menu

Latest commit

 

History

360 Commits
360 Commits

Folders and files

NameName
Last commit message
Last commit date
.github
.github
 
 
binaries
binaries
 
 
cert
cert
 
 
config
config
 
 
config_priv
config_priv
 
 
docs
docs
 
 
themes/MultiOS-USB
themes/MultiOS-USB
 
 
.editorconfig
.editorconfig
 
 
.gitignore
.gitignore
 
 
LICENSE
LICENSE
 
 
MultiOS-USB.version
MultiOS-USB.version
 
 
README.md
README.md
 
 
common.sh
common.sh
 
 
flake.lock
flake.lock
 
 
flake.nix
flake.nix
 
 
install.bat
install.bat
 
 
install.ps1
install.ps1
 
 
multios-usb.sh
multios-usb.sh
 
 

Repository files navigation

MultiOS-USB

One device with multiple ISO/WIM files. Easy to use: install once, add ISO/WIM files and boot computers from it

Main menu

Features:

  • BIOS and UEFI support
  • Secure Boot support (boot, manage uefi keys)
  • Load UEFI drivers
  • Launch .efi executables and other boot loaders
  • Boot Linux from .iso images
  • Boot WinPE from bootable .wim images
  • Boot Windows 10/11 installer from ISO
  • Boot Linux installer from network (experimental)
  • Boot locally installed systems: Linux, Windows
  • Automatically update configuration files
  • Without background services
  • exFAT file system support
  • Automatic detection of compatible ISO images (GRUB loopback)
  • Support for systems without loopback support
  • Allows customisation of ISO boot menu (for example: custom kernel options)
  • Support for USB, SSD, nvme, mmcblk, loop, nbd and virtual disks
  • Support for x86, x86_64

Tested ISOs

A list of tested ISO images can be found here

Installation

SparkyLinux

# Refresh the package list and install MultiOS-USB
sudo apt update
sudo apt install multios-usb

# Display available USB devices
multios-usb -l

# Install to the selected device (replace sdX with your target device)
sudo multios-usb /dev/sdX

Nix/NixOS

# run without permanent install (flakes must be enabled)
sudo nix run github:Mexit/MultiOS-USB -- /dev/sdX

# create shell with MultiOS-USB available
nix shell github:Mexit/MultiOS-USB

Arch Linux

# install using AUR helper like yay or aura
yay -S multios-usb-bin

# or install by cloning and executing makepkg -si
git clone https://aur.archlinux.org/multios-usb-bin.git
cd multios-usb-bin/
makepkg -si

# for usage instructions see SparkyLinux (usage is the same)

From GitHub - Linux console

Go to Releases, download and unpack the downloaded archive.

Check and install the required packages (in most cases they should be installed by default):

  • tar, bzip2, xz
  • sgdisk, wipefs
  • mkfs.fat, mkfs.exfat, ...

Go to the directory where you extracted the files and run the following at the console

./multios-usb.sh -l

This command will show you the USB devices available on your system.
To install MultiOS-USB, type the following command, replacing /dev/sdX with your chosen device path. For example:

sudo ./multios-usb.sh /dev/sdX

From GitHub - PowerShell installer or manual installation (UEFI only)

Recommended installation method for Windows. Installation details can be found here and in the downloaded archive.

From GitHub - Windows: image based installation (BIOS + UEFI - experimental)

Required external tools. Installation details can be found here and in the downloaded archive.

First use

After installation, copy your ISO files to the /ISOs directory and boot your computer from USB.
You can also add your own configuration files to the /MultiOS-USB/config_priv directory. They will not be deleted during the automatic MultiOS-USB update.
If you want to change the configuration for a given ISO - copy the one you have chosen from the config folder, paste into config_priv and update it according to your needs.
The updated configuration will be detected automatically.

On the first boot with Secure Boot enabled on each new computer, a MultiOS USB certificate must be installed.

Press OK
Press Enter

Choose: Enroll key from disk
Select: Enroll key from disc

Select MultiOS-EFI as partition, then browse to the EFI/cert directory and select MultiOS-USB.cer, Continue and confirm (Yes) key enrolling.
You can also immediately add certificates (keys) from popular distributions in the same way.
If you want to add a certificate later, you can do it by selecting in the Main Menu:
EFI Tools --> and then Add UEFI key or hash.

Update MultiOS-USB:

You can add support for new operating systems. No need to reinstall.
Download zip or tar.gz archive and unpack MultiOS-USB repository

Automatic update

To update configuration files, simply type the following command, replacing /dev/sdX with your chosen device path.

./multios-usb.sh -u /dev/sdX
Manual update
  • Remove all files and directories on your USB in /MultiOS-USB/config/
  • Copy the downloaded files and directories from config to the above directory.

Project URLs

  • https://gitlab.com/MultiOS-USB - full MultiOS-USB source code
  • https://github.com/Mexit/MultiOS-USB - MultiOS-USB releases

About

Boot operating systems directly from ISO/WIM images

Topics

biosbootbootable-usbgptgrub2iso-filesiso-imagelinuxliveusbloopbackmultibootnetwork-bootuefiuefi-bootuefi-securebootusbwimwindowswinpe

Resources

Readme
GPL-3.0 license
Activity

Stars

1.2k stars

Watchers

19 watching

Forks

93 forks
Report repository

Releases

Sponsor this project

Used by

Contributors

Languages

You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.