How to Install WoeUSB on Ubuntu 24.04 and 22.04

Last updated Sunday, May 10, 2026 7:48 am Joshua James 5 min read 1 comment

Creating Windows installation media from Ubuntu needs more than a raw image writer because Windows ISOs include boot files, UEFI details, and install images that can exceed FAT32 limits. WoeUSB handles that from the terminal, and the current practical way to install WoeUSB on supported Ubuntu releases is the tomtomtom Launchpad PPA.

The PPA currently publishes WoeUSB packages for Ubuntu 24.04 (noble) and 22.04 (jammy), but not Ubuntu 26.04 (resolute). The setup command checks your codename before adding the PPA, so unsupported releases stop cleanly instead of keeping a broken package source.

Install WoeUSB on Ubuntu

Compare WoeUSB Package Names on Ubuntu

The WoeUSB names are easy to mix up. The original WoeUSB CLI, the old graphical frontend, and WoeUSB-ng are separate packages with different maintenance and installation tradeoffs.

NameUbuntu ScopeWhat To DoNotes
WoeUSB PPA packageUbuntu 24.04 and 22.04Use the documented install pathInstalls WoeUSB 5.2.4 with dependencies and APT-managed updates.
Ubuntu 26.04No PPA package yetStop before adding the PPAThe PPA has no resolute suite, so APT cannot install WoeUSB on 26.04 from this source.
WoeUSB-ngSeparate Python projectDo not mix it with the PPA packageLatest PyPI release is 0.2.12 from 2023, and upstream still documents system-wide pip installation.
woeusb-frontend-wxgtkUbuntu 24.04 and 22.04Skip unless you need the legacy GUIThe PPA publishes this legacy GUI package, but the CLI package is the cleaner default.

Launchpad PPAs are third-party package sources, not Ubuntu archive packages. Use this PPA only if you trust the maintainer, and remove it afterward if you only need WoeUSB for a one-time USB write.

The PPA package also declares a break against WoeUSB-ng. If you previously experimented with WoeUSB-ng, remove it before installing the PPA package to avoid package conflicts.

Update Ubuntu Before Installing WoeUSB

Refresh APT so Ubuntu sees the latest package metadata from enabled sources:

sudo apt update

Your account needs sudo privileges for the package commands in this workflow. If administrator access is not configured yet, follow our guide to add a user to sudoers on Ubuntu before continuing.

Add the WoeUSB PPA on Supported Ubuntu Releases

Use this guarded command sequence to add the PPA only on Ubuntu releases that currently have WoeUSB packages:

. /etc/os-release
case "$VERSION_CODENAME" in
  noble|jammy)
    sudo add-apt-repository ppa:tomtomtom/woeusb -y
    ;;
  *)
    printf 'This WoeUSB PPA workflow is limited to Ubuntu 24.04 (noble) and 22.04 (jammy), not %s.\n' "$VERSION_CODENAME"
    ;;
esac

If the unsupported-release message appears, stop here. On Ubuntu 24.04 or 22.04, add-apt-repository adds the source and refreshes APT automatically.

Confirm that APT can see the WoeUSB package before installing it:

apt-cache policy woeusb

Relevant output on Ubuntu 24.04 shows the PPA candidate:

woeusb:
  Installed: (none)
  Candidate: 5.2.4-1~ppa~noble
  Version table:
     5.2.4-1~ppa~noble 500
        500 https://ppa.launchpadcontent.net/tomtomtom/woeusb/ubuntu noble/main amd64 Packages

Ubuntu 22.04 shows the same WoeUSB branch with a 5.2.4-1~ppa~jammy package version.

Install WoeUSB with APT

Install the CLI package from the PPA:

sudo apt install woeusb

APT also installs the runtime tools WoeUSB needs, including wimtools for Windows image handling and the GRUB utilities used when preparing boot media.

Verify the WoeUSB Package on Ubuntu

Check the active WoeUSB command path after installation:

command -v woeusb

On current Ubuntu systems, the command resolves to:

/usr/sbin/woeusb

To inspect WoeUSB’s built-in options, run the help command from a normal terminal session:

woeusb --help

Use WoeUSB on Ubuntu

The upstream WoeUSB project describes support for Windows Vista and later installation images. A Windows 11 ISO uses the same WoeUSB command form, but the target PC still must satisfy Windows 11 firmware, TPM, Secure Boot, and CPU requirements during installation.

Identify the USB Device Before Writing

List removable storage devices before you write anything. Use the disk path, such as /dev/sdX, for full-device mode, not a partition path such as /dev/sdX1:

lsblk -dpno NAME,SIZE,MODEL,TRAN

If Ubuntu mounted the USB drive automatically, unmount each mounted partition first. Replace /dev/sdX1 with the partition shown by lsblk:

sudo umount /dev/sdX1

Create a Bootable Windows USB with WoeUSB

The --device mode wipes the entire USB drive, creates the needed layout, and writes the Windows installation media from the ISO:

sudo woeusb --device /path/to/windows.iso /dev/sdX

The --device command permanently erases the target USB drive. Confirm the disk with lsblk before running it, and do not use your system disk or an internal data drive as the target.

WoeUSB defaults to a FAT target filesystem and can split oversized Windows image files with wimtools. If you specifically need an NTFS target, set it explicitly:

sudo woeusb --target-filesystem NTFS --device /path/to/windows.iso /dev/sdX

Write Windows Files to an Existing USB Partition

Use --partition only when you already prepared the USB partition and want WoeUSB to copy the Windows files there. This mode can overwrite files with matching names on that partition, but it does not repartition the whole disk:

sudo woeusb --partition /path/to/windows.iso /dev/sdX1

Update or Remove WoeUSB from Ubuntu

Update WoeUSB

Refresh APT, then upgrade the WoeUSB package only if a newer PPA build exists:

sudo apt update
sudo apt install --only-upgrade woeusb

The --only-upgrade flag updates WoeUSB only when it is already installed; it will not add the package to a system that does not have it.

Remove WoeUSB from Ubuntu

Remove the WoeUSB package first. If you installed the optional GUI frontend, include woeusb-frontend-wxgtk in the same command.

sudo apt remove woeusb

Review any now-unused dependencies before deleting them:

sudo apt autoremove --dry-run

If the preview lists only packages you no longer need, run the cleanup:

sudo apt autoremove

Confirm WoeUSB is no longer installed:

dpkg -l woeusb | grep '^ii' || printf 'woeusb is not installed\n'
woeusb is not installed

Remove the WoeUSB PPA from Ubuntu

If you no longer need the PPA, remove the source and refresh APT. Ubuntu 22.04 can leave the PPA trust files behind, so remove the verified WoeUSB key files as part of the cleanup:

sudo add-apt-repository --remove ppa:tomtomtom/woeusb -y
sudo rm -f /etc/apt/trusted.gpg.d/tomtomtom-ubuntu-woeusb.gpg /etc/apt/trusted.gpg.d/tomtomtom-ubuntu-woeusb.gpg~
sudo apt update

Verify that the PPA no longer contributes a package candidate:

apt-cache policy woeusb | grep launchpadcontent || printf 'WoeUSB PPA source is not active\n'
WoeUSB PPA source is not active

For broader source cleanup patterns, see our guide to remove a PPA from Ubuntu.

Troubleshoot WoeUSB on Ubuntu

APT Cannot Locate the WoeUSB Package

If APT cannot locate woeusb, check the Ubuntu codename first:

. /etc/os-release
printf '%s\n' "$VERSION_CODENAME"

The PPA currently publishes packages for noble and jammy. If the command prints resolute, the PPA does not publish Ubuntu 26.04 packages yet, so sudo apt install woeusb will fail from this source.

On Ubuntu 24.04 or 22.04, recheck the package candidate:

apt-cache policy woeusb

If no candidate appears on those releases, repeat the guarded PPA command sequence and watch for repository or network errors during the APT refresh.

WoeUSB-ng Pip Install Fails on Ubuntu

Errors such as externally-managed-environment or ModuleNotFoundError: No module named 'woeusb' usually mean you are following WoeUSB-ng Python instructions instead of the PPA package path. Modern Ubuntu protects the system Python environment, so do not bypass that protection with --break-system-packages just to install a USB writer.

Use the APT-managed WoeUSB package on Ubuntu 24.04 or 22.04. If you choose to experiment with WoeUSB-ng anyway, keep it isolated from the PPA package, because the PPA package declares a conflict with WoeUSB-ng.

WoeUSB Reports the Target Device Is Busy

Ubuntu desktops often mount removable drives automatically. WoeUSB stops when the source or target is still mounted, with an error similar to:

Target device is currently busy, unmount all mounted partitions in target device then try again

Find mounted USB partitions, unmount them, then run the WoeUSB command again:

lsblk -o NAME,MOUNTPOINTS /dev/sdX
sudo umount /dev/sdX1

WoeUSB Reports wimlib-imagex Is Missing

The PPA package depends on wimtools, which provides wimlib-imagex. If you see this error after using a manual script or an incomplete package install, reinstall WoeUSB and wimtools from APT:

WoeUSB requires wimlib-imagex command in the executable search path, but it is not found.
sudo apt install --reinstall woeusb wimtools

Conclusion

WoeUSB is ready on Ubuntu 24.04 or 22.04 for Windows ISO writes, with the PPA guarded so Ubuntu 26.04 systems avoid a broken source. Keep the device checks close before every write, remove the PPA when the job is done, and use GParted on Ubuntu when you need safer partition review before touching a drive.

Follow LinuxCapable

Want more LinuxCapable guides in Google?

Add LinuxCapable as a preferred source so Google can show more of our fresh Linux tutorials in Top Stories and From your sources when relevant.

Add LinuxCapable as a preferred source on Google
Search LinuxCapable

Need another guide?

Search LinuxCapable for package installs, commands, troubleshooting, and follow-up guides related to what you just read.

Found this guide useful?

Support LinuxCapable to keep tutorials free and up to date.

Buy me a coffeeBuy me a coffee

1 thought on “How to Install WoeUSB on Ubuntu 24.04 and 22.04”

Before commenting, please review our Comments Policy.
Formatting tips for your comment

You can use basic HTML to format your comment. Useful tags currently allowed in published comments:

You type Result
<code>command</code> command
<strong>bold</strong> bold
<em>italic</em> italic
<blockquote>quote</blockquote> quote block

Got a Question or Feedback?

We read and reply to every comment - let us know how we can help or improve this guide.

Let us know you are human: