Unable to paste files into external hard drive


I have a Seagate 1TB external drive. I’ve had it running on Manjaro for years without any issues.

Recently I connected it to backup some files, but it would not let me copy files (errno 18).

I tried to find an answer to this and various threads pointed to NTFS being the culprit for some reason, and needing ntfs-3g.

I installed ntfs-3g but the problem persisted. Worse, because now I could not mount the drive at all any more.

I backed up my backup drive and formatted to FAT32. Now manjaro automounts the drive, but I still cannot paste into it. Right-click in dolphin doesn’t even give me the option to paste. The ownership on the mount point is “root”, and thought perhaps I need to change it to my username. However changing the ownership doesn’t change the ownership at all, it just reverts back to “root”.

By default I never had to mess around with anything, Manjaro would always just detect everything fin. This particular drive would mount to something like /run/media/(I forget the rest). But along the way I changed the mount point to be a folder in my home folder (again following advice in one of the threads).

I’m afraid I’ve just made a mess of everything.

What steps can I take to try to fix this?

Welcome to the forum!

Although a long read, I would really like to recommend that you’d work your way through these two tutorials. :arrow_down:

Thanks for the links.

I have read through the links and I understand now that being FAT32 being non-posix (as is NTFS), the privileges are faked and emulated.

As best I could understand, and looking at the example, I added an entry to my /etc/fstab:

UUID=C0C9-2695 /home/drifter/seagate vfat auto,nofail,uid=1000,gid=1000,utf8,umask=022,defaults 0 0

This had the following effects:

  1. The ownership of the “drive” changed from root to <myusername> - great!
  2. When I right-click in the “drive” I now have the option to create a new file. Creating a new file created and saved it in the “drive” without issues.
  3. Right-clicking and selecting “Paste x files into folder” still does not work. I get the following error:

Cannot copy <file x> to /home/drifter/seagate/<file x> (Errno 18)

Where can you suggest I look for how to address this error? If to your knowledge the answer is in the links you provided, you can let me know to re-read. If not, where can I read more to understand this error?

Errno 18 is a cross-link device error, which suggests that the application you’re using for copying would actually be trying to link the files, rather than copying them. And when it comes to linking, there are two kinds of links, i.e.:

  • a hard-link, which is basically just an additional name for an already existing file; and…
  • a symbolic link, which is a special type of file that acts as a pointer to the original file.

Now, a hard-link can only be created on the same filesystem as the original file, given that it’s only another name for the same file. A symbolic link can cross devices, but ─ and here’s the catch ─ the target filesystem must support symbolic links, and vfat does not support that.

Now, I’m not saying that you were trying to create a link instead of copying the file, but apparently the file manager you’re using thinks that this is what you were trying to do, and I’ve seen people reporting about that earlier, but I forgot which file manager it was; it may have been Dolphin, which I am using too, but I cannot verify that as I don’t have any vfat or ─ for that matter ─ ntfs partitions.


Edit: By any chance, do those files contain any special characters in their names?

Indeed I’m using Dolphin. I hae changed from vfat to NTFS to see if any difference, but still get that error.

A hard link is what I suppose I want, since I want to be able to connect my drive to other laptops and be able to access the files there. It needs to be NTFS as that other laptop is a windows laptop.

I just find it strange, since the files that are in this external drive, I put them there from my Manjaro system. using the same file manager Dolphin.

If there is a better file manager I should be using, I’m open to options!

Thanks for your reply, it’s been helpful so far.

You cannot hard-link across filesystem boundaries, because a hard-link only adds another link to the inode for the file, and the inode can only exist within a single filesystem.

Furthermore, ntfs and vfat do not support either hard-links or symlinks. The best you can do is copy the files over.

But that said, if you switched to ntfs, then what is the filesystem type you put in /etc/fstab? If it is ntfs, then that is the old in-kernel driver, which is only really usable for read-only access. If it is ntfs-3g, then that should allow write access. But best is ─ if you’re using kernel 5.15 or later ─ to use ntfs3.

In order to switch the driver in use, you have to unmount the filesystem and remount it with the correct driver. The easiest way would be to unmount the drive, then modify /etc/fstab, and then remount it.

Windows does support vfat.

I’m just at a loss…I’ve had Manjaro and been copy/pasting files into usb thumdrives, external hard drives for years. i just checked my usb thumbdrive and I get this Errno 18 on that as well. I just copied files to that drive just a month ago.

So very strange. I can’t copy any files to any external drive now. I don’t know what to do.

I’m still on kernel 4.19.223-1. I’ll upgrade to the latest stable to see if this changes anything.

Another thing to keep in mind is if you reformat the filesystem, then the UUID changes, so you want to make sure that this is set correctly in /etc/fstab.

I updated the kernel to 5.15 and problem seems to have gone away!