Kako uporabiti ukaz DD za kopiranje datotek VHD na fizični trdi disk



Preizkusite Naš Instrument Za Odpravo Težav

Datoteke navideznega trdega diska (VHD) so velikanske datoteke, ki posnemajo uporabo fizičnih medijev v VirtualBoxu in nekaterih drugih navideznih emulatorjih x86 / x86_64. Tako lahko v distribuciji Linuxa zaženete Windows, OS X, MS-DOS, FreeBSD, OpenBSD, OS / 2 ali celo druge različice Linuxa. Te datoteke vam ne omogočajo neposrednega zapisovanja njihove vsebine na fizični disk z ukazom dd, ki vam omogoča, da to storite z ISO, vendar obstaja način, da to storite. Medtem ko nekateri vodniki zahtevajo pretvorbo datoteke VHD v ISO, vam tega ne bo treba storiti, če uporabljate VirtualBox v kateri koli sodobni različici Linuxa. Tudi uporabniki QEMU-ja imajo izhod, čeprav gre za več igranja.



Prepričati se morate, da noben pogon ali particija, s katerimi boste delali, ni tisti, s katerega se zaženete. Za ta primer smo pravkar uporabili del particioniranega pomnilnika NAND, vendar boste morda želeli uporabiti zagon DVD-ja ali USB-ja v živo, če tega sicer ne bi mogli storiti. Ne glede na to, na kakšen način ste zagnali zadevno napravo, zaženite terminalski program tako, da držite Ctrl, Alt in T, ga poiščete na Ubuntu Dash ali odprete iz podmenijev System Tools v Xfce4 ali LXDE.



1. način: Uporaba VBoxManage iz ukaznega poziva

Daleč najlažje je to storiti z uporabo tradicionalne namestitve VirtualBox. Najprej se prepričajte, da ste varnostno kopirali vse podatke, za katere vas skrbi, da jih boste izgubili, ker boste uničili vse podatke na fizični strojni opremi cilja, hkrati pa bi lahko na koncu tudi kaj naredili z datoteko VHD ali VHDX. To velja tudi za drugo metodo, pa tudi za vse, kar vključuje ukaze, ki so tako uničujoči.



Ko se prepričate, da je vse na varnem in da je ciljni pogon odklopljen, a še vedno pritrjen na računalnik, recimo zunanji trdi disk, ki ste ga še vedno priključili, vendar ni nameščen ali je morda celo surov, saj boste na njem izgubili vse v procesu zaženite VBoxManage klonhd freeBSD.VHDX –format RAW freeBSD.RAW med zamenjavo freeBSD.VHDX z vašim navideznim trdim diskom. Za namene testiranja smo imeli navidezno datoteko na trdem disku z nekoliko zmerno namestitvijo FreeBSD, od tod tudi ime.

Takoj ko je ta ukaz končan, zaženite sudo dd if = freeBSD.RAW od = / dev / sde , zamenjava imena datoteke RAW z RAW, ki ste ga pravkar ustvarili, in naprave sde block z napravo, ki vas dejansko zanima. Če niste prepričani, lahko vedno zaženete sudo fdisk -l da se prepričate, da poznate pravo ime particije. Tako kot pri uporabi dd za karkoli drugega tudi vi ne želite pisati v napačno napravo.

Morda se prikaže napaka, da na napravi ni več prostora, tako kot če bi poskušali v manjšo napravo napisati veliko datoteko, vendar to pri testih ni povzročalo težav. Zdi se, da ta postopek dodaja dodatne ničle. V nasprotnem primeru ste lahko virtualni disk kopirali na fizični disk v samo dveh korakih z najmanjšim zavajanjem.



2. način: Z ukazom strežnika QEMU Disk Network Block Device Server

Uporabniki, ki imajo dostop samo do sistema za virtualizacijo Quick Emulator (QEMU), bodo morali opraviti z nekoliko bolj vključenim postopkom kot tisti, ki imajo dostop do ukaza VBoxManage. V ukaznem pozivu zaženite sudo modprobe nbd čemur sledi qemu-nbd -r -c / dev / ndb0 -f vpc ourTest.vhd , s spremenjenim imenom datoteke, ki odraža dejansko ime datoteke, s katero delate. Za zagon qemu-nbd boste morda potrebovali sudo, odvisno od tega, kako ste konfigurirali namestitev. Če od tu kopirate ukaze in jih prilepite, jih pred spreminjanjem spremenite. V večini primerov boste imeli tukaj vedno na voljo samo napravo ndb0, zato tam ne bi smeli imeti težav.

Ko končate, lahko particijo napišete z qemu-nbd -P 2 -r -c / dev / nbd2 -f vpc ourTest.vhd čemur sledi sudo ddrescure -v -f / dev / nbd2 / dev / sde2 , vendar ne pozabite zamenjati datotek naprave s tistimi, ki jih dejansko želite uporabljati. Če jih kopirate in prilepite v svoj terminal, potem imena datotek in številke particij zamenjajte s tistimi, na katere želite zapisati. Naša naprava / dev / sde je bila zgolj rabljena kartica SDHC, s katero smo to varno preizkusili, ne da bi karkoli poškodovali. Morda boste potrebovali sudo za zagon qemu-nbd, vendar ga ne bi smeli rabiti. Prav tako boste morda morali spustiti številke particij, odvisno od vaše konfiguracije. Iz teh razlogov postopek QEMU ni niti približno tako intuitiven.

Uporabniki Hyper-V imajo lahko namesto datoteke VHD sliko VHDX. V tem primeru boste morali namesto tega zagnati qemu-nbd -c / dev / nbd0 -f VHDX ourTest.vhd medtem ko je ime datoteke še enkrat zamenjal. Čeprav je bila ta oblika dodatek sistemu Windows Server 2012, da bi virtualiziranim računalnikom dodali večjo zmogljivost shranjevanja, se vedno več uporabnikov Linuxa obrača nanjo, da bi se izognili meji 2TB, ki jo ima VHD. V nasprotnem primeru bi ta navodila morala delovati ne glede na dejansko velikost zadevne datoteke. Orodje za reševanje GNU dd bi moralo delovati kot dd, čeprav najprej poskrbi za kopiranje najboljših blokov.

Ko se ta zažene, bodo morali zagnati uporabniki, ki delajo s slikami VHDX sudo ddrescue -v -f / dev / nbd2 / dev / sde2 , znova nadomešča zgoraj navedene datoteke. V nasprotnem primeru lahko uporabljajo vsi z vsemi vrstami slik VirtualBox qemu-nbd -P 2 -r -c / dev / nbd2 -f vpc ourTest.vhd da namestite zadevno particijo, kot da bi šlo za kateri koli stari disk. Morali boste uporabiti sudo mount / dev / nbd2 / cdrom ali sudo mount / dev / nbd2 / mnt da ga namestite. Preden poskusite, se prepričajte, da v imenike / cdrom ali / mnt ni nič drugega.

3. način: Odklop in nato odklop datoteke

Če želite sliko odstraniti, jo preprosto uporabite sudo umount / mnt ali sudo umount / cdrom da ga odlepite. Jedro Linuxa je bilo navsezadnje zasedeno, da bi ga obravnavalo, kot da gre za kateri koli drug zvezek.

Kljub temu ga boste morali odklopiti od sistema QEMU, zato vnesite qemu-ndb -d / dev / nbd2 da ga odklopite.

4 minute branja