Question Root Owns Home Directory, chown ne fonctionne pas


Je suis sous Ubuntu 12.04 et j'ai plusieurs problèmes. Je l'ai retracée au fait que le répertoire personnel de mon utilisateur (/ home / user) appartient à root.

Le répertoire / home est en fait monté sur un autre lecteur, mais je peux voir que dans fstab je monte uniquement / home et non / home / user:

UUID=DC56D19E56DX3233 /home ntfs user,exec 0 2

La commande chown ci-dessous ne semble pas fonctionner:

sudo chown -R user /home/user

Cela fonctionnera sans erreurs, mais cela ne change pas la propriété du répertoire. Voici la sortie de ls -ld après avoir exécuté la commande:

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

C'est la même chose que précédemment.


8
2017-09-27 01:45


origine


Pouvez-vous ajouter la ligne pertinente de votre /etc/fstab et / ou la sortie du mount commande pour votre partition maison (par ex. mount | grep 'home'? - steeldriver
mount | grep home -> / dev / sdb1 sur / home type fuseblk (rw, nosuid, nodev, allow_other, blksize = 4096) - DJElbow
cat /etc/fstab -> UUID = DC56D19E56DX3233 / home utilisateur ntfs, exec 0 2 - DJElbow
Le problème sous-jacent semble donc être que vous utilisez un système de fichiers non linux (ntfs) pour votre partition domestique - qui ne supporte pas vraiment les autorisations de fichiers de style nix. Il peut être possible de le faire fonctionner avec un masque de fichier approprié sur le montage, mais je n'ai aucune expérience à ce sujet. Bonne chance. - steeldriver
Oui, vous avez monté votre / home en tant que système de fichiers Windows, ce qui n’est pas une configuration prise en charge. - psusi


Réponses:


NTFS ne prend pas en charge les «propriétaires» de style Unix, de sorte que le noyau Linux est obligé d'affecter un propriétaire pour tout le volume - normalement, root. Au lieu de déplacer l'intégralité de votre répertoire personnel vers EXT4, vous pouvez également attribuer la propriété de la partition entière à un utilisateur ou à un groupe spécifique à l'aide des options «uid» ou «gid» pour mount (ou dans fstab). Il y a des implications de sécurité dans un environnement multi-utilisateur, mais j'ai utilisé cette méthode sur mon ordinateur portable à double démarrage.

Un long chemin dans la page de manuel pour mount (man mount), nous trouvons cela sous les options spécifiques au système de fichiers pour 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.

Votre ligne dans fstab serait alors changé pour UUID=DC56D19E56DX3233 /home ntfs user,exec,uid=username,gid=group 0 2, et vous seriez libre de modifier le umask si vous le vouliez.


14
2017-09-28 20:16





Le problème, comme mentionné dans les commentaires, était que mon répertoire personnel était monté sur un autre disque dur avec un système de fichiers NTFS.

J'ai sauvegardé mon répertoire personnel avec Deja Dup sur un lecteur externe. Puis utilisé gparted pour formater le lecteur NTFS interne et changer le système de fichiers en EXT4.

J'ai ensuite changé / etc / fstab pour correspondre au nouvel UUID du lecteur et changé "ntfs" en "ext4".

Après le redémarrage, j'ai dû appuyer sur Ctrl + Alt + F1 pour me connecter à un terminal. J'étais en mesure d'utiliser sudo chown -R utilisateur: utilisateur / home / utilisateur.

J'ai ensuite pu me connecter à l'interface graphique et restaurer mon répertoire personnel à l'aide de Deja Dup et la sauvegarde sur mon lecteur externe.

Jusqu'à présent, tout fonctionne très bien.


3
2017-09-28 07:21



Malheureusement, j'ai le même problème, mais je souhaite que le dossier soit également accessible depuis Windows. Comme je suis le seul utilisateur, je vais changer le propriétaire: groupe de la partition entière selon la réponse de Mactrent. - flurbius