以另一个用户身份挂载共享文件夹(vbox)[关闭]

Posted

技术标签:

【中文标题】以另一个用户身份挂载共享文件夹(vbox)[关闭]【英文标题】:Mount shared folder (vbox) as another user [closed] 【发布时间】:2012-06-09 00:45:30 【问题描述】:

很抱歉在这里问这个问题,但我尝试了 serverfault 并且 4 天没有得到任何答案。

那里的相关问题:https://serverfault.com/questions/394197/mount-shared-folder-vbox-as-another-user


问题:

每次我的 ubuntu (10.04) 启动时,我都会尝试挂载我的 vbox 共享文件夹。

所以,我在 /etc/init 上添加了一个条目:

description     "mount vboxsf Desktop"

start on startup

task
exec mount -t vboxsf Desktop /var/www/shared

似乎可以工作,除了所有文件都归“root”所有,而且我没有在文件夹上写入的权限(chmod 和 chown 似乎都不起作用)。

那么,我怎样才能让这个共享文件夹下的所有文件都归 www-data 用户/组所有?


ps.:我拥有一个自动共享文件夹的主要原因是我可以在 GUEST www 文件夹上创建/编辑来自 HOST 的文件。

如果您对此有更好的想法,请随意说,而不是共享文件夹。

【问题讨论】:

【参考方案1】:

好吧,当我遇到与共享文件夹相关的另一个问题时,我最终遇到了这个 *** 问题:Shared folder in VirtualBox for Apache

它在两个方面帮助了我,似乎我需要的是那些 uid 和 gid 选项。

所以,要以另一个用户身份挂载共享文件夹,我会运行:

mount -t vboxsf SHARE_NAME /some/dir -o uid=48,gid=48

另外,要查看您的 www-datagiduid 是什么,只需运行 id www-data

如果您还需要更改挂载文件的权限,只需在选项中添加“dmode”即可,如下:

sudo mount -t vboxsf SHARE_NAME-o rw,dmode=777,gid=GROUP_ID,uid=USER_ID /path/on/guest

可用的选项是(来自mount 的帮助):

rw         mount read write (default)
ro         mount read only
uid       =<arg> default file owner user id
gid       =<arg> default file owner group id
ttl       =<arg> time to live for dentry
iocharset =<arg> i/o charset (default utf8)
convertcp =<arg> convert share name from given charset to utf8
dmode     =<arg> mode of all directories
fmode     =<arg> mode of all regular files
umask     =<arg> umask of directories and regular files
dmask     =<arg> umask of directories
fmask     =<arg> umask of regular files

如果您需要它在系统初始化期间运行,只需在 /etc/init/SOMETHING.conf 上创建一个文件,内容如下:

description     "SOME DESCRIPTION"

start on startup

task
exec mount -t vboxsf YOUR_SHARE_NAME /path/on/guest -o uid=1000,gid=33

【讨论】:

我尝试了很多,直到我发现 SHARE_NAME 只是我在 VirtualBox 设置中定义的普通共享名,没有路径 /media/... 然后它起作用了;) 出于某种原因,这不是我的 Debian VM 中的永久解决方案。每次重启后我总是需要重新输入上面的代码。

以上是关于以另一个用户身份挂载共享文件夹(vbox)[关闭]的主要内容,如果未能解决你的问题,请参考以下文章

vbox要手动mount才能挂载windows的共享文件夹(不用安装samba了)

修复vbox的共享文件夹的符号链接错误

win10系统,vbox下安装centos7。挂载实现目录共享

如何在 Linux 中通过 C/C++ 以另一个用户身份创建文件?

samba文件共享服务配置(multiuser机制)二 (共两节)

以另一个用户身份运行 Visual Studio 并提升