github.com/grailbio/base@v0.0.11/cmd/grail-fuse/README.md (about)

     1  # Grail-fuse
     2  
     3  Grail-fuse allows reading and writing S3 files as if they are on the local file
     4  system.  It supports Linux and OSX. No extra step is needed for Linux. For OSX,
     5  install osxfuse from https://github.com/osxfuse/osxfuse/releases
     6  
     7  ## Usage
     8  
     9      grail-fuse [-remote-root-dir DIR] [-daemon] [-log-dir LOGDIR] MOUNTPOINT
    10  
    11  Example:
    12  
    13      grail-fuse -daemon $HOME/s3
    14  
    15  Flag `-mount-root-dir` defaults to `s3://`.  Thus, after mounting grail-fuse on
    16  `~/s3`, Toplevel directories under `~/s3` will list S3 buckets owned by the
    17  default AWS account. You can descend into buckets to read files underneath.
    18  
    19  If `-daemon` is set, `grail-fuse` runs as a daemon.
    20  
    21  ## Unmounting the file system
    22  
    23  To unmount `grail-fuse`, run:
    24  
    25      fusermount -u $HOME/s3
    26  
    27  on Linux, or
    28  
    29      umount $HOME/s3
    30  
    31  on OSX.
    32  
    33  ## Bugs and limitations
    34  
    35  - `mkdir` is not supported. `rmdir` is supported, but is is just a noop.  You can
    36    just create a file under a nonexisting subdirectory without `mkdir`ing it first.
    37  
    38  - grail-fuse caches file attributes in memory for up to 5 minutes. Thus, if the
    39    remote file system is updated by another user, it will not be reflected for up
    40    to five minutes.  You can send a SIGHUP to `grail-fuse` to invalidate the
    41    cache.
    42  
    43  - File contents are not written back to the remote file system until `close`.
    44  
    45  - In general, random seeks are supported during writes.