Linux使用特定用户挂载NFS

Gab*_*bor 7 permissions mount virtualbox

我在互联网上搜索时间,但对于这个具体问题,我找不到任何解决方案.

1:我的PC上有一个Xubuntu Linux.我平均使用它:浏览互联网,观看视频等.它也为我的PHPStorm应用程序提供了家,但没有项目文件.这是主持人.它有一个仅限主机的网络:192.168.56.1

2:我有一个VirtualBox Debian Linux(无GUI)系统.这意味着代表我真正的网络服务器的开发版本.它包含所有项目文件.这个VM在外部驱动器上,所以我可以随处携带(例如:到办公室).192.168.56.101.这是客人.

3:在主机上我使用dnsmasq强制每个*.dev域重定向到GUEST.所以我可以轻松地测试我的项目.

4:在GUEST上我导出了以下/var/www文件夹/etc/exports:

/var/www 192.168.56.1(rw,sync,no_root_squash,no_subtree_check)
Run Code Online (Sandbox Code Playgroud)

问题:我想在HOST上使用PHPStorm来编辑GUEST"本地"上的文件.但我无法将GUEST的/var/www文件夹挂载到/home/gabor/Projects具有完全权限的HOST 文件夹中.我试着使用以下内容:

$> sudo mount 192.168.56.101:/var/www /home/gabor/Projects
Run Code Online (Sandbox Code Playgroud)

这是第一次看起来没问题,但文件夹已安装,nobody:nogoup我没有编辑权限.

我希望/home/gabor/Projects拥有所有者gabor:gabor,我在此文件夹中创建的所有内容都必须拥有www-data:www-dataDebian端的所有者.但是对于NFS安装,我无法指定用户.

$> sudo mount -o umask=0022,gid=1000,uid=1000 192.168.56.101:/var/www /home/gabor/Projects
mount.nfs: an incorrect mount option was specified
Run Code Online (Sandbox Code Playgroud)

我也没能mount --bind在Debian上/var/www使用不同的用户(应该nobody:nogroup),以便我可以导出那个...

我怎么解决这个问题?请帮我.谢谢.

Gab*_*bor -12

好的,我找到了一个完全符合我想要的解决方案。

首先,安装sshfs

$> sudo apt-get install sshfs
Run Code Online (Sandbox Code Playgroud)

然后安装遥控器/var/www

$> sshfs -o uid=33,gid=33 root@192.168.56.101:/var/www /home/gabor/Projects
Run Code Online (Sandbox Code Playgroud)

就是这样!

$> ls -la /home/gabor | grep Projects
drwxr-xr-x  1 www-data www-data  4096 Okt 14 21:10 Projects
Run Code Online (Sandbox Code Playgroud)

  • 尽管如此,这仍然不是指定 NFS 的原始问题的解决方案。 (10认同)