9

I am running Ubuntu 12.04 and having various problems. I have traced it back to the fact that my user's home directory (/home/user) is owned by root.

The /home directory is actually mounted on another drive, but I can see that in fstab I am mounting only /home and not /home/user:

UUID=DC56D19E56DX3233 /home ntfs user,exec 0 2

The chown command below does not seem to work:

sudo chown -R user /home/user

This will run without errors, however it does not actually change ownership of the direcory. Here is the output of ls -ld after running the command:

drwxrwxrwx 1 root root 20480 Sep 25 00:07 /home/user

This is the same as it was previously.

  • 1
    Can you add the relevant line from your /etc/fstab and/or the output of the mount command for your home partition (e.g. mount | grep 'home'? – steeldriver Sep 27 '13 at 1:58
  • mount | grep home -> /dev/sdb1 on /home type fuseblk (rw,nosuid,nodev,allow_other,blksize=4096) – DJElbow Sep 27 '13 at 2:15
  • cat /etc/fstab -> UUID=DC56D19E56DX3233 /home ntfs user,exec 0 2 – DJElbow Sep 27 '13 at 2:16
  • 1
    So the underlying issue would seem to be that you are using a non-linux filesystem (ntfs) for your home partition - which does not really support *nix style file permissions. It may be possible to make it work with a suitable file mask options on the mount but I don't have any experience of doing that. Good luck. – steeldriver Sep 27 '13 at 2:43
  • Yes, you have mounted your /home as a windows filesystem which is not a supported configuration. – psusi Sep 27 '13 at 3:03
14

NTFS doesn't support Unix-style 'owners', so the Linux kernel is forced to assign an owner for the entire volume - normally, root. As an alternative to moving your entire home directory to EXT4, you could also give ownership of the entire partition to a specific user or group using the 'uid' or 'gid' options for mount (or in fstab). There are security implications in a multi-user environment, but I used this method on my dual-boot laptop.

A long way inside the man page for mount (man mount), we find this under filesystem-specific options for NTFS:
uid=value, gid=value and umask=value
Set the file permission on the filesystem. The umask value is given in octal. By default, the files are owned by root and not readable by somebody else.

Your line in fstab would then be changed to UUID=DC56D19E56DX3233 /home ntfs user,exec,uid=username,gid=group 0 2, and you'd be free to edit the umask if you wanted.

3

The issue, as mentioned in the comments, was that my home directory was mounted on a different hard drive with an NTFS filesystem.

I backed up my home directory with Deja Dup to an external drive. Then used gparted to format the internal NTFS drive and change the filesystem to EXT4.

Next I changed /etc/fstab to match the new UUID of the drive and changed "ntfs" to "ext4".

After restart, I had to press Ctrl+Alt+F1 to login in a terminal. I was there able to use sudo chown -R user:user /home/user.

I was then able to login to the GUI, and restore my home directory using Deja Dup and the backup on my external drive.

So far, everything is working great.

  • 1
    Unfortunately I have the same problem but I want the folder to be also accessible from windows. As I am the only user I will change the owner:group of the whole partition as per Mactrent's answer. – flurbius Apr 1 '16 at 5:26

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.