Root Owns Home Directory, chown does not work
Solution 1:
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.
Solution 2:
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.