虚拟机中使用了共享目录 执行 PHP artisan storage:link 报错?求解决办法

虚拟机中使用了共享目录 执行 php artisan storage:link 报错?求解决办法
项目正常的跑着呢,图片文件也已经存入到了 storage/app/public/xxxxx/xx下,怀疑会不会是因为共项目录的问题?求解答。谢谢。


不知道是不是这个文件系统类型的原因。下图:

虚拟机中使用了共享目录 执行 PHP artisan storage:link 报错?求解决办法

《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
讨论数量: 13

提示信息是没有权限,可以在命令前加 sudo 试试。

4年前 评论
daxiaobuzhaodiao (楼主) 4年前

@daxiaobuzhaodiao 直接用 ln 命令试下呢

 ln -s /media/sf_projects/kamome_new/storage/app/public /media/sf_projects/kamome_new/public/storage
4年前 评论
daxiaobuzhaodiao (楼主) 4年前
daxiaobuzhaodiao (楼主) 4年前

因为Windows不支持软连接,你可能需要用管理员身份运行虚拟机试一下。

4年前 评论

@tsin 刚才重启了试了,依然报错权限郁闷了 。谢谢哥们

4年前 评论
66

权限问题 ,ll看下

4年前 评论

这个目前没有什么好的办法解决,请使用docker

4年前 评论

@L学习不停 这个根本问题在于Windows,你的docker,虚拟机如果运行在Windows的话,还是会有问题。之前使用Homestead遇到这种情况的解决方法是,管理员身份打开CMD,再SSH连过去操作。还有npm install时,也有这种问题,也可以加 --no-bin-link 选项(我试过这种方法不起作用)

4年前 评论
L学习不停 4年前

如果只是自己的电脑,在windows打开你那个共享目录的属性->安全->编辑,把当前用户的完全控制勾上试试。

4年前 评论
自由与温暖是遥不可及的梦想

找到你连接的的工具 比如 git的命令行 用管理员身份打开,然后连接上去。 sudo 然后软连接

4年前 评论

在 windows 下 用管理员运行 cmd 切到项目目录后执行 php artisan storage:link 就可以了, 注意存储文件时一定要放到storage public下

Laravel

4年前 评论

还有个折中的方法,直接在web server中如nginx,写个配置定向public目录到静态资源存储位置去

4年前 评论

如果是共项目录了的话,用下面的解决方案应该就能解决问题了。

在Windows中打开 cmd 执行下面的语句,把YOURVMNAME替换成虚拟机名称,把YOURSHAREFOLDERNAME替换成共享文件夹名称

tips: VirtualBox的安装根目录添加到环境变量中,或者cd到VirtualBox根目录再执行

VBoxManage setextradata YOURVMNAME VBoxInternal2/SharedFoldersEnableSymlinksCreate/YOURSHAREFOLDERNAME 1
4年前 评论

如果是PC的话, 启动虚拟机的时候需要用管理员权限

4年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!