Jump to content
From ArchWiki

MinIO offers high-performance, S3 compatible object storage.

## Installation

Install the minio package. The minio-client is optional.

## Configuration

The configuration file is located in `/etc/minio/minio.conf`.

### Credentials

Uncomment `MINIO_ROOT_USER` and `MINIO_ROOT_PASSWORD` and set them to a value of your choice.

Warning: If `MINIO_ROOT_USER` and `MINIO_ROOT_PASSWORD` are not modified, the default login/password will be `minioadmin/minioadmin`.

### Single server with 1 disk

The default configuration will start a single server with a single disk. MinIO objects will be stored in `/srv/minio/data`. Change the value of `MINIO_VOLUMES` to update the path.

`MINIO_OPTS` might contains extra parameters that will be given to the MinIO server when started.

Start MinIO by starting `minio.service`. Check that MinIO has been started by checking the service's unit status; example output is as follows:

    minio[1234]: You are running an older version of MinIO released 1 month ago
    minio[1234]: Update: Run `mc admin update`
    minio[1234]: API: http://192.168.0.1:9000  http://127.0.0.1:9000
    minio[1234]: Console: http://192.168.0.1:43831 http://127.0.0.1:43831
    minio[1234]: Documentation: https://docs.min.io
    minio[1234]: WARNING: Console endpoint is listening on a dynamic port (43831), please use --console-address ":PORT" to choose a static port.
    minio[1234]: WARNING: Detected default credentials 'minioadmin:minioadmin', we recommend that you change these values with 'MINIO_ROOT_USER' and 'MINIO_ROOT_PASSWORD' environment variables

Note: To prevent MinIO from listening on every interface, add `--address 192.168.0.1:9123` to `MINIO_OPTS` to set the IP address and the port MinIO has to use.

### Single server with 4 disks

Edit `etc/minio/minio.conf`:

    MINIO_VOLUMES="/srv/minio/data{0...3}"

or

    MNIO_VOLUMES="/srv/minio/foobar /srv/minio/barfoo /srv/minio/faabor /srv/minio/borfaa"

Start `minio.service`. Verify that MinIO is running by checking its unit status; example output is as follows:

    ● minio.service - Minio
         Loaded: loaded (/etc/systemd/system/minio.service; disabled; vendor preset: disabled)
         Active: active (running) since Fri 2021-10-29 18:28:12 CEST; 2s ago
           Docs: https://docs.minio.io
        Process: 123 ExecStartPre=/bin/bash -c { [ -z "${MINIO_VOLUMES}" ] && echo "Variable MINIO_VOLUMES not set in /etc/minio/minio.conf" && exit 1; } == true (code=exited, status=0/SUCCESS
       Main PID: 124 (minio)
          Tasks: 15 (limit: 18994)
         Memory: 90.0M
            CPU: 673ms
         CGroup: /system.slice/minio.service
                 └─123 /usr/bin/minio server --address 192.168.0.1:9000 --console-address localhost:7890 /srv/minio/foobar /srv/minio/barfoo /srv/minio/faabor /srv/minio/borfaa

    systemd[1]: Starting Minio...
    systemd[1]: Started Minio.
    minio[124]:  You are running an older version of MinIO released 1 month ago
    minio[124]:  Update: Run `mc admin update`
    minio[124]: Automatically configured API requests per node based on available memory on the system: 104
    minio[124]: Status:         4 Online, 0 Offline.
    minio[124]: API: http://192.168.0.1:9000
    minio[124]: Console: http://localhost:7890
    minio[124]: Documentation: https://docs.min.io

Warning: The number of volumes per server cannot be increased after MinIO is started.
Category:

- Clustered file systems