Ubuntu 12.04.1 saya berjalan di virtualbox kehabisan ruang ketika saya menginstal perangkat lunak di atasnya dan sekarang tidak me-reboot . Saya punya file yang harus saya pulihkan. Saya memiliki ubuntu64.vdi
file di laptop Windows 7 (host) saya dan saya bertanya-tanya apakah ada cara untuk memulihkan file dari file vdi.
Secara paralel, saya menghasilkan mesin 12.04.1 baru di virtualbox di laptop yang sama, dan saya akan menggunakan yang bukan borked.
Saya dapat menambahkan borked vdi
ke daftar disk di yang berfungsi. Lalu saya menggunakan gnome nautilus untuk memasang disk ber-bork.
Saya dapat menemukan file di sana, tetapi mereka berusia sekitar 2 bulan. Saya pikir ini bertepatan dengan terakhir kali saya melakukan snapshot virtualbox dari mesin, tetapi bukan terakhir kali saya mendapatkan mesin yang berfungsi, yang kemarin. Apakah ada cara untuk memasang vdi
kemarin, tepat sebelum crash?
Diedit:
Inilah yang Virtual Media Manager
memberi tahu saya tentang ubuntu64.vdi
file saya :
EDITED2:
Saya menyalin saya ubuntu.vdi
ke USB eksternal dengan banyak ruang disk. Saya mencoba menggunakan Windows untuk mengkloningnya, tetapi mendapat kesalahan:
Saya mencoba hal yang sama dari VM yang berfungsi melalui folder bersama drive USB, dan memulai kloning. Butuh beberapa saat, tetapi selesai dengan sukses:
root@precise64:/media/sf_E_DRIVE/copy_of_ubuntu64_vm_folder_20140224/ubuntu64#
VBoxManage clonehd ubuntu64.vdi ubuntu64.raw --format RAW
0%...
10%...20%...30%...40%...50%...60%...70%...80%...90%...100%
Clone hard disk created in format 'RAW'. UUID: 90f99198-18e1-40ee-85fe-c083dcbb1ac3
EDITED3:
Setelah membuat file mentah, saya jalankan testdisk
dengan Deeper Search
, saya mendapatkan daftar seperti ini:
Ater Deeper Search
telah selesai, saya mendapatkan daftar seperti ini:
Tapi saya tidak tahu snapshot mana yang ... Ada ide?
sumber
rsync
.Vboxmanage clonehd 2208...
(salin UUID terbaru di sini). Lihat serverfault.com/a/506581/195528Jawaban:
Dari baris perintah
Jika kita menggunakan Ubuntu sebagai tuan rumah, kita dapat mengubah disk .vdi menjadi disk mentah dengan perintah berikut:
Kami kemudian dapat membuka testdisk dengan file ini untuk memulihkan file pada gambar drive virtual (juga lihat di bawah):
Dari mesin virtual
Jika image drive VDI yang rusak masih terdaftar di Virtual Box, kami mungkin dapat menambahkan gambar ini sebagai drive ke mesin virtual baru kami:
Mulai Ubuntu virtual Anda yang telah kami tambahkan .vdi yang rusak tetapi jangan memasang drive .
Buat direktori pada partisi yang terpasang di sana untuk menampung data yang dipanen (mis.
~/rescued
),Instal testdisk di mesin virtual.
Mulai testdisk dari terminal di sana:
Pilih drive yang sesuai untuk mengambil data dari (ditampilkan di sini untuk
/sdb
) dan pilih[Proceed]
Pilih tata letak partisi yang sesuai (biasanya
Intel
)Pilih
[Analyse]
-[Quick Search]
Pilih partisi yang berisi data untuk dipanen (di sini hanya ada satu partisi NTFS):
Tekan P untuk mendaftar file pada partiton itu.
Telusuri ke direktori yang berisi data. Lihat nama file untuk memastikan Anda memang memilih yang benar.
Pilih direktori atau file yang akan dipanen dengan menggunakan : . Semua file / direktori yang dipilih akan ditandai hijau:
Tekan huruf besar C untuk menyalin semua direktori / file yang dipilih ke direktori penyelamatan yang akan dipilih pada langkah berikutnya.
Pilih direktori pada partisi Ubuntu VM yang terpasang untuk menyimpan data yang diselamatkan:
Tekan c untuk mulai menyalin data dari .vdi yang rusak ke direktori penyelamatan kami di VM sehat Anda.
Catatan:
Jika kita tidak dapat melihat file-file kita dengan
[Quick Search]
opsi di 6. kita mungkin harus melakukan a[Deeper Search]
. Ini juga akan mencantumkan partisi yang dihapus dan ditimpa sebelumnya. Jadi kita perlu memastikan kita memilih partisi yang sesuai di mana data kita berada.Jika kami telah mengambil snapshot dari .VDi kami mungkin menemukan ini dalam
~/.VirtualBox/Machines/<Name of Machine>/Snapshots/{###}.vmdk
tetapi setiap kali kami telah menggunakan fitur snapshot dari Virtual Box setiap perubahan dari snapshot akan ditulis ke file diferensial.Untuk menggabungkan file diferensial dengan hard drive kita perlu menghapus semua snapshot (yang mungkin bukan yang kita inginkan karena kita bisa mengembalikan ke snapshot sebelumnya daripada memanggil pemulihan data), atau kita perlu mengkloning drive mesin menggunakan:
Kemudian kami mengikat klon untuk menyelamatkan kami VM seperti yang digambarkan di atas.
Menulis ke .vdi yang rusak hanya dapat dilakukan setelah data aman karena hal ini dapat merusak sistem file.
Seandainya rescue kami Ubuntu terlalu kecil untuk menampung data yang diselamatkan, kami dapat membuat drive virtual baru untuk diikat ke VM. Drive ini kemudian harus dipasang di VM untuk dapat menyimpan data dari testdisk di sana.
sumber
Deeper Search
untuk menjelajahinya lagi.Deeper Search
, dan setelah beberapa jam, melihat-lihat lagi konten yang ingin saya pulihkan: mereka masih menunjuk ke versi musim panas 2013 dari mesin virtual, lebih awal dari sekadar memasang partisi dengan gnome nautilus, yang memberi saya bulan Januari Versi 2014, tetapi masih tidak dapat menemukan file dari dua hari yang lalu.1) Cobalah untuk memulihkan snapshot oleh UUID, gunakan hack berikut:
masukkan perintah
C:> VBoxManage clonehd <UUID> CloneDisk.vdi
Semoga ini bisa membantu, saya menemukan solusinya di sini: ( https://forums.virtualbox.org/viewtopic.php?t=791 )
2) jika langkah-langkah dalam 1) tidak berhasil, inilah langkah-langkah lain yang dapat Anda coba. Cara mengkloning Status Saat Ini dari disk:
Solusi ini dari sini: ( http://www.im-code.com/blog/blog/2012/02/04/virtualbox-clone-snapshots/ ) Keduanya berbicara hampir sama.
sumber
Saya memiliki sistem Linux yang rusak
/
danfsck
tidak dapat memperbaikinya . Saya menggunakan pendekatan sederhana berikut:/home/user/
folder. Ingatlah untuk menyalin file tersembunyi (file pengaturan).Bekerja dengan baik untuk saya. Disk korupsi hanya menghambat boot, tidak ada kehilangan data di folder rumah saya.
sumber