我是否应该为完整的服务器备份创建一个单独的分区?

我是否应该为完整的服务器备份创建一个单独的分区?

在我开始提问之前,我只想声明我不是系统管理员,而是一个寻求帮助的外行。

我使用的是 Linux 3.10.0-514.26.2.el7.x86_64 和 Amazon Web Services 外部备份服务。为了使其正常工作,我需要在服务器上创建一个备份目录,所有文件将被压缩、复制到该目录,并由外部备份服务访问。

问题是 - 我应该在该目录上安装一个单独的分区吗?备份会占用大量的硬盘空间,为此目的设置一个单独的分区理论上可以保证我的日常服务器操作和网站不会因可用磁盘空间不足而出现问题。

但这是正确的方法吗?还有更好的方法吗?

答案1

我不敢苟同另一个答案,并且认为适当的分区对于在很多方面维护 Linux 服务器至关重要(关于 Windows 我不能说太多,因为这不是我的经验)。

我确实总是使用单独的分区进行备份,这不仅对正确规划空间非常有帮助,而且对恢复过程也非常有帮助。下面让我概述一下(原谅我使用手机输入的格式不好):

  1. 单独的分区可以实现容量隔离,这样即使某个分区上的所有可用空间都被占用,也不会影响系统的其余部分。以 /var/log 为例。我见过一些服务器,用户无意中破坏了 logrotate,日志占用了 100% 的根目录(或者,例如,流量突然增加时可能会发生这种情况)。

  2. 如果使用 AWS,单独磁盘上的单独分区将允许您将其安装到另一个实例并在那里恢复数据(例如用于法医调查)

  3. (不仅与备份相关)单独的分区将允许您在挂载时设置 noexec 属性,以最大限度地减少可能的入侵(事实上,除了可执行文件所在的分区之外,系统上的大多数分区都应该这样做)

既然您提到这是 AWS 系统,我建议您不要在服务器上安装单独的 EBS 磁盘,而是使用 S3fs 扩展并安装 S3 存储桶作为备份分区。这样做的好处是 S3 上的数据具有很高的持久性。

注意 2 点:您必须始终监控备份是否成功执行,并且必须定期测试数据可恢复性(阅读例如发生在 Gitlab 上

此外,如果您决定使用另一个 EBS 磁盘 - 请不惜一切代价避免使用 LVM,因为 1 - 跨多个磁盘的 LVM 分区碎片很容易导致数据丢失(不幸的是 LVM 还没有它的作者希望的那么好)和 2 - 您现在可以在 AWS 上扩展 EBS 磁盘,因此您可以添加更多空间而不会产生 LVM 碎片。

答案2

不。就你的情况而言,分区从长远来看只会让生活变得更加艰难。你只是增加了未来*可能失败的几率。

解决磁盘空间不足类问题的方法有两个:

  1. 监测(立即反应)。
  2. 容量规划(长期)。

如果你已经实施了这些然后你会发现有些非常神秘活动可能会突然增加备份的大小,因此您会有一个(不稳定的)理由来引入分区。

[*] 作为系统管理员(事实上您就是),您的首要职责是比您的用户更加悲观。

相关内容