在最初使用开发者系统的时候,无论是构建Ubuntu系统基础设施,还是安装配置各种软件都是一个费心劳力的过程:由于开发者系统是一个需要付出脑力成本换取高效率的系统,它因此被设计成一个高可定制又极度自由的系统,暂且不说你可以自由地从编译源码的方式配置安装整个操作系统,即便是大多数的常用软件例如:vi,emacs等等通过变更配置文件都可以玩出无数的操作方式,用户需要花费时间去变更尝试这些配置,使得操作这些软件的方式最符合自己的习惯,达到高效的目的。因此经过一段时间调配,每一个Linux用户都会有一个自己专属的高效系统,有1000个用户就会有1000个专属高效系统,每一个系统上安装的软件和配置方法都各不一样,并且每一个用户在打造这个专属系统的过程中都会耗费大量的精力和时间。
丢失自己的专属系统,就意味着时间精力的丢失,对于一个长期使用Linux的用户更是如此:用户已经在这个系统上积累太多软件和操作习惯,如果因为系统崩溃而需要从头开始配置一个全新的系统,在事前又没有任何备份措施,那剩下的简直就是一场灾难。这也是有经验的Linux用户很注意备份的原因。介于此,笔者在本章节结合自己的一些经验来介绍一下Ubuntu系统的备份恢复以及升级策略。
这些备份恢复策略不仅适用于Ubuntu,对于使用其他发行版的Linux用户,同样可以参阅以下内容,对其中的步骤稍加改造即可。
脚本恢复策略——完全格式化更新
我们前面介绍过Ubuntu系统的一个特色就是可以从自己的源通过apt-get命令来下载需要的软件,因此用户可以建立一个脚本文件,通过写入常用的apt-get install命令的方式来备份需要的软件(参见上一篇中的在云端保存一个软件安装的脚本部分),同时在这个脚本文件中加入某些需要手工干预的个性化配置的具体步骤,例如:更改激活拼音输入法快捷键的具体步骤(大多数拼音输入法抢占了ctrl+space,如果不更改,开发者用户就无法在诸如Eclipse这样的IDE里使用这个快捷键激活智能代码提示的功能),又例如:你可能对 Firefox 的默认字体并不满意,需要替换一下,这些详细的步骤都应该以注释的形式记录在这个脚本里,如果这些步骤实在太过繁琐,也可以在配置以后,找到对应的配置文件,直接保存在Dropbox里,方便今后直接从云端恢复这些配置到本机。例如,你自己定制化了Vim的行为并且加装了Vim插件,那你只需要将~/.vimrc ~/.vim备份在云端即可。
所以一旦建立了这样一个脚本文件,即使需要重装系统或者面对一台全新的计算机,只需要执行这个脚本文件,查看脚本里的注释记录,就可以保证软件没有丢失,配置软件的步骤可以还原,重要的资料都被存储在云端:Dropbox(二进制文件),GitHub(文本文件,以后详述)。自然这个策略的前提是:你在使用系统的时候必须保持勤于更新脚本的习惯,用于日后的系统恢复。
完全格式化更新的优点
这种方法比较适用于希望将现有系统迁徙到更高版本的情形。例如:迁徙Ubuntu 10.04至Ubuntu 12.04的时候,在格式化系统,重新安装12.04以后,用户就可以通过这个脚本恢复原先计算机的面貌。并且由于Ubuntu源里的软件版本和Ubuntu发行版版本之间存在对应关系(例如:10.04源里的firefox版本可能在某个版本以后不再提供更新),如果12.04在目前还是一个比较新的LTS版本,那么就可以保证在12.04上使用apt-get install安装的软件版本都比较新。同时如果你大多数的配置恢复是通过还原具体步骤完成的,那么就有机会检查这些步骤在新版本软件上是否仍旧适用。也不会出现从云端恢复旧版本软件的配置到新版本软件以后无法适用的状况,当然理论上这也不是一个太大的问题,Linux下许多著名的软件都非常尊重用户的旧有习惯,轻易不会变更自己读取配置文件的方式,大多数情况下恢复旧有软件的配置到新版本不会出现太多状况。
完全格式化更新的缺点
由于没有采用全盘备份的方式,这种备份恢复策略的缺点同样明显,尽管可以保证在升级以后,计算机的原始面貌不会有任何丢失,但是相对来说,手动恢复许多软件的配置仍旧需要投入相当的时间和精力,即使在备份策略完善的前提下,笔者通过这种方式将Ubuntu 10.04升级到12.04的时候仍然花费了整整5天的国庆长假。因此个人建议只在每隔两年发布一次的LTS版本出现的时候才做这样的升级,以此保证计算机的全新状态。
脚本恢复策略——沿用/home分区数据
我们前面提到过独立/home分区的原因在于用户大多数重要的个性化配置和数据都保存在这个目录,以至于Ubuntu官方的云端备份软件Ubuntu One在默认情况下就是协助用户备份/home分区所在的数据到云端。因此如果可以在重装系统的时候沿用这个分区的数据,无疑可以为我们节省大量的数据恢复和配置恢复的时间,更何况某些数据如电影,照片可能占据几百个G的空间,没有独立/home分区,用户在重装系统,格式化分区的时候根本就没有可以容纳那么大数据的第二个媒介做临时的备份,除非你有第二块硬盘。另一方面在恢复系统的时候因为配置和数据仍旧在/home目录,你只需要执行前面提到的脚本重新安装软件即可,无需手工还原配置软件的步骤。
为了使用这种恢复策略,在首次安装Ubuntu的时候可以独立出/home分区,在使用系统的过程中时刻保证只在这个目录下存储自己重要的数据和配置,如果一定有一些特例状况也一定要在恢复脚本中加以记录,在云端有另外的备份措施。只要你的/home分区没有被损坏,再次恢复的代价就相当的小。重装系统的时候可以格式化 / 目录所挂载的分区,但是记得在以下Installation type界面上千万不要选择格式化 /home 所在的分区,否则就无法沿用这个分区的数据。
沿用/home分区数据优点
显而易见,这种策略很经济,省去很多的麻烦,是非常常见的系统恢复策略,同样也适用于在重新安装一个高版本的Ubuntu以后恢复计算机原先的面貌,例如从10.04LTS升级至12.04LTS。
沿用/home分区数据缺点
沿用过去/home分区的数据毕竟在保留了数据的同时也保留了旧有的配置和目录结构,如前所述虽然在匹配新版本软件的时候,这不会是一个太大的问题,但是一旦出现状况,例如两个软件版本之间的差异过大,导致新版本无法正常工作在旧配置或者目录结构上,用户要有一定解决问题的能力,仍然需要通过查看脚本注释手动还原配置步骤。
我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。
我原创,你原创,我们的内容世界才会更加精彩!
【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】
微信公众号
TechTarget
官方微博
TechTarget中国
相关推荐
-
Ubuntu系统备份恢复策略之二:利用tar包
上一篇文章中我们介绍了Ubuntu系统的两种脚本恢复策略,接下来介绍另外一种tar包全盘备份恢复策略。