mount: /mnt: special device /dev/sdb1 does not exist

Fix 'mount: /mnt: special device /dev/sdb1 does not exist'

Linux & Unix Beginner 👁 2 views 📅 May 29, 2026

Gets you past the 'special device does not exist' error when mounting drives on Linux. Covers wrong device names, missing drivers, and partition table issues.

When This Error Hits

You plug in an external USB drive, fire up the terminal, and type:

sudo mount /dev/sdb1 /mnt

And you get slapped with:

mount: /mnt: special device /dev/sdb1 does not exist.

This usually happens right after inserting a USB stick, an SD card, or a SATA drive that you expect to show up as /dev/sdb1. Maybe you've been swapping drives a lot and the naming got scrambled. Or you're on a laptop that just came out of suspend mode and the kernel lost track of the device.

I've seen this on Ubuntu 22.04, Fedora 38, and even on a crusty old CentOS 7 server. The fix isn't complicated, but you need to know where to look.

Root Cause: It's Not There Yet

The error is brutally honest: the device file /dev/sdb1 doesn't exist. Could be one of three things:

  1. Wrong device name — you assumed sdb1, but the system actually named it sdc1 or sda1.
  2. Missing kernel driver — the USB mass storage driver isn't loaded, so the device never appears.
  3. Hardware not detected — bad cable, dead port, or the drive itself isn't spinning up.

I'll walk you through each one.

Step 1: Check What's Actually Connected

Run this command to list all block devices:

lsblk

You'll see something like:

NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda      8:0    0 238.5G  0 disk
├─sda1   8:1    0   512M  0 part /boot
├─sda2   8:2    0 237.9G  0 part /
sdb      8:16   0  14.9G  0 disk
└─sdb1   8:17   0  14.9G  0 part

If you don't see sdb or any new device, skip to Step 3. If you see sdc or sdd, your device got a different letter. Use that instead:

sudo mount /dev/sdc1 /mnt

Also check /dev/disk/by-id/ for more stable names:

ls -l /dev/disk/by-id/ | grep -v loop

Pick the one ending in -part1 — it won't change when you plug the drive into a different port.

Step 2: Try a Different Port (Seriously)

USB ports on same hub share the same controller. If one port is flaky, try the port on the other side of the laptop, or a port directly on the motherboard (not the front panel of a desktop). I've fixed dozens of "no device" issues just by moving from a USB 3.0 port to a USB 2.0 port.

After swapping, run lsblk again. If it shows up now, you found the culprit — bad port or hub.

Step 3: Load the USB Storage Module

If lsblk shows nothing and you've tried different ports, the kernel module might be missing. Check it:

lsmod | grep usb_storage

If you see nothing, load it manually:

sudo modprobe usb-storage

Then re-run lsblk. On older kernels (pre-3.x), you might instead need usbhid or ehci_hcd. On modern distros, usb_storage covers most mass storage devices.

If the module loads but the device still doesn't appear, check kernel messages:

dmesg | tail -20

Look for lines like usb 2-1: new high-speed USB device number 5 or sd 6:0:0:0: [sdb] No Caching mode page found. If you see device descriptor read/64, error -110, that means the drive itself isn't responding — try a powered USB hub or a different cable.

Step 4: Check for Partitions (The Sneaky One)

Sometimes the device appears in lsblk but has no partitions. You'll see just sdb without sdb1. That means the drive is raw (no partition table) or the partition table is corrupt. Run:

sudo fdisk -l /dev/sdb

If it says Disk /dev/sdb doesn't contain a valid partition table, you can't mount a partition — there's nothing to mount. In that case, you'd need to create a partition first (that's a separate article). But if you expected an existing filesystem, try mounting the whole disk:

sudo mount /dev/sdb /mnt

Some external drives (especially older thumb drives) present the filesystem directly on the disk, not a partition. It's worth a shot.

Still Failing? Check These

  • Power delivery — USB 3.0 ports can deliver 900mA. Some external 2.5" drives need 500mA but older USB 2.0 ports only give 500mA. Use a powered hub.
  • Filesystem support — NTFS drives need ntfs-3g installed. exFAT needs exfat-utils or fuse-exfat. If the kernel doesn't have the driver, mount may fail silently or with a different error.
  • Read-only media — Some SD cards have a physical lock switch. Flip it.
  • VM passthrough — If you're in a virtual machine (VirtualBox, VMware), make sure the USB device is attached to the guest, not the host. In VirtualBox, click Devices > USB > select your device.

If none of that works, the drive itself might be dead. Try it on another computer. If it also fails there, replace it.

Was this solution helpful?