{"id":21885972,"url":"https://github.com/garywill/multibootudisk","last_synced_at":"2026-03-08T13:36:40.379Z","repository":{"id":97198345,"uuid":"112169402","full_name":"garywill/multiBootUDisk","owner":"garywill","description":"A different (and old-fashioned) way to make a multi-boot (legacy BIOS) udisk on Linux. Can boot Linux/Windows","archived":false,"fork":false,"pushed_at":"2018-05-31T04:13:42.000Z","size":1110,"stargazers_count":5,"open_issues_count":0,"forks_count":1,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-04-15T07:56:21.028Z","etag":null,"topics":["boot","boot-from-iso","bootloader","grub4dos","linux","live","multiboot","support-iso-boot","syslinux","udisk","usb","usb-flash-drives"],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/garywill.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-11-27T08:35:31.000Z","updated_at":"2022-01-23T10:17:59.000Z","dependencies_parsed_at":null,"dependency_job_id":"043e56c4-6380-49bd-9897-2a2e22b1ac9a","html_url":"https://github.com/garywill/multiBootUDisk","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/garywill%2FmultiBootUDisk","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/garywill%2FmultiBootUDisk/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/garywill%2FmultiBootUDisk/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/garywill%2FmultiBootUDisk/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/garywill","download_url":"https://codeload.github.com/garywill/multiBootUDisk/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":249031777,"owners_count":21201357,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["boot","boot-from-iso","bootloader","grub4dos","linux","live","multiboot","support-iso-boot","syslinux","udisk","usb","usb-flash-drives"],"created_at":"2024-11-28T10:31:09.584Z","updated_at":"2026-03-08T13:36:40.305Z","avatar_url":"https://github.com/garywill.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Multi boot Udisk\n\nMake a multi-boot udisk (usb flash disk) on Linux. \n\nCan boot Windows/Linux. \n\nCan boot from a `.iso` file, in this case no need extracting to udisk. \n\nStill able to use this udisk space as general storage. (All files are on an FAT32 partition)\n\n## How it work\nUses [syslinux](http://www.syslinux.org) as udisk's legacy BIOS bootloader.\n\nOn syslinux menu, an entry to boot [grub4dos](http://grub4dos.sourceforge.net/) (a fork of grub) ([Github page](https://github.com/chenall/grub4dos)).\n\nOn grub4dos menu there are many entries to boot various maintain tools, systems, system installations. (You can customize your entries)\n\n### Why this way?\n`syslinux` is a legacy bootloader which is competitable for many machines.\n\n`grub4dos` supports `.iso` file boot. \n\n## What it can boot\n\nFor now I successfully boot:\n1. Clonezilla , a linux cloning tool\n2. Windows PE (support iso boot)\n3. puppy linux\n4. Windows 7/8 and it's Installation\n5. Windows XP and it's Installation (support iso boot) (workaround. some machines fail)\n6. Ubuntu (support iso boot)\n\n## Usage\n\nProcedure: (Following can be done by the shell script `makemultiboor.sh`.)\n1. Make an msdos partition table on udisk\n2. Make a partition on udisk, for example `/dev/sdb1`\n3. Set `/dev/sdb1` boot flag\n4. Format `/dev/sdb1` as FAT32\n5. Write `syslinux` MBR to target `/dev/sdb`\n6. Copy `syslinux` files, `grub4dos` files and others to `/dev/sdb1` (copy all files in `ubasic` folder to udisk)\n\nManually put your `.iso` files to udisk. \n\nSome support booting from `.iso` file, some doesn't. For those that doesn't support, you need to extract them and put files into udisk. \nTo find out which support and which doesn't, try it yourself or google \"grub4dos boot iso \u003cwhat you want to boot from .iso\u003e\".\n\nAbove should be done before you put other files (photo, music etc. for general storage) into udisk, to make sure the system or `.iso` files is physically continous and not far away from MBR.\n\n**`grub4dos/menu.lst` is the key to success. Read it and modify it according to your need.**\n\n\u003e In this repo `syslinux` and `grub4dos` binaries are not latest.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgarywill%2Fmultibootudisk","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgarywill%2Fmultibootudisk","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgarywill%2Fmultibootudisk/lists"}