在开始安装前,需确保系统为最新状态并安装必要工具:
# 更新系统包
sudo yum update -y
# 安装wget(用于下载文件)
sudo yum install -y wget
从MinIO官方网站下载适用于Linux AMD64架构的最新二进制文件(约100MB):
wget https://dl.min.io/server/minio/release/linux-amd64/minio
为确保安全,创建专用系统用户(minio-user)及用户组(minio-group),并将MinIO数据目录的所有权赋予该用户:
# 创建minio用户组(-r表示系统组)
sudo groupadd -r minio-group
# 创建minio用户(-r表示系统用户,-s /sbin/nologin禁止登录)
sudo useradd -r -g minio-group -s /sbin/nologin minio-user
# 创建数据存储目录(建议使用独立分区,避免磁盘空间不足影响服务)
sudo mkdir -p /data/minio
# 修改目录所有权(归属minio-user用户及minio-group组)
sudo chown -R minio-user:minio-group /data/minio
# 设置目录权限(用户拥有读写执行权限)
sudo chmod -R u+rwx /data/minio
将下载的minio文件移动至/usr/local/bin/(系统全局可执行路径),并赋予执行权限:
# 移动文件(需root权限)
sudo mv minio /usr/local/bin/
# 赋予执行权限
sudo chmod +x /usr/local/bin/minio
通过/etc/default/minio文件定义MinIO启动时的关键参数(如数据目录、访问密钥),避免硬编码在服务文件中:
# 创建或覆盖环境变量配置文件
sudo tee /etc/default/minio > /dev/null << 'EOF'
# MinIO数据存储路径(必须设置,指向已存在的目录)
MINIO_VOLUMES="/data/minio"
# MinIO管理员账号(生产环境务必修改,默认minioadmin存在安全风险)
MINIO_ROOT_USER="your_secure_access_key" # 替换为自定义强密码(如包含大小写字母、数字、符号)
# MinIO管理员密码(生产环境务必修改,默认minioadmin存在安全风险)
MINIO_ROOT_PASSWORD="your_very_strong_secret_key" # 替换为自定义强密码
# MinIO控制台端口(默认9001,可根据需求调整)
MINIO_CONSOLE_ADDRESS=":9001"
EOF
通过Systemd管理MinIO服务,实现开机自启、故障自动重启等生产级特性:
# 创建MinIO服务文件
sudo vim /etc/systemd/system/minio.service
粘贴以下内容(需根据实际情况调整User、Group及EnvironmentFile路径):
[Unit]
Description=MinIO Server
Documentation=https://docs.min.io
After=network.target
[Service]
# 指定运行服务的用户及组(需与数据目录所有权一致)
User=minio-user
Group=minio-group
# 加载环境变量文件(包含MINIO_VOLUMES、MINIO_ROOT_USER等参数)
EnvironmentFile=/etc/default/minio
# 启动MinIO服务器($MINIO_OPTS为可选参数,$MINIO_VOLUMES为必填参数)
ExecStart=/usr/local/bin/minio server $MINIO_OPTS $MINIO_VOLUMES
# 故障重启策略(on-failure表示非正常退出时重启,RestartSec=5表示等待5秒后重启)
Restart=on-failure
RestartSec=5
[Install]
WantedBy=multi-user.target
执行以下命令启动服务并设置开机自启:
# 重新加载Systemd配置(使新服务文件生效)
sudo systemctl daemon-reload
# 启动MinIO服务
sudo systemctl start minio
# 设置开机自启(系统重启后自动启动MinIO)
sudo systemctl enable minio
# 检查服务状态(确认服务运行正常,Active: active (running))
sudo systemctl status minio
通过MinIO官方命令行工具mc(MinIO Client)验证服务是否可达:
# 下载mc工具(Linux amd64版本)
wget https://dl.min.io/client/mc/release/linux-amd64/mc
# 解压mc工具(去除版本号,方便使用)
unzip mc -d /usr/local/bin/
# 赋予执行权限
sudo chmod +x /usr/local/bin/mc
# 配置mc连接到MinIO服务器(别名设为"myminio",替换为你的服务器IP)
./mc alias set myminio http://localhost:9000 your_secure_access_key your_very_strong_secret_key
# 列出MinIO中的存储桶(若返回空列表,说明连接成功)
./mc ls myminio
MINIO_ROOT_USER和MINIO_ROOT_PASSWORD设置为强密码(避免使用minioadmin默认值),防止未授权访问。firewalld),需开放MinIO服务端口(默认9000为API端口,9001为控制台端口):sudo firewall-cmd --permanent --add-port=9000/tcp
sudo firewall-cmd --permanent --add-port=9001/tcp
sudo firewall-cmd --reload
/data/minio目录(包含所有对象数据),建议使用异地备份或云存储服务。通过以上步骤,你已在CentOS系统上成功部署了MinIO单机服务,可用于对象存储、静态网站托管等场景。如需搭建高可用集群,可参考MinIO官方文档集群部署指南。