it-swarm.com.de

Hängen Sie die NTFS-Partition beim Start mit einem Benutzer ohne Rootberechtigung als Eigentümer ein

Ich mounte gerade eine NTFS-Partition beim Start mit der folgenden Zeile in/etc/fstab:

/dev/sda3        /media/data           ntfs      nls=iso8859-1,umask=000

In meiner Ubuntu 11.10-Installation sieht es so aus, als wären alle Dateien und Ordner Eigentum von root - und da NTFS ohnehin nicht das gleiche Rechteverwaltungssystem unterstützt, kann ich es nach Abschluss des Ladevorgangs nicht mehr ändern . Egal was ich tue, ls -l listet jede Datei und jeden Ordner auf der NTFS-Partition als Eigentum von root:root auf.

Dies verursacht jedoch einige Probleme für mich. Insbesondere beschweren sich einige Anwendungen, die unter meinem Konto ausgeführt werden (tomas), über Zugriffsrechte. Wenn ich versuche, Dateien von einer meiner ext3-Partitionen auf die NTFS-Partition zu kopieren (cp) oder zu verschieben (mv), wird die Fehlermeldung angezeigt

mv: preserving times for `[path to new file]`: Operation not permitted

oder ähnlich

mv: preserving permissions for ...

Würde das Mounten der Partition in meinem Namen anstelle von root helfen? Wenn ja, wie mache ich das in fstab?


pdate:

Ich habe nun die Optionen entsprechend den Vorschlägen geändert und bin zu folgendem Ergebnis gekommen:

nls=iso8859-1,permissions,users,umask=000,uid=tomas,gid=tomas

ls -l zeigt jetzt alle Dateien an, deren Eigentümer ich bin, und nicht mehr root, und es scheint, dass einige der Probleme, die ich zuvor hatte, gelöst sind. Allerdings nicht alle.

Wenn ich Eclipse starte, erhalte ich die Fehlermeldung, dass eine Datei im Zusammenhang mit Android-sdk nicht ausgeführt werden kann: Berechtigung verweigert. ls -l sagt mir folgendes über die Datei:

-rwxrwxrwx 1 tomas tomas 159620 2011-11-29 14:50 adb*

Das sieht so aus, wie ich es will. Aber wenn ich versuche, es auszuführen (./adb in einem Terminal), erhalte ich auch Fehler, denen die Erlaubnis verweigert wurde. Aber wenn ich es mit Sudo starte, funktioniert es (ich glaube - es gibt mir zumindest keine Fehlermeldung, aber es gibt mir überhaupt keine Ausgabe, was ich nicht denke. ..)

Warum kann die obige Datei mit den Ausführungsberechtigungen für jeden nur von root ausgeführt werden? Wie ändere ich die Art und Weise, wie ich das Dateisystem einhänge?


pdate 2:

OK, ich bin jetzt ein bisschen weiter gekommen. Durch die Montage mit diesen Optionen

nls=iso8859-1,permissions,users,auto

Ich habe alle Berechtigungen so festgelegt, wie ich es erwartet habe, und chown und chmod ändern tatsächlich die Einstellungen für die Dateien (zumindest gemäß ls -l) = D

ABER mein System verhält sich immer noch komisch. Die Berechtigungen für die Skriptdatei adb lauten wie oben, aber weder ich noch Eclipse können sie ausführen, ohne dass die Fehlermeldung "Berechtigung verweigert" angezeigt wird. Aber soweit ich sehen kann, sind in der Datei alle erforderlichen Flags gesetzt (o=rwx sollte reichen, oder?). Warum funktioniert es nicht?


pdate

OK, ich habe alles auf der Ubuntu-Seite zum Laufen gebracht, mit den folgenden Optionen:

nls=iso8859-1,permissions,users,auto,exec

Wenn ich jedoch versuche, von Windows aus auf Dateien auf der Partition zuzugreifen, sind alle Sicherheitseinstellungen durcheinander. Für alle Dateien (von den wenigen, die ich untersucht habe) wurde der Liste der Benutzer ein neues Konto mit dem Namen Account Unknown(long GUID) hinzugefügt, das über die vollständigen Rechte verfügt. Die Rechte für die meisten anderen Benutzer sind verringert, so dass ich keine Rechte mehr habe, um Dinge zu tun, die ich erwarte. Insbesondere scheint "Jeder" kein Recht mehr zu haben, "Ordner zu durchsuchen/auszuführen".

Dies kann gelöst werden, indem Sie einfach die Partition auswählen und jedem erlauben, irgendetwas im Stammordner zu tun, und ihn dann dazu auffordern, es rekursiv zu tun, aber ich ' lieber nicht, da ich befürchte, dass es Tage dauern wird, bis es fertig ist ...

26
Tomas Aschan

Fügen Sie in der Optionsspalte permissions und auto (und wahrscheinlich user oder users) hinzu.

nls=iso8859-1,permissions,users,auto
  • permissions: (NTFS-3G-Option) Legen Sie Standardberechtigungen für erstellte Dateien fest und verwenden Sie die Standardzugriffskontrolle.
  • auto: Wird beim Booten und von mount -a gemountet
  • user: Ermöglicht einem normalen Benutzer das Mounten des Dateisystems
  • users: Ermöglicht jedem Benutzer, das Dateisystem bereitzustellen und die Bereitstellung aufzuheben

Dann ändern Sie den Besitz des Dateisystems:

Sudo chown -R thomas:thomas /media/data 

Meine Zeile in /etc/fstab

/dev/sda5 /media/ntfs ntfs-3g users,permissions,auto 0 0

Bereitstellen und Auflisten von Berechtigungen

Sudo mount /media/ntfs
Using default user mapping

[email protected]:~$ ls -l /media

drwxr-xr-x 1 root root 4096 2012-01-04 17:08 ntfs

Ändern Sie den Besitzer und listen Sie neue Berechtigungen auf

[email protected]:~$ Sudo chown bodhi:bodhi /media/ntfs

[email protected]:~$ ls -l /media

drwxr-xr-x 1 bodhi bodhi 4096 2012-01-04 17:10 ntfs

Standardmäßig hängt ntfs-3g die Partitionen noexec, nosuid und nodev ein.

  • noexec: Erlaubt keine direkte Ausführung von Binärdateien auf dem bereitgestellten Dateisystem.
  • nosuid: Set-User-Identifier- oder Set-Group-Identifier-Bits dürfen nicht wirksam werden.
  • nodev: Interpretiert keine Zeichen oder blockiert keine speziellen Geräte im Dateisystem.

Verwenden Sie exec, um dies zu überschreiben und die Ausführung von Dateien zuzulassen.

/dev/sda5 /media/ntfs ntfs-3g exec,permissions,auto 0 0

Jetzt bekommen wir

[email protected]:~$ ls -l /media/ntfs

-rwx------ 1 bodhi bodhi 28 2012-01-04 17:16 file

[email protected]:~$ /media/ntfs/file
It works
24
Panther

Meins funktioniert jetzt perfekt, wenn ich die Zeile der Fstab auf ändere

UUID=761C84B31C846FC3 /media/d        ntfs    defaults,umask=022,uid=1000 0       0
2
e01

Verwenden Sie die Optionen uid und gid (oder verwenden Sie die Benutzerzuordnungsfunktion) von mount.ntfs (8)

2
tumbleweed

Was ist mit udisks? Es kann problemlos NTFS-Partitionen mit Ihrem Benutzer als Eigentümer mounten.

Beispiel (in die Befehlszeile eingeben):

/usr/bin/udisks --mount /dev/sda3

Sie können diesen Befehl auch zu Startanwendungen hinzufügen. Er wird automatisch bereitgestellt, wenn Sie sich anmelden.

Referenz: AutomatischMountPartitions

1
amfcosta