11月中旬,我从托管公司租用的VPS停止响应。当我联系支持人员时,他们解释说,数据中心断电会导致强制重启和fsck。最终,我问为什么要花这么长时间,并被告知该卷的大小为30 TB。我上次收到更新是在2月,他们没有回复我最近的询问。
我知道fsck对于某些文件系统可能非常慢,但是对于30 TB的卷,fsck可能需要6个月的时间,还是我应该假设这家托管公司在骗我,以便我继续为每笔账单支付费用月?
11月中旬,我从托管公司租用的VPS停止响应。当我联系支持人员时,他们解释说,数据中心断电会导致强制重启和fsck。最终,我问为什么要花这么长时间,并被告知该卷的大小为30 TB。我上次收到更新是在2月,他们没有回复我最近的询问。
我知道fsck对于某些文件系统可能非常慢,但是对于30 TB的卷,fsck可能需要6个月的时间,还是我应该假设这家托管公司在骗我,以便我继续为每笔账单支付费用月?
Answers:
fsck
速度主要取决于文件的数量以及它们在相应目录中的传播方式。就是说,一个月六个月fsck
是绝对荒谬的:它最多应该在几个小时内完成,特别是如果使用xfs
具有快速xfs_repair
实用性的工具。在这里,您可以找到一些fsck
规模运行-全部在一小时(3600秒)内完成。因此,您的机器不可能fsck
仍在运行。
无论如何,意外的功率损耗不会导致全速运行fsck
,而只会导致非常快速(几秒钟)的日志重放。但是,如果某些密钥文件已损坏,则操作系统可能无法启动。
但是他们可能只是对你撒谎。您应该立即停止付款,寻求解释并申请全额退款。
ext2
,则电源故障将需要充满电fsck
,并且如果30 TB的大量使用卷需要几天的时间,我也不会感到惊讶。另一方面,如果它们使用ext2
的是30TB卷,那么这本身就是寻找其他地方托管服务的原因。
猜想:他们的系统使用无BBU / FBWC的RAID(甚至是软件RAID),并且所有可能的写缓存(包括硬盘本身中的写缓存)均设置为最激进的设置,以便以最低的成本获得最高的性能。在这种设置上发生的严重停电可能会使日记文件系统处于无法信任日记且无法用于恢复的状态。问题在于,这样的系统会主动重新排序并推迟写入,这意味着可以在丢失数据操作的情况下写入日记条目,或者在随后的数据操作中丢失日记条目。
从最坏的情况下中断恢复这样的系统可能意味着您必须执行“慢速” fsck /修复,以实际检查所有文件系统结构,这实际上可能需要一两天才能达到30TB。您不太可能必须运行多个修复周期。此外,可能并不总是有人员来监视此情况,因此您很容易每周只能执行一次fsck。他们可能放弃了,忘记了。
对于大多数文件系统,即使存在错误,它也会更快,因为通常只检查元数据。
在最坏的情况下,它可能会读取整个磁盘(例如,类似的磁盘,fsck.ext4 -cc /dev/sda
会对每个块进行无损写测试),这可能需要花费30 TB的几天时间。如果您知道驱动器的速度,则可以计算大小/速度。对于复制速度约为100 MB / s的消费类硬盘,数TB的存储可能比大多数人预期的要花费更多的时间。
如果它是您的服务器,则可能会出现问题,它会在fsck
询问您是否要修复错误时启动然后挂起。但是,fsck
当所有VPS都离线时,数据中心管理员不会被搁置6个月。
因此,他们要么对您说谎,要么存在巨大误解。或者他们前一段时间正在运行fsck,并且在完成新问题后没有更新您的信息。
fsck
遍历所有文件系统结构,这主要意味着执行随机I / O。因此,基于顺序传输速率的上述计算不是很有用。