sudo命令;# 更新系统包列表
sudo apt update && sudo apt upgrade -y
# 导入MinIO官方GPG密钥(确保软件包来源可信)
wget -qO - https://dl.min.io/server/minio/release/linux-amd64/minio-release.gpg | sudo apt-key add -
# 添加MinIO APT仓库(适配Ubuntu版本,如bionic=18.04、focal=20.04)
sudo add-apt-repository "deb https://dl.min.io/server/minio/release/ubuntu $(lsb_release -cs) main"
# 再次更新包列表以包含MinIO仓库
sudo apt update
# 安装MinIO服务器
sudo apt install -y minio
# 下载MinIO二进制文件(Linux amd64架构,替换为最新版本链接)
wget https://dl.min.io/server/minio/release/linux-amd64/minio
# 赋予执行权限
chmod +x minio
# 移动至系统PATH路径(方便全局调用)
sudo mv minio /usr/local/bin/
# 创建数据存储目录(用于存放对象数据)
sudo mkdir -p /data/minio
# 安装Snap(若未安装)
sudo apt install -y snapd
# 启用Snap商店
sudo snap refresh
# 通过Snap安装MinIO(--classic模式授予系统访问权限)
sudo snap install minio --classic
启动MinIO时通过命令行参数指定数据目录、监听端口及控制台地址:
# 启动MinIO服务(数据目录:/data/minio;HTTP监听:9000;控制台:9099)
sudo minio server /data/minio --console-address ":9099"
/data/minio:数据持久化目录(需提前创建并赋予权限sudo chown -R $USER:$USER /data/minio);--console-address ":9099":控制台Web界面端口(默认9000,可修改为其他端口)。通过配置文件实现参数持久化,避免每次启动都输入命令行参数:
# 编辑系统级环境配置文件(设置访问密钥、数据目录等)
sudo nano /etc/default/minio
写入以下内容(按需修改):
MINIO_VOLUMES="/data/minio" # 数据存储目录
MINIO_OPTS="--address :9000 --console-address :9099" # 监听端口
MINIO_ACCESS_KEY="your-access-key" # 自定义访问密钥(强密码)
MINIO_SECRET_KEY="your-secret-key" # 自定义秘密密钥(强密码)
MINIO_REGION="cn-north-1" # 区域标识(可选)
# 创建Systemd服务文件(管理MinIO服务生命周期)
sudo nano /etc/systemd/system/minio.service
写入以下内容:
[Unit]
Description=MinIO Server
Documentation=https://docs.min.io
Wants=network-online.target
After=network-online.target
AssertFileIsExecutable=/usr/local/bin/minio
[Service]
WorkingDirectory=/usr/local
ProtectProc=invisible
EnvironmentFile=/etc/default/minio
ExecStartPre=/bin/bash -c "if [ -z \"${MINIO_VOLUMES}\" ]; then echo \"Variable MINIO_VOLUMES not set in /etc/default/minio\"; exit 1; fi"
ExecStart=/usr/local/bin/minio server $MINIO_OPTS $MINIO_VOLUMES
Restart=always
LimitNOFILE=1048576
TasksMax=infinity
DisableTimeout=true
[Install]
WantedBy=multi-user.target
# 重新加载Systemd配置(使服务文件生效)
sudo systemctl daemon-reload
# 启动MinIO服务
sudo systemctl start minio
# 设置开机自启(避免服务器重启后服务停止)
sudo systemctl enable minio
# 检查服务状态(确认运行正常)
sudo systemctl status minio
active (running)则表示服务已成功启动。打开浏览器,输入以下地址访问MinIO Web管理界面:
http://<your-server-ip>:9099
minioadmin(若未修改配置文件中的MINIO_ACCESS_KEY);minioadmin(若未修改配置文件中的MINIO_SECRET_KEY)。my-bucket)并设置权限;mc)实现高效管理:# 下载并安装mc
wget https://dl.min.io/client/mc/release/linux-amd64/mc
chmod +x mc
sudo mv mc /usr/local/bin/
# 配置mc别名(关联MinIO服务器)
mc alias set myminio http://<your-server-ip>:9000 your-access-key your-secret-key
# 列出存储桶
mc ls myminio/
避免使用默认的minioadmin账号,通过命令行修改:
# 删除默认用户(可选)
minio admin user remove minioadmin minioadmin
# 添加新用户(替换为强密码)
minio admin user add myuser mypassword123
# 授予用户所有存储桶权限
minio admin policy set myminio user=myuser readwrite
通过SSL证书实现数据传输加密(需提前获取证书文件,如minio.crt和minio.key):
# 生成自签名证书(仅测试用,生产环境需使用CA颁发的证书)
openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout ~/minio.key -out ~/minio.crt
# 启动MinIO时启用HTTPS
sudo minio server /data/minio --console-address ":9099" --certs-dir ~/certs
minio.crt和minio.key存放在~/certs目录下(需提前创建)。允许MinIO端口通过防火墙(以ufw为例):
# 允许HTTP(9000)和控制台(9099)端口
sudo ufw allow 9000/tcp
sudo ufw allow 9099/tcp
# 启用防火墙(若未启用)
sudo ufw enable
# 检查防火墙状态
sudo ufw status
sudo chown -R $USER:$USER /data/minio)或查看日志(journalctl -u minio -f);MINIO_CONSOLE_ADDRESS配置是否正确;通过以上步骤,您已完成MinIO在Ubuntu上的安装与配置,可根据实际需求扩展集群(多节点部署)或集成CDN、对象存储网关等功能。