Quick Start
Install RustFS with the one-click script, log in to the Console, and store your first object — in about ten minutes.
This guide takes you from an empty Linux server to a working RustFS instance: install, log in to the Console, create a bucket, and upload your first object. Production planning (multi-node layout, hardware sizing) is deliberately left for the next step.
Prerequisites
- A Linux server (x86_64 or aarch64) with
systemd, and root or sudo access unzipinstalled, and outbound network access to download the package- Ports
9000(S3 API) and9001(Console) reachable from your machine rcinstalled on your workstation for the command-line verification workflow
Install and start RustFS
Run the official installation script:
curl -O https://rustfs.com/install_rustfs.sh && bash install_rustfs.shThe script installs the binary to /usr/local/bin/rustfs, registers a rustfs systemd service, and starts it. By default it stores data in /data/rustfs0 and listens on port 9000 (S3 API) and 9001 (Console); the data path and ports can be adjusted during installation. On success it prints a summary like:
RustFS has been installed and started successfully!
Service port: 9000, Console port: 9001, Data directory: /data/rustfs0
[SECURITY WARNING] Please change the default value for RUSTFS_ACCESS_KEY/RUSTFS_SECRET_KEY immediately ...
Config file: /etc/default/rustfsSet your credentials
The generated config file ships placeholder credentials. Set your own access key and secret key, then restart the service:
RUSTFS_ACCESS_KEY=<your-access-key>
RUSTFS_SECRET_KEY=<your-secret-key> ; e.g. output of: openssl rand -base64 24Use an uppercase alphanumeric access key. Do not use unmodified Base64 output for RUSTFS_ACCESS_KEY, because Base64 can contain /, which conflicts with the AWS Signature Version 4 credential scope. See Credential Management for details.
sudo systemctl restart rustfs
sudo systemctl status rustfs --no-pager # should report: active (running)Do not keep default credentials
If RUSTFS_ACCESS_KEY / RUSTFS_SECRET_KEY are not set, the server falls back to the built-in default rustfsadmin / rustfsadmin — acceptable for a throwaway local test, never for anything reachable by others.
Log in to the Console
Open http://<server-ip>:9001 in your browser and sign in with the access key and secret key from step 2.

Create a bucket and upload a file
- In the Console home page, select Create Bucket, name it (for example
my-bucket), and confirm. - Open the bucket and use the upload action to add any local file.
- Click the uploaded object to view its details — you have a working object store.
Prefer the command line? Configure rc, then perform the same operations:
rc alias set rustfs http://<server-ip>:9000 <your-access-key> <your-secret-key>
rc bucket create rustfs/my-bucket
rc object copy /path/to/hello.txt rustfs/my-bucket/hello.txt
rc object list rustfs/my-bucket✓ Bucket 'rustfs/my-bucket' created successfully.
/path/to/hello.txt -> rustfs/my-bucket/hello.txtNext steps
The quick install runs RustFS in Single Node Single Disk (SNSD) mode — zero redundancy, right for evaluation and development. Where to go from here:
- Plan a production deployment — choose a topology, then follow its guide:
- Single Node Single Disk (SNSD) — dev and small workloads
- Single Node Multiple Disk (SNMD) — disk-level fault tolerance on one machine
- Multiple Node Multiple Disk (MNMD) — production-grade availability and scale, with the pre-installation checklists
- Prefer containers? — Install with a container
- Connect your application — SDKs and examples