gcsfuse mount退出状态为1

Pet*_* Li 3 google-cloud-storage google-compute-engine gcsfuse

试图使用gcsfuse,但是当我跑

gcsfuse <bucket> /target/dir
Run Code Online (Sandbox Code Playgroud)

我一直收到这个错误

daemonize.Run: readFromProcess: sub-process: mountWithArgs: mountWithConn: Mount: mount: fusermount: exit status 1
Run Code Online (Sandbox Code Playgroud)

我是在GCE实例中执行此操作,具有对Google Cloud服务的完全API访问权限

该文件夹存在,我在保险丝组.

我尝试使用所有调试开关运行,但它们没有显示任何帮助

> gcsfuse --uid "33" --gid "33" --debug_fuse --debug_gcs --debug_http --debug_invariants bucket-name /target/dir
Using mount point: /target/dir
Opening GCS connection...
Opening bucket...
Mounting file system...
daemonize.Run: readFromProcess: sub-process: mountWithArgs: mountWithConn: Mount: mount: fusermount: exit status 1
Run Code Online (Sandbox Code Playgroud)

版本信息:gcsfuse版本0.15.0(Go version go1.5.2)

dba*_*kiu 11

我遇到了同样的问题,因为我试图在 Docker 容器上安装文件夹。然而,事实证明容器需要在特权模式下运行才能让 gcsfuse 工作。

docker --特权 docker-image-name

上面的命令工作正常。或者,如果有人使用 kubernetes,则需要按如下方式指定安全上下文:

  containers:
  - name: application-name
    securityContext:
      privileged: true
Run Code Online (Sandbox Code Playgroud)


Pet*_* Li 7

我的/ target/dir由www-data:fuse拥有,但该组在安装之前没有对该目录的写权限.

  • 如果 gcsfuse 打印一条有助于解决问题的错误消息,那肯定会有帮助。您准备好将此作为问题填写在 GitHub 上吗? (2认同)
  • 如何更改组的写入权限? (2认同)