title: gcsfuse Input/Output error
body: <p>I'm getting an Input/Output error when I try and create a directory or file in a google cloud storage bucket mounted on a linux (Ubuntu 15.10) directory.</p>
  
  <p>Steps I have done:</p>
  
  <ul>
  <li>Created a user named transfer</li>
  <li>Created a <code>/mnt/backups</code> directory and ran <code>chown -R transfer /mnt/backups</code></li>
  <li>As the user transfer, ran <code>gcsfuse --implicit-dir backup01-bucket
  /mnt/backups</code>. The file system mounts successfully</li>
  <li>Run <code>mkdir test</code> and get the error <code>mkdir: cannot create directory test: Input/output error</code></li>
  </ul>
  
  <p>Is there something I missed? What I'm trying to do is be able to ftp files to the server and store them in the google storeage bucket rather than local storage.</p>
  
  <p><strong>Update</strong>
  I modified the command to get some debug information:</p>
  
  <pre><code>gcsfuse --implicit-dirs --foreground --debug_gcs --debug_fuse backup01-bucket /mnt/backups
  </code></pre>
  
  <p>Then ran <code>mkdir /mnt/backups/test</code> as the <code>transfer</code> user.</p>
  
  <p>The following bedug information came out:</p>
  
  <pre><code>fuse_debug: Op 0x00000060        connection.go:395] &lt;- GetInodeAttributes (inode 1)
  fuse_debug: Op 0x00000060        connection.go:474] -&gt; OK
  fuse_debug: Op 0x00000061        connection.go:395] &lt;- LookUpInode (parent 1, name "test")
  gcs: Req             0x3a: &lt;- StatObject("test/")
  gcs: Req             0x3b: &lt;- ListObjects()
  gcs: Req             0x3c: &lt;- StatObject("test")
  gcs: Req             0x3c: -&gt; StatObject("test") (53.375107ms): gcs.NotFoundError: googleapi: Error 404: Not Found, notFound
  gcs: Req             0x3b: -&gt; ListObjects() (59.061271ms): OK
  gcs: Req             0x3a: -&gt; StatObject("test/") (71.666112ms): gcs.NotFoundError: googleapi: Error 404: Not Found, notFound
  fuse_debug: Op 0x00000061        connection.go:476] -&gt; Error: "no such file or directory"
  fuse_debug: Op 0x00000062        connection.go:395] &lt;- MkDir
  gcs: Req             0x3d: &lt;- CreateObject("test/")
  gcs: Req             0x3d: -&gt; CreateObject("test/") (22.090155ms): googleapi: Error 403: Insufficient Permission, insufficientPermissions
  fuse_debug: Op 0x00000062        connection.go:476] -&gt; Error: "CreateChildDir: googleapi: Error 403: Insufficient Permission, insufficientPermissions"
  fuse: 2016/04/04 06:51:02.922866 *fuseops.MkDirOp error: CreateChildDir: googleapi: Error 403: Insufficient Permission, insufficientPermissions
  2016/04/04 06:51:08.378100 Starting a garbage collection run.
  gcs: Req             0x3e: &lt;- ListObjects()
  gcs: Req             0x3e: -&gt; ListObjects() (54.901164ms): OK
  2016/04/04 06:51:08.433405 Garbage collection succeeded after deleted 0 objects in 55.248203ms.
  </code></pre>
  
  <p><strong>Note:</strong> If I create a directory in the web console I can see the directory fine.</p>