I’ve been cruising along on EOS on both of my laptops for a few months now. As a credit to this community, this is the first time I’ve felt completely unable to find a solution to what I’m trying to accomplish (though it seems like it should be a simple matter)
I recently installed a fresh WD Blue 1TB M.2 NVME drive into one of my laptops for the purpose of media and Steam library storage for both the EOS and Windows installs on the machine. I’m using the drive as a single partition. From what I’ve gathered for cross-platform compatibility, exFAT or NTFS are the best options for formatting and I have tried both in all of the following scenarios. I’ve had no problem figuring out how to partition the drive, and I’ve been getting my feet wet with fstab and successfully have it formatted and mounting at boot to where I want it to be, but that’s where my luck and rudimentary Linux knowledge has seemingly run out.
Upon getting it mounted the first time, I immediately tried to get Steam on Linux set to use a folder there instead of where it had been, and got the “New Steam library folder must be on a filesystem mounted with execute permissions” error. The solutions I’ve found for this are all suggesting adding “exec” to the fstab options, but unless I’m doing something wrong that doesn’t seem to have an effect.
Additionally, as far as day-to-day storage usage is concerned, I’m in a permissions snafu. Seemingly I can only write to the drive as root and I can’t figure out a way to use it as a user. Most tutorials I’ve seen for adding a hard drive to Linux mention to either use chown on the folder the drive is mounted to, or the “user” option in fstab, but neither seem to work. The fstab edit has no apparent effect, and attempting to “sudo chown” the target mount folder seems to have a weird result. With the drive unmounted, it works as expected and I can see the permissions readout change in my terminal. Upon mounting it either manually or at boot however, the permissions appear to revert back to root only. With the drive mounted, running sudo chown on it spits back “Operation not permitted”.
I feel like I’m chasing my tail troubleshooting this, any suggestions?
Current fstab entry for the drive looks like this:
UUID=E37E-EF91 /mnt/storage exfat rw,user,exec,dev,suid,auto,async,noatime 0 0
Best to show the full fstab entries.
cat /etc/fstab | eos-sendlog
Edit: [Tutorial] How to Permanently Mount External/Internal Drives in Linux
Did you try changing the owner and permissions of the /mnt/storage folder before mounting to that folder? Move rw and exec to the end of the options to ensure those take effect at the end?
I’ve had this issue before and I dont remember what the specific change was that fixed it for me.
Example of my working fstab entries:
UUID=826abf9e-d9e2-4edf-a7f1-3364afdd470c /mnt/btrextra btrfs space_cache=v2,autodefrag,compress-force=zstd:1,rw,exec,noatime 0 0
UUID=3da18f53-2a49-4a6b-9022-3f1cd67f2d54 /mnt/steam btrfs subvol=/@steam,ssd,nodatacow,space_cache_v2,rw,exec,noatime 0 0
Both those mnt folders are owned by my user and have full rwx permissions on them.
Full current fstab (The line of the drive in question has changed as I’ve been tinkering more to no avail)
# /etc/fstab: static file system information.
# Use 'blkid' to print the universally unique identifier for a device; this may
# be used with UUID= as a more robust way to name devices that works even if
# disks are added and removed. See fstab(5).
# <file system> <mount point> <type> <options> <dump> <pass>
UUID=5523-67B3 /boot/efi vfat umask=0077 0 2
UUID=1550562f-1a61-46be-af96-f90452ee72ca swap swap defaults,noatime 0 0
UUID=7d292092-51cb-4bd6-bdd6-d3172c0e140b / ext4 defaults,noatime 0 1
UUID=b23c1f06-43f8-4464-ba88-d9eaa6b46a8c /home ext4 defaults,noatime 0 2
UUID=E62F-59A4 /mnt/data exfat user,noatime,rw,exec 0 2
I somehow hadn’t found that tutorial in my searches, but it still is giving me the same result. I can only work with the drive as root.
That’s what’s confusing me the most, I have indeed tried to set the permissions before mounting. I even started over with the step by step tutorial ricklinux linked above, and when checking permissions before mounting it is indeed owned by my user and has full rwx. Upon mounting however, the permissions change back to being owned by root and the user only has r-x. So I do seem to have execute privileges now, but I still don’t have any write privileges to put data on it in the first place.
You have to mount it first before changing permissions.
Edit: So you add the uuid to fstab with what ever you are naming it mine is /data
sudo mkdir /data
sudo mount /data
sudo chown -R ricklinux:ricklinux /data
Would this work, with the drive mounted:
sudo chown -R user:user /mnt/data
sudo chown -R calea:calea /mnt/data
While the folder is mounted results in the error
chown: changing ownership of '/mnt/data/': operation not permitted
That is the name you have?
Edit: I’m not sure the fstab is correct?
Try mounting it to /media/calea/data
in your fstab
Forum name is subbed for my actual user name, but otherwise yes that is the folder name I’m now using, triple checked. I changed the name from my original post after I started over with the tutorial you linked.
fstab could totally be incorrect
What does this show?
Edit: My fstab is this.
UUID=333cc16f-8f62-4d34-a83b-449de831b9b1 /data ext4 defaults,noatime 0 0
‘lsblk -l’ Output:
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
nvme0n1 259:0 0 931.5G 0 disk
nvme1n1 259:2 0 238.5G 0 disk
nvme1n1p1 259:3 0 150M 0 part
nvme1n1p2 259:4 0 128M 0 part
nvme1n1p3 259:5 0 78.7G 0 part
nvme1n1p4 259:6 0 990M 0 part
nvme1n1p5 259:7 0 13.6G 0 part
nvme1n1p6 259:8 0 1.3G 0 part
nvme1n1p7 259:9 0 512M 0 part /boot/efi
nvme1n1p8 259:10 0 8G 0 part [SWAP]
nvme1n1p9 259:11 0 60G 0 part /
nvme1n1p10 259:12 0 75.1G 0 part /home
nvme0n1p1 259:13 0 931.5G 0 part /mnt/data
Sorry that wasn’t what i was looking for.
Edit: I’m not the expert here.
All good! Here you go:
NAME FSTYPE FSVER LABEL UUID FSAVAIL FSUSE% MOUNTPOINTS SIZE OWNER GROUP MODE
nvme0n1 931.5G root disk brw-rw----
└─nvme0n1p1 exfat 1.0 E62F-59A4 931.5G 0% /mnt/data 931.5G root disk brw-rw----
nvme1n1 238.5G root disk brw-rw----
├─nvme1n1p1 vfat FAT32 ESP 1C9B-F1BB 150M root disk brw-rw----
├─nvme1n1p2 128M root disk brw-rw----
├─nvme1n1p3 BitLocker 2 78.7G root disk brw-rw----
├─nvme1n1p4 ntfs WINRETOOLS 883012AF3012A3EA 990M root disk brw-rw----
├─nvme1n1p5 ntfs Image 0CDC12FCDC12E02E 13.6G root disk brw-rw----
├─nvme1n1p6 ntfs DELLSUPPORT 9E3CD03B3CD00FDF 1.3G root disk brw-rw----
├─nvme1n1p7 vfat FAT32 LINUX BOOT 5523-67B3 510.7M 0% /boot/efi 512M root disk brw-rw----
├─nvme1n1p8 swap 1 1550562f-1a61-46be-af96-f90452ee72ca [SWAP] 8G root disk brw-rw----
├─nvme1n1p9 ext4 1.0 Root 7d292092-51cb-4bd6-bdd6-d3172c0e140b 34.3G 36% / 60G root disk brw-rw----
└─nvme1n1p10 ext4 1.0 Home b23c1f06-43f8-4464-ba88-d9eaa6b46a8c 41.5G 38% /home 75.1G root disk brw-rw----
Okay uuid is correct but i’m not sure about all the other entries?
The clutter on nvme1n1 is the result of me removing the preinstalled Windows 11 but keeping its recovery partitions, installing Windows 10 with a recovery partition, and then installing EOS alongside that. It’s definitely a mess but everything on it works as expected. nvme0n1 is the new disk and is the only thing causing me issues.
In my brief testing, formatting a drive as vfat and mounting it, then changing the ownership to your user of the mountpoint, unmounting and remounting results in a drive the user can write to. Maybe it is a limitation of exfat?
I came across this:
uid=M,gid=N to the options where M is your user ID and N your group id (you can find these by running the command
id in a terminal).
Do you have
Edit: You may need this package installed?
I didn’t have the option for vfat in gparted, but I went back thru the forum tutorial using NTFS instead and it works as expected. Seems it might indeed be something involving exfat that was causing the problem!