![如何在Linux系統上製作驅動鏡像?](https://rvso.com/image/761004/%E5%A6%82%E4%BD%95%E5%9C%A8Linux%E7%B3%BB%E7%B5%B1%E4%B8%8A%E8%A3%BD%E4%BD%9C%E9%A9%85%E5%8B%95%E9%8F%A1%E5%83%8F%EF%BC%9F.png)
我想製作在實時伺服器上安裝和使用的分割區/磁碟的副本。顯然首先想到dd
的是,但是當進程運行時資料不一致且複製時發生某些變化時會出現資料不一致的問題。所以這不太好。
我想到的第二個想法是使用 RAID - 在 RAID0 中將 2 個 SSD 成像為 /dev/md0。我會將第三個相同大小的 SSD 加到 /dev/md0,RAID 將負責將新新增的磁碟與其他磁碟同步。當第三個驅動器同步時,我會將其從該陣列中刪除,並且我將擁有 /dev/md0 的功能齊全的副本,而不必擔心資料不一致。這樣對嗎 ?
或者是否有一些實用程式可以在不使用“RAID hack”的情況下發揮這樣的作用?
非常感謝您的任何幫助或提示。
答案1
我假設您使用的是某種風格的 Linux。
如果您使用基於 LVM 的分割架構安裝了系統,則可以建立已安裝邏輯磁碟區的 LVM 快照並從那裡複製,從而確保傳輸過程中資料處於靜態狀態。
這並不能保證資料在創建快照時是一致的;在創建快照之前,您還應該足夠勤奮地停止盡可能多的服務,特別是資料庫伺服器和任何其他檔案寫入密集型應用程式。但這不應該是一個真正的痛苦,因為快照創建幾乎是瞬時的,並且您可以立即重新啟動服務。
此方法不會複製 MBR、GPT 和開機載入程序,因為您仍然需要像 之類的低階複製工具dd
,但這只是靜態數據,因此您可以複製一次,然後透過 LVM 快照更新磁碟的其餘部分方法。