我知道软件选项 - 我的意思是,当正在运行的操作系统可能正在写入诸如日志之类的文件时,即使我尝试不主动使用它,它们实际上是如何实现这一点的?
我读到一条评论说他们可能会使用类似卷影复制之类的东西,它至少应该能创建一个一致的(未损坏的)磁盘映像,但我认为如果没有额外的逻辑,它可能会错过更新。它是否在较低级别挂接或在关机/启动时安排任务来完成事情?
答案1
我知道软件选项——我的意思是,他们实际上是如何实现这一点的,
这取决于具体的软件,但卷影复制可能是最常用的方法;有些产品会安装自己的过滤驱动程序(例如 Veeam Backup 有其“更改块跟踪”)。
也可以复制所有文件,然后进行最终重新同步以获取更改(尽管不能提供 100% 一致的系统,但有时已经足够好了)。这也是 VM 实时迁移通常实现的方式。
(Linux 没有通用快照,但它具有冻结文件系统的所有写入 I/O 的功能;通常是在制作 LVM 快照时的短暂时刻,但理论上它也可以用于克隆。)
如果没有额外的逻辑,它可能会错过更新
这通常不是问题——一般来说,您只是在克隆系统时不执行重要工作,因此任何错过的更改都是次要的(例如,将在下次启动时重新启动的后台更新,或与快照中未发生的更改有关的日志事件)。您不会以这种方式克隆生产数据库服务器。