适用于已经在运行的宝塔面板服务器。对于新装,可以挂载好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后不小心碰到回车键,会是个什么壮观的场景。更倒霉一点 刚输完/就碰到呢……