我正在尝试下载整个服务器的副本(安装了 cPanel 的 Linux,运行 CentOS)。
我最初做的是 tar 整个服务器,然后下载 tar 文件。这样做的问题是,当我在家用电脑上解压缩以确保一切都在那里时,我在 WinRAR 中遇到了很多错误,说它无法提取某些文件。
进一步调查后,我意识到它无法提取的文件是符号链接(symbolic link)。
我不一定需要能够在我的家用计算机上使用符号链接(symbolic link),但如果需要重新创建它们,最好备份它们。如果我将文件解压缩到 Linux 服务器上,符号链接(symbolic link)是否仍然有效?这样我以后就可以将它们用作引用,从而知道哪些文件链接到了哪些?
如有任何建议,我们将不胜感激!
最佳答案
使用tar
。
您应该能够在目标机器上获得您的符号链接(symbolic link)。但是,如果您将根目录移动到某个挂载点下,您可能必须替换其中的一些。
在这种情况下,您可以找到符号链接(symbolic link)
tar tvf the_backup.tar | egrep -i 'symbolic link to /| -> /'
(或等效的 tar tvf 用于在目标计算机上显示符号链接(symbolic link))
这将显示所有指向“绝对”链接的符号链接(symbolic link)(链接以“/”开头),即如果您在子目录下解压备份,则最有可能出现麻烦的符号链接(symbolic link)。
例如:
$ tar tvf the_backup.tar | egrep -i 'symbolic link to /| -> /'
?rwxrwxrwx 4000 500 0 Nov 05 17:00:00 2014 foo symbolic link to /bar
注意:
- 一些 tar(GNU tar,例如 ex)使用“-> xxx”来指示指向 xxx 的符号链接(symbolic link)
- 有些人使用“到 xxx 的符号链接(symbolic link)”代替(可能会出现其他变体……)
- 一些(旧的)tar 不会去掉开头的 '/' 所以要小心:如果你使用那些旧版本在目标机器上解压,文件“/something”将转到“/something”而不是“/subdir_where_you_wanted_to_extract/something”……它会造成很大的伤害。首先尝试一个只包含“/dummyfile”的小 tar
关于linux - 如何使用存在的符号链接(symbolic link)备份整个服务器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26761661/