【发布时间】:2021-12-05 19:16:03
【问题描述】:
我已经能够使用
挂载 Google Cloud Bucketgcsfuse --implicit-dirs " production-xxx-appspot /mount
或同等
sudo mount -t gcsfuse -o implicit_dirs,allow_other,uid=1000,gid=1000,key_file=service-account.json production-xxx-appspot /mount
安装效果很好。
发生的情况是,当我在挂载后执行以下命令时,它们也可以正常工作:
mkdir /mount/files/
cp -rf /home/files/* /mount/files/
但是,当我使用 :
mcedit /mount/files/a.txt
或
vi /mount/files/a.txt
输出显示没有可用的有意义的文件。
有没有其他方法可以解决这种情况,并以可以直接在挂载的谷歌云存储桶上创建文件的方式使用应用程序,而不是在本地创建文件然后再复制。
【问题讨论】:
-
检查 Compute Engine 范围(在 Google Cloud Web GUI 中编辑实例。您的 VM 可能只有 Cloud Storage READ 的范围。单击启用 WRITE 选项。您必须关闭实例才能进行更改,但您可以在实例运行时检查设置。
-
它在 Web UI 中的 VM 实例上显示“存储读/写”。我可以创建目录,甚至可以将文件复制到谷歌云存储。但例如当我使用 MP4Box 或 mcedit 或 vi 等应用程序时,它无法创建或使用这些文件,因为它们还不存在。
-
“尚不存在”是什么意思?您是指在一个系统上创建文件而在另一个系统上看不到的缓存吗?
-
“尚不存在”意味着,例如,文本编辑器试图打开已挂载的谷歌云存储桶上的文件。它不能这样做并返回一个错误,说“文件无法打开”。但是使用相同的挂载存储桶,我可以创建目录并从其他挂载的驱动器复制文件。
标签: google-cloud-platform google-cloud-storage google-compute-engine mount gcsfuse