我试图根据this guide在WSL2上构建 chrome 。
当我到达fetch --nohooks chromium
时,所有内容都在加载,然后我得到以下错误:
OSError: [Errno 30] Read-only file system: '/home/ghadar/chromium/src/third_party/libprotobuf-mutator/_gclient_src_0ve3yqhz'
我找遍了所有的地方,也找不到任何关于这个错误的解释。
我在Windows 11上运行WSL2,Ubuntu 20.04作为Linux发行版。
2条答案
按热度按时间w8f9ii691#
我能想到的几种可能性:
关于第一个,请参见#6220 on the WSL Github。建议的解决方案是(首先备份任何关键文件可能是个好主意):
也可能是磁盘空间问题。Chromium源代码非常大,大约为57 GB。Windows驱动器上的磁盘空间是否不足?如果是这样,那么WSL仍然认为它有剩余的空间,因为它在一个可以增长到(250 GB/1 TB,取决于WSL版本)的稀疏虚拟磁盘上,但是一旦主机驱动器上的空间用完,WSL可能会将设备设置为只读。
如果是这种情况,并且您有一个更大的驱动器(当然,建议使用SSD/NVMe来提高性能),如果您愿意,您可以“移动”虚拟磁盘-请参阅my Super User answer主题。
或者你可以尝试在没有完整的repo历史记录的情况下获取,就像文档中建议的那样,使用
--no-history
标志。34gzjxbg2#
我遇到了类似的问题,当磁盘空间耗尽,而提取一个大的包在WSL,它得到了解决,清理磁盘给它足够大的可用空间,关闭WSL在Windows电源 shell 命令“wsl --shutdown”,然后重新启动WSL。