几个月前,我将 /var 目录移动到了我的 vps 的另一个驱动器上。 (我使用了本指南:https://linuxconfig.org/how-to-move-var-directory-to-another-partition)。
fstab:
/dev/sda1 / ext4 errors=remount-ro,discard 0 1
/dev/sdb1 /mnt/mydisk ext4 nofail 0 0
/dev/sdb1 /var ext4 defaults 0 2
现在我想将 /var 目录移动到 sda1。
我评论了#/dev/sdb1 /var ext4 defaults 0 2
重新启动 vps 并启动 rsync -aqxP /mnt/mydisk /var/*
我的 sda1 空间增长,但我看不到文件..
怎么了?
我认为我的 rsync 命令有问题..
答案1
这是一个典型的场景,可以通过将 /var 目录安装在不同的分区上来轻松修复。让我们开始附加一个新的 LVM、分区并创建所需的文件系统。
使用新磁盘创建 LVM:/dev/sdb
# pvcreate /dev/sdb
# vgcreate vg_var /dev/sdb
# vgdisplay
# df -Th
# lvcreate -n lv_var -l +<PE Free Size>
# mkfs.xfs /dev/mapper/vg_var-lv_var
# lsblk
创建一个新的挂载点并挂载新分区:
# mkdir /mnt/var
# mount /dev/mapper/vg_var-lv_var /mnt/var/
开始将 /var 同步到新的临时安装分区
# rsync -aqxP /var/* /mnt/var
同步成功后卸载临时分区
# umount /dev/mapper/vg_var-lv_var /mnt/var/
# lsblk
编辑 /etc/fstab 以包含新分区并选择相关文件系统:
/dev/mapper/vg_var-lv_var /var xfs defaults 0 0
重新启动系统即可完成。确认一切正常工作,并可以选择通过引导到某些 Live Linux 系统等来删除旧的 var 目录。