Issues mounting an NTFS disk

Hi everyone, I hope my message will be clear enough because it’s the first time I’m writing here ! Also english is not my native language. Anyway, I’m on Manjaro KDE Stable, Kernel 6.18, nVidia GPU.
The update went well as far as I did not had a warning as the end. I’m not sure how to read the full update log for the moment.
The system boots without any issue, but there is something special : I have suddenly troubles to mount a NTFS disk that usually is mounted on boot.
Here are the issues : As I could not launch a game that was installed on this drive, I opened Dolphin to check in /mnt if I could access it. The folder was empty.
I use “Gnome disk” to check if the disk is mounted or not, but when I try to mount it, I have the following message :

It’s surprising because “hide_hidden_files” was working in my fstab since my first Manjaro install one year ago more or less. When deleting this parameter in the fstab line, I can access the disk in Dolphin but in read-only mode, So I’m not able to use the softwares on it as usual, nor my Windows 10 VHD in Virtualbox.

I’m sure that the issue went during or just after the update because I was able to use this disk everyday the days before.

Is anyone encountering this issue ? And sorry if it’s not the correct place for this message, but as it seems linked to the update…

Note that if I don’t find a solution I will use TimeShift to go back and apply the update later

Thank you in advance

hide_hidden_files is not what the error message says. Maybe you have a typo in Fstab. …hidden

2 Likes

Thank you for the suggestion, you are correct, I wrote “hidden” but the setting seems to be “hide_hid_files” because I can find it on two trustworthy sources (Fstab/fr - Manjaro) and (ntfs-3g(8) — ntfs-3g — Debian bookworm — Debian Manpages). But It don’t seems to work, I always have the same message… :thinking:

Apart of that, I can easily delete this optional setting and this is what I have on fstab for this specific NTFS disk :

/dev/disk/by-uuid/80A6D052A6D049F4 /mnt/80A6D052A6D049F4 auto defaults,windows_names,relatime,nosuid,nodev,nofail,x-gvfs-show 0 0

I tried with another NTFS disk on external USB that I use sometimes, mainly for backups : exactly the same result, I have to delete “hide_hid_files” and then I’m on read only…

It’s not that important for me to hide the Windows hidden file as I’m not browsing a lot in this disk. So let’s forget about this setting and now I have to find why I’m suddenly in read only …
I found the command needed to know the privileges of each folders and file, this is the result below :

ls -la /mnt/80A6D052A6D049F4/                                                                                                                 ✔  4m 3s  
total 60
drwxrwxrwx 1 root root  4096 22 févr. 20:33  .
drwxr-xr-x 8 root root  4096 15 févr. 12:02  ..
drwxr-xr-x 1 root root     0  8 févr.  2023 '$RECYCLE.BIN'
-rwxr-xr-x 1 root root   120  8 févr.  2023  domains.txt
drwxr-xr-x 1 root root  4096 25 janv. 17:15  Images
dr-xr-xr-x 1 root root  4096 12 avril 15:40  LUDOTHEQUE
drwxr-xr-x 1 root root  4096 22 févr. 20:29  Minecraft_1.21.11_linux
drwxr-xr-x 1 root root  4096 12 avril 15:40  RESCUEZILLA
drwxr-xr-x 1 root root 28672 29 déc.  17:24  Steam
drwxr-xr-x 1 root root  4096 22 avril 21:40 'System Volume Information'
drwxr-xr-x 1 root root     0 22 févr. 20:57  .Trash-1000
drwxr-xr-x 1 root root  4096 19 déc.  23:26 'VM Virtual box'

Be sure that I did not change the attributes / privileges by myself mainly because I’m to beginner to know the command to do that :innocent:

What I’d suggest is commenting out the original line, like this:

# /dev/disk/by-uuid/80A6D052A6D049F4  /mnt/80A6D052A6D049F4 auto    defaults,windows_names,relatime,nosuid,nodev,nofail,x-gvfs-show 0 0

and adding this line below it:

/dev/disk/by-uuid/80A6D052A6D049F4  /mnt/80A6D052A6D049F4    ntfs3  uid=1000,gid=1000,umask=022,windows_names,nosuid,nodev,nofail,x-gvfs-show  0  0

The reason for keeping the old line but commenting it out, rather than just replacing it, is that this makes it much easier to revert if there are any issues (and for any experimentation).

Remount (easiest just to reboot) and re-check. Hopefully this will have the desired result.

1 Like

To further improve/diagnose, I would change it to:

UUID=80A6D052A6D049F4  /mnt/80A6D052A6D049F4  ntfs-3g  defaults,noatime,nosuid,nodev,nofail,x-gvfs-show  0 0
  • UUID notation doesn’t matter, just shorter this way
  • Removed windows_names, this for the old FUSE driver, not this
  • ntfs-3g instead of auto – I doubt it’s the problem, but may as well specify
  • And are you sure you want relatime? This is fine for POSIX filesystems, and much better than atime, but I changed it to noatime
1 Like

I thought the windows_names might still be needed; not dealt with that side of things for years. I know it used to be an issue. I didn’t spot the relatime though. Guess that had been auto-generated by a GUI partition manager.

For my external USB spiining disk NTFS partitions, which are 2 I had to change how I mount them. First, Auto filesystem would not work. I got this error in Doplhin IIRC: “filesystem type null not configured in kernel”. So I changed auto to ntfs-3g. I have blacklisted the other NTFS driver. I don’t trust it. ntfs-3g has not been a problem ever, in the past 15 years. Ntfs3 had a rough time around kernel 5.15. Dataloss etc.
The last part in /etc/fstab looks like this for me:
ntfs-3g nosuid,nodev,nofail,x-gvfs-show 0 0
I used Gnome Disk Utility to mount the partitions. GDU added noauto to the options, which prevented automounting of the partitions, so I removed that. 2 changes I made, specify exactly which filesystem to use and removed noauto.
To note: I compiled Zen 7.0.3 and it is what I am running. Maybe I forgot to enable something in kernel config. If I did, I would not expect it to work at all. But yeah, this started with Kernel 7.

If I remember correctly hide_hid_files is specific to ntfs-3g NOT ntfs3. You’ll need to specifically make sure you’re using ntfs-3g.

You can check, by running mount and if the mount line for that device lists ntfs3 then you’re not using ntfs-3g driver.

i.e. Change your fstab entry from auto to ntfs-3g

I think this is the most likely suspect, at least listed in this thread anyway.

It’s easy enough to boot a regular kernel to at least troubleshoot though, isn’t it?

Thanks a lot everyone for your suggestions, I’m too new to discuss anything in fstab ;).
I just saw something unusual but maybe my preference for GUI instead of command line has a limit : I wrote the line below as suggested by @Molski :

UUID=80A6D052A6D049F4 /mnt/80A6D052A6D049F4 ntfs-3g defaults,noatime,nosuid,nodev,nofail,x-gvfs-show 0 0

I wrote in fstab and check it afterwards.
Then I used Gnome Disk to unmount and checked a last time the settings : the tool did changed them automatically to

defaults,windows_names,relatime,nosuid,nodev,nofail,x-gvfs-show

So maybe GDU is making some jokes ? I came back to the first line in fstab and tried directly in Konsole :

sudo systemctl daemon-reload
sudo mount /mnt/80A6D052A6D049F4                                                                                                                       
mount: /mnt/80A6D052A6D049F4: type de système de fichiers « ntfs3g » inconnu.
       dmesg(1) peut avoir plus d'informations après un échec de l'appel système du montage.

I will try only rebooting as suggested and I come back here with the result.
I cannot understand what did change so much for my NTFS drives before and after the last update, without changing any settings :face_with_raised_eyebrow:

1 Like

OK I’m very sorry, it seems that I had a typo, forgetting the “-” between “ntfs” and “3g” … :face_with_spiral_eyes:

Now I have this line in fstb as suggested initially :

/dev/disk/by-uuid/80A6D052A6D049F4 /mnt/80A6D052A6D049F4 ntfs-3g defaults,noatime,nosuid,nodev,nofail,x-gvfs-show 0 0

And this line with the command “mount”, at the end of the devices list :

/dev/sda2 on /mnt/80A6D052A6D049F4 type fuseblk (rw,nosuid,nodev,noatime,user_id=0,group_id=0,allow_other,blksize=4096,x-gvfs-show)

And I have the full access on my NTFS drive, writing is possible, even if the result of ls -la seems to be the same as before :

ls -la /mnt/80A6D052A6D049F4/                                                                                                               
total 61
drwxrwxrwx 1 root root  4096  9 mai   19:25  .
drwxr-xr-x 9 root root  4096  8 mai   20:11  ..
drwxrwxrwx 1 root root     0  8 févr.  2023 '$RECYCLE.BIN'
-rwxrwxrwx 1 root root   120  8 févr.  2023  domains.txt
drwxrwxrwx 1 root root  4096 25 janv. 17:15  Images
drwxrwxrwx 1 root root  4096 12 avril 15:40  LUDOTHEQUE
drwxrwxrwx 1 root root  4096 22 févr. 20:29  Minecraft_1.21.11_linux
drwxrwxrwx 1 root root  4096 12 avril 15:40  RESCUEZILLA
drwxrwxrwx 1 root root 28672 29 déc.  17:24  Steam
drwxrwxrwx 1 root root  4096 22 avril 21:40 'System Volume Information'
drwxrwxrwx 1 root root     0 22 févr. 20:57  .Trash-1000
drwxrwxrwx 1 root root  4096 19 déc.  23:26 'VM Virtual box'

I think that you collectively solved the issue :star_struck:
Do you have any other analysis to try ? For me it’s a big step forward. Thank you

2 Likes

Looks to be working. You have rwx set for everything on that file system though.

(You may not even care.)

If your UID is 1000 (and GID), you could add in the fstab options:

uid=1000,gid=1000,fmask=117,dmask=007

Then your:

Would look like:

drwxrwx--- 1 user group  4096  9 mai   19:25  .
-rw-rw---- 1 user group   120  8 févr.  2023  domains.txt
1 Like

ntfs does not support POSIX permissions or ownership.

  • The perceived POSIX permissions on an ntfs filesystem are emulated and are applied to the mountpoint in the virtual filesystem layer at mount time.

  • They cannot be changed while the filesystem is mounted, and they cannot be set differently for individual files.

  • The permissions are not saved on disk.

4 Likes

@Molski : I tried the additional information as suggested and the rights are indeed different and maybe more logic :

drwxrwx--- 1 julien julien  4096  9 mai   19:25  .
drwxr-xr-x 9 root   root    4096  8 mai   20:11  ..
drwxrwx--- 1 julien julien     0  8 févr.  2023 '$RECYCLE.BIN'
-rw-rw---- 1 julien julien   120  8 févr.  2023  domains.txt
drwxrwx--- 1 julien julien  4096 25 janv. 17:15  Images
drwxrwx--- 1 julien julien  4096 12 avril 15:40  LUDOTHEQUE
drwxrwx--- 1 julien julien  4096  9 mai   20:17  Minecraft_1.21.11_linux
drwxrwx--- 1 julien julien  4096 12 avril 15:40  RESCUEZILLA
drwxrwx--- 1 julien julien 28672 29 déc.  17:24  Steam
drwxrwx--- 1 julien julien  4096 22 avril 21:40 'System Volume Information'
drwxrwx--- 1 julien julien     0 22 févr. 20:57  .Trash-1000
drwxrwx--- 1 julien julien  4096 19 déc.  23:26 'VM Virtual box'

But as @Aragorn suggested, and as far I understand his answer, the “link” between these rights and the NTFS filesystem will not be made. So with or without these settings I should have the same result.

Thanks again, I selected your answer as the solution if someone needs it later. I tried it also successfully on the external HDD :+1: Have a nice Sunday everyone.

Glad you solved it. Which kernel do you run? Since it is the second such topic, with the solution to go back to ntfs-3g driver. But the kernel driver is changed at the 7 series, this shouldn’t happen on 6.18.

Exactly.

NTFS is not POSIX compliant, but the driver can present synthesized POSIX permissions across the entire filesystem.

With the umask this way, you can’t accidentally execute anything. But more importantly, only your user (plus group), and elevated privileges, can access this filesystem.

Even on a single-user system, it’s just a best-practice way of setting it up.

Give each part of the system only the access it actually needs.

My hacked httpd stole My Documents! :scream:

2 Likes

I’m running 6.18.26-1. And the troubles came only yesterday after the last Manjaro Stable kernel update … It’s maybe not limited to 7.0 kernels ? Again, I’m not skilled enough to have a position on this issue :wink:

This topic was automatically closed 3 days after the last reply. New replies are no longer allowed.