Root Owns Home Directory, Chown funktioniert nicht

11

Ich verwende Ubuntu 12.04 und habe verschiedene Probleme. Ich habe es auf die Tatsache zurückgeführt, dass das Home-Verzeichnis meines Benutzers (/ home / user) im Besitz von root ist.

Das Verzeichnis / home ist tatsächlich auf einem anderen Laufwerk gemountet, aber ich kann sehen, dass ich in fstab nur / home und nicht / home / user mounte:

UUID=DC56D19E56DX3233 /home ntfs user,exec 0 2

Der folgende Befehl scheint nicht zu funktionieren:

sudo chown -R user /home/user

Dies wird fehlerfrei ausgeführt, ändert jedoch nicht den Besitz des Verzeichnisses. Hier ist die Ausgabe von ls -ldnach dem Ausführen des Befehls:

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

Dies ist das gleiche wie zuvor.

DJElbow
quelle
1
Können Sie die relevante Zeile aus Ihrer /etc/fstabund / oder der Ausgabe des mountBefehls für Ihre Home-Partition mount | grep 'home'
hinzufügen
mount | grep home-> / dev / sdb1 on / home Typ fuseblk (rw, nosuid, nodev, allow_other, blksize = 4096)
DJElbow
cat /etc/fstab-> UUID = DC56D19E56DX3233 / home ntfs Benutzer, exec 0 2
DJElbow
1
Das zugrunde liegende Problem scheint also zu sein, dass Sie ein Nicht-Linux-Dateisystem (ntfs) für Ihre Home-Partition verwenden - das Dateiberechtigungen im * nix-Stil nicht wirklich unterstützt. Es kann möglich sein, dass es mit geeigneten Dateimaskenoptionen auf dem Mount funktioniert, aber ich habe keine Erfahrung damit. Viel Glück.
Steeldriver
Ja, Sie haben Ihr / home als Windows-Dateisystem bereitgestellt, das nicht unterstützt wird.
Psusi

Antworten:

15

NTFS unterstützt keine "Eigentümer" im Unix-Stil, daher muss der Linux-Kernel einen Eigentümer für das gesamte Volume zuweisen - normalerweise root. Alternativ zum Verschieben Ihres gesamten Home-Verzeichnisses nach EXT4 können Sie einem bestimmten Benutzer oder einer bestimmten Gruppe auch den Besitz der gesamten Partition übertragen, indem Sie die Optionen 'uid' oder 'gid' für mount(oder in fstab) verwenden. In einer Mehrbenutzerumgebung gibt es Auswirkungen auf die Sicherheit, aber ich habe diese Methode auf meinem Dual-Boot-Laptop verwendet.

Ein langer Weg in der Manpage für mount( man mount) finden wir dies unter dateisystemspezifischen Optionen für 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.

Ihre Zeile fstabwürde dann in geändert UUID=DC56D19E56DX3233 /home ntfs user,exec,uid=username,gid=group 0 2, und Sie können die Umask bearbeiten, wenn Sie möchten.

Mactrent
quelle
3

Wie in den Kommentaren erwähnt, bestand das Problem darin, dass mein Home-Verzeichnis auf einer anderen Festplatte mit einem NTFS-Dateisystem bereitgestellt wurde.

Ich habe mein Home-Verzeichnis mit Deja Dup auf einem externen Laufwerk gesichert. Verwenden Sie dann gparted, um das interne NTFS-Laufwerk zu formatieren und das Dateisystem in EXT4 zu ändern.

Als nächstes habe ich / etc / fstab geändert, um der neuen UUID des Laufwerks zu entsprechen, und "ntfs" in "ext4" geändert.

Nach dem Neustart musste ich Strg + Alt + F1 drücken, um mich in einem Terminal anzumelden. Ich war dort in der Lage, sudo chown -R Benutzer zu verwenden: Benutzer / Zuhause / Benutzer.

Ich konnte mich dann bei der GUI anmelden und mein Home-Verzeichnis mit Deja Dup und der Sicherung auf meinem externen Laufwerk wiederherstellen.

Bisher funktioniert alles super.

DJElbow
quelle
1
Leider habe ich das gleiche Problem, aber ich möchte, dass der Ordner auch über Windows zugänglich ist. Da ich der einzige Benutzer bin, werde ich den Eigentümer ändern: Gruppe der gesamten Partition gemäß der Antwort von Mactrent.
Flurbius