mountpoint-s3
A simple, high-throughput file client for mounting an Amazon S3 bucket as a local file system.
File Explorer
- nextest.toml
- action.yml
- install.sh
- copy-static-files.sh
- render-mem-summary.sh
- save-benchmark-results.sh
- save-coredump.sh
- bug-report.yml
- feature-request.yml
- bench.yml
- bench_main.yml
- bench_pr.yml
- bench_s3express.yml
- crates.yml
- integration.yml
- integration_main.yml
- integration_pr.yml
- merge_queue_dco_mock.yml
- notify_slack.yml
- package.yml
- release.yml
- stress.yml
- stress_pr.yml
- tests.yml
- dependabot.yml
- pull_request_template.md
- autogroup.py
- base_benchmark.py
- cargo_helper.py
- client_benchmark.py
- command.py
- config_utils.py
- crt_benchmark.py
- fio_benchmark.py
- mountpoint.py
- prefetch_benchmark.py
- base.yaml
- client.yaml
- client_bp.yaml
- crt.yaml
- fio.yaml
- multi.yaml
- prefetch.yaml
- config.yaml
- global_incl.fio
- sequential_read.fio
- sequential_write.fio
- __init__.py
- smart_benchmark_sweeper.py
- __init__.py
- __init__.py
- base.py
- tools.py
- __init__.py
- test_smart_sweeper_combinations.py
- .gitignore
- .python-version
- benchmark.py
- pyproject.toml
- README.md
- test_monitoring_tools.py
- uv.lock
- Chart.min.css
- Chart.min.js
- index.html
- main.js
- styles.css
- dev.py
- Dockerfile.development
- entrypoint.sh
- README.md
- BENCHMARKING.md
- CODE_OF_CONDUCT.md
- CONFIGURATION.md
- CONTRIBUTING.md
- DEVELOPMENT.md
- INSTALL.md
- LOGGING.md
- METRICS.md
- PUBLISHING_CRATES.md
- SEMANTICS.md
- TROUBLESHOOTING.md
- Dockerfile
- Dockerfile.source
- README.md
- cloudwatch.json
- mounthelper.go
- README.md
- requirements.txt
- resnet.py
- fstab.txt
- create_files_100.fio
- create_files_1000.fio
- create_files_10000.fio
- create_files_100000.fio
- mix_1r4w.fio
- mix_2r2w.fio
- mix_4r1w.fio
- rand_read.fio
- rand_read_4t.fio
- rand_read_4t_direct.fio
- rand_read_4t_direct_small.fio
- rand_read_4t_small.fio
- rand_read_direct.fio
- rand_read_direct_small.fio
- rand_read_small.fio
- seq_read.fio
- seq_read_4t.fio
- seq_read_4t_direct.fio
- seq_read_4t_direct_small.fio
- seq_read_4t_small.fio
- seq_read_direct.fio
- seq_read_direct_small.fio
- seq_read_skip_17m.fio
- seq_read_small.fio
- ttfb.fio
- ttfb_small.fio
- seq_write.fio
- seq_write_direct.fio
- time_to_write_one_byte_file.fio
- fs_bench.sh
- fs_cache_bench.sh
- fs_latency_bench.sh
- file-system-benchmarks.rs
- mock-mount-s3.rs
- mount-s3-log-analyzer.rs
- build_info.rs
- cli.rs
- fstab.rs
- lib.rs
- main.rs
- run.rs
- creds.rs
- fuse.rs
- mod.rs
- s3.rs
- basic_checks.sh
- spawn_mounts.sh
- otel_export.sh
- cli.rs
- fork_test.rs
- build.rs
- Cargo.toml
- CHANGELOG.md
- client_benchmark.rs
- download.rs
- list.rs
- leaky_bucket.rs
- throughput_client.rs
- etag.rs
- copy_object.rs
- delete_object.rs
- get_object.rs
- get_object_attributes.rs
- head_bucket.rs
- head_object.rs
- list_objects.rs
- put_object.rs
- rename_object.rs
- build_info.rs
- checksums.rs
- endpoint_config.rs
- error_metadata.rs
- failure_client.rs
- imds_crt_client.rs
- instance_info.rs
- lib.rs
- metrics.rs
- mock_client.rs
- object_client.rs
- s3_crt_client.rs
- user_agent.rs
- creds.rs
- memory_pool.rs
- mod.rs
- tracing_test.rs
- auth.rs
- client.rs
- copy_object.rs
- delete_object.rs
- endpoint_config.rs
- get_object.rs
- get_object_attributes.rs
- head_bucket.rs
- head_object.rs
- imds_crt_client.rs
- list_objects.rs
- metrics.rs
- network_interface_config.rs
- put_object.rs
- put_object_single.rs
- rename_object.rs
- tls.rs
- build.rs
- Cargo.toml
- CHANGELOG.md
- README.md
- checksums.rs
- event_loop_future.rs
- download_crt.rs
- credentials.rs
- imds_client.rs
- signing_config.rs
- crc32.rs
- crc32c.rs
- crc64nvme.rs
- mod.rs
- sha1.rs
- sha256.rs
- allocator.rs
- byte_buf.rs
- error.rs
- logging.rs
- rust_log_adapter.rs
- string.rs
- task_scheduler.rs
- thread.rs
- uri.rs
- request_response.rs
- channel_bootstrap.rs
- event_loop.rs
- futures.rs
- host_resolver.rs
- retry_strategy.rs
- tls.rs
- buffer.rs
- client.rs
- endpoint_resolver.rs
- pool.rs
- auth.rs
- common.rs
- http.rs
- io.rs
- lib.rs
- s3.rs
- Cargo.toml
- CHANGELOG.md
- README.md
- aws-c-auth
- aws-c-cal
- aws-c-common
- aws-c-compression
- aws-c-http
- aws-c-io
- aws-c-s3
- aws-c-sdkutils
- aws-checksums
- aws-lc
- s2n-tls
- lib.rs
- logging_shim.c
- logging_shim.rs
- build.rs
- Cargo.toml
- CHANGELOG.md
- README.md
- UPDATING_CRT.md
- cache_serialization.rs
- example.toml
- config.rs
- executor.rs
- main.rs
- monitoring.rs
- results.rs
- test_object_generator.rs
- config.json.example
- create_manifest.rs
- fs_benchmark.rs
- mount_from_config.rs
- prefetch_benchmark.rs
- upload_benchmark.rs
- network_performance.sh
- instance_throughput.rs
- cache_directory.rs
- disk_data_cache.rs
- express_data_cache.rs
- in_memory_data_cache.rs
- multilevel_cache.rs
- config.rs
- error.rs
- error_metadata.rs
- flags.rs
- handles.rs
- sse.rs
- time_to_live.rs
- config.rs
- session.rs
- envfilter.rs
- error_logger.rs
- syslog.rs
- testing.rs
- builder.rs
- core.rs
- csv_reader.rs
- db.rs
- metablock.rs
- allocation_queue.rs
- buffers.rs
- limiter.rs
- maintenance.rs
- pages.rs
- pool.rs
- stats.rs
- write_handle_limiter.rs
- error.rs
- expiry.rs
- lookup.rs
- path.rs
- pending_upload.rs
- stat.rs
- data.rs
- defs.rs
- tracing_span.rs
- backpressure_controller.rs
- builder.rs
- caching_stream.rs
- cursor.rs
- part.rs
- part_queue.rs
- part_stream.rs
- seek_window.rs
- task.rs
- config.rs
- path.rs
- prefix.rs
- handles_map.rs
- inode.rs
- negative_cache.rs
- readdir.rs
- atomic.rs
- hasher.rs
- incremental.rs
- wake_signal.rs
- async_util.rs
- autoconfigure.rs
- checksums.rs
- config.rs
- content_type.rs
- data_cache.rs
- fs.rs
- fuse.rs
- lib.rs
- logging.rs
- manifest.rs
- memory.rs
- metablock.rs
- metrics.rs
- metrics_otel.rs
- object.rs
- prefetch.rs
- s3.rs
- superblock.rs
- sync.rs
- upload.rs
- util.rs
- cache.rs
- creds.rs
- fuse.rs
- manifest.rs
- mod.rs
- s3.rs
- test_recorder.rs
- cache_test.rs
- consistency_test.rs
- error_logger_test.rs
- fs_perm_test.rs
- iam_perm_test.rs
- lookup_test.rs
- manifest_test.rs
- metrics_test.rs
- mkdir_test.rs
- mod.rs
- prefetch_test.rs
- read_test.rs
- readdir_test.rs
- rename_test.rs
- rmdir_test.rs
- semantics_doc_test.rs
- setattr_test.rs
- statfs_test.rs
- unlink_test.rs
- write_test.rs
- fuse.rs
- generators.rs
- harness.rs
- mod.rs
- reference.rs
- budget_hold.rs
- cache_warmup.rs
- invariants.rs
- latency.rs
- memory_monitor.rs
- report.rs
- scenario.rs
- setup.rs
- watchdog.rs
- worker.rs
- cache_hit_vs_miss_held_budget.rs
- cache_miss_held_budget_misaligned_part.rs
- held_writes_vs_reads.rs
- idle_and_churn.rs
- many_readers_budget_part.rs
- many_readers_held_budget.rs
- many_readers_held_budget_direct_io.rs
- mixed_rw.rs
- single_reader_budget_part.rs
- single_reader_held_budget.rs
- single_reader_held_budget_direct_io.rs
- single_reader_held_budget_misaligned_part.rs
- sustained_reads.rs
- sustained_writes.rs
- sustained_writes_incremental_upload.rs
- churn.rs
- common.rs
- holding_writer.rs
- idle.rs
- sequential_reader.rs
- writer.rs
- harness.rs
- mod.rs
- README.md
- scenarios.rs
- test_objects.rs
- workers.rs
- direct_io.rs
- fs.rs
- mock_s3_tests.rs
- mod.rs
- stress_tests.rs
- Cargo.toml
- CHANGELOG.md
- README.md
- ci.yml
- hello.rs
- ioctl.rs
- notify_inval_entry.rs
- notify_inval_inode.rs
- null.rs
- passthrough.rs
- poll.rs
- poll_client.rs
- simple.rs
- argument.rs
- fuse_abi.rs
- mod.rs
- notify.rs
- reply.rs
- request.rs
- fuse2.rs
- fuse2_sys.rs
- fuse3.rs
- fuse3_sys.rs
- fuse_pure.rs
- mod.rs
- mount_options.rs
- channel.rs
- lib.rs
- notify.rs
- passthrough.rs
- reply.rs
- request.rs
- session.rs
- integration_tests.rs
- test_passthrough.sh
- .cirrus.yml
- .dockerignore
- .gitignore
- bsd_mount_tests.sh
- build.rs
- Cargo.toml
- CHANGELOG.md
- deny.toml
- LICENSE.md
- Makefile
- mount_tests.Dockerfile
- mount_tests.sh
- osx_mount_tests.sh
- pjdfs.Dockerfile
- pjdfs.sh
- README.md
- rust-toolchain
- rustfmt.toml
- simplefs_tests.sh
- xfstests.Dockerfile
- xfstests.sh
- amzn2023.spec.template
- generate_spec.py
- pyproject.toml
- README.md
- uv.lock
- README.md
- test-mount-s3.sh
- validate-deb-ubuntu.sh
- validate-gzip-al2.sh
- validate-rpm-al2.sh
- validate-rpm-centos8.sh
- validate-rpm-suse.sh
- validate.py
- attribution.hbs
- attribution.toml
- Dockerfile
- generate_amzn2023_srpm.sh
- mount-s3-suse.spec
- mount-s3.debian-control
- mount-s3.spec
- package.py
- README.md
- .gitallowed
- .gitignore
- .gitmodules
- Cargo.lock
- Cargo.toml
- deny.toml
- LICENSE
- lsan-suppressions.txt
- Makefile
- NOTICE
- README.md
- ruff.toml
- rust-toolchain.toml
- rustfmt.toml
- vendor-fuser.sh
# Installation Guide
rustSetup Steps
wget https://s3.amazonaws.com/mountpoint-s3-release/latest/x86_64/mount-s3.rpm
Download the latest RPM package.
sudo yum install -y ./mount-s3.rpm
Install the downloaded package.
mount-s3 amzn-s3-demo-bucket /path/to/mount
Mount the Amazon S3 bucket to a local directory.
Key Commands
cargo build --release
Build the source code in release mode.
cargo test
Run the project tests.
mount-s3 amzn-s3-demo-bucket /path/to/mount
Mount an S3 bucket as a file system.
umount /path/to/mount
Unmount the mounted S3 bucket.
# Use via CDN
jsDelivrjsDelivr serves any public GitHub repository as a CDN with zero setup. Pick a version and a file to get a ready-to-paste link and snippet.
Command Glossary
Commands referenced in this DOCs, explained below.
umount
View Details ▼
umount
Unlink a filesystem from its mount point, making it no longer accessible.
A filesystem cannot be unmounted when it is busy.
umount {{path/to/device_file}}
Unmount a filesystem, by passing the path to the source it is mounted from:
sudo umount {{path/to/device_file}}
Unmount a filesystem, by passing the path to the source it is mounted from:
umount {{path/to/mounted_directory}}
Unmount a filesystem, by passing the path to the target where it is mounted:
vim
View Details ▼
vim
Vim (Vi IMproved), a command-line text editor, provides several modes for different kinds of text manipulation.
Pressing `<i>` in normal mode enters insert mode. Pressing `<Esc>` goes back to normal mode, which enables the use of Vim commands.
See also: `vimdiff`, `vimtutor`, `nvim`, `gvim`.
vim {{path/to/file}}
Open a file:
vim +{{line_number}} {{path/to/file}}
Open a file at a specified line number:
<:>help<Enter>
View Vim's help manual:
apt-get
View Details ▼
apt-get
Debian and Ubuntu package management utility.
Search for packages using `apt-cache`.
It is recommended to use `apt` when used interactively in Ubuntu versions 16.04 and later.
sudo apt-get update
Update the list of available packages and versions (it's recommended to run this before other `apt-get` commands):
sudo apt-get install {{package}}
Install a package, or update it to the latest available version:
sudo apt-get remove {{package}}
Remove a package:
dnf install
View Details ▼
dnf install
Install packages on Red Hat-based distributions.
sudo dnf {{[in|install]}} {{package1 package2 ...}}
Install packages by name:
sudo dnf {{[in|install]}} {{path/to/file}}
Install a package from a local file:
sudo dnf {{[in|install]}} {{https://example.com/package.rpm}}
Install a package from the internet:
x86_64
View Details ▼
x86_64
This command is an alias of `setarch x86_64`.
tldr setarch
View documentation for the original command:
yum
View Details ▼
yum
This command is an alias of `dnf` on modern distros.
For older distros (e.g. CentOS 7), `yum` is a distinct program from `dnf`. Some subcommands and options may be different.
tldr dnf
View documentation for the original command:
