有没有办法在不破坏的情况下提取“tar”

有没有办法在不破坏的情况下提取“tar”

有没有一种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 的手册可以在这里找到

但我建议将 tar 文件解压到其他介质上,然后手动恢复这些文件。这是最安全的方法。

答案2

焦油(1)

 -k, --keep-old-files
       don't replace existing files when extracting

对我来说似乎很清楚。如果 tarball 中的文件相对于您的旧主目录进行存储:

tar xvkf backup.tar.gz -C ~

相关内容