调试 Linux 上的 MinIO 可以从日志、运行方式、配置、网络、权限、客户端工具几个方面入手。下面按常见场景给你一套实用方法。
journalctl -u minio -f
或查看指定时间:
journalctl -u minio --since "10 min ago"
日志会直接输出到终端:
minio server /data --console-address ":9001"
建议重定向日志:
minio server /data > /var/log/minio.log 2>&1 &
export MINIO_LOG_LEVEL=debug
minio server /data
或:
MINIO_LOG_LEVEL=debug minio server /data
MINIO_LOG_TRACE=on minio server /data
ss -lntp | grep minio
# 或
netstat -lntp | grep 9000
常见端口:
MinIO 强烈依赖环境变量,常见文件:
/etc/default/minio
或
/etc/systemd/system/minio.service
重点检查:
MINIO_ROOT_USER=admin
MINIO_ROOT_PASSWORD=admin123
MINIO_VOLUMES=/data
MINIO_OPTS="--console-address :9001"
修改后:
systemctl daemon-reload
systemctl restart minio
ls -ld /data
chown -R minio:minio /data
chmod 755 /data
getenforce
setenforce 0 # 临时关闭测试
或放行:
semanage fcontext -a -t minio_data_t "/data(/.*)?"
restorecon -Rv /data
wget https://dl.min.io/client/mc/release/linux-amd64/mc
chmod +x mc
mv mc /usr/local/bin/
mc alias set local http://127.0.0.1:9000 admin admin123
mc ls local
mc --debug ls local
| 现象 | 可能原因 |
|---|---|
| 启动失败 | 数据目录不存在 / 权限错误 |
| 网页打不开 | 未指定 --console-address |
| 登录失败 | root 用户/密码错误 |
| 客户端连不上 | 防火墙 / 端口未监听 |
| 单节点变只读 | 磁盘满或 inode 满 |
| 上传慢 | 磁盘 IO / 网络问题 |
df -h /data
df -i /data
dmesg | tail
如果你愿意,可以把具体错误信息或启动日志贴出来,我可以直接帮你定位是哪一类问题(配置 / 权限 / 网络 / 磁盘)。