我如何在不使用 sudo 的情况下创建 tar?

我如何在不使用 sudo 的情况下创建 tar?

如果我打包 /home/username 并在 /home/username 中创建 .tar 文件,那么我会收到类似的错误,这. file changed as we read it可能是因为目录文件本身由于创建 .tar 文件而发生变化。当然,我可以在 /home 中创建上一级文件,但这需要 sudo 或登录。我想在不使用 sudo 和重新登录的情况下进行存档和恢复。

我不想将 .tar 文件嵌套在 /home/username 的某个深层位置,这不太方便,而且我怀疑这甚至可能无法解决问题。

答案1

您可以尝试在 /tmp 目录中创建文件。

答案2

您可以使用该--exclude=标志创建一个忽略您正在写入备份的目录的档案。

创建一个/home/<username>/Backups文件夹。

像这样尝试一下(替换任何其他额外选项和您想要创建的文件): tar <extra options> /home/<username>/Backups/yourhomefolderbackup.tar.gz --exclude=/home/<username>/Backups/ /home/<username>/

这样,您就可以保存备份、制作新的备份、删除备份、刻录备份,而不必担心如果您重新启动机器,您的以前的备份会被删除(如果您将它们保存到 /tmp,就会发生这种情况,一旦重新启动,您的备份就会消失!)。

您还应该使用--exclude=来排除/home/<username>/.local/share/trash文件夹(或者您的文件夹在哪里.trash编辑: 在 Ubuntu 中,它位于/home/<username>/.trash),来自您正在创建的存档或您的垃圾将被添加到您正在创建的备份中。只需--exclude=/home/<username>/.trash在第一个之后添加另一个--exclude=即可!

高频,GL;)

相关内容