Linux MinIO安装脚本使用方法
一 准备与下载
二 一键安装脚本示例
#!/usr/bin/env bash
set -Eeuo pipefail
# 0) 可配置参数
MINIO_USER="${MINIO_USER:-admin}"
MINIO_PASS="${MINIO_PASS:-YourStrongP@ssw0rd}"
DATA_DIR="${DATA_DIR:-/data/minio}"
BIN_DIR="/usr/local/bin"
SERVICE_USER="${SERVICE_USER:-minio}"
# 1) 环境检查与依赖
if ! command -v wget >/dev/null 2>&1 && ! command -v curl >/dev/null 2>&1; then
echo "请先安装 wget 或 curl"
exit 1
fi
# 2) 创建用户与数据目录
if ! id "$SERVICE_USER" &>/dev/null; then
useradd --system --home-dir "$DATA_DIR" --shell /usr/sbin/nologin "$SERVICE_USER"
fi
mkdir -p "$DATA_DIR"
chown -R "$SERVICE_USER:$SERVICE_USER" "$DATA_DIR"
# 3) 下载并安装 MinIO 二进制
MINIO_URL="https://dl.min.io/server/minio/release/linux-amd64/minio"
if command -v wget >/dev/null 2>&1; then
wget -q -O "$BIN_DIR/minio" "$MINIO_URL"
else
curl -s -o "$BIN_DIR/minio" "$MINIO_URL"
fi
chmod +x "$BIN_DIR/minio"
# 4) 创建 systemd 服务
cat >/etc/systemd/system/minio.service <<'EOF'
[Unit]
Description=MinIO Object Storage
Documentation=https://docs.min.io
Wants=network-online.target
After=network-online.target
[Service]
Type=notify
User=%i
Group=%i
Environment="MINIO_ROOT_USER=%i"
Environment="MINIO_ROOT_PASSWORD_FILE=/etc/minio/minio-root-password"
ExecStart=%i server --address ":9000" --console-address ":9001" %S_DATA_DIR%
Restart=always
LimitNOFILE=65536
# 安全加固(可按需调整)
ProtectKernelTunables=yes
ProtectKernelModules=yes
ProtectControlGroups=yes
RestrictAddressFamilies=AF_INET AF_INET6
RestrictNamespaces=yes
RestrictRealtime=yes
SystemCallFilter=@system-service
NoNewPrivileges=yes
[Install]
WantedBy=multi-user.target
EOF
# 将密码写入受保护文件
mkdir -p /etc/minio
echo "$MINIO_PASS" > /etc/minio/minio-root-password
chown "$SERVICE_USER:$SERVICE_USER" /etc/minio/minio-root-password
chmod 600 /etc/minio/minio-root-password
# 5) 启用并启动服务
systemctl daemon-reload
systemctl enable --now minio.service
echo "MinIO 已安装并启动:"
echo " 服务状态: systemctl status minio"
echo " API: http://$(hostname -I | awk '{print $1}'):9000"
echo " 控制台: http://$(hostname -I | awk '{print $1}'):9001"
echo " 数据目录: $DATA_DIR"
echo " 运行用户: $SERVICE_USER"
chmod +x install_minio.sh
sudo ./install_minio.sh
三 常用操作与验证
sudo systemctl start minio # 启动
sudo systemctl stop minio # 停止
sudo systemctl restart minio # 重启
sudo systemctl status minio # 查看状态
sudo systemctl enable minio # 开机自启
minio --version
curl -I http://127.0.0.1:9000/minio/health/live
四 分布式部署与注意事项