温馨提示×

centos软连接怎样备份

小樊
45
2026-08-04 13:44:58
栏目: 智能运维

在 CentOS(以及大多数 Linux 系统)中,**软连接(symbolic link)**本身只是一个指向目标路径的特殊文件。备份软连接时,关键是保留“链接本身”,而不是把目标文件再复制一份。下面给你几种常见、可靠的做法。


一、用 tar 备份(最推荐 ✅)

tar 可以保留软连接本身,只要不加特殊参数。

1️⃣ 备份目录(包含软连接)

tar -cvpf backup.tar /path/to/dir

说明:

  • -c:创建
  • -v:显示过程
  • -p:保留权限
  • -f:指定文件名

默认行为:软连接会被原样保存


2️⃣ 解压恢复

tar -xvpf backup.tar

恢复后:

ls -l

你会看到:

lrwxrwxrwx 1 user user 10 date file -> /real/path

二、用 cp 备份(要注意参数 ⚠️)

❌ 错误方式(会复制真实文件)

cp /path/to/link /backup/

✅ 正确方式(保留软连接)

cp -P /path/to/link /backup/

或整个目录:

cp -a /path/to/dir /backup/

说明:

  • -P:不跟随软连接
  • -a:归档模式(包含 -P

三、用 rsync 备份(服务器常用 ✅)

rsync -av /path/to/dir/ /backup/dir/

rsync 默认会保留软连接
✅ 非常适合增量备份


四、只备份软连接本身(不复制目标)

查看软连接

ls -l

手动重建(适合少量)

ln -s /real/target linkname

五、验证是否真的备份了软连接

tar -tvf backup.tar

或:

ls -l restored_dir

看到 l 开头:

lrwxrwxrwx ...

✅ 说明是软连接,不是普通文件


六、常见误区 ❌

操作 结果
cp 软连接 目标 复制真实文件
tar -h 把软连接变成真实文件
rsync -L 跟随软连接

七、总结(推荐方案)

最稳妥

tar -cvpf backup.tar /path

服务器同步

rsync -av /src/ /dest/

简单复制

cp -a /src /dest

如果你愿意,可以把你的具体场景告诉我(比如:

  • 备份 /usr/bin 的软连接
  • Docker / 系统迁移
  • 跨服务器恢复)

我可以给你一条完全贴合你环境的命令

0