在 CentOS 上安装 MinIO 时,有几个常见坑和注意点,下面按「部署方式 + 关键注意事项」给你总结一下。
适合生产环境,简单可控。
wget https://dl.min.io/server/minio/release/linux-amd64/minio
chmod +x minio
mv minio /usr/local/bin/
启动示例:
minio server /data/minio --console-address ":9001"
docker run -d \
-p 9000:9000 -p 9001:9001 \
-v /data/minio:/data \
minio/minio server /data --console-address ":9001"
⚠️ 注意:
/data/minio 目录权限要是 minio 用户能写CentOS 默认开 firewalld:
firewall-cmd --permanent --add-port=9000/tcp
firewall-cmd --permanent --add-port=9001/tcp
firewall-cmd --reload
否则浏览器打不开控制台。
如果访问不了或 MinIO 启动失败:
临时关闭测试:
setenforce 0
生产建议做法:
setsebool -P container_manage_cgroup on
semanage fcontext -a -t container_file_t "/data/minio(/.*)?"
restorecon -Rv /data/minio
或直接允许:
setenforce 0
sed -i 's/SELINUX=enforcing/SELINUX=permissive/' /etc/selinux/config
MinIO 不能 root 运行(新版本)
创建专用用户:
useradd -s /sbin/nologin minio
mkdir -p /data/minio
chown -R minio:minio /data/minio
echo "* soft nofile 65535" >> /etc/security/limits.conf
echo "* hard nofile 65535" >> /etc/security/limits.conf
示例 /etc/systemd/system/minio.service:
[Unit]
Description=MinIO
After=network.target
[Service]
User=minio
Group=minio
ExecStart=/usr/local/bin/minio server /data/minio --console-address ":9001"
Restart=always
[Install]
WantedBy=multi-user.target
systemctl daemon-reload
systemctl enable --now minio
查看 GLIBC:
ldd --version
| 问题 | 原因 |
|---|---|
| 启动报错 permission denied | 目录权限 / SELinux |
| 浏览器打不开 | 防火墙 |
| 客户端连不上 | 端口 / 安全组 |
| 上传大文件失败 | nofile 限制 |
| root 启动被拒绝 | MinIO 新版本限制 |
如果你告诉我:
我可以给你一套直接能用的完整配置。