MinIO安装脚本在Ubuntu上的使用方法
导读:Ubuntu 上 MinIO 安装脚本使用指南 一 脚本选型与准备 选择安装方式: APT 仓库安装:便于后续升级与系统化管理,适合长期使用。 二进制安装:不依赖仓库,部署灵活,适合离线或受限环境。 准备要点: 架构需匹配(常见为...
Ubuntu 上 MinIO 安装脚本使用指南
一 脚本选型与准备
- 选择安装方式:
- APT 仓库安装:便于后续升级与系统化管理,适合长期使用。
- 二进制安装:不依赖仓库,部署灵活,适合离线或受限环境。
- 准备要点:
- 架构需匹配(常见为 x86_64/AMD64),脚本中下载链接需对应架构。
- 建议提前规划数据与配置目录(如 /data/minio、/etc/minio),并准备强密码的 MINIO_ROOT_USER / MINIO_ROOT_PASSWORD。
- 开放防火墙端口:9000(S3 API)与 9001(控制台),或按需仅开放内网访问。
二 一键安装脚本 APT 仓库版
- 功能:安装依赖、导入 GPG、添加仓库、安装 MinIO、创建目录与用户、注册并启动 systemd 服务(默认 9000/9001)。
- 使用步骤:
- 保存为 install-minio-apt.sh
- 赋予执行权限:chmod +x install-minio-apt.sh
- 以具有 sudo 权限的用户执行:sudo ./install-minio-apt.sh
#!/usr/bin/env bash
set -Eeuo pipefail
# ======= 用户可配置项 =======
MINIO_ROOT_USER="${
MINIO_ROOT_USER:-admin}
"
MINIO_ROOT_PASSWORD="${
MINIO_ROOT_PASSWORD:-YourStrongP@ssw0rd}
"
MINIO_DATA_DIR="${
MINIO_DATA_DIR:-/data/minio}
"
MINIO_CONFIG_DIR="${
MINIO_CONFIG_DIR:-/etc/minio}
"
MINIO_PORT="${
MINIO_PORT:-9000}
"
MINIO_CONSOLE_PORT="${
MINIO_CONSOLE_PORT:-9001}
"
# ============================
if [ "$(id -u)" -ne 0 ];
then
echo "请使用 root 或 sudo 执行此脚本。"
exit 1
fi
echo "1) 安装依赖..."
apt-get update
apt-get install -y --no-install-recommends \
wget curl gnupg2 lsb-release ca-certificates
echo "2) 导入 MinIO GPG 密钥并添加 APT 仓库..."
wget -qO - https://dl.min.io/server/minio/release/linux-amd64/minio-release.gpg.key \
| gpg --dearmor | tee /usr/share/keyrings/minio-archive-keyring.gpg >
/dev/null
echo "deb [signed-by=/usr/share/keyrings/minio-archive-keyring.gpg] https://dl.min.io/server/minio/release/ubuntu/ $(lsb_release -sc) main" \
| tee /etc/apt/sources.list.d/minio.list >
/dev/null
apt-get update
apt-get install -y minio
echo "3) 创建系统用户与目录..."
groupadd -r minio 2>
/dev/null || true
id -u minio &
>
/dev/null || useradd -r -g minio -s /usr/sbin/nologin minio
mkdir -p "$MINIO_DATA_DIR" "$MINIO_CONFIG_DIR"
chown -R minio:minio "$MINIO_DATA_DIR" "$MINIO_CONFIG_DIR"
chmod 750 "$MINIO_DATA_DIR" "$MINIO_CONFIG_DIR"
echo "4) 写入环境变量文件 /etc/default/minio ..."
cat >
/etc/default/minio <
<
EOF
MINIO_ROOT_USER=$MINIO_ROOT_USER
MINIO_ROOT_PASSWORD=$MINIO_ROOT_PASSWORD
MINIO_VOLUMES="$MINIO_DATA_DIR"
MINIO_OPTS="--address :$MINIO_PORT --console-address :$MINIO_CONSOLE_PORT"
EOF
echo "5) 注册并启动 systemd 服务..."
systemctl daemon-reload
systemctl enable --now minio
echo "✅ 安装完成:"
echo " 数据目录:$MINIO_DATA_DIR"
echo " 配置目录:$MINIO_CONFIG_DIR"
echo " 控制台地址:http://$(hostname -I | awk '{
print $1}
'):$MINIO_CONSOLE_PORT"
echo " 默认账号:$MINIO_ROOT_USER"
echo " 请使用强密码并尽快修改默认凭据。"
- 说明:
- 采用 GPG 密钥环方式导入,更契合较新 Ubuntu 的 APT 安全策略。
- 服务环境变量采用 /etc/default/minio 方式管理,便于维护与审计。
三 一键安装脚本 二进制版
- 功能:下载 MinIO 二进制、创建用户与目录、注册 systemd 服务(默认 9000/9001)。
- 使用步骤:
- 保存为 install-minio-binary.sh
- 赋予执行权限:chmod +x install-minio-binary.sh
- 以具有 sudo 权限的用户执行:sudo ./install-minio-binary.sh
#!/usr/bin/env bash
set -Eeuo pipefail
# ======= 用户可配置项 =======
MINIO_ROOT_USER="${
MINIO_ROOT_USER:-admin}
"
MINIO_ROOT_PASSWORD="${
MINIO_ROOT_PASSWORD:-YourStrongP@ssw0rd}
"
MINIO_BIN_DIR="${
MINIO_BIN_DIR:-/usr/local/bin}
"
MINIO_DATA_DIR="${
MINIO_DATA_DIR:-/data/minio}
"
MINIO_CONFIG_DIR="${
MINIO_CONFIG_DIR:-/etc/minio}
"
MINIO_PORT="${
MINIO_PORT:-9000}
"
MINIO_CONSOLE_PORT="${
MINIO_CONSOLE_PORT:-9001}
"
MINIO_VERSION="${
MINIO_VERSION:-RELEASE.2025-04-22T22-12-19Z}
" # 按需调整版本
# ============================
if [ "$(id -u)" -ne 0 ];
then
echo "请使用 root 或 sudo 执行此脚本。"
exit 1
fi
echo "1) 安装依赖..."
apt-get update
apt-get install -y --no-install-recommends wget curl ca-certificates
echo "2) 创建系统用户与目录..."
groupadd -r minio 2>
/dev/null || true
id -u minio &
>
/dev/null || useradd -r -g minio -s /usr/sbin/nologin minio
mkdir -p "$MINIO_DATA_DIR" "$MINIO_CONFIG_DIR"
chown -R minio:minio "$MINIO_DATA_DIR" "$MINIO_CONFIG_DIR"
chmod 750 "$MINIO_DATA_DIR" "$MINIO_CONFIG_DIR"
echo "3) 下载并安装 MinIO 二进制..."
MINIO_URL="https://dl.min.io/server/minio/release/linux-amd64/minio"
[ -n "${
MINIO_VERSION:-}
" ] &
&
MINIO_URL="https://dl.min.io/server/minio/release/linux-amd64/archive/${
MINIO_VERSION}
"
wget -q --show-progress -O "$MINIO_BIN_DIR/minio" "$MINIO_URL"
chmod +x "$MINIO_BIN_DIR/minio"
echo "4) 注册 systemd 服务..."
cat >
/etc/systemd/system/minio.service <
<
EOF
[Unit]
Description=MinIO Object Storage Server
Documentation=https://docs.min.io
Wants=network-online.target
After=network-online.target
[Service]
User=minio
Group=minio
Environment="MINIO_ROOT_USER=$MINIO_ROOT_USER"
Environment="MINIO_ROOT_PASSWORD=$MINIO_ROOT_PASSWORD"
Environment="MINIO_ADDRESS=:$MINIO_PORT"
Environment="MINIO_CONSOLE_ADDRESS=:$MINIO_CONSOLE_PORT"
ExecStart=$MINIO_BIN_DIR/minio server "$MINIO_DATA_DIR" --config-dir "$MINIO_CONFIG_DIR"
Restart=always
RestartSec=5
LimitNOFILE=65536
[Install]
WantedBy=multi-user.target
EOF
echo "5) 启动服务..."
systemctl daemon-reload
systemctl enable --now minio
echo "✅ 安装完成:"
echo " 二进制:$MINIO_BIN_DIR/minio"
echo " 数据目录:$MINIO_DATA_DIR"
echo 控制台地址:http://$(hostname -I | awk '{
print $1}
'):$MINIO_CONSOLE_PORT"
echo " 默认账号:$MINIO_ROOT_USER"
- 说明:
- 二进制方式不依赖 APT,适合离线环境;如需固定版本,设置 MINIO_VERSION 即可。
四 运行验证与常见问题
- 验证与登录:
- 查看服务状态:sudo systemctl status minio
- 放行防火墙:sudo ufw allow 9000,9001/tcp 或按需仅内网放行
- 访问控制台:http://服务器IP:9001,使用脚本中设置的 MINIO_ROOT_USER / MINIO_ROOT_PASSWORD 登录
- 健康检查:curl -I http://服务器IP:9000
- 常见问题与处理:
- 端口被占用:修改脚本中的 MINIO_PORT / MINIO_CONSOLE_PORT,并确保防火墙与云安全组已放行新端口
- 权限错误:确认 /data/minio /etc/minio 属主为 minio:minio,目录权限为 750
- 忘记或弱口令:立即修改为强密码,并遵循最小权限原则配置访问策略
- APT 签名报错:确保使用 GPG 密钥环方式导入,或切换为二进制安装方式
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: MinIO安装脚本在Ubuntu上的使用方法
本文地址: https://pptw.com/jishu/771851.html
