迁移 Linux 上的 MinIO 通常分为几种场景,取决于你是换机器、换目录、还是升级版本。下面我按最常见的 “整库迁移(数据 + 配置)” 来说明,最稳妥、最常用。
先确认你是哪种方式部署的:
本文以 Linux 二进制 + systemd 为例(最常见)。
systemctl stop minio
⚠️ 一定要停服务,否则数据可能不一致
通常启动参数里会有:
minio server /data/minio
或
MINIO_VOLUMES="/data/minio"
假设原目录是:
/data/minio
在新机器或新目录执行:
rsync -avz --delete /data/minio/ /new/data/minio/
示例(远程迁移):
rsync -avz /data/minio/ user@new-server:/data/minio/
✅ 不要只拷部分文件,MinIO 是对象存储,目录结构必须完整
常见位置:
/etc/default/minio
# 或
/etc/minio/minio.conf
内容示例:
MINIO_ROOT_USER=admin
MINIO_ROOT_PASSWORD=password
MINIO_VOLUMES="/data/minio"
MINIO_OPTS="--address :9000 --console-address :9001"
把该文件一并迁移。
wget https://dl.min.io/server/minio/release/linux-amd64/minio
chmod +x minio
mv minio /usr/local/bin/
vim /etc/systemd/system/minio.service
示例:
[Unit]
Description=MinIO
After=network.target
[Service]
User=minio
Group=minio
EnvironmentFile=/etc/default/minio
ExecStart=/usr/local/bin/minio server $MINIO_VOLUMES $MINIO_OPTS
Restart=always
[Install]
WantedBy=multi-user.target
systemctl daemon-reload
systemctl start minio
systemctl enable minio
systemctl status minio
http://IP:9001
mc 对比(高级)如果是 Docker:
docker cp minio:/data /backup/minio-data
或挂载卷直接拷贝:
rsync -avz /var/lib/docker/volumes/minio-data /new/path
❌ 不要中途重启 MinIO
❌ 不要只拷 .minio.sys 以外的文件
❌ 权限不对会导致启动失败
chown -R minio:minio /data/minio
你可以告诉我:
我可以直接给你可复制的命令方案。