我如何让 Timeshift 备份整个系统?

我如何让 Timeshift 备份整个系统?

我如何让 timeshift 备份整个系统?我找不到任何教程来做到这一点!我使用的是默认配置。

答案1

你不能这样做,因为它不是为此设计的。

时间移位与 rsnapshot、BackInTime 和 TimeVault 等应用程序类似,但目标不同。它旨在仅保护系统文件和设置。用户文件(如文档、图片和音乐)被排除在外。这可确保您的文件在您将系统恢复到较早的日期时保持不变。如果您需要一个工具来备份您的文档和文件,请查看优秀的时光倒流该应用程序具有更强的可配置性,并提供了保存用户文件的选项。

  • 建议使用 BackInTime

来自链接:

Back In Time 是一个简单的 Linux 备份工具,受到“flyback 项目”的启发。

它提供了一个命令行客户端“backintime”和一个 Qt5 GUI“backintime-qt”,均用 Python3 编写。

您只需指定 3 件事:

  • 快照保存位置
  • 要备份哪些文件夹
  • 备份频率(手动、每小时、每天、每月)
  • 注意的第二件事似乎表明可以通过告诉它备份来创建完整备份/
  • 通用工具(例如 Clonezilla)或手动定制的命令也可以使用。

===

完整的系统备份应该从未安装的分区进行,实时会话是执行此操作的最简单工具。这也是大多数人不进行完整系统备份而只备份个人文件的原因:如果系统本身损坏并且无法修复,从实时会话恢复备份可能也是最简单的。但重新安装会更容易:我自己使用 SSD 来存储系统,使用 HDD 来存储个人文件。重新安装只需 20 分钟(包括安装后额外安装我使用的非默认软件)。

答案2

虽然 Rinzwind 的答案在您想要遵循最佳实践的情况下很好 - 但可悲的现实是,一个糟糕的备份比哗众取宠和要求下载一个全新的应用程序要好。所以我在这里提供我的意见:

让 Timeshift 备份所有内容可能有点棘手。最重要的是,GUI 无法通过列表排序以及添加/删除操作来解释优先级。

对我来说,我喜欢手动编辑 JSON,但如果这样做,您可能会破坏时间移位,因此请进行备份。不过,在执行此操作之前,请确保你已完成时间移位设置向导,以在 JSON 文件中设置默认值,例如backup_device_uuid

  1. sudo su切换到 root 用户
  2. cd /切换到根目录
  3. find . -type f -name "timeshift.json"找到你的 timeshift json 文件(我的是 /etc/timeshift/timeshift.json)
  4. ls -la /etc/timeshift/timeshift.json检查你的权限-我的权限为root
  5. sudo cp /etc/timeshift/timeshift.json /etc/timeshift/timeshift.json.bak 编辑前先进行本地复制
  6. sudo subl /etc/timeshift/timeshift.json使用 sudo 以 sudo 模式打开 json 文件。如果你没有安装 sublime text,你可以使用 gedit

您可以在 Timeshift 中手动启用主文件夹,但添加大量目录可能会很累,因此手动编辑就派上用场了。我将我的编辑粘贴在下面。如果您遇到 Timeshift 的严重崩溃,可能是由于 JSON 无效。您可以通过终端启动它CTRL+ALT+T -> timeshift &以查看日志输出。或者,您可以使用DuckDuckGO 的 JSON 验证器以确保你的是有效的。

我喜欢做的是修改 JSON,运行 timeshift,查看日志以查看创建了什么,关闭 timeshiftsudo rm -rfv /timeshift或类似操作以删除所有快照(文件夹位置 YMMV),并反复执行直到正确为止。

我为什么要建议人们修改 JSON 文件?因为二进制文件令人恼火。它没有提供关于按什么顺序放置内容的明确文档,而且它会重新排列项目,甚至exclude在不告知您的情况下将其从属性列表中删除。

这是我的excludejson 属性,供其他人复制。我显然是一名开发人员,因此我希望将大量 JS、Py 和 GO 状态保留在备份之外。

还记得排除必须先于纳入

  "exclude" : [
    "- /home/userhome/.aws/**",
    "- /home/userhome/.cache/**",
    "- /home/userhome/.docker/**",
    "- /home/userhome/.java/**",
    "- /home/userhome/.local/**",
    "- /home/userhome/.mozilla/**",
    "- /home/userhome/.npm/**",
    "- /home/userhome/.nvm/**",
    "- /home/userhome/.serverless/**",
    "- /home/userhome/.terraform.d/**",
    "- **site-packages/**",
    "- **venv/**",
    "- **pkg/mod/**",
    "- **pkg/sumdb/**",
    "- **node_modules/**",
    "+ /home/userhome/**",
    "+ /root/**"
  ],

希望这对某些人有帮助。备份总是一件好事,而 Timeshift 非常挑剔。

相关内容