ฉันเขียนสคริปต์ PowerShell เพื่อให้มีอิมเมจ vhdx จากเซิร์ฟเวอร์จริงโดยใช้ Disk2vhd cli พร้อมกำหนดเวลาและการเก็บรักษา
Disk2vhd ไม่มีรหัสออก ดังนั้นฉันจึงไม่เข้าใจเมื่อทำงานและเมื่อล้มเหลว
ฉันคิดเกี่ยวกับการใช้ ทดสอบ-VHD cmdlet ที่ส่งคืน True หรือ False เมื่อ vhdx ตกลงหรือไม่ ฉันไม่พบเอกสารที่ชัดเจนเกี่ยวกับเรื่องนี้ ดูเหมือนว่าจะเกี่ยวข้องกับดิฟเฟอเรนเชียลดิสก์ ดังนั้นฉันจึงลองพิสูจน์เชิงประจักษ์:
ฉันเริ่ม disk2vhd เพื่อสร้าง vdisk จากโฮสต์ hyper-v เพราะฉันรู้ว่ามี cmdlet "Test-vhd" ฉันประมวลผล disk2vhd แบบ taskkilled แล้วทดสอบด้วย Test-VHD และส่งคืน $False ตามที่ควรจะส่งคืนเมื่อ VHDX เสียหาย ดังนั้นปัญหาหนึ่งจึงได้รับการแก้ไข
ตอนนี้ฉันต้องการเริ่มใช้สิ่งนี้บนเซิร์ฟเวอร์จริง แต่ฉันสังเกตเห็นว่า "Test-VHD" คือ ไม่ได้อยู่ฉันต้องการทราบว่ามีใครรู้วิธีเพิ่มบนเซิร์ฟเวอร์จริงหรือไม่ โดยไม่ต้องติดตั้งระบบนิเวศของ Hyper-v ทั้งหมด.
เซิร์ฟเวอร์จริงทั้งหมดอยู่บน Windows Server 2012 R2 และฉันไม่สามารถติดตั้งซอฟต์แวร์ส่วนที่ 3 สำหรับการสำรองข้อมูลและไม่สามารถรีบูตได้ง่ายๆ ดังนั้นวิธีเดียวคือสร้างสคริปต์สกปรกยุ่งเหยิงของฉัน
ฉันลองใช้วิธีการสุดเจ๋งนี้: การเพิ่ม Hyper-V Powershell cmdlets ให้กับโฮสต์ Hyper-V ออฟไลน์
และคำสั่งปรากฏขึ้น แต่เมื่อฉันพยายามเริ่ม cmdlet มันจะส่งคืน:
TEST-VHD : ไม่ได้ติดตั้งบทบาท Hyper-V บนโฮสต์ปลายทาง เพิ่ม
บทบาท Hyper-V บนโฮสต์นั้น แล้วเรียกใช้ cmdlet นี้อีกครั้ง
ที่บรรทัด:1 ตัวอักษร:1
ดูเหมือนว่าจำเป็นต้องติดตั้งบทบาท hyper-v อย่างสมบูรณ์ใช่ไหม
ฉันกำลังมองหาวิธีอื่น ความช่วยเหลือหรือข้อเสนอแนะใด ๆ ขอขอบคุณ!