Welche Faktoren beeinflussen, ob eine NTFS-Partition von einem Benutzer unter Linux bereitgestellt werden kann?


7

Ich habe zwei von Win8 erstellte NTFS-Partitionen auf meinem System. Beim Ausführen von Debian-Tests, Linux-Kernel 3.16, kann ich einen von ihnen als regulären Benutzer bereitstellen, aber der Versuch, den anderen bereitzustellen, führt zu einem Fehler:

$ mount /media/WinC
Error opening '/dev/sda1': Permission denied
Failed to mount '/dev/sda1': Permission denied
Please check '/dev/sda1' and the ntfs-3g binary permissions,
and the mounting user ID. More explanation is provided at
http://tuxera.com/community/ntfs-3g-faq/#unprivileged

Beide können von root gemountet werden, was zu identischen Einträgen in /etc/mtab: führt.

/dev/sda1 /media/WinC fuseblk rw,nosuid,nodev,noexec,relatime,user_id=0,group_id=0,allow_other,blksize=4096 0 0
/dev/sdb6 /media/WinE fuseblk rw,nosuid,nodev,noexec,relatime,user_id=0,group_id=0,allow_other,blksize=4096 0 0

Die Einträge /etc/fstabfür beide sind identisch:

/dev/sda1  /media/WinC  ntfs-3g  rw,user,noauto  0  0
/dev/sdb6  /media/WinE  ntfs-3g  rw,user,noauto  0  0

Die Zugriffsrechte auf die Mountpunkte sind identisch:

drwxr-xr-x  2 root root 4096 Jan 25  2013 WinC/
drwxr-xr-x  2 root root 4096 Nov 27 22:58 WinE/

Und schließlich sind die Zugriffsrechte auf die Blockgeräte identisch:

brw-rw---- 1 root disk 8,  1 Dec 10 20:17 /dev/sda1
brw-rw---- 1 root disk 8, 22 Dec 10 16:24 /dev/sdb6

Also, was ist der Faktor, der das Mounten als Benutzer für einen von ihnen funktioniert und für den anderen fehlschlägt?


Auf Anfrage von podwysoc ist hier die Ausgabe von strace ntfs-3g /dev/sda1 /media/WinC:

execve("/bin/ntfs-3g", ["ntfs-3g", "/dev/sda1", "/media/WinC"], [/* 45 vars */]) = 0
brk(0)                                  = 0x7fe6bbca8000
fcntl(0, F_GETFD)                       = 0
fcntl(1, F_GETFD)                       = 0
fcntl(2, F_GETFD)                       = 0
access("/etc/suid-debug", F_OK)         = -1 ENOENT (No such file or directory)
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7fe6bb8b9000
access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or directory)
open("/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=157945, ...}) = 0
mmap(NULL, 157945, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7fe6bb892000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
open("/lib/x86_64-linux-gnu/libpthread.so.0", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\20o\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=137440, ...}) = 0
mmap(NULL, 2213008, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7fe6bb47e000
mprotect(0x7fe6bb496000, 2093056, PROT_NONE) = 0
mmap(0x7fe6bb695000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x17000) = 0x7fe6bb695000
mmap(0x7fe6bb697000, 13456, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7fe6bb697000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
open("/lib/x86_64-linux-gnu/libntfs-3g.so.852", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\0\216\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=334248, ...}) = 0
mmap(NULL, 2429528, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7fe6bb22c000
mprotect(0x7fe6bb27c000, 2097152, PROT_NONE) = 0
mmap(0x7fe6bb47c000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x50000) = 0x7fe6bb47c000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
open("/lib/x86_64-linux-gnu/libc.so.6", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0P\34\2\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=1729984, ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7fe6bb891000
mmap(NULL, 3836448, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7fe6bae83000
mprotect(0x7fe6bb022000, 2097152, PROT_NONE) = 0
mmap(0x7fe6bb222000, 24576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x19f000) = 0x7fe6bb222000
mmap(0x7fe6bb228000, 14880, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7fe6bb228000
close(3)                                = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7fe6bb890000
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7fe6bb88f000
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7fe6bb88e000
arch_prctl(ARCH_SET_FS, 0x7fe6bb88f700) = 0
mprotect(0x7fe6bb222000, 16384, PROT_READ) = 0
mprotect(0x7fe6bb47c000, 4096, PROT_READ) = 0
mprotect(0x7fe6bb695000, 4096, PROT_READ) = 0
mprotect(0x7fe6bbadf000, 8192, PROT_READ) = 0
mprotect(0x7fe6bb8bb000, 4096, PROT_READ) = 0
munmap(0x7fe6bb892000, 157945)          = 0
set_tid_address(0x7fe6bb88f9d0)         = 8822
set_robust_list(0x7fe6bb88f9e0, 24)     = 0
rt_sigaction(SIGRTMIN, {0x7fe6bb4849f0, [], SA_RESTORER|SA_SIGINFO, 0x7fe6bb48d8d0}, NULL, 8) = 0
rt_sigaction(SIGRT_1, {0x7fe6bb484a80, [], SA_RESTORER|SA_RESTART|SA_SIGINFO, 0x7fe6bb48d8d0}, NULL, 8) = 0
rt_sigprocmask(SIG_UNBLOCK, [RTMIN RT_1], NULL, 8) = 0
getrlimit(RLIMIT_STACK, {rlim_cur=8192*1024, rlim_max=RLIM64_INFINITY}) = 0
open("/dev/null", O_RDWR)               = 3
close(3)                                = 0
getegid()                               = 1000
geteuid()                               = 1000
brk(0)                                  = 0x7fe6bbca8000
brk(0x7fe6bbcc9000)                     = 0x7fe6bbcc9000
open("/usr/lib/locale/locale-archive", O_RDONLY|O_CLOEXEC) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=1613360, ...}) = 0
mmap(NULL, 1613360, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7fe6bb704000
close(3)                                = 0
lstat("/dev", {st_mode=S_IFDIR|0755, st_size=3700, ...}) = 0
lstat("/dev/sda1", {st_mode=S_IFBLK|0660, st_rdev=makedev(8, 1), ...}) = 0
getuid()                                = 1000
getgid()                                = 1000
lstat("/dev", {st_mode=S_IFDIR|0755, st_size=3700, ...}) = 0
lstat("/dev/sda1", {st_mode=S_IFBLK|0660, st_rdev=makedev(8, 1), ...}) = 0
open("/proc/mounts", O_RDONLY|O_CLOEXEC) = 3
futex(0x7fe6bb229088, FUTEX_WAKE_PRIVATE, 2147483647) = 0
fstat(3, {st_mode=S_IFREG|0444, st_size=0, ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7fe6bb8b8000
read(3, "rootfs / rootfs rw 0 0\nsysfs /sy"..., 1024) = 1024
getcwd("/home/ca", 4096)                = 9
lstat("/home/ca/rootfs", 0x7fffdd24c640) = -1 ENOENT (No such file or directory)
getcwd("/home/ca", 4096)                = 9
lstat("/home/ca/sysfs", 0x7fffdd24c640) = -1 ENOENT (No such file or directory)
getcwd("/home/ca", 4096)                = 9
lstat("/home/ca/proc", 0x7fffdd24c640)  = -1 ENOENT (No such file or directory)
getcwd("/home/ca", 4096)                = 9
lstat("/home/ca/udev", 0x7fffdd24c640)  = -1 ENOENT (No such file or directory)
getcwd("/home/ca", 4096)                = 9
lstat("/home/ca/devpts", 0x7fffdd24c640) = -1 ENOENT (No such file or directory)
getcwd("/home/ca", 4096)                = 9
lstat("/home/ca/tmpfs", 0x7fffdd24c640) = -1 ENOENT (No such file or directory)
lstat("/dev", {st_mode=S_IFDIR|0755, st_size=3700, ...}) = 0
lstat("/dev/disk", {st_mode=S_IFDIR|0755, st_size=140, ...}) = 0
lstat("/dev/disk/by-uuid", {st_mode=S_IFDIR|0755, st_size=200, ...}) = 0
lstat("/dev/disk/by-uuid/f522a1c8-076e-451a-8204-846884bbd509", {st_mode=S_IFLNK|0777, st_size=10, ...}) = 0
readlink("/dev/disk/by-uuid/f522a1c8-076e-451a-8204-846884bbd509", "../../sda2", 4095) = 10
lstat("/dev/sda2", {st_mode=S_IFBLK|0660, st_rdev=makedev(8, 2), ...}) = 0
getcwd("/home/ca", 4096)                = 9
lstat("/home/ca/securityfs", 0x7fffdd24c640) = -1 ENOENT (No such file or directory)
getcwd("/home/ca", 4096)                = 9
lstat("/home/ca/tmpfs", 0x7fffdd24c640) = -1 ENOENT (No such file or directory)
getcwd("/home/ca", 4096)                = 9
lstat("/home/ca/tmpfs", 0x7fffdd24c640) = -1 ENOENT (No such file or directory)
getcwd("/home/ca", 4096)                = 9
lstat("/home/ca/tmpfs", 0x7fffdd24c640) = -1 ENOENT (No such file or directory)
getcwd("/home/ca", 4096)                = 9
lstat("/home/ca/cgroup", 0x7fffdd24c640) = -1 ENOENT (No such file or directory)
getcwd("/home/ca", 4096)                = 9
lstat("/home/ca/pstore", 0x7fffdd24c640) = -1 ENOENT (No such file or directory)
getcwd("/home/ca", 4096)                = 9
lstat("/home/ca/cgroup", 0x7fffdd24c640) = -1 ENOENT (No such file or directory)
read(3, "/cgroup/cpu,cpuacct cgroup rw,no"..., 1024) = 1024
getcwd("/home/ca", 4096)                = 9
lstat("/home/ca/cgroup", 0x7fffdd24c640) = -1 ENOENT (No such file or directory)
getcwd("/home/ca", 4096)                = 9
lstat("/home/ca/cgroup", 0x7fffdd24c640) = -1 ENOENT (No such file or directory)
getcwd("/home/ca", 4096)                = 9
lstat("/home/ca/cgroup", 0x7fffdd24c640) = -1 ENOENT (No such file or directory)
getcwd("/home/ca", 4096)                = 9
lstat("/home/ca/cgroup", 0x7fffdd24c640) = -1 ENOENT (No such file or directory)
getcwd("/home/ca", 4096)                = 9
lstat("/home/ca/cgroup", 0x7fffdd24c640) = -1 ENOENT (No such file or directory)
getcwd("/home/ca", 4096)                = 9
lstat("/home/ca/cgroup", 0x7fffdd24c640) = -1 ENOENT (No such file or directory)
getcwd("/home/ca", 4096)                = 9
lstat("/home/ca/systemd-1", 0x7fffdd24c640) = -1 ENOENT (No such file or directory)
getcwd("/home/ca", 4096)                = 9
lstat("/home/ca/mqueue", 0x7fffdd24c640) = -1 ENOENT (No such file or directory)
getcwd("/home/ca", 4096)                = 9
lstat("/home/ca/debugfs", 0x7fffdd24c640) = -1 ENOENT (No such file or directory)
getcwd("/home/ca", 4096)                = 9
lstat("/home/ca/hugetlbfs", 0x7fffdd24c640) = -1 ENOENT (No such file or directory)
getcwd("/home/ca", 4096)                = 9
lstat("/home/ca/fusectl", 0x7fffdd24c640) = -1 ENOENT (No such file or directory)
getcwd("/home/ca", 4096)                = 9
lstat("/home/ca/tmpfs", 0x7fffdd24c640) = -1 ENOENT (No such file or directory)
lstat("/dev", {st_mode=S_IFDIR|0755, st_size=3700, ...}) = 0
lstat("/dev/sdb3", {st_mode=S_IFBLK|0660, st_rdev=makedev(8, 19), ...}) = 0
lstat("/dev", {st_mode=S_IFDIR|0755, st_size=3700, ...}) = 0
lstat("/dev/sdb2", {st_mode=S_IFBLK|0660, st_rdev=makedev(8, 18), ...}) = 0
read(3, "rdered 0 0\n/dev/sdb4 /home/ca/St"..., 1024) = 221
lstat("/dev", {st_mode=S_IFDIR|0755, st_size=3700, ...}) = 0
lstat("/dev/sdb5", {st_mode=S_IFBLK|0660, st_rdev=makedev(8, 21), ...}) = 0
lstat("/dev", {st_mode=S_IFDIR|0755, st_size=3700, ...}) = 0
lstat("/dev/sdb4", {st_mode=S_IFBLK|0660, st_rdev=makedev(8, 20), ...}) = 0
getcwd("/home/ca", 4096)                = 9
lstat("/home/ca/rpc_pipefs", 0x7fffdd24c640) = -1 ENOENT (No such file or directory)
getcwd("/home/ca", 4096)                = 9
lstat("/home/ca/tmpfs", 0x7fffdd24c640) = -1 ENOENT (No such file or directory)
read(3, "", 1024)                       = 0
close(3)                                = 0
munmap(0x7fe6bb8b8000, 4096)            = 0
stat("/media/WinC", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
open("/proc/filesystems", O_RDONLY)     = 3
fstat(3, {st_mode=S_IFREG|0444, st_size=0, ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7fe6bb8b8000
read(3, "nodev\tsysfs\nnodev\trootfs\nnodev\tr"..., 1024) = 338
close(3)                                = 0
munmap(0x7fe6bb8b8000, 4096)            = 0
geteuid()                               = 1000
getresuid([1000], [1000], [1000])       = 0
setresuid(4294967295, 1000, 4294967295) = 0
geteuid()                               = 1000
getegid()                               = 1000
getresgid([1000], [1000], [1000])       = 0
setresgid(4294967295, 1000, 4294967295) = 0
getegid()                               = 1000
stat("/dev/fuse", {st_mode=S_IFCHR|0666, st_rdev=makedev(10, 229), ...}) = 0
getegid()                               = 1000
geteuid()                               = 1000
stat("/dev/sda1", {st_mode=S_IFBLK|0660, st_rdev=makedev(8, 1), ...}) = 0
mmap(NULL, 135168, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7fe6bb898000
stat("/dev/sda1", {st_mode=S_IFBLK|0660, st_rdev=makedev(8, 1), ...}) = 0
open("/dev/sda1", O_RDWR)               = -1 EACCES (Permission denied)
write(2, "Error opening '/dev/sda1'", 25Error opening '/dev/sda1') = 25
open("/usr/share/locale/locale.alias", O_RDONLY|O_CLOEXEC) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=2492, ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7fe6bb897000
read(3, "# Locale name alias data base.\n#"..., 4096) = 2492
read(3, "", 4096)                       = 0
close(3)                                = 0
munmap(0x7fe6bb897000, 4096)            = 0
open("/usr/share/locale/en_US/LC_MESSAGES/libc.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/share/locale/en/LC_MESSAGES/libc.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
write(2, ": Permission denied\n", 20: Permission denied
)   = 20
munmap(0x7fe6bb898000, 135168)          = 0
write(2, "Failed to mount '/dev/sda1'", 27Failed to mount '/dev/sda1') = 27
write(2, ": Permission denied\n", 20: Permission denied
)   = 20
write(2, "Please check '/dev/sda1' and the"..., 173Please check '/dev/sda1' and the ntfs-3g binary permissions,
and the mounting user ID. More explanation is provided at
http://tuxera.com/community/ntfs-3g-faq/#unprivileged
) = 173
exit_group(19)                          = ?
+++ exited with 19 +++

Können Sie bitte eine Ausgabe posten, während Sie sie über strace ntfs-3g mounten?
Podwysoc

@podwysoc, es ist jetzt in der Frage enthalten.
A. Donda

Können Sie eine Strace für diejenige posten, die für einen normalen Benutzer funktioniert?
Fixer1234

OK. Jetzt bin ich total verwirrt. Ich habe gerade versucht, diese Strace bereitzustellen, und jetzt habe ich festgestellt, dass ich das andere Dateisystem auch nicht mounten kann. Ich schwöre, es war vorher nicht so, ich habe alles mehrmals überprüft, bevor ich diese Frage gestellt habe. Vielleicht habe ich ein Systemupdate durchgeführt und irgendwie war einer der beiden früher von dieser Änderung betroffen? Argh.
A. Donda

1
Ihr System unterliegt dem Heisenbergschen Unsicherheitsprinzip. Der Vorgang der Rückverfolgung wirkt sich auf das Ergebnis aus. Es wird nur funktionieren, wenn Sie es nicht sehen. :-)
fixer1234

Antworten:


2

Der im Fehler erwähnte Link enthält möglicherweise die Antwort. Die relevanten Abschnitte:

Warum haben chmod und chown keine Wirkung?

Standardmäßig gehören Dateien unter NTFS root mit vollem Zugriff auf alle. Um den Standardschutz pro Datei zu erhalten, sollten Sie die Option "Berechtigungen" verwenden. Wenn Sie möchten, dass die Berechtigungen mit einer bestimmten Windows-Konfiguration kompatibel sind, müssen Sie außerdem die Benutzer zuordnen.

Warum können nicht privilegierte Benutzer keine Blockgeräte bereitstellen?
oder
Warum erhalte ich den Fehler "fusermount: option blkdev is privileged"?

Nicht privilegierte Blockgeräte-Mounts funktionieren nur, wenn alle folgenden Anforderungen erfüllt sind:

  1. ntfs-3g wird mit integrierter FUSE-Unterstützung kompiliert
  2. Die Binärdatei ntfs-3g ist mindestens Version 1.2506
  3. Die Binärdatei ntfs-3g ist auf setuid-root gesetzt
  4. Der Benutzer hat Zugriff auf das Volume
  5. Der Benutzer hat Zugriff auf den Einhängepunkt

Der Root-Benutzer kann eine binäre ntfs-3g-Setuid-Root erstellen, wie unten gezeigt

chown root $(which ntfs-3g)
chmod 4755 $(which ntfs-3g)

In diesem Fall kann der Fahrer auch

  • um häufig auftretende Probleme beim Laden des FUSE-Kernelmoduls zu beheben
  • um die erforderliche, aber manchmal falsch entfernte oder fehlende FUSE-Gerätedatei zu erstellen

Bitte beachten Sie, dass die Verwendung von setuid-root zu einer unvorhergesehenen Eskalation von Berechtigungen führen kann und von deren Verwendung abgeraten wird. Nur den absolut vertrauenswürdigen Benutzern muss ein solcher Zugriff gewährt werden. Im Folgenden finden Sie ein Beispiel dafür, wie Benutzer in der Gruppe ntfsuser ein beliebiges NTFS-Volume bereitstellen können, wenn sie auch über die erforderlichen Datenträgerzugriffsrechte verfügen.

chown root.ntfsuser $(which ntfs-3g)
chmod 4750 $(which ntfs-3g)

Der setuid-root ntfs-3g-Treiber wendet als Sicherheitsmaßnahme das Prinzip der geringsten Berechtigung während seiner Lebensdauer an.

Warum funktionieren die Optionen "Benutzer" und "Benutzer" nicht in / etc / fstab?

Der Befehl 'mount' ruft die ntfs-3g-Binärdatei nicht mit den erforderlichen Berechtigungen auf, nachdem er überprüft und genehmigt hat, dass der Benutzer berechtigt ist, ein bestimmtes Gerät an einem bestimmten Mount-Punkt zu mounten. Hiermit kann der Benutzer das erhaltene Gerät nicht öffnen die Genehmigung in / etc / fstab. Dies ist ein Problem im Dienstprogramm 'mount'.

Lösung: Verwenden Sie mindestens NTFS-3G 1.2506 mit setuid-rootset und stellen Sie sicher, dass der Benutzer Zugriffsrechte auf das Volume und den Mount-Punkt hat.

Diese Frage hat zwei Facetten:

  • So gewähren Sie regulären Benutzern Zugriff auf die NTFS-Partitionen
  • Wissenschaftliche Neugier, warum sich die beiden Partitionen unterschiedlich verhalten

Es gibt keine offensichtlichen Unterschiede zwischen den Partitionen. Der Link spricht über ein Problem mit dem Dienstprogramm mount (und eine Lösung). Es kann andere Dinge geben, wie z. B. udev-Aktivitäten, die die Situation komplizieren. Während ich den Link lese, scheint es, dass die Frage eigentlich sein sollte, warum eine Partition seitdem als regulärer Benutzer gemountet wird mountund fstabnur für root funktionieren sollte. Die Beantwortung des zweiten Teils der Frage ist wahrscheinlich ein Detektiv- und Ratespiel, und ich kann angesichts der verfügbaren Informationen bei diesem Teil nicht helfen.

Der erste Teil der Frage scheint jedoch eine Lösung zu haben. Gemäß dem Link müssen die Partitionen als Root gemountet werden, und gemäß der Frage funktioniert dies. Der reguläre Benutzerzugriff erfolgt über Berechtigungen, wie oben beschrieben.


Ich fürchte, das ist nicht die Antwort. Die Version der Binärdatei ist 2014.2.15, die neueste stabile Version, sie unterstützt FUSE und die Binärdatei hat das Setuid-Bit gesetzt. Die Tatsache, dass das eine funktioniert und das andere nicht bereits zeigt, dass das Problem nicht in der Binärdatei liegen kann, sondern etwas mit den Blockgeräten und / oder Mountpunkten zu tun hat - wie könnte sonst ein Unterschied entstehen?
A. Donda

Korrigieren Sie die Binärversionen. Die Blockgeräte und Einhängepunkte werden ebenfalls gleich angezeigt. "Ich kann einen von ihnen als normalen Benutzer bereitstellen, aber der Versuch, den anderen bereitzustellen, führt zu einem Fehler." Wenn ich Ihren Link richtig gelesen habe, müssen sie als Root- und reguläre Benutzer bereitgestellt werden, denen Berechtigungen erteilt wurden. Die Frage sollte sein, warum man für einen normalen Benutzer arbeitet. Die Antwort scheint jedoch zu sein, als Root zu mounten und Berechtigungen für reguläre Benutzer zu verwenden.
Fixer1234

Nach dem Heisenberg-Phänomen habe ich mich entschlossen, Ihrem Rat zu folgen :) und es funktioniert. Was mir an dieser Lösung nicht gefällt, ist, dass Berechtigungen und Gruppen auf Geräten geändert werden, was bedeutet, dass sie mit neuen NTFS-Partitionen (neuen Blockgeräten) nicht automatisch funktioniert. Ich denke, ich müsste udev oder so dafür hacken? - Ich habe Ihre Antwort positiv bewertet, weil sie geholfen hat, aber ich habe das Kopfgeld noch nicht angenommen oder vergeben, weil das ursprüngliche (und jetzt verschwundene) Rätsel ungelöst bleibt und es möglich ist, dass jemand anderes eine andere Antwort mitbringt. IN ORDNUNG?
A. Donda
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.