Debian服务器的最小备份

(这是超级用户最初问的—他们在这里指出我更合适。)

我有一个在Amazon EC2实例中运行的新的Debian服务器。 我花了一段时间设置它,现在它工作得很好。 但是,因为它是一个云服务器,如果我(或其他人)按错了button,那么它的虚拟硬盘就会popup,我必须重新做一遍。 所以,我想做备份

但是我按字节存储,所以我想做一个小的备份。

应该可以备份一个完整的Debian服务器,通过logging当前安装的软件包(我可以通过dpkg –get-selections),debconf数据库的状态(我可以通过debconf-get-selections) ,然后只备份不能从包中取代的文件—也就是其他所有文件。 然后,恢复备份应该是重新安装软件包并将文件放在最前面。

棘手的部分是确定哪些文件属于包,哪些文件不包含。 有一个静态的子目录列表备份是不是真的很好,因为cruft蠕变。 我需要一种方法来自动确定一个特定的文件是否需要备份。

这正是我不想做的事情,因为我会弄错的。 有没有什么工具可以让我做到这一点?

(注意:我不是在寻找增量备份解决scheme,我想拍一个完整的快照。)

Rsnapshot听起来像它会为你工作。 它执行快照和增量备份。 空间非常轻。 有人在ServerFault可能有一个更好的答案。

大卫给出的问题给我留下了一个印象,与Kelbizzle提供的答案不同。

我认为这个问题是(如果我错了,请纠正我):我应该失去目前的configuration,我需要重新创build的最小信息量是多less? 这意味着不需要备份/ bin,/ usr / bin,/ sbin,/ usr / sbin等文件,因为这些是重要组件,已经在安装的软件包列表中描述过了,这可以用来获得

 sudo dpkg --get-selections 

所以剩下的就是configuration文件。 查看维基百科的 Linux文件系统层次结构页面 ,显示所有基本configuration都包含在目录中

 /etc, /opt, /usr/local, /usr/sbin, /usr/share 

如果你在主目录中安装了更多的软件包,你应该照顾那些; 安装目录已经被你select了,所以你应该知道要备份什么。 最后,现在的Linux隐藏在你的主目录中有几百万个文件。 因此,您还需要备份

 /home/your_name/.[aZ]* 

请记住,这是一个深度不同的树,子目录中有许多子目录。

总的来说,这比备份整个系统要less得多。 这一数量的信息可以被进一步提炼,但是这个数量级的降低(即大约10倍)应该使其负担得起,至less我希望是这样。