在vm共享文件夹中编译ONOS时拒绝权限



我在Win10上创建了一个虚拟机(ubuntu16.04),并在共享文件夹中使用以下命令编译onos

$ export ONOS_ROOT=/media/sf_EC/onos
$ source $ONOS_ROOT/tools/dev/bash_profile
$ ./tools/build/onos-buck run onos-local -- debug clean

我发现了与权限相关的错误(省略一些错误并显示最后5行)

File "/media/sf_EC/onos/bin/buck/programs/buck.py", line 71, in <module>
File "/media/sf_EC/onos/bin/buck/programs/buck.py", line 67, in main
File "/media/sf_EC/onos/bin/buck/programs/tracing.py", line 113, in write_to_dir
File "/media/sf_EC/onos/bin/buck/programs/tracing.py", line 28, in create_symlink
OSError: [Errno 1] Operation not permitted

我已经将我的用户(jack)添加到vboxsf组,并重新启动它,并使用以下命令进行确认。

$ sudo usermod -a -G vboxsf jack

$ cat /etc/group | grep "vboxsf"显示:

vboxsf:x:999:jack

我已经在网上搜索了很长时间,但它对我没有用处。请帮助或尝试给出一些想法如何在vm共享文件夹中编译onos。

其中一个问题可能是您正在使用buck来构建控制器。Buck不再被使用,取而代之的是,我们使用Bazel来构建ONOS。

如果出于某种原因,你需要使用buck和一个相当旧的ONOS版本,那么你的问题似乎与权限有关。这可能是你克隆或安装了一些具有管理员权限的工具,现在,在构建时,你不能以普通用户的身份执行,需要以"sudo"来执行。

尽管如此,我还是会克隆最新版本,并按照ONOS wiki的说明操作。