别再只会用lsusb了!手把手教你用dmesg和printk调试Linux USB转串口驱动(以CDC ACM为例)
2026/5/16 10:04:48
以下是针对使用Docker部署的Halo博客(假设Halo 2.x版本,数据库为默认H2或外部MySQL)迁移到新服务器的详细方案。迁移目标是实现全站数据迁移,包括文章、评论、附件、主题、插件、配置和数据库。方案基于Halo官方文档和社区经验,确保数据完整性。适用于CentOS或其他Linux服务器。
docker stop halo以避免数据不一致。Halo官方推荐使用后台备份工具,但对于Docker,优先备份挂载卷(~/.halo2)。如果数据大,可直接打包整个卷目录。
在旧服务器上执行,确保容器停止。
停止Docker容器:
docker stop halo docker rm halo # 如果需要移除旧容器使用Halo后台备份(推荐,包含配置/附件/主题/插件):
docker start halo。/tmp/halo-backup.zip)。手动备份挂载卷(~/.halo2,整个数据目录):
cd ~ tar -czvf /tmp/halo-volume-backup.tar.gz .halo2备份外部数据库(如果使用MySQL):
halo,查看application.yaml)。mysqldump -u root -p halo > /tmp/halo.sql(替换用户/密码)。备份Docker Compose文件(如果使用):
docker-compose.yml到/tmp/。验证备份:检查文件大小,确保完整。
安装Docker:
sudo yum update -y sudo yum install -y yum-utils device-mapper-persistent-data lvm2 sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo sudo yum install -y docker-ce docker-ce-cli containerd.io sudo systemctl start docker && sudo systemctl enable docker拉取Halo镜像(使用与旧服务器相同版本):
docker pull halohub/halo:2.x.x # 替换为实际版本,如2.12.2或使用ruibaby/halo如果旧服务器是这个。
安装数据库(如果用外部MySQL):
sudo yum install -y mariadb-server sudo systemctl start mariadb && sudo systemctl enable mariadb sudo mysql_secure_installationmysql -u root -p CREATE DATABASE halo CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci; GRANT ALL ON halo.* TO 'halo_user'@'localhost' IDENTIFIED BY 'password'; FLUSH PRIVILEGES; EXIT;传输备份文件:
rsync -avz -e ssh /tmp/halo-volume-backup.tar.gz root@new_ip:/tmp/ rsync -avz -e ssh /tmp/halo.sql root@new_ip:/tmp/ # 如果有(替换new_ip)。恢复卷数据:
mkdir -p ~/.halo2 tar -xzvf /tmp/halo-volume-backup.tar.gz -C ~chown -R root:root ~/.halo2 chmod -R 755 ~/.halo2恢复数据库(如果MySQL):
mysql -u root -p halo < /tmp/halo.sql运行Docker容器:
docker run -d --name halo -p 8090:8090 -v ~/.halo2:/root/.halo2 --restart=always halohub/halo:2.x.xversion: '3' services: halo: image: halohub/halo:2.x.x container_name: halo restart: always volumes: - ~/.halo2:/root/.halo2 ports: - 8090:8090然后:docker-compose up -d。验证数据:
docker logs halo。更新数据库URL(如果域名变化):
如果使用Halo 1.x,替换目录为~/.halo,镜像为ruibaby/halo等。遇到问题,参考Halo社区(bbs.halo.run)或官方文档。如果数据库复杂,优先使用外部MySQL以便迁移。