guide.deepin.org/docs/deepin进阶教程/10.数据管理/10.2.备份和恢复.md
xzl 75e27661e0 refactor: 重构文档目录
移除了所有数字标号

Log:
2023-03-06 16:45:33 +08:00

62 lines
3.6 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 备份和恢复
我们都熟知计算机有时会出问题,或者由于人为的错误导致系统和数据损坏。备份和恢复操作是成功的系统管理中非常重要的一部分。可能有一天你的电脑就会出问题
::: tip
保持你的备份系统简洁并且经常备份你的系统,有备份数据比你采用的备份方法的技术先进要重要的多
:::
## 备份和恢复策略
有3个关键的因素决定实际的备份和恢复策略。
1. 知道要备份和恢复什么。
- 你自己创建的数据文件:在 "~/" 下的数据
- 你使用的应用程序创建的数据文件:在 "/var/" 下的数据(除了 "/var/cache/""/var/run/" 和 "/var/tmp/")
- 系统配置文件:在 "/etc/” 下的数据
- 本地程序:在 "/usr/local/" 或 "/opt/" 下的数据
- 系统安装信息:关键步骤 (分区,...) 的纯文本备忘录
- 验证数据结果:通过实验性的恢复操作来预先验证
- 用户进程的 Cron 工作,文件在 "/var/spool/cron/crontabs" 目录,并且重启 cron(8)。参见第 9.4.14 节 “定时任务安排”来获得关于 cron(8) 和 crontab(1) 的信息。
- 用户进程的 Systemd 计时器工作:文件在 "~/.config/systemd/user" 目录。参见 systemd.timer(5) 和 systemd.service(5)。
- 用户进程的自动启动工作:文件在 "~/.config/autostart" 目录。参见 Desktop Application Autostart Specification。
2. 知道怎样去备份和恢复。
- 安全的数据存储:保护其免于覆盖和系统故障
- 经常备份:有计划的备份
- 冗余备份:数据镜像
- 傻瓜式操作:单个简单命令备份
3. 评估涉及的风险和成本。
- 数据丢失的风险
- 数据至少是应该在不同的磁盘分区上,最好是在不同的磁盘和机器上,来承受文件系统发生的损坏。重要数据最好存储在一个只读文件系统上。[4]
- 数据非法访问的风险
- 敏感的身份数据,比如 "/etc/ssh/ssh_host_*_key", "~/.gnupg/*", "~/.ssh/*", "~/.local/share/keyrings/*", "/etc/passwd", "/etc/shadow", "popularity-contest.conf", "/etc/ppp/pap-secrets", and "/etc/exim4/passwd.client" 应当使用加密备份。[5] (参见 第 9.9 节 “数据加密提示”。)
- 即使在信任的系统上,也不能够硬编码系统登录密码或者加密密码到任何脚本里面。(参见 第 10.3.6 节 “密码密钥环”。)
4. 数据丢失的方式及其可能性
- 硬件(特别是硬盘)将会损坏
- 文件系统可能会损坏,里面的数据可能被丢失
- 对违规安全访问而言,远程存储系统不能够被信任
- 弱的密码保护能够被轻松的破解
- 文件权限系统可以被破解
5. 备份所需的资源:人力,硬件,软件,…
- 使用 cron 任务或者 systemd 计时器任务来自动化调度备份工作
::: warning 注意
除非你知道自己做的是什么,否则不要备份 /proc, /sys, /tmp, 和 /run 目录下的伪文件系统(参见 第 1.2.12 节 “procfs 和 sysfs” 和 第 1.2.13 节 “tmpfs”)。它们是庞大且无用的数据。
:::
::: warning 注意
当备份数据的时候,你可能希望停止一些应用程序的守护进程例如 MTA参见第 6.2.4 节 “邮件传输代理 (MTA)”)。
:::
## 实用备份套件
## 原子更新
原子更新是指在更新过程中,如果更新失败,系统能够自动回滚到更新前的状态。这样就能够保证系统的稳定性。
原子更新尚未全量提供,目前只提供了部分功能,后续会逐步完善。
TODOhttps://github.com/linuxdeepin/deepin-upgrade-manager/tree/master/docs