How to Install and Configure SeaweedFS on Debian 13

SeaweedFS is a high-performance, distributed object storage system designed to handle massive amounts of small files efficiently. It provides S3-compatible APIs, replication, and a simple setup, making it an excellent open-source alternative to MinIO and other object storage solutions.

Prerequisites

  • A server running Debian 13 (Trixie) with root or sudo privileges.
  • At least 2 GB RAM and 10 GB free disk space.
  • Basic familiarity with the Linux terminal.

Update System Packages

First, update the system repositories and packages:

sudo apt update && sudo apt upgrade -y

Install Dependencies

Install essential tools required for downloading and managing SeaweedFS:

sudo apt install -y curl wget unzip

Download the Latest SeaweedFS Release

Visit the official GitHub releases page:
https://github.com/seaweedfs/seaweedfs/releases

Or use the following commands to download the latest version directly:

cd /tmp
wget https://github.com/seaweedfs/seaweedfs/releases/latest/download/linux_amd64.tar.gz

Extract the downloaded archive:

tar -xzf linux_amd64.tar.gz

Move the binary files to a global location:

sudo mv weed /usr/local/bin/

Verify the installation:

weed version

Output:

root@vps:/tmp# weed version
version 30GB 3.98 4b76b2ad3c0eaf638a52890e396abab383513085 linux amd64

Create Directories for SeaweedFS Data

Create necessary directories for storage and configuration:

sudo mkdir -p /etc/seaweedfs /var/lib/seaweedfs/master /var/lib/seaweedfs/volume
sudo chown -R $USER:$USER /etc/seaweedfs /var/lib/seaweedfs

Configure SeaweedFS

Create a configuration file for SeaweedFS:

sudo nano /etc/seaweedfs/seaweedfs.conf

Add the following content:

# SeaweedFS Configuration File

master:
  dir: /var/lib/seaweedfs/master
  port: 9333
  defaultReplication: 001

volume:
  dir: /var/lib/seaweedfs/volume
  port: 8080
  max: 5

filer:
  port: 8888
  dir: /var/lib/seaweedfs/filer
  collection: filer

Save and exit (CTRL + O, ENTER, CTRL + X).

Run SeaweedFS Manually (Test Mode)

You can start the master, volume, and filer services manually to ensure everything works.

Start the master server:

weed master -mdir=/var/lib/seaweedfs/master -defaultReplication=001 &

Start the volume server:

weed volume -dir=/var/lib/seaweedfs/volume -max=5 -mserver="localhost:9333" -port=8080 &

Start the filer server:

weed filer -master="localhost:9333" -port=8888 &

Check the web UI by visiting:

images

images

Press CTRL + C to stop the processes.

Create a Systemd Service for SeaweedFS

To ensure SeaweedFS starts automatically at boot, create a systemd service file.

sudo nano /etc/systemd/system/seaweedfs.service

Add the following configuration:

[Unit]
Description=SeaweedFS Object Storage
After=network.target

[Service]
ExecStart=/usr/local/bin/weed server -dir=/var/lib/seaweedfs -master.port=9333 -volume.port=8080 -filer
Restart=on-failure
RestartSec=5
User=root

[Install]
WantedBy=multi-user.target

Save and close the file, then enable and start the service:

sudo systemctl daemon-reload
sudo systemctl enable --now seaweedfs

Check service status:

sudo systemctl status seaweedfs

Output:

root@vps:/tmp# sudo systemctl daemon-reload
sudo systemctl enable --now seaweedfs
Created symlink '/etc/systemd/system/multi-user.target.wants/seaweedfs.service' → '/etc/systemd/system/seaweedfs.service'.
root@vps:/tmp# sudo systemctl status seaweedfs
● seaweedfs.service - SeaweedFS Object Storage
     Loaded: loaded (/etc/systemd/system/seaweedfs.service; enabled; preset: en>
     Active: activating (auto-restart) (Result: exit-code) since Wed 2025-10-29>
 Invocation: 5de0886c6f464a6cac952ae93466f484
    Process: 28454 ExecStart=/usr/local/bin/weed server -dir=/var/lib/seaweedfs>
   Main PID: 28454 (code=exited, status=255/EXCEPTION)
   Mem peak: 17M
        CPU: 170ms
lines 1-8/8 (END)

Verify SeaweedFS Web Interfaces

images

images

These interfaces will show real-time cluster information and stored files.


CrownCloud - Get a SSD powered KVM VPS at $4.5/month!
Use the code WELCOME for 10% off!

1 GB RAM / 25 GB SSD / 1 CPU Core / 1 TB Bandwidth per month

Available Locations: LAX | MIA | ATL | FRA | AMS