LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - Newbie (https://www.linuxquestions.org/questions/linux-newbie-8/)
-   -   Safely disconnect a USB drive via command line (https://www.linuxquestions.org/questions/linux-newbie-8/safely-disconnect-a-usb-drive-via-command-line-4175733700/)

disk_bearing 02-09-2024 03:46 PM

Safely disconnect a USB drive via command line
 
The eject button in Fedora's file manager works great but I want to get better at the command line.
Code:

$ umount /dev/sdx
usually does nothing.
Code:

$ udisksctl umount -b /dev/sdx
$ udisksctl power-off -b /dev/sdx

sometimes works, other times it ties up the drive making me afraid to remove it. Also its really verbose.

Any tips about the nuance of safely removing drives?

TB0ne 02-09-2024 03:53 PM

Quote:

Originally Posted by disk_bearing (Post 6482520)
The eject button in Fedora's file manager works great but I want to get better at the command line.
Code:

$ umount /dev/sdx
usually does nothing.
Code:

$ udisksctl umount -b /dev/sdx
$ udisksctl power-off -b /dev/sdx

sometimes works, other times it ties up the drive making me afraid to remove it. Also its really verbose. Any tips about the nuance of safely removing drives?

Reading the man page on the umount command would be a good tip. You don't unmount the device, but the mount-point, and unless you're in the right groups you need to be root or use sudo to run it. If you have /dev/sdx mounted on /home/user/path you'd type in:
Code:

umount /home/user/path

jefro 02-09-2024 07:55 PM

Usb's could be in some cache state. Some process still using it?

Eject and unmount a filesystem different.

https://unix.stackexchange.com/quest...-eject-command

replica9000 02-09-2024 09:07 PM

You should be able to unmount with either the device path or the mount path. So if your USB device is /dev/sdb1 mounted on /mnt/myusb, using umount /dev/sdb1 or umount /mnt/myusb should work. If you get a message like device or resource is busy, you can use lsof to see what's keeping your device busy. Ex. lsof /mnt/myusb.

hazel 02-10-2024 12:01 AM

Quote:

Originally Posted by disk_bearing (Post 6482520)
The eject button in Fedora's file manager works great but I want to get better at the command line.
Code:

$ umount /dev/sdx
usually does nothing.

I've never known umount to "do nothing". Either it works silently and a subsequent run of mount shows the device gone, or it fails and gives you an error message (usually "device busy"). Did you run mount immediately afterwards to check if anything had happened?

Remember that Linux commands don't usually give you any feedback when they work. They give you an error message when they don't work. It's the Napoleon principle: only wake me if there's bad news.

mrmazda 02-10-2024 12:03 AM

A simple df will remind you what's mounted where, so you can verify the correct filesystem to umount. It probably isn't /dev/sdx that needs umounting, but /dev/sdxy, or its mount point.


All times are GMT -5. The time now is 06:06 PM.