用gcsfuse看不到用gsutil写的数据

时间:2015-06-26 23:49:27

标签: google-cloud-storage gsutil

我已经安装了gcsfuse来支持需要类似posix的挂载点的应用。

使用gsutil编写的现有数据不可见,但通过浏览器(云存储>存储浏览器)写入的数据是。

根据https://cloud.google.com/storage/docs/gcsfuse -

  

您可以使用保险丝适配器和gsutil等工具同时读写Google云端存储。例如,如果使用Fuse Adapter编写对象,则可以立即使用gsutil读取对象,反之亦然,无需重新装入存储桶或重新启动计算引擎实例。

有没有人成功与gcsfuse和gsutil合作?

我觉得我错过了什么。

谢谢!

1 个答案:

答案 0 :(得分:6)

这可能是因为gsutil没有创建目录占位符对象,而默认情况下为requires them创建gcsfuse以使目录可见。要确认:当您在已经可以看到的目录(例如根目录)中使用gsutil编写对象时,它是否会显示?

您可以通过以下两种方式解决此问题:

  1. 为您缺少的目录创建目录占位符。对缺失对象foo/bar/baz执行此操作的最简单方法是使用gcsfuse mount:

    mkdir -p foo/bar
    
  2. 使用--implicit-dirs标志运行gcsfuse。不过,请务必阅读上面链接的文档以获取警告。