Linux Backup Notes
起因:五毛一吉的固态出问题啦:
ATA Error Count: 32 (Note: The number of entries may be limited to the newest ones)
其中 31 个是今天出的错,都是 Uncorrectable error。 虽然现在系统还是可以正常食用, 只是 时不时会掉盘,出错:
find: ‘/home/...’: Input/output error
但总之还是把各种东西都备份一下。
密钥备份¶
不对称加密的私钥肯定是必须备份的。包括 GPG 以及 SSH 等的密钥。
GPG 密钥备份¶
备份介质的选择是挺重要的。 对于 GnuPG 密钥来说,我们可以选择用 U 盘、其它硬盘等等电子介质来保存,也可以……把私钥打印出来。
当然我们这里是普通地备份,但是有兴趣的话大家也可以了解一下 Paperkey (
备份、恢复方法¶
详情请见 https://serverfault.com/questions/86048/how-to-backup-gpg 。 我使用的是第二个回答 https://serverfault.com/a/1040984 。
总之:
$ gpg --list-secret-keys # 查看自己的公钥 $ gpg --export --armor 钥ID > 文件名.pub.asc $ gpg --export-secret-keys --armor 钥ID > 文件名.priv.asc $ gpg --export-secret-subkeys --armor 钥ID > 文件名.subkeys.asc $ # 上面的步骤对每一个要备份的密钥都进行一遍 $ gpg --export-ownertrust > ownertrust.txt
恢复的话也是按答案里的来。
此外,可以考虑把 ~/.gnupg/
里的一些文件也都备份下来。
SSH 密钥保存¶
我是直接把 ~/.ssh/
整个目录复制了下来。
杂项¶
Git Stash 备份¶
Git 能 commit 的当然可以 commit 然后找个地方 push 上去。 只是本地的,没有 remote 端的话那只能整个项目复制保存了。
如果有 remote 端,但是工作到一半不方便 push 上去保存,那么可以参考 Backup Git Stash 这里来保存。
基本上是创建 stash 后用 git stash show -p
来获取 diff 信息,从而只保存 stash 里的信息。其余的 commit 只要确保 push 上去了就可以了。
Rsync¶
Rsync 比起普通的复制粘贴来说更能实现备份的功能。
注意上面两种是不同的用法。前者最终会复制到 备份放置目录/待备份目录
,而后者则会将 待备份目录/A文件夹
直接复制到 备份放置目录/A文件夹
。
-P
选项显示每个文件的进度。 -r
则是递归复制,否则它不会复制下层目录的内容。
可参考 https://wiki.archlinux.org/title/Rsync_(%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87) 。
单纯是备忘录¶
~/.local
看了吗?我个人会往~/.local/bin
之类的地方放自己的脚本~/.config
看了吗?各种软件的配置,也许会有你想要备份的。例如: - VS Code:~/.config/Code - OSS/User/settings.json
Element 备份了吗?密钥丢了就没有了喔。你至少要有一个另外的 Verified device
输入法字典备份了吗?
跑去
https://wiki.archlinux.org/title/System_maintenance#Backup
再看一遍? - List of installed packages - Configuration file: 如果用着 Etckeeper 的话可以直接找个地方sudo git clone /etc/.git
HexChat 或者其它的 IRC 登录信息备份了吗?(我是记不住的……)
Jami 备份了吗?
虚拟机备份了吗?
评论