Kaip naudoti DD komandą, norint nukopijuoti VHD failus į fizinį standųjį diską



Išbandykite Mūsų Instrumentą, Kaip Pašalinti Problemas

Virtualiojo kietojo disko (VHD) failai yra milžiniški failai, imituojantys fizinių laikmenų naudojimą „VirtualBox“ ir kai kuriuose kituose virtualiuose x86 / x86_64 emuliatoriuose. Tai leidžia paleisti „Windows“, OS X, „MS-DOS“, „FreeBSD“, „OpenBSD“, „OS / 2“ ar net kitas „Linux“ versijas jūsų „Linux“ paskirstyme. Šie failai neleidžia tiesiogiai įrašyti jų turinio į fizinį diską naudodami komandą dd, leidžiančią tą patį padaryti su ISO, tačiau yra būdas tai padaryti. Nors kai kuriuose vadovuose reikalaujama konvertuoti VHD failą į ISO, jums nereikės to daryti, jei „VirtualBox“ naudojate bet kurioje šiuolaikinėje „Linux“ versijoje. QEMU vartotojai taip pat turi išeitį, nors tai reiškia daugiau žaidimų.



Turėsite įsitikinti, kad nė vienas iš diskų ar skaidinių, su kuriais dirbsite, nėra tie, iš kurių paleidžiate. Šiame pavyzdyje mes ką tik panaudojome padalytą NAND atminties dalį, tačiau galbūt norėsite naudoti tiesioginį DVD ar USB įkrovą, jei kitaip negalėtumėte to padaryti. Nepriklausomai nuo to, kokiu būdu paleidote atitinkamą mašiną, paleiskite terminalo programą laikydami nuspaudę „Ctrl“, „Alt“ ir T, ieškodami jos „Ubuntu Dash“ arba atidarydami ją iš „System Tools“ meniu „Xfce4“ arba „LXDE“.



1 metodas: „VBoxManage“ naudojimas iš komandinės eilutės

Lengviausias būdas tai padaryti yra tradicinio „VirtualBox“ diegimas. Pirmiausia įsitikinkite, kad sukūrėte visus duomenis, dėl kurių nerimaujate praradę, nes sunaikinsite visus duomenis apie paskirties vietos fizinę aparatinę įrangą, o taip pat galėtumėte ką nors padaryti VHD ar VHDX failui. Tai taikoma ir kitam metodui, taip pat viskam, kas susiję su komandomis, kurios yra tokios žalingos.



Kai įsitikinsite, kad viskas saugu ir kad paskirties diskas nėra sumontuotas, bet vis tiek pritvirtintas prie įrenginio, pasakykite išorinį standųjį diską, kurį vis tiek prijungėte, bet neįdėjote arba netgi galite būti neapdorotas, nes neteksite jame visko. proceso metu paleiskite VBoxManage clonehd freeBSD.VHDX –formato RAW freeBSD.RAW pakeisdami freeBSD.VHDX savo virtualiuoju kietuoju disku. Testavimo tikslais turėjome virtualų standžiojo disko failą su šiek tiek nuosaikiu „FreeBSD“ diegimu, taigi ir pavadinimu.

Kai tik ši komanda bus baigta, paleiskite sudo dd if = freeBSD.RAW iš = / dev / sde , pakeisdamas RAW failo pavadinimą ką tik sukurtu RAW ir SDE blokavimo įrenginiu iš tikrųjų jus dominančiu įrenginiu. Jei nesate tikri, visada galite paleisti sudo fdisk -l kad įsitikintumėte, jog žinote teisingą skaidinio pavadinimą. Kaip ir naudojant dd bet kam kitam, nenorite rašyti į netinkamą įrenginį.

Galite gauti klaidą apie tai, kad įrenginyje nelieka vietos, lygiai taip pat, jei bandytumėte parašyti didelį failą į mažesnį įrenginį, tačiau bandymuose tai nesukėlė problemų. Panašu, kad šis procesas prideda papildomų nulių. Priešingu atveju jūs sugebėjote nukopijuoti virtualų diską į fizinį diską tik dviem žingsniais, be abejo, apgauti.



2 metodas: naudodami komandą „QEMU Disk Network Block Device Server“

Vartotojams, turintiems prieigą tik prie „Quick Emulator“ (QEMU) virtualizacijos sistemos, teks susidurti su šiek tiek labiau susijusi procedūra nei tiems, kurie turi prieigą prie „VBoxManage“ komandos. Komandų eilutėje paleiskite sudo modprobe nbd paskui qemu-nbd -r -c / dev / ndb0 -f vpc „ourTest.vhd“ , pakeitus failo pavadinimą, kad jis atspindėtų tikrąjį failo pavadinimą, su kuriuo dirbate. Jums gali prireikti sudo, kad paleistumėte „qemu-nbd“, atsižvelgiant į tai, kaip sukonfigūravote diegimą. Jei kopijuojate komandas iš čia ir įklijuojate, prieš vykdydami būtinai pakeiskite jas. Daugeliu atvejų čia turėsite nerimauti tik dėl „ndb0“ įrenginio, todėl jums neturėtų kilti jokių problemų.

Kai tai bus padaryta, galėsite rašyti skaidinį „qemu-nbd -P 2 -r -c / dev / nbd2 -f vpc ourTest.vhd“ paskui sudo ddrescure -v -f / dev / nbd2 / dev / sde2 , tačiau nepamirškite pakeisti įrenginio failų failais, kuriuos iš tikrųjų domitės. Jei kopijuojate ir įklijuojate juos į savo terminalą, būtinai pakeiskite tuos failų pavadinimus ir skaidinių numerius tais, į kuriuos bandote rašyti. Mūsų / dev / sde įrenginys buvo tik naudojama SDHC kortelė, kurią naudojome norėdami tai saugiai išbandyti nieko nepažeisdami. Jums gali prireikti sudo, kad paleistumėte „qemu-nbd“, bet jums jo nereikėtų. Taip pat gali tekti mesti skaidinių numerius, atsižvelgiant į konfigūraciją. Dėl šių priežasčių QEMU procesas nėra toks intuityvus.

„Hyper-V“ vartotojai gali turėti VHDX vaizdą, o ne VHD failą. Jei taip yra, tuomet turėsite paleisti „qemu-nbd -c / dev / nbd0 -f VHDX ourTest.vhd“ dar kartą pakeisdamas failo pavadinimą. Nors šis formatas buvo „Windows Server 2012“ priedas, siekiant padidinti virtualizuotų mašinų talpą, vis daugiau „Linux“ vartotojų kreipiasi į jį norėdami išvengti 2 TB ribos, kurią turi VHD. Kitu atveju šios instrukcijos turėtų veikti neatsižvelgiant į faktinį failo dydį. GNU ddrescue įrankis turėtų veikti kaip dd, nors jis pirmiausia nukopijuoja geriausius blokus.

Kai tai bus paleista, vartotojai, dirbantys su VHDX vaizdais, turės paleisti sudo ddrescue -v -f / dev / nbd2 / dev / sde2 , vėl pakeisdami failus aukščiau. Kitu atveju gali naudoti visi, turintys visų tipų „VirtualBox“ vaizdus „qemu-nbd -P 2 -r -c / dev / nbd2 -f vpc ourTest.vhd“ prijungti aptariamą skaidinį taip, lyg tai būtų senas diskas. Turėsite naudoti sudo mount / dev / nbd2 / cdrom arba sudo mount / dev / nbd2 / mnt kad jį pritvirtintum. Prieš bandydami įsitikinkite, kad nieko kito neprijungėte prie / cdrom ar / mnt katalogų.

3 metodas: failo atjungimas ir atjungimas

Norėdami atjungti vaizdą, paprasčiausiai turite naudoti sudo umount / mnt arba sudo umount / cdrom kad jį atseit. Pats „Linux“ branduolys buvo užimtas gydant jį taip, lyg tai būtų bet koks kitas tūris.

Vis tiek turėsite jį atjungti nuo QEMU sistemos, todėl įveskite qemu-ndb -d / dev / nbd2 norėdami jį atjungti.

4 minutes perskaityta