宝塔面板迁移数据到新硬盘

适用于已经在运行的宝塔面板服务器。对于新装,可以挂载好WWW目录后再安装即可。

服务器运行了一段时间,硬盘空间捉襟见肘,打算扩容下硬盘。我是虚拟机,一开始分配的硬盘不多,所以打算直接多分一块硬盘给虚拟机挂载/www,这样宝塔的数据就都在新硬盘里了。注意迁移数据时需要短暂停止服务,请自行斟酌。

首先对新硬盘进行分区和格式化。

一、查看新硬盘设备名

lsblk

二、分区、格式化硬盘(这里举例/dev/vdb)

fdisk /dev/vdb

输入 o 或 g 新建分区表
输入 n 建立新分区
接着输入 p 建立主分区
接着默认 2048 字节扇区头和自动的扇区尾
(按回车即默认)
输入 w 将上面的操作保存

依次输入:
n →回车→回车→回车→w
分区完成后设备变成 /dev/vdb1

然后格式化,推荐 ext4

mkfs.ext4 /dev/vdb1

三、把原有数据复制到新硬盘

临时挂载新硬盘

mkdir -p /mnt/newdisk
mount /dev/vdb1 /mnt/newdisk
#检查挂载是否成功
df -h

停止全部宝塔服务(关键!防止复制时文件变动损坏数据库)

bt stop

该命令会停止面板和一切相关服务。

复制/www数据到新硬盘,既现在的/mnt/newdisk

rsync -avHAX /www/ /mnt/newdisk/

四、设置永久挂载新硬盘到/www

卸载临时挂载点

umount /mnt/newdisk

移动旧数据,并建立空的www目录

mv /www /wwwbak
mkdir /www

先获取 UUID(推荐使用UUID 挂载,以免磁盘名偶尔漂移)

blkid /dev/vdb1

编辑开机挂载文件

nano /etc/fstab

文件末尾新增一行

UUID="xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"  /www ext4 defaults 0 2

挂载新硬盘到/www,这里不建议使用mount命令手动挂载,前面已经修改了fstab文件。所以更建议使用mount -a以测试能否自动成功挂载,否则万一有问题,重启一下就呵呵了。

mount -a
#验证挂载
df -h

五、收尾工作

此时/www就已经在新硬盘上了,启动宝塔

bt start

登陆宝塔后台,检查是否正常。

运行一段时间后确认没有问题。就可以删除原有数据了

rm /wwwbak -rf

这里分享一个个人小习惯:
当使用rm -rf命令时,我会先输入目录名,最后输入rf参数。
原因很简单,就以上面一条命令举例:假如我先打好rm -rf 命令,当输入目录时,输入到第三个w后不小心碰到回车键,会是个什么壮观的场景。更倒霉一点 刚输完/就碰到呢……

上一篇 VMware ESXi反虚拟机检测方法
下一篇 使用dpkg安装提示:package architecture(arm) does not match system(armhf)