Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Gessefs Parameters documentation #109

Open
bas-kirill opened this issue Mar 13, 2024 · 1 comment
Open

Gessefs Parameters documentation #109

bas-kirill opened this issue Mar 13, 2024 · 1 comment

Comments

@bas-kirill
Copy link

I checked https://cloud.yandex.com/en/docs/storage/tools/geesefs and another resources, but there is no documentation about geesefs mounting parameters. So it is required to install CLI and run geesefs to check documentation about tool.

It is not convenient in situation that requires to tune parameters among several such tools (s3fs, goofys, rclone mount etc).

So it is very convenient to have a description like at https://rclone.org/commands/rclone_mount/#options

@chris2k20
Copy link

For the record: version 0.42.0

NAME:
   geesefs - Mount an S3 bucket locally

USAGE:
   geesefs [global options] bucket[:prefix] mountpoint
   
VERSION:
   0.42.0
   
GLOBAL OPTIONS:
   --help, -h               Print this help text and exit successfully.
   -o value                 Additional system-specific mount options. Be careful!
   --cache value            Directory to use for data cache. (default: off)
   --dir-mode value         Permission bits for directories. (default: 0755) (default: 493)
   --file-mode value        Permission bits for files. (default: 0644) (default: 420)
   --cache-file-mode value  Permission bits for disk cache files. (default: 0644) (default: 420)
   --uid value              UID owner of all inodes. (default: 1000)
   --gid value              GID owner of all inodes. (default: 1000)
   --setuid value           Drop root privileges and change to this user ID (defaults to --uid). (default: 1000)
   --setgid value           Drop root group and change to this group ID (defaults to --gid). (default: 1000)
   --cluster                Enable cluster mode.
   --grpc-reflection        Enable grpc reflection (--cluster flag required).
   --cluster-me value       <node-id>:<address> to communicate with this node (--cluster flag required).
   --cluster-peer value     List of all cluster nodes in format <node-id>:<address> (--cluster flag required).
   --version, -v            print the version
   
TUNING OPTIONS:
   --memory-limit value             Maximum memory in MB to use for data cache (default: 1000)
   --entry-limit value              Maximum metadata entries to cache in memory (1 entry uses ~1 KB of memory) (default: 100000)
   --gc-interval value              Force garbage collection after this amount of data buffer allocations (default: 250)
   --cheap                          Reduce S3 operation costs at the expense of some performance (default: off)
   --no-preload-dir                 Disable directory listing pre-loading when you open individual files and don't do any READDIR calls. Default is to always pre-load listing which helps in a lot of cases, for example when you use rsync. Note that you should also enable --no-implicit-dir if you want to fully avoid ListObjects requests during file lookups.
   --no-implicit-dir                Assume all directory objects ("dir/") exist (default: off)
   --no-dir-object                  Do not create and check directory objects ("dir/") (default: off)
   --max-flushers value             How much parallel requests should be used for flushing changes to server (default: 16)
   --max-parallel-parts value       How much parallel requests out of the total number can be used for large part uploads. Large parts take more bandwidth so they usually require less parallelism (default: 8)
   --max-parallel-copy value        How much parallel unmodified part copy requests should be used. This limit is separate from max-flushers (default: 16)
   --read-ahead value               How much data in KB should be pre-loaded with every read by default (default: 5120)
   --small-read-count value         Number of last reads within a single file handle to be checked for being random (default: 4)
   --small-read-cutoff value        Maximum average size of last reads in KB to trigger "small" readahead (default: 128)
   --read-ahead-small value         Smaller readahead size in KB to be used when small random reads are detected (default: 128)
   --large-read-cutoff value        Amount of linear read in KB after which the "large" readahead should be triggered (default: 20480)
   --read-ahead-large value         Larger readahead size in KB to be used when long linear reads are detected (default: 102400)
   --read-ahead-parallel value      Larger readahead will be triggered in parallel chunks of this size in KB (default: 20480)
   --read-merge value               Two HTTP requests required to satisfy a read will be merged into one if they're at most this number of KB away (default: 512)
   --single-part value              Maximum size of an object in MB to upload it as a single part. Can't be less than 5 MB (default: 5)
   --part-sizes value               Part sizes in MB. Total part count is always 10000 in S3. Default is 1000 5 MB parts, then 1000 25 MB parts and then 125 MB for the rest of parts (default: "5:1000,25:1000,125")
   --enable-patch                   Use PATCH method to upload object data changes to S3. All PATCH related flags are Yandex only. (default: off)
   --drop-patch-conflicts           Drop local changes in case of conflicting concurrent PATCH updates. (default: off)
   --prefer-patch-uploads           When uploading new objects, prefer PATCH requests to standard multipart upload process.This allows for changes to appear faster in exchange for slower upload speed due to limited parallelism.Must be used with --enable-patch flag (default: off)
   --max-merge-copy value           If non-zero, allow to compose larger parts up to this number of megabytes in size from existing unchanged parts when doing server-side part copy. Must be left at 0 for Yandex S3 (default: 0)
   --ignore-fsync                   Do not wait until changes are persisted to the server on fsync() call (default: off)
   --fsync-on-close                 Wait until changes are persisted to the server when closing file (default: off)
   --enable-perms                   Enable permissions, user and group ID. Only works correctly if your S3 returns UserMetadata in listings (default: off)
   --enable-specials                Enable special file support (sockets, devices, named pipes). Only works correctly if your S3 returns UserMetadata in listings (default: on for Yandex, off for others)
   --no-specials                    Disable special file support (sockets, devices, named pipes).
   --enable-mtime                   Enable modification time preservation. Only works correctly if your S3 returns UserMetadata in listings (default: off)
   --disable-xattr                  Disable extended attributes. Improves performance of very long directory listings
   --uid-attr value                 User ID metadata attribute name (default: "uid")
   --gid-attr value                 Group ID metadata attribute name (default: "gid")
   --mode-attr value                File mode (permissions & special file flags) metadata attribute name (default: "mode")
   --rdev-attr value                Block/character device number metadata attribute name (default: "rdev")
   --mtime-attr value               File modification time (UNIX time) metadata attribute name (default: "mtime")
   --symlink-attr value             Symbolic link target metadata attribute name. Only works correctly if your S3 returns UserMetadata in listings (default: "--symlink-target")
   --refresh-attr value             Setting xattr with this name, without user. prefix,  refreshes the cache of the file or directory. (default: ".invalidate")
   --stat-cache-ttl value           How long to cache file metadata. (default: 1m0s)
   --http-timeout value             Set the timeout on HTTP requests to S3 (default: 30s)
   --retry-interval value           Retry unsuccessful writes after this time (default: 30s)
   --read-retry-interval value      Initial interval for retrying unsuccessful reads (default: 1s)
   --read-retry-mul value           Increase read retry interval this number of times on each unsuccessful attempt (default: 2)
   --read-retry-max-interval value  Maximum interval for retrying unsuccessful reads (default: 1m0s)
   --read-retry-attempts value      Maximum read retry attempts (0 means unlimited) (default: 0)
   --cache-popular-threshold value  Value of the read counter after which a cached file is started being treated as 'popular' (default: 3)
   --cache-max-hits value           Maximum value of the cache read counter for a file (default: 6)
   --cache-age-interval value       Number of reads after which read counters are decremented for all files (default: 4096)
   --cache-age-decrement value      Decrement amount (default: 1)
   --cache-to-disk-hits value       Minimum value of the read counter to cache file on disk (default: 2)
   --max-disk-cache-fd value        Simultaneously opened cache file descriptor limit (default: 512)
   
S3 OPTIONS:
   --endpoint value                  The S3 endpoint to connect to. Possible values: http://127.0.0.1:8081/, https://s3.amazonaws.com (default: "https://storage.yandexcloud.net")
   --project-id value                Project ID for Ceph multi-tenancy bucket sharing (bucket syntax project-id:bucket-name)
   --iam                             Try to authenticate automatically using VM metadata service (Yandex Cloud / IMDSv1 / GCP)
   --iam-header value                The header to use for authenticating with IAM token (default: "X-YaCloud-SubjectToken")
   --iam-flavor value                Instance metadata service flavor: gcp or imdsv1 (default: "gcp")
   --iam-url value                   Custom instance metadata service URL
   --region value                    The region to connect to. Usually this is auto-detected. Possible values: us-east-1, us-west-1, us-west-2, eu-west-1, eu-central-1, ap-southeast-1, ap-southeast-2, ap-northeast-1, sa-east-1, cn-north-1 (default: "us-east-1")
   --requester-pays                  Whether to allow access to requester-pays buckets (default: off)
   --storage-class value             The type of storage to use when writing objects. Possible values: REDUCED_REDUNDANCY, STANDARD, STANDARD_IA. (default: "STANDARD")
   --cold-min-size value             Objects smaller than this size will be stored in STANDARD if STANDARD_IA (cold storage) is selected as default. (default: 0)
   --profile value                   Use a named profile from $HOME/.aws/credentials instead of "default"
   --shared-config value             Use different shared configuration file(s) instead of $HOME/.aws/credentials and $HOME/.aws/config
   --use-content-type                Set Content-Type according to file extension and /etc/mime.types (default: off)
   --sse                             Enable basic server-side encryption at rest (SSE-S3) in S3 for all writes (default: off)
   --sse-kms key-id                  Enable KMS encryption (SSE-KMS) for all writes using this particular KMS key-id. Leave blank to Use the account's CMK - customer master key (default: off)
   --sse-c value                     Enable server-side encryption using this base64-encoded key (default: off)
   --no-checksum                     Disable content MD5 and SHA256 checksums for performance (default: off)
   --list-type value                 Listing type to use: ext-v1 (yandex only), 2 or 1 (default: ext-v1 for yandex, 1 for others)
   --no-detect                       Turn off bucket location and signature algorithm autodetection on start
   --no-expire-multipart             Do not expire multipart uploads older than --multipart-age on start
   --multipart-age value             Multipart uploads older than this value will be deleted on start (default: "48h")
   --multipart-copy-threshold value  Threshold for switching from single-part to multipart object copy in MB. Maximum for AWS S3 is 5 GB (default: 128)
   --acl value                       The canned ACL to apply to the object. Possible values: private, public-read, public-read-write, authenticated-read, aws-exec-read, bucket-owner-read, bucket-owner-full-control (default: off)
   --subdomain                       Enable subdomain mode of S3
   --sdk-max-retries value           Maximum number of AWS SDK request retries. (default: 3)
   --sdk-min-retry-delay value       Minimum delay for AWS SDK retries of temporary request failures. (default: 30ms)
   --sdk-max-retry-delay value       Maximum delay for AWS SDK retries of temporary request failures. (default: 5m0s)
   --sdk-min-throttle-delay value    Minimum delay for AWS SDK retries of throttled requests (429, 502, 503, 504). (default: 500ms)
   --sdk-max-throttle-delay value    Maximum delay for AWS SDK retries of throttled requests. (default: 5m0s)
   
MISC OPTIONS:
   --debug              Enable generic debugging output.
   --debug_fuse         Enable fuse-related debugging output.
   --debug_s3           Enable S3-related debugging output.
   --pprof value        Specify port or host:port to enable pprof HTTP profiler on that port.
   -f                   Run geesefs in foreground.
   --log-file value     Redirect logs to file, 'stderr' (default for foreground) or 'syslog' (default for background).
   --print-stats value  I/O statistics printing interval. Set to 0 to disable. (default: 30s)
   --debug_grpc         Enable grpc logging in cluster mode.
   
FUSE OPTIONS:
   -o allow_other  allow all users (including root) to access files
   -o allow_root   allow root and filesystem owner to access files
   -o rootmode=M   set file mode of the filesystem's root (octal)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants