我正在删除 Ubuntu 13.04,因为我正在重新安装最新版本。因此,我使用 备份了我的主分区tar
。备份包括隐藏文件(点文件),如下所示:
$ tar -tvf ubuntu_home.tar
drwxr-xr-x ravbholua/ravbholua 0 2014-06-08 16:11 home/ravbholua/
drwx------ ravbholua/ravbholua 0 2013-07-04 04:41 home/ravbholua/.compiz/
drwx------ ravbholua/ravbholua 0 2014-06-07 13:27 home/ravbholua/.compiz/session/
-rw-rw-r-- ravbholua/ravbholua 94 2013-07-17 21:09 home/ravbholua/.compiz/session/10cb5b0e6473b31966137407039559636600000017000031
-rw-rw-r-- ravbholua/ravbholua 94 2014-03-30 23:13 home/ravbholua/.compiz/session/10827bd50247533452139619877576376200000017730032
-rw-rw-r-- ravbholua/ravbholua 94 2014-03-26 17:58 home/ravbholua/.compiz/session/1045273c9617fd9fd4139583223634115900000020210032
-rw-rw-r-- ravbholua/ravbholua 93 2013-07-18 19:07 home/ravbholua/.compiz/session/103af463f1638372f413741493305265900000017040031
-rw-rw-r-- ravbholua/ravbholua 94 2013-10-02 21:14 home/ravbholua/.compiz/session/10731c70d9dfbc841d138072379649671100000018220032
-rw-rw-r-- ravbholua/ravbholua 94 2013-07-25 21:20 home/ravbholua/.compiz/session/10178ce07333091a04137476677623131400000017150031
.................
.................
.................
drwx------ ravbholua/ravbholua 0 2014-01-09 08:52 home/ravbholua/.speech-dispatcher/log/
-rw------- ravbholua/ravbholua 0 2014-01-09 08:52 home/ravbholua/.speech-dispatcher/log/dummy
.log
-rw------- ravbholua/ravbholua 42 2014-01-09 08:52 home/ravbholua/.speech-dispatcher/log/festi
val.log
-rw------- ravbholua/ravbholua 0 2014-01-09 08:52 home/ravbholua/.speech-dispatcher/log/espea
k.log
drwx------ ravbholua/ravbholua 0 2014-01-09 08:52 home/ravbholua/.speech-dispatcher/log/debug
/
-rw-rw---- ravbholua/ravbholua 7522 2014-01-09 08:52 home/ravbholua/.speech-dispatcher/log/speec
h-dispatcher.log
drwx------ ravbholua/ravbholua 0 2014-01-09 08:52 home/ravbholua/.speech-dispatcher/pid/
-rw-rw---- ravbholua/ravbholua 5 2014-01-09 08:52 home/ravbholua/.speech-dispatcher/pid/speec
h-dispatcher.pid
drwx------ ravbholua/ravbholua 0 2013-07-16 20:47 home/ravbholua/.synaptic/
-rw-rw-r-- ravbholua/ravbholua 237 2013-08-19 08:53 home/ravbholua/.synaptic/synaptic.conf
-rw-rw-r-- ravbholua/ravbholua 0 2013-08-19 08:53 home/ravbholua/.synaptic/options
-rw-rw-r-- ravbholua/ravbholua 0 2013-09-03 19:01 home/ravbholua/.Xauthority.IJTU2W
-rw-r--r-- ravbholua/ravbholua 12679 2013-07-04 03:14 home/ravbholua/.face
我的感觉是不需要备份所有这些文件。相反,备份这些点文件可能会很危险。他们真的需要吗?当我重新安装新的 Ubuntu 时,我的主分区可能有很多点文件(我想)。我可能想恢复新操作系统主分区中的备份文件。因此,在恢复时(例如使用tar
),已经存在的点文件将被备份文件覆盖,这可能是危险的。因为我的目的是恢复我有意创建的文件(pdf、音频/视频、文本等),而不是自动创建的点文件。
那么,如何备份我的主分区呢?
答案1
仅备份您了解目的的内容。
例如,如果您的电子邮件客户端有特定的配置文件,您可能想要保存它。当然,虽然您的电子邮件客户端几乎肯定有保存配置的地方,但如果通过界面设置配置,您可能不知道那在哪里。您可以尝试在这方面做出一些猜测,但不要简单地假设~/.mymailclient
目录中的所有内容都是用于配置的。
很遗憾,这似乎是当代软件黑盒配置的常态,而没有实现或记录用户备份或将其传输到另一个系统的方法。对于这种情况,您可以在网上查找是否有人有线索。您也可以尝试进入用户邮件列表并询问。
如何备份我的主分区?
我建议您创建一个“备份”目录并将所需的所有内容复制到其中,镜像主目录的目录结构,然后创建该目录的 tarball,而不是使用 tar 完全自动化该过程。您可能知道也可能不知道,您可以在现有目录中解压 tarball,所有内容都会就位,而无需删除现有文件;例如,如果foo
archive 中有一个现有的子目录和一个文件foo/bar
,它将被放入现有的foo
子目录中,替换任何现有的bar
,但不会更改该目录的任何其他内容。换句话说,解压存档是添加剂,因此您可以获取备份 tarball,将其解压到新的 $HOME 中,其中的文件将添加到已有的文件中。
但是,如果您想尝试备份内容,您可以将其解压到一个新的子目录中,然后一次将内容复制到一个应用程序中。例如,一旦您安装了电子邮件客户端并启动了一次,您可能会拥有一个包含配置的目录,例如~/.myemailclient
.然后,您可以tar
暂时复制备份中的内容。如果应用程序仍然正常工作,那就太好了。如果不是(配置的性质可能在不同版本之间发生了变化,或者您可能对所涉及的文件的用途猜错了,等等),您可以将其删除并从临时存档中返回到原始版本(或者,您可以创建第二个备份目录并将新的系统配置复制到那里,直到您对一切感到满意为止)。
通过这种方式,您可以尝试备份尽可能多的配置,而不会冒使新系统上的任何内容处于不一致状态的风险。