Permissions Linux装载具有特定用户的NFS

Permissions Linux装载具有特定用户的NFS,permissions,virtualbox,mount,Permissions,Virtualbox,Mount,我在网上搜索了几个小时,但对于这个具体问题,我找不到任何解决办法 1:我的电脑上有一个Xubuntu Linux。我使用它的方式很普通:浏览互联网、观看视频等。它还为我的PHPStorm应用程序提供了家,但没有项目文件。这是主持人。它只有一个主机网络:192.168.56.1 2:我有一个VirtualBox Debian Linux(没有GUI)系统。这意味着它代表了我真正的Web服务器的开发版本。它有所有的项目文件。此虚拟机位于外部驱动器上,因此我可以随身携带(例如:到办公室)192.168

我在网上搜索了几个小时,但对于这个具体问题,我找不到任何解决办法

1:我的电脑上有一个Xubuntu Linux。我使用它的方式很普通:浏览互联网、观看视频等。它还为我的PHPStorm应用程序提供了家,但没有项目文件。这是主持人。它只有一个主机网络:
192.168.56.1

2:我有一个VirtualBox Debian Linux(没有GUI)系统。这意味着它代表了我真正的Web服务器的开发版本。它有所有的项目文件。此虚拟机位于外部驱动器上,因此我可以随身携带(例如:到办公室)<代码>192.168.56.101。这是客人

3:在主机上,我使用dnsmasq强制将每个*.dev域重定向到来宾。所以我可以很容易地测试我的项目

4:在GUEST上,我导出了
/etc/exports
中的
/var/www
文件夹:

/var/www 192.168.56.1(rw,sync,no_root_squash,no_subtree_check)
问题:我想使用主机上的PHPStorm“本地”编辑来宾服务器上的文件。但我无法以完全权限将来宾的
/var/www
文件夹装入主机的
/home/gabor/Projects
文件夹。我尝试使用以下方法:

$> sudo mount 192.168.56.101:/var/www /home/gabor/Projects
这是第一次看起来还可以,但是文件夹中装载了
nobody:nogroup
,我没有编辑权限

我希望
/home/gabor/Projects
拥有所有者
gabor:gabor
,并且我在此文件夹中创建的所有内容都必须在Debian端拥有所有者
www-data:www-data
。但是对于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
我也未能在Debian上用不同的用户(应该是
nobody:nogroup
)绑定
/var/www
,以便导出该用户

我怎样才能解决这个问题? 请帮帮我。
谢谢。

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

首先,安装
sshfs

$> sudo apt-get install sshfs
然后安装远程
/var/www

$> sshfs -o uid=33,gid=33 root@192.168.56.101:/var/www /home/gabor/Projects
就这样

$> ls -la /home/gabor | grep Projects
drwxr-xr-x  1 www-data www-data  4096 Okt 14 21:10 Projects

NFS v2和v3不支持uid/gid


在Ubuntu
ManNFS
上,为后代添加了这个答案,因为我在这里提出了同样的问题

在/etc/export中尝试以下操作:

/var/www 192.168.56.1(rw,root_squash)
然后在客户机上,将其放入/etc/fstab:

192.168.56.101:/var/www /home/gabor/Projects nfs defaults,user,noauto,relatime,rw 0 0
$ id
uid=1000(gabor) gid=1000(gabor) groups=1000(gabor)
$ mount /home/gabor/Projects
$
user
选项将允许非root用户装载卷。根据需要调整其他选项

然后,再次在客户端上,成为要将卷装载为的用户,然后装载添加到/etc/fstab的卷:

192.168.56.101:/var/www /home/gabor/Projects nfs defaults,user,noauto,relatime,rw 0 0
$ id
uid=1000(gabor) gid=1000(gabor) groups=1000(gabor)
$ mount /home/gabor/Projects
$
确保服务器上的
uid
和/或
gid
相同。我不确定用户名是否可以不同。还要确保服务器上导出的目录可由用户或组写入。有关以类似方式设置NFS的更多信息,请参阅


注意:这是一种没有身份验证的不安全配置。使用NFS v4和Kerberos进行强身份验证。

不过,这不是指定NFS的原始问题的解决方案。此主题已有2年历史。请停止评论:)每个头脑清醒的人都已经在使用Docker或类似产品。sshfs不可靠,请尝试使用NFS v4