允许其他用户使用葡萄酒

我使用的是ubuntu 15.04。

我已经在超级用户帐户中安装了wine,以便我可以使用MS office 2010.但是当我登录其他普通用户帐户时我无法使用它。

是否可以将应用程序设置为适用于所有用户,以便我不需要在其他帐户中再次安装它们?

我假设您通过apt-get从典型的存储库安装葡萄酒,或者您为葡萄酒添加了ppa并从那里安装了它,或者通常只安装了葡萄酒,以便任何用户都可以运行它。 如果您有其他设置,请添加评论,我会更新我的post。

所以,这是需要做的事情:

  1. 您需要将文件放在所有将运行wine的用户可以读/写的位置。
  2. 您需要设置目录和文件的权限,以便所有将运行wine的用户可以使用它们。
  3. 您需要更新引用旧位置的任何路径

对于1 – 您只需将文件复制到公共位置,例如/opt/windows 。 要做到这一点: sudo cp -r /root/.wine /opt/windows

对于2 – 如果您有多个用户将使用各种Windows应用程序,则需要确保它们都是公共组的一部分,或者如果您只有一个用户,则可以将所有者设置为该用户。

选项a:如果您有一个用户,只需递归更改目录的所有者。 这更容易,所以我先说明一下:

 sudo chown -R $USER:$USER /opt/windows 

选项b:如果您有多个用户,则需要创建新组,将目录的所有权更改为新组,设置文件权限,然后注销并重新登录,以使新组设置生效。 如果您只使用一个用户的先前方法,请不要这样做

 sudo groupadd wine sudo usermod -a -G wine $USER sudo chgrp -R /opt/windows sudo chmod -R g+rw /opt/windows sudo find /opt/windows -type d | while read DIR ; do sudo chmod g+rwx "${DIR}" ; done #this is where you would log out and back in. 

此外,每当您向系统添加新用户并且该用户将使用wine时,请将它们添加到组中: sudo usermod -a -G wine NEW_USER

对于3 – 当你运行wine时,它将文件放在~/.wine/ 。 其中一些文件包含绝对路径。 由于您已将/root/.wine移至/opt/windows ,因此需要更新这些路径。 您可以使用winecfg手动更新这些内容,并更新“桌面集成”选项卡下所有文件夹的“链接到”条目。 如果您为该用户创建了一个新组,则需要在执行此操作之前注销并重新登录。 为此,请设置wine的前缀并运行winecfg:

 WINEPREFIX=/opt/windows winecfg 

路径更新后,单击“确定”,您应该准备好以普通用户身份运行任何应用程序。

在运行任何应用程序之前,您需要将WINEPREFIX设置为/opt/windows 。 如果您安装的应用程序有任何“.desktop”文件,则需要修改它们以包含WINEPREFIX。 您还可以在.bash_profile.bashrc放置export WINEPREFIX=/opt/windows ,这样您就不必在命令行中手动指定它。


如果您可以通过描述如何启动任何已安装的应用程序来更新您的问题,我可以进一步提供答案。

另外,另外,当我通过wine安装新的应用程序时,我倾向于为每个应用程序使用不同的WINEPREFIX 。 这样,如果他们有奇怪的设置或不兼容的依赖项,我不会在安装新应用程序时无意中破坏旧应用程序。 然后,对于依赖项,我使用winetricks来获取和安装。

不幸的是,似乎葡萄酒检查前缀目录的所有者。 不确定它是否检查每个文件,但似乎在最近的版本上为$ WINEPREFIX(默认〜/ .wine)。 在创建组并将用户添加到该组后,我遇到了问题。 Winedebug只是抱怨其他用户不是所有者。 我的猜测是最好的选择是将.wine留在哪里(〜/ .wine)并尝试设置一个内部()共享所有权的drive_d。 不确定它是否会起作用,但我确信.wine / WINEPREFIX的共享所有权会产生此处未提及的问题。 如果没有权利,除了读取/写入葡萄酒文件而不需要密码之外,你可以做一个普通用户。 还没有看到任何建议如何设置这一切为葡萄酒。