Ich habe ein Linux ext3-Image, das ich auf meinen Mac heruntergeladen habe (mit macOS Sierra 10.12.3). Ich habe auch eine Linux-VM (Ubuntu 16.04), die unter VMWare (Fusion Version 8.5.3) auf dem Mac ausgeführt wird. Ich möchte dieses Disk-Image in die Linux-VM einbinden.
Ich habe den Ordner auf dem Mac, der das Festplatten-Image enthält, für die VM freigegeben und kann ihn mithilfe des folgenden Befehls einbinden:
$ vmhgfs-fuse ".host:/$(vmware-hgfsclient)" ~/Shared
Wenn ich jedoch versuche, ein Disk-Image in dieses Verzeichnis einzubinden, erhalte ich die Fehlermeldung, dass mir die Berechtigung verweigert wurde:
$ sudo mount -t ext3 -o loop ~/Shared/linux-ext3.img /mnt
mount: /home/dave/Shared/linux-ext3.img: failed to setup loop device: Permission denied
Dasselbe passiert, auch wenn ich versuche, es schreibgeschützt zu mounten:
$ sudo mount -t ext3 -o loop,ro ~/Shared/linux-ext3.img /mnt
mount: /home/dave/Shared/linux-ext3.img: failed to setup loop device: Permission denied
Das freigegebene Verzeichnis ist mit Lese- / Schreibzugriff bereitgestellt:
vmhgfs-fuse on /home/dave/Shared type fuse.vmhgfs-fuse (rw,nosuid,nodev,relatime,user_id=1000,group_id=1000)
Und die Disk-Image-Datei ist für alle lesbar und beschreibbar:
$ cd ~/Shared/
$ ls -lh linux-ext3.img
-rw-rw-rw- 1 501 dialout 25G Feb 2 21:01 linux-ext3.img
Deshalb verstehe ich nicht, warum ich diesen Fehler erhalte.
allow_root
/allow_other
in FUSE und dem eigentlichen Root (und ich werde auch immer von ihnen verwirrt). Versuchenchmod o+rw linux-ext3.img
vmhgfs-fuse
: Wenn dies nicht unterstützt wirdchmod
, versuchen Sie alles, was das Image für root lesbar macht:,sudo vmhgfs-fuse ...
oder machen Sieroot
ein Mitglied vondialout
usw. Oder versuchen Sie umgekehrt, das Image schreibgeschützt bereitzustellen.vmhgfs-fuse
, dass der Root-Zugriff standardmäßig nicht erlaubt ist.Antworten:
Dank eines oben genannten Tipps von @dirkt konnte ich feststellen, dass
vmhgfs-fuse
Root-Zugriff standardmäßig nicht zulässig ist . Aus dervmhgfs-fuse --help
Ausgabe:Der Versuch schlug
-o allow_root
zunächst fehl:Und sicher genug
/etc/fuse.conf
hatuser_allow_other
auskommentiert:Aber es hat
vmhgfs-fuse
endlich geklappt, als root zu laufen :Beachten Sie die Verwendung von
allow_other
nichtallow_root
. Die Verwendung vonsudo
Plus-o allow_root
ist redundant, davmhgfs-fuse
nur der Benutzer Zugriff erhält , der den Befehl ausführt. Allerdingssudo
bedeutet allein nurroot
zugreifen können~/Shared
, aber nicht Ihre normalen Benutzer. Durch die Verwendung vonsudo
Plus-o allow_other
können root und Ihr normaler Benutzer (und alle anderen) darauf zugreifen~/Shared
. Es könnte sein , sicherer, in einer wirklich gemeinsamen Umgebung zu ermöglichen ,user_allow_other
in/etc/fuse.conf
so dass Sie verwenden können-o allow_root
und vermeiden Sie laufenvmhgfs-fuse
mitsudo
.Und um es kurz zu machen:
quelle
Alternativ habe ich herausgefunden, wie man es vermeidet, irgendetwas als root zu mounten, indem man verwendet
fuse-ext2
. Zuerst muss das installiert werden:Und dann montiere es so:
Beachten Sie, dass dies nicht verwendet wird
sudo
und nur für Ihren Benutzer sichtbar ist. Verwenden Sie zum Abmelden Folgendes:quelle