温馨提示×

如何备份Debian软连接

小樊
45
2026-07-15 21:17:53
栏目: 智能运维

在 Debian(以及大多数 Linux 发行版)里,软链接(symbolic link)本身不需要单独“备份内容”,只需要备份它的路径和指向目标即可。下面按常见场景给你几种做法。


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

tar 默认会保留软链接本身,而不是复制目标文件。

示例

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

参数说明:

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

验证是否保留了软链接

tar -tvf backup.tar

你会看到类似:

lrwxrwxrwx user/user 0 2026-01-21 path/to/link -> /target/path

✅ 恢复后软链接仍然存在,指向不变。


二、仅备份软链接信息(不备份目标文件)

如果你想只记录软链接本身(例如做迁移或重建):

1️⃣ 列出所有软链接

find /path/to/dir -type l

2️⃣ 导出软链接及其目标

find /path/to/dir -type l -printf "%p -> %l\n" > symlinks.txt

symlinks.txt 内容示例:

/etc/nginx/sites-enabled/default -> /etc/nginx/sites-available/default

3️⃣ 恢复(手动或脚本)

ln -s /etc/nginx/sites-available/default /etc/nginx/sites-enabled/default

三、使用 rsync 备份(适合目录同步)

rsync 默认保留软链接

rsync -a /source/dir/ /backup/dir/

参数说明:

  • -a:归档模式(包含 -l,保留软链接)

⚠️ 注意:

  • 软链接指向的是原路径
  • 如果目标路径不存在,恢复后链接会失效

四、复制软链接本身(不跟随目标)

cp -a source_link new_link

或批量:

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

-a 等价于 -dR --preserve=all


五、常见误区 ❌

操作 结果
cp 不加参数 会复制目标文件
rsync -L 会跟随软链接(变成普通文件)
tar -h 会解引用软链接

不要加 -L-h 等参数


六、推荐方案总结

场景 推荐方式
整机/目录备份 tar -cvpf
目录同步 rsync -a
只记录软链接 find -type l -printf
精确迁移 tarrsync

如果你愿意,可以告诉我:

  • /etc/home 还是整个系统?
  • 备份到本地、远程还是 USB?

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

0