Kua pakaru te mekameka whakaahua miihini mariko (.VMDK / .VHDX / .QCOW2) me te whakaora kōpae¶
He rereke nga nama ohorere i ia whenua. Ka whakamahia e tenei wharangi te 911, te nama mo te United States me Canada. He maha nga whenua e whakamahi ana i te 112, 999, tetahi atu nama ranei. Kimihia te nama mo to whenua.
I te wa e whakangaotia ana e tetahi Miihini Mariko (VM) i runga i VMware ESXi / Taumahimahi, Microsoft Hyper-V, Proxmox VE / QEMU-KVM, ranei Oracle VirtualBox ka kore ohorere ki te whakakaha i muri i te korenga o te mahi taapiri, ka pau te mokowā kōpae (0 bytes free), ka pa ranei tetahi kaiwhakahaere ki tetahi konae whakaahua, ka taea e te pawhiri ohorere te whakakore i nga marama, tau ranei o nga raraunga pakihi ora. Ko nga whakaahua miihini mariko ** ehara i te tino taapiri motuhake**; he pakarukaru Tapa-i-Tuhituhi (CoW) nga mekameka rerekee momo (*-000001-delta.vmdk, *.avhdx, konae-tuarua ranei .qcow2 whakakikoruatia) kei reira nga poraka kotahi i tuhia mai i te tangohanga o te hopukanga ka ora anake i roto i nga konae delta tamariki, i te wa e noho toka ana te kopae turanga taketake i mua.
Mena ka kite koe i nga hapa penei "The parent virtual disk has been modified since the child was created (Parent CID does not match)" i roto i te VMware, "Cannot boot: The chain of virtual hard disks is broken" i te Hyper-V, ranei "Could not open backing file: L1/L2 table corrupted" i roto i te QEMU/Proxmox, tohu ano i te VM ki te Kopae Turanga (flat.vmdk turanga ranei .vhdx) me te whakaara ake he mate. Ma te mahi pera ka whakapouri i te tūmau i te 6 marama ki muri i te waihangatanga o te whakaahua tuatahi, ka whakakorea te hononga GUID/CID matua-tamariki cryptographic me te whakaputa i nga whakaahua delta katoa mai i taua ra he pani me te kore e taea te whakakotahi.
Ko tenei aratohu e whakarato ana i nga taahiraa-i-te-taahiraa i te hangahanga mekameka hopu whakaahua-kore, te whakatika pane-whakaahua-whakaahua, me nga kawa tangohanga konae manuhiri-waho i runga i te VMware na Broadcom Knowledge Base Articles (KB 1007969 / 316578 me KB 1002511), Microsoft Hyper-V Merge-VHD a Set-VHD nga whakaritenga hangarau, QEMU qemu-img a libguestfs (guestmount) nga paerewa mo te whakawakanga, me te Whakaputa Motuhake NIST 800-86.
Mahia tenei inaianei¶
Ki te kore te mihini mariko ki te timata, ka makahia ranei he mekameka whakaahua pakaru / hapa mariko kua pakaru:
- KAWA rawa e whakatika i nga tautuhinga VM kia tika mai i te Kopae Turanga (
Server.vmdkraneiServer.vhdx) i te wa ka hopukina nga whakaahua (-000001.vmdkranei.avhdx) kei roto i te kōpaki. I te wa ka peke tika te punaha whakahaere manuhiri i te kōpae matua mo te 2 hēkona, ka tuhia e te OS manuhiri nga tohu tohu wa me nga whakahōu hautaka NTFS/ext4 ki te kōpae turanga, me te whakarereke i te Ihirangi ID o te kōpae matua (CID) i roto i te VMware, i te ** GUID Hononga / Timetamp** kei Hyper-V. Ka pakaruhia e taua peke kotahi te mekameka katoa o nga whakaahua tamariki e whakawhirinaki ana ki te kopae turanga e noho tio-mo-moka ana. Mēnā kei te pā tō rūma tūmau i te ahi kaha, te korenga o te whakamatao, te morearea tinana ranei, whakatahi ka waea atu ki to nama whawhati tata (911 i te United States me Canada, 112 puta noa i te Kotahitanga o Europi, 999 i te United Kingdom) tirohia ranei tau ohorere. - ** KAUA e mukua
.avhdx,-delta.vmdk, ranei-sesparse.vmdki roto i te Windows Explorer, i te ESXi Datastore Browser ranei hei "whakawatea mokowā kōpae."** Kaore i rite ki nga konae rangitahi noa,.avhdxa-delta.vmdkngā kōnae KO to puku mārō ora o nāianei. Mēnā i waihangahia he whakaahua 8 marama ki muri e te mahi pūrua Veeam/CommVault ka mau tonu, ka 100 ōrau o ia tauwhitinga pātengi raraunga, nama, me te konae i hangaia i roto i nga marama 8 kua hipa ka penapena ki roto.avhdxranei-delta.vmdkkōnae. Ma te whakakore i a raatau ka mukua nga raraunga katoa i hangaia mai i te tiimatanga o te whakaahua. - Tapahia, katahi ranei te katoa
.vmdk,.vhdx/.avhdx, ranei.qcow2kōnae ki te rōrahi rokiroki waho / tuarua I mua i te whakahaere i tetahi whakahau hanumi, mahi, whakatika ranei. Ko te hanumi i te mekameka hopu whakaahua ka tuhi whakamuri i nga paraka delta katoa ki roto i te kōpae matua i te waahi. Ki te rahua te hanumi i te hauruatanga na te kino o te wahanga kōpae, te putunga raraunga ranei i te hapa katoa, ka kino nga kōpae matua me nga kōpae tamaiti mena ka tangohia e koe he kape konae i te tuatahi. - Mena i rahua te kaitirotiro i te mea i pa te Kaihautu Raraunga / Volume 100% Katoa (
No space left on device), KAUA E ngana ki te "Muku / Whakakotahi i nga Whakaahua" tae noa ki te taapiri mokowātea, ki te kati ranei ki te toa raraunga nui ake. Ko te whakakotahi i te mekameka whakaahua-maha ka hiahia mokowhiti mokowhiti kia rite ki te rahi o te kōpae delta nui rawa atu. Ko te ngana ki te whakakotahi i runga i te 99% te katoa o te toa raraunga ka tukitukia te hypervisor i waenga o te mahi. - Maherehia te matua tika -> mekameka whakawhirinaki tamariki ma te whakamahi i nga whakahau tirotiro-anake (
vmkfstools -e,Get-VHD, raneiqemu-img info --backing-chain) i mua i te pa ki te paita kotahi. Ka whakaingoatia e ia pane whakaahua whakaahua te ingoa ingoa matua me te ID cryptographic matua e tika ana kia noho ki runga ake.
flowchart TD
A["Ka Whakakahore a VM ki te Whakaara: He Maena Whakaahua Whatiwhati, Maatua CID Tauritenga, he kino ranei te VMDK/VHDX/QCOW2"] --> B["KAOTI: KAUA e whakaoho tika i te kōpae turanga, kaua hoki e mukua nga konae -delta.vmdk, .avhdx ranei"]
B --> C["Hipanga 1: Tirohia te Toa Raraunga Kaihautū / Mokowā Kore Rorohiko (`df -h` / `rarangi punaha putunga rokiroki esxcli`)"]
C --> D["Hipanga 2: Tāruahia nga konae turanga me nga konae whakaahua ki te puku tuarua NAS/SAN/USB i mua i te whakarereketanga"]
D --> E{"Ko tehea Kaitirotiro / Hōputu Kōpae Mariko e pa ana?"}
E -->|"1. VMware ESXi / Taupunimahi (.vmdk / -flat.vmdk / -delta.vmdk / -sesparse.vmdk)"| F["Tirotirohia nga kaiwhakaahua kuputuhi (`cat *.vmdk`) & tirohia mekameka (`vmkfstools -e Server-000002.vmdk`)"]
F --> G{"He aha te he o VMware VMDK?"}
G -->|"CID Maatua Taurite (`parentCID .= CID o matua`)"| H["Whakatikahia te whakamaarama kupu kupu tamariki `.vmdk` kia taurite ai a `parentCID` ki te `CID' a te matua, RĀNEI ka kii i te kōpae rau hohe ki te VMDK whakatōpū hou (`vmkfstools -i`)"]
G -->|"Kei te ngaro te whakamaarama kupu 1-KB `.vmdk` (Kei te `-flat.vmdk` nui anake)"| I["Tātaihia te rahi o te paita / 512 rängai ka waihangahia te tuhinga-tokau `.vmdk` whakaahua me te `vmkfstools -c`"]
E -->|"2. Microsoft Hyper-V (.vhdx me .avhdx mekameka)"| J["Tirotirohia te mekameka mai i te mea hou `.avhdx` whakarunga: `Tikina-VHD -Ara *.avhdx | Tīpakohia te Ara,ParentPath`"]
J --> K["Honoa ano te atatohu matua kua pakaru (`Tautuhi-VHD -Ara child.avhdx -ParentPath parent.vhdx -IgnoreIdMismatch`) ranei hanumi tuimotu (`Hanumi-VHD`)"]
E -->|"3. Proxmox / KVM / QEMU (.qcow2) ranei VirtualBox (.vdi)"| L["Takina `qemu-img info --backing-chain`; whakatikahia nga ripanga kaute/L2 (`qemu-img taki -r katoa`) ranei rebase (`qemu-img rebase -u`)"]
H --> M["Whakaora Whakaora Kōnae i waho o te Roopu: Whakauhia nga mekameka ki te aratau Panui-anake ma te `guestmount --ro` ranei `7-Zip` / `UFS Explorer`"]
I --> M
K --> M
L --> M
Te maarama me pehea te mahi a nga mekameka whakaahua miihini mariko¶
Ahakoa kei te whakahaere koe i te VMware ESXi, Microsoft Hyper-V, Proxmox/KVM, VirtualBox ranei, ka mahia e ia hypervisor nga whakaahua ma te whakamahi i te ahua rite tonu te hoahoanga: he raarangi hono kotahi o nga Kopae Maatua Panui-anake me tetahi Kopae Delta Rau-Tuhituhi Tamariki.
[Base Disk: Server.vmdk / Server.vhdx] <-- Frozen Read-Only at Snapshot 1 (e.g., Jan 1)
| (Points to Parent Path + Parent CID/GUID: 1234abcd)
[Snapshot 1: Server-000001.vmdk / Server_A.avhdx] <-- Frozen Read-Only at Snapshot 2 (e.g., June 1)
| (Points to Parent Path + Parent CID/GUID: 5678ef01)
[Snapshot 2 (Active Leaf): Server-000002.vmdk / Server_B.avhdx] <-- Active Read/Write Today (Oct 31)
- Ina hiahia te VM ki te tuhi he poraka hou i tenei ra, ka tuhi ANAKE ki te konae rau o raro (
Snapshot 2). - Ina hiahia te VM ki te panui poraka i tenei ra, ka tirohia e te hypervisor
Snapshot 2tuatahi. Mena i whakarereketia taua poraka mai i te 1 o Hune, ka panuitia maiSnapshot 2. Ki te kore, titiro ake te mekameka kiSnapshot 1. Mena kaore i whakarereketia ki reira, ka panuihia te poraka taketake mai i teBase Disk. - He aha te take ka pakaru ai nga mekameka: Ka penapenahia e ia tamaiti nga whakaahua e rua nga tohu tohu ki tona pane: (1) Ko te ara konae a tona matua tonu, me (2) He ID Ihirangi 32-bit (
CIDi roto i te VMware) ranei 128-bit Hononga GUID (ParentUniqueIdi roto i te Hyper-V) ka whakahouhia i nga wa katoa ka whakatuwherahia te kōpae matua hei tuhi. Ki te nekehia e te tangata he konae, ka whakaingoa ano i tetahi kōpaki, ka whakairi poto ranei te kōpae matua ki te aratau panui-tuhi,CID/GUIDka huri, ka kore tonu te kaitirotiro e whakaae ki te whakairi i te whakaahua o te tamaiti hei aukati i te pirau paraka wahangu.
| Pūharaharaitua | Kōnae Kōpae Tuāpapa | Whakaahuatanga / Kōnae Delta | Utauta CLI Tirohanga mekameka | Utauta Whakakotahi Haumaru / Hanumi CLI |
|---|---|---|---|---|
| VMware ESXi (VMFS-5 / VMFS-6) me te Taupunimahi | VM.vmdk (500-paita-whakaahua kupu-tokau) + VM-flat.vmdk (raraunga kōpae rua raw) |
VM-000001.vmdk (whakaahua kupu) + VM-000001-sesparse.vmdk (VMFS-6) ranei VM-000001-delta.vmdk (VMFS-5) |
vmkfstools -e VM-000002.vmdk a cat VM*.vmdk |
vmkfstools -i VM-000002.vmdk /vmfs/volumes/NewDS/Merged.vmdk (Karekau-whakangaromanga ki waho-wahi-waahi clone/hanumi) |
| Microsoft Hyper-V (Tumau Matapihi) | VM.vhdx (he taonga tuku iho ranei .vhd) |
VM_<GUID>.avhdx (ranei .avhd) |
PowerShell: Tikina-VHD -Ara *.avhdx \ | Tīpakohia te Ara,ParentPath,VhdType |
PowerShell: Set-VHD -Path child.avhdx -ParentPath parent.vhdx a Merge-VHD -Path child.avhdx -DestinationPath parent.vhdx |
| Proxmox VE / QEMU / KVM (Linux) | vm-100-disk-0.qcow2 (rōrahi LVM/ZFS mata ranei) |
Paparua o waho .qcow2 me te pane pane tautoko (me te ripanga whakaahua QCOW2 o roto ranei) |
qemu-img info --backing-chain top_overlay.qcow2 |
qemu-img convert -O qcow2 top_overlay.qcow2 flattened_rescue.qcow2 (Te haumaru atu i waho o te waahi papatahi) ranei qemu-img commit |
| Oracle VirtualBox | Disk.vdi (i roto i te kōpaki VM) |
{UUID}.vdi roto Snapshots/ kōpakiroto + .vbox Rēhita pāpāho XML |
VBoxManage showmediuminfo disk "{UUID}.vdi" |
VBoxManage clonemedium disk "{Newest_Snapshot_UUID}.vdi" Flattened_Rescue.vdi |
Track 1: Whakaorangia VMware ESXi & Tauihana Mahi .vmdk mekameka whakaahua¶
I roto i te VMware ESXi, kei roto i te kōpae mariko kotahi e rua nga konae motuhake mo te kopae turanga me e rua nga konae motuhake mo ia whakaahua:
1. He iti (-500-paita) Kuputuhi-Tonu Kōnae Whakaahua (Server.vmdk a Server-000001.vmdk) e mau ana te CID, parentCID, āhuahanga kōpae, me te ingoa kōnae pū o te whānuitanga ā-rua. (Tuhipoka: Ko te taonga ESXi Datastore Browser web GUI e huna ana i te takirua -flat.vmdk a -sesparse.vmdk ko nga konae rua me te whakaatu i te ata kotahi kua hanumi, ME whakamahi koe i te SSH terminal session i runga i te kaihautu ESXi kia kite i nga konae pono).
2. He Kōnae Roonga Raraunga-rua-kipaita-rua (Server-flat.vmdk mo te kopae turanga, me Server-000001-sesparse.vmdk ranei Server-000001-delta.vmdk mo ia whakaahua).
Scenario 1A: Whakatikatika "The parent virtual disk has been modified since the child was created (Parent CID mismatch)"¶
- SSH ki te kaihautu ESXi ka whakatere ki te raarangi toa raraunga a VM:
- Tia te
CID,parentCID, aparentFileNameHintputa noa i nga kaiwhakaahua kuputuhi katoa.vmdkkōnae i te wā kotahi: (He mea nui: Rere anakecatraneigrepi runga i te whakamaarama kuputuhi 500-paita iti.vmdkkōnae, KAUA i runga i te maha-kipaita-flat.vmdkranei-sesparse.vmdkkōnae). - Whakatauritehia te
CIDo ia matua ki teparentCIDo tana tamaiti tata: Tirohia te putanga:Server.vmdk: CID=1a2b3c4d parentCID=ffffffff (ffffffff means this is the root Base Disk) Server-000001.vmdk: CID=99887766 parentCID=55443322 <-- ERROR: Should equal Server.vmdk's CID (1a2b3c4d) parentFileNameHint="Server.vmdk" Server-000002.vmdk: CID=aabbccdd parentCID=99887766 <-- OK: Matches Server-000001.vmdk's CID (99887766) parentFileNameHint="Server-000001.vmdk" - ** Whakatikahia te pakaru
parentCIDi roto i te whakaahua tamaiti me te manatoko kivmkfstools -e:** - Tuatahi, tāruatia ngā kōnae whakamārama kuputuhi (
cp Server-000001.vmdk Server-000001.vmdk.bak). - Tuwhera
Server-000001.vmdki rotovime te huriparentCID=55443322kiparentCID=1a2b3c4d(tauriteServer.vmdko nāianeiCID). - Whakamatautauria te tika o te mekameka mai i te hou (tino-nui) whakaahuatanga kei te whakamahi
vmkfstools -e: - Mena kei te mau tonu te mekameka, ka puta a ESXi:
Disk chain is consistent. - KORE-KORE WHAKATOKANGA (
vmkfstools -iKawa-waho-waho): - Mehemea
Server.vmdki whakarereke paku i mua i to whakatika i teparentCID, Kaua e whakakotahi ki runga i to kape anake. Engari, tohuvmkfstools -ii te whakaahua rau hou (Server-000002.vmdk) ka whakakaohia te mekameka katoa ki roto i te VMDK hou, kotahi te papatahi i runga i te toa raraunga me te mokowā wātea: vmkfstools -ipanui ia poraka maiServer-000002.vmdkki raroServer-000001.vmdkaServer-flat.vmdki roto i te Aratau Panui-anake ka tuhia he ma, he whakaahua-koreServer_Merged.vmdkme te kore e pa ki o konae taketake.
Tauari 1B: Te hanga ano i te 500-paita kua ngaro, kua mukua ranei .vmdk whakamārama kuputuhi ina Server-flat.vmdk kei te mau tonu¶
I etahi wa ka mukua e te kaiwhakahaere, te tuhinga pakaru ranei Server.vmdk (ka pirau ranei ki 0 bytes), na te Pūtirotiro Raraunga Raraunga ka mutu te whakaatu i te kōpae mariko, ahakoa te 500-kipaita nui Server-flat.vmdk ko te konae kei roto 100 ōrau o ō raraunga tūturu kei te noho tonu ki reira i SSH (ls -la *-flat.vmdk).
Ka taea e koe te hanga ano i te kupu-tokau kua ngaro Server.vmdk whakaahua i roto i te 60 hēkona me te kore e ngaro te paita kotahi o nga raraunga kei roto Server-flat.vmdk:
# 1. Check the exact byte size of your existing Server-flat.vmdk:
ls -l Server-flat.vmdk
# Example output: -rw------- 1 root root 107374182400 Oct 31 12:00 Server-flat.vmdk (Exactly 107,374,182,400 bytes)
# 2. Create a temporary dummy VMDK of that EXACT byte size in /tmp or the datastore:
vmkfstools -c 107374182400 -d thin temp_dummy.vmdk
# 3. Delete the dummy binary file (temp_dummy-flat.vmdk) and rename the 500-byte descriptor to Server.vmdk:
rm -f temp_dummy-flat.vmdk
mv temp_dummy.vmdk Server.vmdk
# 4. Edit Server.vmdk in 'vi' and change the filename inside quotes from "temp_dummy-flat.vmdk" to "Server-flat.vmdk":
sed -i 's/temp_dummy-flat.vmdk/Server-flat.vmdk/g' Server.vmdk
# (Also delete the line 'ddb.thinProvisioned = "1"' if the original disk was thick-provisioned)
Scenario 1C: Wewete a .vmdk kua maukatihia e te kaihautu ESXi i whakairihia, kua takatakahia ranei te takawaenga (Cannot open the disk: Failed to lock the file)¶
Mena ka kore te VM e kaha ki te mahi Failed to lock the file ranei Cannot open disk: Resource busy, ko tetahi atu kaihautu ESXi kei roto i te tautau (he taputapu Veeam/backup HotAdd ranei i tuki i te wa o te taapiri) kei te pupuri tonu i te raka o te konae SCSI / VMFS. -flat.vmdk ranei -sesparse.vmdk:
1. Tirohia mena kei te VM te takawaenga takawaenga kua pakaru tonu to VM mahi .vmdk kua piri ki tana kaiwhakahaere SCSI mariko: Whakatikahia nga tautuhinga o o Veeam/CommVault takawaenga VMs ka tango i nga kopae whakaputa kua piri (whiria "Tangohia mai i te Miihini Mariko," KAUA "Mukua nga konae mai i te toa raraunga").
2. Kimihia ko tehea wahitau MAC kaihautu ESXi me te mahinga o te ao e mau ana te raka VMFS:
vmx ID ao (esxcli vm process list), ka whakamutua te ao whakairi (esxcli vm process kill --type=force --world-id=<WorldID>).
Riu 2: Whakaorangia a Microsoft Hyper-V .vhdx a .avhdx mekameka whakaahua¶
I roto i te Microsoft Hyper-V, ka hangaia e ia waahi tirotiro (whakaahua) he kopae mariko rereke me te toronga .avhdx (ranei .avhd i runga i te whakatakotoranga VHD tawhito) kua tohua he ingoa ingoa GUID roa penei ProdSQL_A1B2C3D4-E5F6-7890-ABCD-1234567890AB.avhdx.
Hipanga 1: Maherehia te wa tika .avhdx rakau matua-tamariki i PowerShell¶
I mua i te hanumi, te hono ano ranei i tetahi mea i roto i te Kaiwhakahaere Hyper-V, whakatuwheratia he matapihi Elevated Administrator PowerShell ki te kaihautu Hyper-V, whakatere ki te kōpaki kei roto to .vhdx a .avhdx kōnae, ka whakahaere i tenei rarangi-kotahi hei whakaatu i te mekameka matua-tamariki mai i te mea hou ki te mea tawhito:
# Inspect every .vhdx and .avhdx in the directory, sorted by LastWriteTime:
Get-ChildItem -Filter "*.*vhd*" | ForEach-Object {
Get-VHD -Path $_.FullName -ErrorAction SilentlyContinue |
Select-Object Path, ParentPath, VhdType, FileSize, Size
} | Format-List
Titiro ki te Path a ParentPath mara. Ka whakaatuhia e ratou te raupapa mekameka tika:
- ProdSQL.vhdx -> ParentPath: (blank) (Kopae Putake Putake, Tawhito)
- ProdSQL_1111.avhdx -> ParentPath: D:\VMs\ProdSQL.vhdx (Tamaiti 1)
- ProdSQL_2222.avhdx -> ParentPath: D:\VMs\ProdSQL_1111.avhdx (Tamaiti 2)
- ProdSQL_3333.avhdx -> ParentPath: D:\VMs\ProdSQL_2222.avhdx (Kopae Rau Hohe Hou Hou)
Hipanga 2: Whakatika "The chain of virtual hard disks is broken" ranei "Differencing disk parent ID mismatch" (Set-VHD -IgnoreIdMismatch)¶
He aha mena ka nekehia e tetahi te kōpaki VM mai C:\VMs\ ki E:\VMs\, i poka noa ranei ProdSQL.vhdx mo te 5 hēkona, ka puta ProdSQL_1111.avhdx ki te kore:
The chain of virtual hard disks is broken. The system cannot locate the parent virtual hard disk for the differencing disk ranei There is a mismatch in the virtual disk identifiers?
Whakamahia te cmdlet Hyper-V PowerShell mana Set-VHD me te -IgnoreIdMismatch kara (i muri i te tautoko i nga konae i te tuatahi):
# Relink a child .avhdx to its parent .vhdx/.avhdx (adding -IgnoreIdMismatch if the parent timestamp/GUID shifted):
Set-VHD -Path "E:\VMs\ProdSQL_1111.avhdx" -ParentPath "E:\VMs\ProdSQL.vhdx" -IgnoreIdMismatch
Hipanga 3: Hanumi ā-ringa i te pani .avhdx mekameka mai i NEWEST ki OLDEST (Merge-VHD)¶
I te wa e waiho pani ana e tetahi kaihoko tautoko 15 .avhdx nga konae kei roto i to kōpaki kua kore e puta i roto i te rakau "Tirotiro" Kaiwhakahaere Hyper-V, me hanumi a ringa ki PowerShell i te wa e whakawetohia ana te VM.
Danger
Te Ture Rino o Hyper-V .avhdx Hanumi: Me hanumi tonu koe mai i te NEWEST (rau nohinohi) .avhdx ki tona matua tonu, me mahi i to huarahi ma te hikoi whakamuri ki runga i te mekameka tae noa ki te turanga anake .vhdx noho tonu.
Hei tauira, i roto i te mekameka Base.vhdx <- Child1.avhdx <- Child2.avhdx <- Child3_Newest.avhdx:
1. Hanumi Child3_Newest.avhdx -> ki roto Child2.avhdx.
2. Hanumi Child2.avhdx -> ki roto Child1.avhdx.
3. Hanumi Child1.avhdx -> ki roto Base.vhdx.
4. Tohua nga tautuhinga VM ki Base.vhdx me te potae.
Whakahaerehia enei whakahau PowerShell tika i runga i te kape mahi o te kōpaki:
# Step 1: Merge Child 3 (Newest) into Child 2:
Merge-VHD -Path "E:\VMs\ProdSQL_3333.avhdx" -DestinationPath "E:\VMs\ProdSQL_2222.avhdx"
# Step 2: Merge Child 2 into Child 1:
Merge-VHD -Path "E:\VMs\ProdSQL_2222.avhdx" -DestinationPath "E:\VMs\ProdSQL_1111.avhdx"
# Step 3: Merge Child 1 into the Base .vhdx:
Merge-VHD -Path "E:\VMs\ProdSQL_1111.avhdx" -DestinationPath "E:\VMs\ProdSQL.vhdx"
Track 3: Whakaorangia Proxmox VE / QEMU / KVM .qcow2 me VirtualBox .vdi mekameka¶
1. Te arowhai me te whakatika i nga Ripanga QCOW2 L1/L2 Cluster & Refcount kua pakaru (qemu-img check)¶
I te wa ka mate te kaihautu Linux KVM, Proxmox ranei i te mate ohorere kaore he keteroki e tautokohia ana e te pākahiko, a .qcow2 He maha nga wa karekau te kōpae mariko ki te whawhai qcow2: Marking image as corrupt: L2 table offset unaligned ranei Refcount block corrupted.
1. Tuatahi kape te .qcow2 kōnae (cp vm-100-disk-0.qcow2 vm-100-disk-0.qcow2.bak)
2. Whakaarohia te mekameka tuara me te raarangi whakaahua o roto:
2. Te whakatika i te ara Kōnae Whakamuri QCOW2 kua pakaru (qemu-img rebase -u)¶
Mena he whakaahua o waho QCOW2 (overlay.qcow2) ka rahua te tuwhera na te mea ko tana kōnae tautoko matua (base.qcow2) i nukuhia ki te whaiaronga hou, ki te puna rokiroki ranei, whakahōuhia te atatohu konae tuara ki te kore haumaru (-u, pane-anake) aratau me te kore tuhi ano i nga paraka raraunga:
3. Te whakapati i te mekameka QCOW2, VMDK, VHDX ranei, ki roto i te ahua motuhake hou (qemu-img convert)¶
Ko tetahi o nga taputapu tino pai ki te whakaora miihini mariko ko qemu-img convert (e panui maori .qcow2, .vmdk, .vhdx, .vhd, a .vdi). Ina tohu koe qemu-img convert i te whakaahua rau hou o te mekameka whaimana, ka panuihia te katoa o nga rarangi matua-tamariki i roto i te ** aratau Panui-anake** me te tuhi i tetahi kōpae mariko hou-hou, whai-whaiaro, karekau he whakaahua i runga i to rokiroki whakaora:
# Non-destructively flatten an entire QCOW2, VMDK, or VHDX chain into a single clean image:
qemu-img convert -p -O qcow2 top_snapshot_leaf.qcow2 /mnt/rescue_storage/flattened_clean.qcow2
Riu 4: Whakaorangia nga konae i waho-o-ropu (Te tango i nga konae ka kore tonu te VM e puhipuhi)¶
Ka pewhea mena ka kore e taea te whakahaere i te punaha whakahaere manuhiri i roto i te kōpae mariko, ka pakaru ranei tetahi whakaahua o waenga o te mekameka ka hiahia koe ki te tango i nga papaa raraunga SQL (.mdf/.ldf), nga konae QuickBooks, /var/lib/mysql, nga tuhinga kamupene ranei i roto i nga meneti 30 e whai ake nei?
Kaore koe e hiahia ki te whakaara i tetahi Miihini Mariko hei tango i nga konae kei roto i tana puku mariko mariko. Whakamahia tetahi o enei taputapu whakapuru-waho-waho e toru e kore e whakamate:
Tikanga 1: Maunga tetahi .vmdk, .vhdx, .qcow2, ranei .vdi i te Aratau Panui-anake i runga i te Linux ma te whakamahi libguestfs (guestmount / qemu-nbd)¶
Tāuta libguestfs-tools (sudo apt install libguestfs-tools qemu-utils i runga i te Ubuntu/Debian/Proxmox) ka whakairihia te whakaahua rau hou i roto i te Panui-anake Aratau (--ro):
# Option A: Using guestmount (Automatically detects internal guest LVM/partitions and mounts read-only):
sudo mkdir -p /mnt/vm_rescue
sudo guestmount -a /path/to/Newest_Leaf_Snapshot.vmdk -i --ro /mnt/vm_rescue
# (If guest OS partitions fail auto-inspection due to dirty NTFS journal, list partitions with 'virt-filesystems -a disk.vmdk -l'
# and mount the specific partition directly with '-m /dev/sda2 --ro -o norecover')
# Option B: Attaching the virtual disk chain as a Read-Only Network Block Device (/dev/nbd0):
sudo modprobe nbd max_part=16
sudo qemu-nbd --read-only --connect=/dev/nbd0 /path/to/Newest_Leaf_Snapshot.qcow2
sudo partprobe /dev/nbd0
lsblk /dev/nbd0
# Now mount /dev/nbd0p2 read-only (with -o ro,norecover for NTFS or -o ro,noload for ext4):
sudo mount -o ro,norecover /dev/nbd0p2 /mnt/vm_rescue
Tikanga 2: Tangohanga Panui-anake Inamata i runga i te Matapihi e whakamahi ana 7-Zip ranei Disk Management -> Attach VHD (Read-Only)¶
- Ma te whakamahi i te 7-Zip (Kei te mahi
.vmdk,.vhdx,.vhd,.qcow2, a.vdi): Pāwhiri-matau i te tūkotahi, kua papatahi ranei.vmdk,.vhdx, ranei.qcow2kōnae i runga i Windows ka tīpako 7-Zip -> Tuwhera Pūranga. Ko te 7-Zip ka poroporoaki i nga ripanga wehewehe GPT/MBR me nga punaha konae NTFS/ext4 ki roto i nga kōpae mariko i roto i te aratau panui-anake 100%, ka taea e koe te toia me te tuku i nga kōpaki manuhiri ki runga i to papamahi i roto i nga hēkona. - Ma te Whakahaere Kopae Windows (Mo
.vhdx/.avhdx): Tuwheradiskmgmt.msc-> Mahi -> Whakapiri VHD -> Tirotiro ki te rau hou.avhdx(ranei.vhdx), Tirohia te pouaka mo[X] Read-only(KORERO: Kaua rawa e wareware ki te taki Pānui-anake, ka whakarerekētia e Windows te pane kōpae), ka paato i te OK. Ka puta tonu nga puku C: me D: o VM ki Windows File Explorer.
Tikanga 3: Te hanga ano i nga mekameka kua tino pakaru ki te UFS Explorer Professional Recovery¶
Mena he kopae matua i roto i te mekameka VMDK, VHDX ranei i poka noa, ka whakahurihia, ki te mea kua kowhatu te pirau o te toa raraunga VMFS/NTFS i tetahi wahi o te -sesparse.vmdk ranei .avhdx ka whakakorehia e nga taputapu hypervisor, UFS Explorer Professional Recovery (ranei R-Studio Technician) ka taea e koe te whakahiato-a-ringa i te kōpae taketake me ia whakaahua delta tamaiti ki roto i te tikanga Virtual Delta Stack i roto i te rorohiko RAM, ma te karo i te hypervisor CID/GUID he arowhai pane ki te whakairo me te tango i nga konae manuhiri.
Riu 5: Te whakaora i te konae whirihora VM pani (.vmx, .xml, ranei <vmid>.conf)¶
I etahi wa ko te mekameka kōpae mariko tonu (*.vmdk, *.vhdx, ranei *.qcow2) he 100 paiheneti kei runga i te rarangi rokiroki, engari ko te konae whirihoranga iti e whakaatu ana i te tahora taputapu a te Miihini Mariko (.vmx i roto i te VMware ESXi, <GUID>.vmcx / .xml i te Hyper-V, ranei /etc/pve/qemu-server/<vmid>.conf i roto i te Proxmox VE) kua kino, kua mukua ohorere, kua kore ranei i te wa o te tukinga kaihautu.
Mena ka hanga ano e koe he anga whakakapinga VM me te he o te kaiwhakahaere rokiroki mariko, aratau firmware ranei, ka pakaru tonu te punaha whakahaere manuhiri i runga i te whawhai. INACCESSIBLE_BOOT_DEVICE (Windows) taka ranei ki roto i te dracut / initramfs anga ohorere (Linux). Whakaoritehia enei tautuhinga taputapu e wha ki to whirihoranga manuhiri taketake i mua i te taapiri i to kōpae mariko i whakaora:
| Tautuhinga Pūmārō Mariko | Tohu Ki te He te Tautuhi i runga i te Whakakapi VM | Me pehea te whakatau i te Tautuhinga Tika me te kore te Tawhito .vmx / .vmcx |
|---|---|---|
1. Aratau Whakaara Rorohiko (UEFI / OVMF vs Legacy BIOS / SeaBIOS) |
Ko nga whakaaturanga VM "Operating System Not Found" ka taka tika ranei ki roto i te UEFI Interactive Shell (Shell>). |
Tirotirohia te ripanga wehewehenga o te kōpae mariko (fdisk -l ranei virt-filesystems -a disk.vmdk --partitions --long). Mena he 100 MB to te kōpae ki te 512 MB FAT32 EFI System Wehewehenga (ESP) me te whakamahi i te ripanga wehewehenga GPT, ME tautuhi koe i te VM firmware ki UEFI. Mena ka whakamahia e te kōpae he ripanga wehewehe MBR (dos) kaore he wehewehenga EFI, tautuhia te firmware ki Legacy BIOS. |
2. Momo Kaiwhakahaere Rokiroki Mariko (VMware Paravirtual SCSI - PVSCSI vs LSI Logic SAS vs NVMe vs VirtIO SCSI) |
Ka maka e Matapihi a 0x0000007B / INACCESSIBLE_BOOT_DEVICE Mata Kahurangi; Ka taka a Linux ki roto initramfs: /dev/mapper/root does not exist. |
I roto i te VMware ESXi, tirohia te kuputuhi-maama .vmdk kōnae whakaahua mo te raina ddb.adapterType = "lsilogic" ranei "buslogic" tirohia ranei vmware.log kei roto i te kōpaki VM (grep -i "scsi0.virtualDev" vmware.log), e tuhi ana i nga korero o mua .vmx papakupu mai i te whawhai angitu whakamutunga. |
3. Wāhitau MAC Pūurutau Whatunga Mariko me te Atekōkiri (VMXNET3 vs E1000e vs VirtIO-Net) |
He putu OS manuhiri, engari ka ngaro tana wahitau IP pateko, raka raihana ranei na te mea ka kitea he kaari whatunga "hou" (eth1 hei utu mo eth0). |
Rapua nga mea tawhito vmware.log kei roto i te raarangi toa raraunga a VM (grep -i "ethernet0.generatedAddress" vmware.log) ki te whakaora i te wahitau MAC 6-paita tika (00:50:56:xx:xx:xx) ka whakapiri ki nga tautuhinga whatunga a VM whakakapi. |
4. TPM Mariko 2.0 (vTPM) & BitLocker / LUKS State |
Ka tono a Windows BitLocker mo te kii whakaora 48-mati i te wa e whawhai ana te .nvram / vTPM kei te ngaro te kawanatanga. |
I roto i te VMware ESXi, tiakina tonu te <VM_Name>.nvram me .vmsd nga konae kei te taha o te .vmdk kōnae; i te Hyper-V, tiakina te Virtual Machines\<GUID>.vmgs (Whahanga Manuhiri) kia hono tonu nga taviri TPM mariko. |
Pātai auau¶
Ka aha mena ka tohu noa taku VM ki te turanga taketake `.vmdk` ranei `.vhdx` konae ka whakaara ake kia kite he aha kei roto?
KAUA rawa e mahi i tenei me te kore e tautoko i nga konae i te tuatahi, KAUA rawa e puhipuhi i te kopae turanga ki te aratau panui-tuhi i te wa e hopukina ana (`-000001.vmdk` ranei `.avhdx`) kei te noho. Tuatahi, i whakatotokahia te kopae turanga i te ra tika me te meneti i hangaia ai te whakaahua tuatahi, mena kua 6 marama e rere ana tetahi whakaahua, ka pekehia te kōpae turanga i to kaimau i te 6 marama ki muri, ka ngaro nga konae katoa i hangaia i te haurua o te tau. Tuarua, me te mea kino rawa atu, i te wa tonu ka puta mai te punaha whakahaere manuhiri mai i te kopae turanga, ka tuhia e ia nga raarangi whakaoho me nga huringa hautaka ki te kopae turanga, ka whakarereke i ona waahanga me te whakarereke i tana ID Ihirangi (`CID`) ranei GUID Hononga. Ka pakaru tonu te mapi paraka delta e hiahiatia ana e nga whakaahua katoa o to tamaiti.
He aha taku toa raraunga VMware ESXi e whakaatu ana `Server-000001.vmdk` he rite tonu te rahi 500 GB rite `Server.vmdk` i roto i te pūtirotiro tukutuku?
He tohu whakaatu tenei o te VMware ESXi Tukutuku Kaituku Raraunga Raraunga. I roto i te UI pūtirotiro tukutuku, ka huna e ESXi te kaupapa `-flat.vmdk`, `-delta.vmdk`, a `-sesparse.vmdk` kōnae rua me te whakaatu i te *kaha arorau kua whakaritea* o te kōpae, kaua ki te mokowā tinana e pau ana i te konae delta. Hei kite i nga ingoa konae tinana pono, nga rahi paita tika, me nga konae whakamaarama tuhinga, whakaahei SSH i te kaihautu ESXi, takiuru ma te Terminal/PuTTY, whakatere ki `/vmfs/volumes/
Me pehea e taea ai e au te whakakotahi i te VMware, te Hyper-V ranei nga whakaahua ina 100% te ki tonu o te toa raraunga kaihautu (0 paita kore utu)?
Ka pa te toa raraunga ki te 0 paita kore utu, ka rahua te "Muku Whakaahua Katoa / Whakakotahi" i roto i te waahi na te mea ko te hanumi i te Whakaahua 2 ki te Whakaahua 1 ka piki ake te rahi o te Whakaahua 1 i mua i te whakakorenga o te Whakaahua 2. E toru nga huarahi haumaru: (1) Rapua me te muku, te neke ranei *tetahi atu* nga konae ISO kore-nui, nga konae rangitaki tawhito, me nga VM whakamatautau kua whakakorehia i runga i taua toa raraunga hei whakawātea i te 15 ki te 20 paiheneti rūma upoko; (2) Mena ko te raupapa rokiroki he SAN / NAS (iSCSI / NFS / FC), whakawhānuihia te LUN me te whakatipu i te VMFS / NTFS rōrahi ipurangi i te 100 GB; ranei (3) Whakauruhia he puku USB o waho, he tiri NFS ranei ki te kaihautu me te whakamahi `vmkfstools -i Server-000002.vmdk /vmfs/volumes/New_NFS_Share/Merged.vmdk` (ranei `qemu-img convert` / `Merge-VHD` ki tetahi atu reta puku) ki te whakakotahi i te mekameka *i waho o te waahi* ki te rua o nga rōrahi rokiroki ma te whakamahi i nga paita kore o te mokowā tuhi ki te toa raraunga katoa.
Me pehea taku arai i nga raupaparorohiko taapiri penei i a Veeam, CommVault, Nakivo ranei kia waiho "nga whakaahua pani" huna ka whakakiia taku tūmau i muri mai?
Ka waihangahia e nga tono taapiri he whakaahua taapiri i te tiimatanga o nga mahi taapiri ia po kia taea ai e ratou te panui i te kopae turanga tio, katahi ka ako atu ki a ESXi, ki a Hyper-V ranei ki te muku/whakakotahi i taua whakaahua ka mutu te taapiri. I etahi wa, na te paunga o te rokiroki ka rahua marie te taahiraa tango whakaahua, ka waiho he huna `-000001.vmdk` ranei `.avhdx` e tipu ana mo nga marama tae noa ki te 100 ōrau o te toa raraunga. Whakaturia kia rua nga whakamarumaru aunoa: (1) Whakahohehia te whakaoho vCenter / Hyper-V / Proxmox kua hangaia mo `"Virtual Machine Snapshot Size > 20 GB or Age > 72 Hours"`, me (2) Whakaritea he arotake-anake PowerCLI, PowerShell ranei ia wiki (`Get-VM | Get-Snapshot` ranei `Get-ChildItem -Recurse -Filter *.avhdx`) ka tuku imeera ki to roopu kaiwhakahaere i nga wa katoa e noho ana tetahi konae whakaahua kua neke ake i te 3 ra i runga i te rokiroki whakaputa.
Kua tirohia nga puna¶
- VMware na Broadcom Hangarau Matauranga: KB 1007969 / 316578 (Whakatau "Kua whakarerekētia te kōpae mariko matua mai i te wa i hangaia ai te tamaiti" Nga Hapa Whakataunga CID), KB 1002511 (Te hanga ano i te Kaituhi Kopae Miihini Mariko kua ngaro.
.vmdkKōnae), me KB 10051 (E mohio ana ki nga Whakaahua Miihini Mariko i ESXi). - Microsoft Learn / Windows Server Hyper-V Engineering Documentation: Hyper-V PowerShell Tohutoro mo
Get-VHD,Set-VHD -IgnoreIdMismatch, aMerge-VHDWhakakotahi Kōpae Rerekē Tuimotu. - Kaupapa QEMU & Red Hat Enterprise Linux Virtualization Tuhinga: Ohiotia
qemu-imgā-ringa (info --backing-chain,check -r all,rebase -u,convert) melibguestfs(guestmount --ro) Panui-anake Te Tirohanga Kopae Mariko. - Oracle VirtualBox Tuhinga Hangarau:
VBoxManage showmediuminfoaclonemediumRerekē te Hangahanga Atahanga. - National Institute of Standards and Technology (NIST, United States): NIST Special Publication 800-86: Guide to Integrating Forensic Techniques into Incident Response (Virtual Machine Image Tiaki).
Nga kaiarahi e pa ana¶
- Ko te NAS me te RAID kua whakahekehia, te maha o nga puku puku, me te whakaora ZFS/Btrfs
- Ka uru ohorere a NVMe, SSD ranei ki te aratau panui-anake ka ngaro ranei i te BIOS
- Rahunga puku mārō me te whakaora raraunga ohorere
- Ko te ngoikore o te punaha whakahaere Linux me te whakatikatika GRUB
- Matapihi Kahurangi Matapihi (BSOD) me te whakatika patu
- Pūrua rorohiko: rautaki 3-2-1 me te whakaora kino
- Nga tau ohorere o te ao