我们有 Linux Redhar 7
我们希望将 /var 保留在其他卷上
因此计划是:
mkdir /var_copy
cp -rp /var/* /var_copy
umount /dev/mapper/vg-a-var /var
rm -rf /var
mkdir /var
mount /dev/mapper/vg-b-var /var
cp -rp /var_copy/* /var
所以我的问题是
这是好的使用方法吗cp-rp为了复制/var内容 ?
或者可能是因为/var包括符号链接或硬链接需要使用其他方法吗?cp-a或其他 ?
答案1
我建议不要使用 cp
rsync -aqxP /var/* /var_copy
...但是你的计划会破坏很多东西(在正在运行的系统“下” rm -rf /var)。
最好
- 复制事物
- 修改/etc/fstab
- 重启
... 如此处(以及许多地方)所述:https://linuxconfig.org/how-to-move-var-directory-to-another-partition
答案2
一个选项是只将 /var 的部分内容放在另一个卷上。关闭所有受影响的服务,复制内容,然后挂载新的 /var/lib/whatever/
并非所有内容都会被转移。风险较小,因为您不会更改其他动态数据,例如 /var/log/ /var/run/ /var/spool/
如果您曾经为该服务重建主机,那么从一开始就很容易分离出 /var/。
(请注意,“最佳”解决方案再次取决于您的要求。)