Recently, my hard drive was almost full, so I decided to add a mechanical hard drive. After installing the drive on Ubuntu, I encountered a frustrating problem: SMB remote access showed “permission denied,” even though local access worked perfectly.
Quick note: If your drive is connected via internal SATA/NVMe, do not format it to FAT or exFAT—it will cause significant troubles later. Additionally, the “FAT” option in Linux formatting refers to the legacy FAT filesystem, which has a 4GB maximum file size limit.
I tried various methods like adjusting permissions, but none worked for remote access.
Finally, I found the solution: when setting up auto-mount at boot in /etc/fstab, use the following configuration with specific mount options:
[Drive Path] [Mount Point] auto nosuid,nodev,nofail,x-gvfs-show 0 0
The key part is the mount options: nosuid,nodev,nofail,x-gvfs-show. Many online tutorials suggest ineffective options, but these are the default options used by Ubuntu’s “Disk” utility—and they work reliably.
I hope these will help someone in need~