你如何备份你的开发机器?

时间:2008-08-25 20:32:34

标签: backup hardware installation

如何备份开发机器,以便在发生灾难性硬件故障时,您可以在最短的时间内启动并运行?

26 个答案:

答案 0 :(得分:45)

备份开发机器和备份工作之间存在重要区别。

对于开发机器而言,最好的选择是成像解决方案,尽可能提供“一键还原”过程。 TimeMachine(Mac)和Windows Home Server(Windows)都非常适合此目的。您不仅可以在1-2小时内恢复整台机器(取决于硬盘大小),而且还可以自动运行并存储增量,因此您可以在相对较小的空间内进行数月的备份。还有许多“鬼影”软件包,但它们通常不提供增量/增量备份,因此需要更多时间/空间来备份您的机器。

不太好的产品包括Carbonite / Mozy / JungleDisk / RSync。这些产品将允许您检索数据,但您仍然需要重新安装操作系统和程序。有些人有限/无历史。

在备份代码和数据方面,我会推荐像SVN这样的源代码控制产品。虽然通用备份解决方案将保护您的数据,但它不提供SCC包所执行的标签/分支/历史记录功能。这些功能对于具有保质期的任何类型的项目都是非常宝贵的。

您可以在本地计算机上轻松运行SVN服务器。如果您的计算机已备份,那么您的SVN数据库也将被备份。这个IMO是家庭开发人员的最佳解决方案,也是我保存的方式。

答案 1 :(得分:13)

  1. 所有重要文件都在版本控制中(Subversion)
    • 我的subversion布局通常与我的网络服务器上的文件布局相匹配,因此我可以进行结账,所有的库文件和内容都在正确的位置。
  2. 每天两次备份到外部硬盘
  3. 每晚rsync备份到远程服务器。
    • 这意味着我将家庭服务器上的内容发送到我的webhost和所有文件&我的webhost上的数据库回到了家里,所以如果我失去了我的房子或我的虚拟主机,我就不会搞砸了。

答案 2 :(得分:6)

我使用Mozy,很少考虑它。这是我肩膀上的一个重量,我永远不会错过。

答案 3 :(得分:3)

虚拟机和CVS。

台式机推出鬼,完全是香草。 除了他们有VirtualBox。

然后开发人员拉出配置的基线开发环境 从CVS下来。

他们自己登录开发虚拟机映像,从CVS刷新源代码和库,然后启动并运行agian。

这也使得开发和维护同时更容易很多

(我知道有些人不会喜欢CVS或VirtualBox,所以可以随意选择你喜欢的工具)

哦,你检查你每天在Trunk上工作的私人分支。

你去吧。

总恢复时间:1小时(上衣)

为客户访问“采用”一台新笔记本电脑的时间:1小时(上)

向CMMI配置管理迈出了一步。

答案 4 :(得分:3)

顺便说一句,您的开发机器不应包含任何有价值的东西。您的所有工作(以及您公司的工作)都应位于中央存储库(SVN)中。

答案 5 :(得分:2)

我使用TimeMachine

答案 6 :(得分:2)

对于我的家用和开发机器,我使用Acronis True Image

在我看来,凭借高清便宜的价格,没有什么可以取代每日完整的高清备份。

答案 7 :(得分:1)

我终于把我的“全自动数据备份策略”变成了一门艺术品。我永远不必手动干预,我永远不会失去另一个硬盘数据。如果我的计算机死机,我将始终拥有一个不超过24小时的完整可启动备份,并且增量备份不超过一个小时。以下是我如何做的详细信息。

我唯一的计算机是运行OSX Leopard的160 gig MacBook。 在我工作的桌子上,我有2个外部500演出硬盘。 其中一个是名为“外部”的500个gig分区。 另一个有一个名为“Clone”的160 gig分区和一个名为TimeMachine的340 gig分区。

TimeMachine在我工作时运行,不断备份我的“进行中”文件(它们也全天都致力于版本控制)。

每个工作日12:05,SuperDuper!自动将我的整个笔记本电脑硬盘复制到“克隆”驱动器。如果我的笔记本电脑的硬盘驱动器死了,我实际上可以直接从克隆驱动器启动并接收工作而不会错过任何一个节拍 - 给我一些时间来更换驱动器(自从设置它以后这件事发生在我身上!)。 (技术说明:它实际上只复制了自上一个工作日以来12:05以来发生的任何变化...而不是每次都是整个驱动器。就像魅力一样。)

在家我有一个D-Link DNS-323,这是一个运行镜像RAID的1TB(2x500 gig)网络连接存储设备,因此第一个500 gig驱动器上的所有内容都会自动复制到第二个500 gig驱动器。这样,您始终拥有备份,并且它是完全自动化的。这只小狗有一个内置的动态DNS客户端和FTP服务器。

因此,在我的WRT54G路由器上,我将FTP端口(21)转发到我的DNS-323,并保持其FTP服务器。

完成SuperDuper克隆后,rSync通过FTP运行并将我的“外部”驱动器与家中的DNS-323同步。

就是这样。 使用4个驱动器(2个外部,2个NAS)我有: 1)周一至周五不到24小时的始终可启动的完整备份 2)周一至周五(当我在工作并连接到外部驱动器时)所有正在进行的文件的工作备份,这些文件从不超过30分钟 3)访问“外部”工作文件和NAS上的家中所有MP3(170GB) 4)NAS上所有MP3和文档的两个完整备份(外部是原始副本,NAS上的两个驱动器都是通过ChronoSync镜像)

为什么我要做这一切? 因为: 1)在2000年,我丢掉了一台40英寸的1英寸硬盘,我花了2500美元来获取这些数据。 2)在过去的一年里,我不得不带我的MacBook进行4次维修。一个死硬盘,两个死主板和一个死网络摄像头。第四次,他们用更新的更好的MacBook取代我的MacBook,我没有遇到任何问题。

感谢我的每日备份,我没有失去任何工作或生产力。但是,如果我没有他们,我的所有工作都会消失,还有我的MP3,我的写作,以及我前往秘鲁,克罗地亚,英国,法国,希腊,荷兰,意大利和我所有的家庭照片。你可以想象?我相信你可以,因为我打赌你现在有一堆数码照片放在你的电脑上......没有以任何方式备份。

答案 8 :(得分:1)

答案 9 :(得分:1)

如果你说的是最少的恢复时间...我经常设置机器每晚进行Ghost(赛门铁克或类似的)备份到图像或直接复制到另一个驱动器。这样你所要做的就是从图像重新映像机器或只是交换驱动器。您可以在不到10分钟的时间内恢复...我之前做过的设置是在我们有一些冗余的生产服务器的情况下,他们可以离线足够长的时间来克隆驱动器......但仅限于晚。白天他们不得不提高100%...当一个主驱动器发生故障时它保存了我的屁股几次...我刚刚打开机箱,交换了电缆,所以备用驱动器是新的主机并重新上线5分钟。

答案 10 :(得分:1)

一点准备有助于:

  • 我的所有代码都保存在一个目录中(带有分类的子目录)。
  • 所有电子邮件都保存在各种PST中。
  • 所有代码也会在每天结束时检入源代码管理。
  • 所有文件也保存在一个地方。

备份:

  • 根据您的需要(每日)备份您的代码,电子邮件和文档。
  • 保持开发环境的图像随时可用。

失败和恢复

  • 如果一切都失败,请格式化并安装映像。
  • 从备份中复制所有内容,然后启动并运行。

当然,这里和那里都有调整(增量备份,存档等),你必须这样做才能使这个过程真实。

答案 11 :(得分:0)

家庭服务器警告!

我在我的开发服务器上安装了Home Server有两个原因:廉价版Windows Server 2003和备份原因。

备份软件方面的事情受到严重打击或遗漏。如果您在安装Home Server的过程中“将”计算机添加到要备份的计算机列表中,通常一切都很棒。

但似乎在经过一段时间后,添加任何其他机器变得更加困难。

(例如:我在我的笔记本电脑上进行了完整的重建,尝试添加它 - NOPE!)

所以我非常怀疑这个平台在备份方面的可靠性。如果你不能相信它100%

,似乎是打败了目的

答案 12 :(得分:0)

如果您使用的是Mac,那么只需插入外部硬盘驱动器即可,内置的Time Machine软件将备份整个系统,然后按照您定义的计划维护增量备份。当我弄乱我的环境时,这让我多次陷入困境;安装更大的硬盘后,它还可以非常轻松地恢复我的系统。

对于非现场备份,我喜欢JungleDisk - 它可以在Mac,Windows和Linux上运行,并备份到Amazon S3(或者最近添加的Rackspace云服务)。如果您有多台计算机(甚至是虚拟机),并希望保留某些目录而不必考虑它,这是一个很好的解决方案。

答案 13 :(得分:0)

  • SuperDuper每隔几周完成可启动的备份
  • 每日最重要目录的Time Machine备份
  • 代码存储在网络subversion / git服务器
  • 使用cron在Web服务器上进行mysql备份,使用ssh / rsync将其下载到我们的本地服务器上,也使用cron nightly。

答案 14 :(得分:0)

我想建议外部RAID容器,或者只是外部驱动器容器,最好使用FireWire 800进行连接。

我还想建议制造商让备份驱动器进入容器。我读了很多关于驱动器的评论说他们失败了我不知道该怎么想。

我不喜欢像Mozy这样的备份服务,因为我不想让他们不相信我的数据。

答案 15 :(得分:0)

我的开发机器使用Retrospect和Acronis进行备份。这些是夜间备份,在我睡着时运行 - 一个到外部驱动器,一个到网络驱动器。

我的所有源代码都在SVN存储库中,我将所有存储库保存在一个目录下,因此我有一个运行脚本的计划任务,该脚本为所有SVN存储库提供路径并执行许多热门文件(使用hotcopy.py脚本)以及每个存储库的svndump。

我的工作机器会备份,但是他们会处理它,但是我也有相同的脚本运行来将hotcopies和svndumps放到几个备份的位置上。

我确保工作备份,一个位置不在SAN上,是的,它是备份和管理的,但是当它关​​闭时,它就会关闭。

答案 16 :(得分:0)

我有以下备份方案,并使用rsync作为主要备份工具。

  1. 每周)用于“裸机”恢复的Windows备份
    系统驱动器的内容C:\使用Windows备份在物理磁盘发生故障后快速恢复,因为我不想从头开始重新安装Windows和应用程序。这配置为使用Windows备份计划自动运行。

  2. 每日条件)使用rsync进行活动内容备份
    Rsync处理来自笔记本电脑,手机和其他设备的所有已更改文件。我每晚都会备份笔记本电脑,内容发生重大变化,例如将最近的照片RAW从SD卡导入笔记本电脑。

  3. 我创建了一个bash脚本,我在Windows上从Cygwin运行以启动rsync:https://github.com/paravz/windows-rsync-backup

答案 17 :(得分:0)

Windows Home Server。我的开发盒有两个驱动器,它们之间有大约750GB的数据(C:300GB SAS 15K RPM驱动器上有应用程序和系统,D:是一个带有我所有登记的镜像1TB)。我使用Windows Home Server来备份这台机器,并在重新启动后成功恢复了几次。

答案 18 :(得分:0)

我使用xcopy在启动时将所有个人文件复制到外部硬盘。

这是我的startup.bat:

xcopy d:\ files f:\ backup \ files / D / E / Y /EXCLUDE:BackupExclude.txt

此recurses目录,仅复制已修改的文件并禁止替换现有文件的消息,BackupExclude.txt中的文件/文件夹列表将不会被复制。

答案 19 :(得分:0)

我使用SuperDuper!并将我的虚拟机备份到另一个外部驱动器(我有两个)。 所有代码都在SVN服务器上。 如果我的失败,我有一个干净的VM。但无论哪种情况,安装WinXP + Vstudio都需要几个小时。我不会在那个盒子里使用任何其他东西。

答案 20 :(得分:0)

像其他几个人一样,我有一个干净的虚拟电脑拷贝,我可以随时抓取并重新开始,所有代码都存储在颠覆中。

答案 21 :(得分:0)

在工作NetBackup或PureDisk,取决于框,在家rsync。

答案 22 :(得分:0)

我没有。

我们进行持续集成,经常将代码提交给中央源代码控制系统(它像疯了一样备份!)。

如果我的机器最多死了,我已经失去了几天的工作。

我需要做的就是从鬼图像设置开发环境或者花一天时间粘贴CD,在Windows更新后重新启动等等,以获得干净的磁盘。不是很愉快的一天,但我确实得到了一个很好的清洁机。

答案 23 :(得分:0)

我们有一个名为Altiris的公司解决方案,它可以在需要时运行。这取决于外面是否在下雨。我认为Altiris可能是一个雨神,只是不知道。当它不能正常工作时我很高兴,因为这意味着我可以恢复99%的CPU使用率,非常感谢你。

除此之外,我们无权安装其他软件解决方案以备份或允许我们这样做的地方。我们不允许从我们的机器上移走数据。

所以,我最后只是在嘲笑这种疯狂的时候交叉着手指。

答案 24 :(得分:0)

我只是为团队工作整理出来。网络上包含所有常用工具的图像。 (我们实际上已准备好热交换机)。所有正在进行的工作也在网络上进行。

所以开发者机器热潮。使用热交换机并继续。停机时间约15分钟+咖啡休息时间。

答案 25 :(得分:0)

也许只是一个简单的硬件硬盘raid将是一个良好的开端。这样,如果一个驱动器发生故障,您仍然可以在raid中使用另一个驱动器。如果驱动器以外的其他设备出现故障,您可以将这些驱动器弹出到另一个系统并快速获取文件。