Why can't I mount my USB drive on ArchLinux?

I just started running ArchLinux and things were going swimmingly enough until I ran into this problem--I feel like I'm missing something obvious but I'm just not sure what it is.

When I try to mount my USB stick, I can't find the device in /dev.

Here's the dmesg from when I plug the stick in:

USB 1-8: new high speed USB device using ehci_hcd and address 6

According to the relevant ArchLinux page I gather that I'm supposed to see the device node there. I don't see it though.

Here's my lsusb output:

Bus 001 Device 006: ID 13fe:1f00 Kingston Technology Company Inc. DataTraveler 2.0 4GB Flash Drive / Patriot Xporter 32GB (PEF32GUSB) Flash Drive

When I take a look in /dev, I see sda, sda1..sda4, but I'm pretty sure that's just my hard drive and its partitions.

Does anybody have any guesses as to what I'm missing?


Restart solved this for me. It was possibly related to the fact that I updated the kernel and restart was needed for some reason.


In /dev you do indeed see the hard drives as /sda and /sdb etc. If you go to /dev/disk/by-id/ you will see a different list by unique device names.

When you mount it, use that name just as you would use /sda.

The advantage of using unique device names instead of names like /sda, is the device is mounted the the same way each time regardless of boot order or thumb drives left in while rebooting which can change the usb drive order, etc.

Here's the mount command for my Cowen mp3 player (one line):

mount /dev/disk/by-id/usb-COWON_J3_0221001E55027D511123241626337D51-0:0 /media/cowon-j3-main

And to mount the micro Sd in the same device, I go back to /dev/disk/by-id to discover it's name, and mount it like this (one line):

mount /dev/disk/by-id/usb-COWON_J3_EXT_0221001E55027D511123241626337D51-0:1-part1 /media/cowen_j3_card/

You have to make the mount directories first of course. I usually put drives with fixed media in /mnt/ and drives with removable media in /media/. Others do it differently.

Once you have it working right from the command line, you can put it in your file system table (edit /etc/fstab as root) to make mounting it easier.

Here's an excerpt from my fstab that shows how I mount 4 different mp3 players (each 1 line per device and 2 per device if it has a microsd card in it):

# -------- Sansa 4gb e260 in Rockbox mode 
/dev/disk/by-id/usb-Rockbox_Internal_Storage_90000000000000000A4B4520213ED0490-0:0-part1 /media/sansa-main auto noauto,users 0  0

/dev/disk/by-id/usb-Rockbox_SD_Card_Slot_90000000000000000A4B4520213ED0490-0:1-part1 /media/sansa-main auto noauto,users 0  0

# -------- Sansa 8gb e280 in Sansa mode 
/dev/disk/by-id/usb-SanDisk_Sansa_e280_D008E2146237B49F0000000000000000-0:1-part1 /media/sansa-main auto noauto,users 0  0

# -------- Cowen J3
/dev/disk/by-id/usb-COWON_J3_0221001E55027D511123241626337D51-0:0 /media/cowen_j3_main/     auto noauto,users,rw    0  0

/dev/disk/by-id/usb-COWON_J3_EXT_0221001E55027D511123241626337D51-0:1-part1 /media/cowen_j3_card/ auto noauto,users,rw  0  0

# -------- Cowen S9
/dev/disk/by-id/usb-COWON_S9_1600001E55166FBC1025241539136FBC-0:0 /media/cowen_s9/  auto noauto,users,rw    0  0

Once it is in the fstab, instead of mounting it with the full command as we did above, I can mount it with this shorter way:

mount /media/cowen_s9_main

and it does the same thing.

So to recap: first, make the mount points (directories) you will use for mounting it. second, go discover the unique device name in /dev/disk/by-id third, assemble and run the mount command with your unique name and the mount point you decided on.

Then I usually "ls" the mount point to be sure the device is there and readable.

ls /media/cowen_s9_main

I was more verbose than you may have needed, but others will read this too. Also, the comments in the fstab excerpt have had the octothorpe (#) removed from the front of them due to the editor here--they need to be there for it to work.