Minio Linux 安装 systemctl启动配置

在 Linux 系统中,使用 systemctl 来管理 MinIO 服务是一种常见的方式。以下是配置 MinIO 使用 systemctl 启动的步骤:

1. 安装 MinIO

确保你已经下载并安装了 MinIO 二进制文件。例如:

bash 复制代码
wget https://dl.min.io/server/minio/release/linux-amd64/minio
chmod +x minio
sudo mv minio /usr/local/bin/

2. 创建 MinIO 配置目录和数据目录

创建用于存储 MinIO 配置和数据的目录:

bash 复制代码
sudo mkdir -p /etc/minio
sudo mkdir -p /var/lib/minio

将这些目录的权限设置为 MinIO 用户(如果需要,可以创建一个专用用户):

bash 复制代码
sudo useradd -r minio-user
sudo chown -R minio-user:minio-user /etc/minio /var/lib/minio

3. 创建环境变量文件

创建一个环境变量文件 /etc/default/minio,用于存储 MinIO 的配置参数:

bash 复制代码
sudo nano /etc/default/minio

添加以下内容(根据你的需求修改路径和参数):

bash 复制代码
MINIO_ROOT_USER=minioadmin
MINIO_ROOT_PASSWORD=minioadmin
MINIO_VOLUMES="/var/lib/minio/"
MINIO_OPTS="--address :9000 --console-address :9001"
  • MINIO_ROOT_USER 和 MINIO_ROOT_PASSWORD 是访问 MinIO 的管理员账户和密码。
  • MINIO_VOLUMES 指定存储桶数据的路径。
  • MINIO_OPTS 中的 --address 和 --console-address 分别指定 API 和控制台的监听地址。
    保存并退出。

4. 创建 Systemd 服务文件

创建 MinIO 的 systemd 服务文件:

bash 复制代码
sudo nano /etc/systemd/system/minio.service

添加以下内容:

ini 复制代码
[Unit]
Description=MinIO
Documentation=https://docs.min.io
Wants=network-online.target
After=network-online.target

[Service]
User=minio-user
Group=minio-user
WorkingDirectory=/var/lib/minio/
EnvironmentFile=/etc/default/minio
ExecStart=/usr/local/bin/minio server $MINIO_OPTS $MINIO_VOLUMES
Restart=always
RestartSec=3
LimitNOFILE=65536

[Install]
WantedBy=multi-user.target

保存并退出。

5. 重新加载 Systemd 配置

运行以下命令以重新加载 systemd 配置:

bash 复制代码
sudo systemctl daemon-reload

6. 启动并启用 MinIO 服务

启动 MinIO 服务:

bash 复制代码
sudo systemctl start minio

设置开机自启:

bash 复制代码
sudo systemctl enable minio

7. 检查服务状态

检查 MinIO 服务的状态:

bash 复制代码
sudo systemctl status minio

如果一切正常,你应该看到类似以下的输出:

bash 复制代码
● minio.service - MinIO
   Loaded: loaded (/etc/systemd/system/minio.service; enabled; vendor preset: enabled)
   Active: active (running) since ...

8. 访问 MinIO 控制台

默认情况下,MinIO 的 Web 控制台可以通过 http://<服务器IP>:9001 访问,API 服务则通过 http://<服务器IP>:9000 访问。

登录时使用你在环境变量文件中设置的 MINIO_ROOT_USER 和 MINIO_ROOT_PASSWORD。

9. 常见问题排查

  • 端口冲突:确保 9000 和 9001 端口未被其他服务占用。
  • 权限问题:确保 minio-user 对相关目录有读写权限。
  • 日志查看:如果服务启动失败,可以通过以下命令查看日志:
bash 复制代码
sudo journalctl -u minio

完成以上步骤后,MinIO 应该已经成功配置为通过 systemctl 启动的服务,并且可以在系统重启后自动运行。

相关推荐
Jason_chen22 分钟前
Linux 6.2 音频机制深度解析:AI驱动的低延迟音频与零信任音频安全架构
linux
下午写HelloWorld26 分钟前
Linux系统及Ubuntu常用指令
linux·ubuntu·操作系统
lizhihai_991 小时前
股市学习心得-AI 产业链核心标的梳理清单
大数据·服务器·人工智能·科技·学习
云计算磊哥@2 小时前
运维开发宝典026-MySQL02数据库表操作
运维·数据库·运维开发
weixin_523185322 小时前
Collections.unmodifiableMap详解:真的不可修改吗?
java·linux·前端
黄同学real2 小时前
解决 Visual Studio Web Deploy 远程发布报 401 未授权 (ERROR\_USER\_UNAUTHORIZED)
服务器
天天进步20152 小时前
Tunnelto 源码解析 #9:控制服务器设计:Warp、WebSocket、Ping/Pong 与连接保活
运维·服务器·websocket
凡人叶枫3 小时前
Effective C++ 条款04:确定对象被使用前已先被初始化
java·linux·开发语言·c++·嵌入式开发
云栖梦泽3 小时前
玩转RK3506SDK
linux·嵌入式硬件
极客先躯3 小时前
高级java每日一道面试题-2026年02月01日-实战篇[Docker]-Docker Volume 的生命周期管理是怎样的?
java·运维·docker·容器·持久化·架构图·容器卷