有没有一种tar
不破坏结构就可以提取的方法?
我正在安装 12.04 并想从 10.10 恢复我的数据。我想保留 12.04 特有的任何内容,也就是说,我不希望tar
提取 10.10 版本。如果我进行常规恢复,.bashrc 等文件将被破坏。有没有办法避免这种情况?
编辑:我要指出的是,启动的 12.04 ISO 磁盘映像允许从 10.10(或其他版本)升级,并且它提供保留旧数据的功能。我试过这个,但它抱怨升级后某些应用程序可能会损坏。我决定重新启动并进行全新安装。
答案1
我很难理解你想要什么,但如果你为整个系统创建了一个 tar 文件,我相信你创建了一个非常大的 tar 文件,除非你完全恢复 tar 文件,否则它没有实际用途。如果你想保存自己的文档,你应该备份这些文档,而不是其他任何东西。
说完 tar 有几个漂亮的选项......
--keep-old-files
这不会覆盖现有文件。
--keep-newer-files
这将保留所有具有较新时间戳的文件。
--no-overwrite-dir
这将保留现有目录的元数据。
但我建议将 tar 文件解压到其他介质上,然后手动恢复这些文件。这是最安全的方法。
答案2
从焦油(1):
-k, --keep-old-files
don't replace existing files when extracting
对我来说似乎很清楚。如果 tarball 中的文件相对于您的旧主目录进行存储:
tar xvkf backup.tar.gz -C ~