Can’t Unmount Drive on Bazzite? How to Fix It

Few things are more frustrating than trying to unmount a drive on Bazzite and being met with an error message that simply refuses to go away. Whether you’re attempting to safely remove an external SSD, detach a USB stick, or unmount an internal partition, the system sometimes pushes back. Fortunately, this is a common issue with clear causes—and even clearer solutions once you understand what’s happening behind the scenes.

TL;DR: If you can’t unmount a drive on Bazzite, it’s usually because a process is still using it. Use tools like lsof or fuser to identify what’s holding the drive, close related applications, and try again. If that fails, you can force unmount with caution or troubleshoot via the terminal or recovery mode. Most cases are easy to fix once you pinpoint the active process.

Why Bazzite Won’t Let You Unmount a Drive

Bazzite, being based on Fedora and designed with gaming and immutable features in mind, handles filesystems carefully. When you try to unmount a drive, the system checks whether any active processes are using files on that drive. If something is—even something small in the background—Bazzite will block the unmount command.

Common causes include:

  • Open files stored on the drive
  • Terminal sessions currently inside the mounted directory
  • Background services indexing or syncing files
  • Steam or gaming-related tools accessing external game libraries
  • File manager previews generating thumbnails

Understanding that the system is protecting your data—not malfunctioning—is the first step toward a solution.

Step 1: Check for Open Files and Processes

The most common reason for unmount failure is that something is still accessing the drive. To find out what, open a terminal and run:

lsof +f -- /mount/point

Replace /mount/point with the actual path of your mounted drive (for example, /run/media/username/DriveName).

This command lists all open files on that mount point. Look carefully at the PID (process ID) and the program name.

If you find a process you recognize—like a file manager or text editor—close that application normally and try unmounting again.

You can also use:

fuser -m /mount/point

This will display process IDs using the drive. To terminate them safely:

kill PID

Replace PID with the actual number. Only use kill -9 PID if a normal kill does not work, since it forcefully stops the process.

Step 2: Make Sure You’re Not Inside the Drive Directory

This one is surprisingly common. If your terminal session is currently “inside” the mounted drive directory, Bazzite will refuse to unmount it.

For example, if you ran:

cd /run/media/username/DriveName

Then the system sees your shell as actively using the drive.

To fix this:

  • Navigate away from the mounted directory:
cd ~
  • Then try unmounting again:
umount /mount/point

Once you leave the directory, the unmount usually works instantly.

Step 3: Close File Managers Properly

Graphical file managers like Dolphin (common in Bazzite KDE setups) or Nautilus may still be browsing the drive. Even if you’re looking at a different folder now, a background tab may still be active.

To ensure the file manager isn’t the issue:

  • Close all file manager windows completely
  • Wait a few seconds
  • Try unmounting again

Sometimes thumbnail generation or metadata indexing keeps the drive busy briefly after closing the window. Patience can solve the issue without further intervention.

Step 4: Watch Out for Steam and Game Libraries

Bazzite is optimized for gaming. If your external drive contains Steam libraries, Lutris games, or other launchers, those programs may keep background file handles open.

Before unmounting a game drive:

  • Exit Steam completely (including background processes)
  • Close Lutris or Heroic Launcher
  • Check that no compatibility tool (like Proton) is still running

You can verify with:

ps aux | grep steam

If Steam processes remain active, terminate them before attempting unmount.

Image not found in postmeta

Step 5: Try a Lazy Unmount

If the drive still won’t unmount but you’re confident no critical operations are running, you can try a lazy unmount.

sudo umount -l /mount/point

The -l (lazy) option detaches the filesystem immediately but delays cleanup until it’s no longer busy.

When to use lazy unmount:

  • External drives
  • Non-system partitions
  • When processes are stuck but non-critical

Avoid using lazy unmount for system-critical mounts or if you suspect heavy write operations are still in progress.

Step 6: Force Unmount (Use With Caution)

If everything fails, you can force unmount:

sudo umount -f /mount/point

This forces detachment even if processes resist. However, forcing an unmount while active writes are happening can cause:

  • Data corruption
  • Filesystem inconsistencies
  • Lost files

It’s generally safer on read-only drives or network mounts than on actively written local drives.

Step 7: Check for System Services or Automount Issues

Bazzite uses modern systemd-based mounting methods. Occasionally, a drive mounted via automount or configured in /etc/fstab may not detach cleanly due to service dependencies.

To inspect mount details:

mount | grep DriveName

Or:

lsblk -f
Image not found in postmeta

If the drive appears tied to a system service, you may need:

sudo systemctl stop service-name

Replace service-name with the relevant service.

Step 8: Run a Filesystem Check

If your drive repeatedly refuses to unmount, it may indicate filesystem inconsistencies. In that case:

  1. Reboot the system.
  2. Ensure the drive is not auto-mounted.
  3. Run a filesystem check.

For example, with ext4:

sudo fsck /dev/sdX1

Replace sdX1 with your partition identifier.

Important: The partition must not be mounted when running fsck.

Step 9: Reboot as a Last Resort

If you can’t identify the process and don’t want to force unmount, a reboot is often the simplest safe fix. Upon restart:

  • The drive will be cleanly detached
  • Lingering processes will be stopped
  • Stuck file handles will disappear

This is especially practical on a desktop gaming system like Bazzite, where uptime is usually less critical than on servers.

Preventing the Problem in the Future

To reduce future unmount headaches:

  • Avoid running apps directly from external drives
  • Close game launchers before unplugging storage
  • Don’t keep terminals inside removable drive folders
  • Disable aggressive file indexing for removable media

You can also develop a habit of checking active processes before attempting unmount, especially if you know the drive handles games or large file operations.

Understanding What’s Really Happening

When Bazzite says a drive is “busy,” it’s not being stubborn—it’s being protective. Modern Linux distributions prevent accidental data loss by requiring all file operations to finish before detaching storage.

Think of it like trying to remove a USB stick while files are still copying. The system blocks the action to safeguard your data. Once you identify the active process, most fixes take less than a minute.

Final Thoughts

If you can’t unmount a drive on Bazzite, don’t panic. In nearly every case, the issue boils down to an open process, directory lock, or background application—often something small and easily fixed. With tools like lsof, fuser, and umount, you have everything you need to diagnose and solve the problem.

Bazzite is built for performance, gaming, and reliability, and its strict unmount behavior is part of maintaining data integrity. Once you understand how it manages filesystems, you’ll not only fix the issue—you’ll prevent it from happening again.

And the next time your drive refuses to budge, you’ll know exactly what to do.