Ich möchte ein Wineprefix zwischen zwei Benutzern auf meinem Computer teilen, sodass beide die dort installierten Windows-Programme ausführen können. Dazu habe ich Wineprefix in /usr/share verschoben, eine gemeinsame Gruppe für beide Benutzer erstellt und die Gruppe Wineprefix und alle zugehörigen Dateien dieser Gruppe zugewiesen.
Als ich jedoch versuchte, das Programm von diesem Wineprefix als anderer Benutzer auszuführen, erhielt ich von Wine nur die Fehlermeldung „Sie sind nicht der Eigentümer“.
Soweit ich das beurteilen kann, ist dies beabsichtigt, um zu verhindern, dass Wine-Programme als Root ausgeführt werden.
Gibt es eine Möglichkeit, mein Ziel zu erreichen? Beachten Sie, dass ich Wineprefix teilen und nicht mehrere Kopien davon erstellen möchte.
Antwort1
Dieses Thema wurde bereits im folgenden Forumsthema diskutiert.
http://ubuntuforums.org/showthread.php?t=917422
Möglicherweise hilft Ihnen dies bei der Festlegung Ihrer Anforderungen.
Antwort2
Ich weiß, dass dies eine uralte Frage ist, aber ich habe eine Lösung, die meiner Meinung nach viel einfacher und besser ist.
Wine prüft nur, ob Sie das oberste Verzeichnis des Wine-Präfixes besitzen. Daher können Sie einfach ein neues Verzeichnis erstellen und symbolische Links zu allen Inhalten des Wine-Präfixes, die Sie freigeben möchten, in diesem Verzeichnis einfügen.
Das ist, was ich empfehlen würde:
Erstellen Sie einen Benutzer, wir nennen ihn wineuser
sudo adduser wineuser
Melden Sie sich als Wineuser an
- Erstellen Sie ein Wine-Präfix. Führen Sie einfach
winecfg
für ein 64-Bit-Präfix oder
WINEARCH=win32 winecfg
für ein 32-Bit-Präfix.
Ändern Sie die Berechtigungen des Wine-Präfixes so, dass es von jedem in der Gruppe Wineuser gelesen und geschrieben werden kann.
chmod -R 770 /home/wineuser/.wine
Sie müssen jeden Benutzer zur Gruppe „wineuser“ hinzufügen und ein Verzeichnis mit Links erstellen, die als Zugriffspunkt für den Wine-Präfix dienen. Für den Benutzer „emily“ würden wir Folgendes ausführen:
mkdir /home/emily/.wineshared sudo adduser emily wineuser cd /home/wineuser/.wine for object in `ls /home/wineuser/.wine`; do ln -s -T /home/wineuser/.wine/$object /home/emily/.wineshared/$object; done
Das ist es! Emily kann jetzt Programme im gemeinsamen Wineprefix ausführen, indem sie WINEPREFIX=~/.wineshared verwendet.