如何解决使用WSL在Rails应用程序中加载页面时发生错误Errno :: EEXIST
我正在Windows和WSL 1上使用Docker运行Rails应用。
有时在Docker卷之间进行清理后,重新启动应用程序后出现此错误。错误消息是“文件存在@ dir_s_mkdir-/myapp/tmp/cache/assets/sprockets/v4.0.0/3A”。
解决方法
发生这种情况是因为链轮(负责资产管道)无法成功写入高速缓存文件夹,在这种情况下为“ tmp / cache / assets / sprockets / v4.0.0 / 3A”,因为另一个名称几乎相同的文件夹(“。 ... / 3a“)已经存在(名称相同,只是小写)。
我已经经历过几次了,虽然我不确定为什么不区分大小写突然应用于wsl控制下的目录,但是我找到了一种解决方法here,可以解决此问题。 / p>
只需以管理员身份启动Windows Power Shell终端,然后从应用程序根目录运行此命令:
(Get-ChildItem -Recurse -Directory).FullName | ForEach-Object {fsutil.exe file setCaseSensitiveInfo $_ enable}
,您一切顺利。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。