2

Now, please note that this is a sub-question of my old Changing Ownership: “Operation not permitted” - even as root! question. If you do not want to visit that link or cannot, to sum up, while attempting to use:

sudo chown (...)

To change the ownership of a file inside of a USB drive, it was unsuccessful, as the file had the immutable flag set in its extended attributes. This was the solution that worked, removing the flag via:

sudo chattr -i (Path_To_File)

As this was fixed, I basically put this in the back of my mind where I would remember it in case of repetition of the error. Recently, I was formatting a USB custom, and ran into the same error, except this time, nothing that was suggested to fix said error the previous time, has worked. Here's your command output that I know you all love:

sudo chown david:david ~/USB5/Format/type.cr

Please note that I have checked this command, and neither the (~) general path, nor the specific path work. The following is my output:

Operation Not Permitted

Of course, I have tried the fix from before, and the file does not have the flag. What can I do to fix this?

Suggested answer below:

sudo mkdir /media/flash
sudo mount /dev/sdb1 /media/flash -o dmask=000,fmask=111

This just hangs on the second command, I left the computer for over 2 hours, just hanging.

EDIT: Changing to EXT4 Did nothing, same error.

4
  • which filesystem are you using on your USB drive?
    – syss
    Mar 7, 2016 at 13:42
  • @syss For now, FAT32, however eventually I will format to NTFS for specific use
    – David
    Mar 7, 2016 at 18:43
  • 1
    Then you might want to take a look at this questions: askubuntu.com/questions/118199/… askubuntu.com/questions/11840/… Basically you need to remount your partition with the correct rights.
    – syss
    Mar 7, 2016 at 19:00
  • Fat and NTFS are not native Linux file system types, therefore do not support Linux file attributes. Use a native Linux file system like Ext2/3/4 or F2FS.
    – acejavelin
    May 4, 2016 at 15:10

2 Answers 2

1

You can set up /etc/fstab as a way of configuring drives. To pick out or identify a specific partition to mount, we can use the partition's UUID, which can be found with blkid

sudo blkid

In order to mount the drive, you need an empty directory. The user you wish to have access to the files needs access to this directory, including +x:

sudo mkdir /mnt/MyDrive
sudo chown me:me /mnt/MyDrive
sudo chmod 770 /mnt/MyDrive

Where me:me is the user:group string. On most systems, the first non-root user created at install will have the uid of 1000, and gid of 1000, but you can check /etc/passwd and /etc/group to confirm these numbers match up on your system for the next step.


Now that you know which partition to mount, and you have a place to mount it, work on a new entry in /etc/fstab

UUID=id-without-quotes  /mnt/MyDrive   ext4   defaults,noauto,uid=1000,gid=1000

Additional details about /etc/fstab can be found in the Ubuntu Wiki. The details found in the wiki will help you fine-tune settings, such as auto-mounting when inserted, or setting default umask. Another interesting option is the users option, which allows non-root users to mount the filesystem.

sudo mount /mnt/MyDrive
sudo umount /mnt/MyDrive

If you need to share these files with other users, create a new group, add all of the users to the group, and then adjust the gid to match the new group's identifier. You can see other examples of this, such as httpd or nginx using the www-data user/group.

0

I'm using Sparky linux (Debian testing), but I had the same problem and this may work for you.

After trying all the command line suggestions and not having any success, what worked for me was simply using Gparted and formatting the drive to ext4 and then doing a reformat to fat32 again and all is well.

It was kind of strange as I had been using this 16gb Adata USB3 for a couple of years and never had any issues. Hope it works for you.

0

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .