What you will achieve
Mount USB disks and external SSDs on Linux with correct filesystem type, uid/gid for desktop users, and optional fstab persistence.
1) Identify device
lsblk -f
sudo blkid
Use /dev/disk/by-id/ paths in fstab — /dev/sdb1 can change after reboot.
2) Mount manually
sudo mkdir -p /mnt/external
sudo mount -o uid=1000,gid=1000 /dev/sdb1 /mnt/external
NTFS: sudo apt install ntfs-3g. exFAT: exfatprogs or exfat-fuse.
3) Unmount safely
sync
sudo umount /mnt/external
4) udisks2 (desktop)
GUI file managers use udisks2; CLI: udisksctl mount -b /dev/sdb1.
Verify
findmnt /mnt/external
df -h /mnt/external
5) fstab entry for desktop user
UUID=abc /mnt/data ext4 defaults,noatime,nofail,x-systemd.automount 0 2
6) Format new drive
sudo mkfs.ext4 -L data_disk /dev/sdb1
Triple-check device name. wipefs -a only when certain.
7) SMART test before trusting old disks
sudo smartctl -t short /dev/sdb
sudo smartctl -a /dev/sdb
automount vs manual
Servers use fstab. Desktops often rely on udisks2 — manual mount as root can confuse file managers expecting automount.
8) exFAT for Windows interchange
sudo apt install exfatprogs
sudo mkfs.exfat -n PORTABLE /dev/sdb1
Prerequisites
Device identified via lsblk (not guessing /dev/sdb). Filesystem type known. Mount point created. Optional: fstab UUID entry. User uid/gid for desktop writable mounts.
USB autosuspend issues
echo on | sudo tee /sys/bus/usb/devices/1-*/power/control
External drives disappearing mid-copy — disable USB autosuspend for that port on servers with always-attached USB storage.
NTFS fix
sudo ntfsfix /dev/sdb1After unsafe Windows eject — run before mount on Linux to avoid read-only NTFS mount.
udisks2 polkit
Desktop auto-mount uses polkit rules — custom mount options need /etc/udisks2/mount_options.conf. Servers without polkit use fstab exclusively; do not expect GNOME Disks behaviour on headless Ubuntu Server.
hfsplus mac drives
sudo apt install hfsprogs
sudo mount -o force,rw /dev/sdb2 /mnt/macMac journaled HFS needs force,rw on Linux — read-only default protects against partial write support.
lsblk before every mount
USB device names shuffle — script mounting /dev/sdb1 without lsblk check is how backups get written to wrong disk. Use /dev/disk/by-id in scripts.
sync before unmount ritual
Teach operators sync then umount — pulling USB without umount causes filesystem corruption especially on exFAT and NTFS written from Linux with delayed allocation.
gio mount desktop
GNOME gio mount -d /dev/sdb1 integrates with keyring for encrypted volumes — CLI equivalent of file manager click mount with polkit prompt.
fat32 4GB limit
Videos larger than 4GB need exFAT or ext4 — FAT32 ok for small USB exchange drives only.