Pertanyaan Bagaimana cara meningkatkan ukuran hard disk dari mesin virtual?


enter image description here

Saya telah kehabisan ruang di mesin virtual WinXP saya, yang saya berikan hanya 10 GB untuk saat saya membuatnya. Apakah ada cara mudah untuk meningkatkannya menjadi, katakanlah, 20 GB? Saya tidak bisa melihat opsi yang jelas dalam pengaturan VirtualBox.


Saran di bawah ini memberikan kesalahan ini

wim@wim-ubuntu:/media/data/winxp_vm$ VBoxManage modifyhd wim.vdi --resize 20000
VBoxManage: error: Cannot register the hard disk '/media/data/winxp_vm/wim.vdi' {46284957-2c09-4e70-8a49-bfbe0f7f681d} because a hard disk '/home/wim/VirtualBox VMs/winxp_vm/wim.vdi' with UUID {46284957-2c09-4e70-8a49-bfbe0f7f681d} already exists
VBoxManage: error: Details: code NS_ERROR_INVALID_ARG (0x80070057), component VirtualBox, interface IVirtualBox, callee nsISupports
Context: "OpenMedium(Bstr(pszFilenameOrUuid).raw(), enmDevType, AccessMode_ReadWrite, fForceNewUuidOnOpen, pMedium.asOutParam())" at line 210 of file VBoxManageDisk.cpp

Menghapus .vdi dari VirtualBox sebelum memanggil perintah VBoxManage, lalu menambahkannya kembali, berhasil. Tetapi sekarang saya tidak dapat mem-boot mesin virtual, saya mendapatkan layar yang mengkhawatirkan ini:

enter image description here

By the way, katanya FATAL: Could not read from the boot medium! System halted.


The vdi harus disambungkan kembali ke VM setelah perintah VBoxManage. Selanjutnya, partisi perlu diubah ukurannya dari WITHIN windows, karena Anda akan memiliki ruang kosong ini:

enter image description here

Saya dapat mengubah ukuran partisi dengan mudah menggunakan sedikit freeware yang disebut EASEUS Partition Master 9.1.0 Edisi Rumah.


232
2017-12-18 11:51


asal


Masalah Anda adalah Anda telah menghubungkan disk ke lokasi '/ media / data' dan tidak berada di lokasi '/ home / wim / VirtualBox VMs asli'. Saya telah menjawab dengan bagaimana saya memperbaikinya. - stolsvik
saya telah merinci pengalaman saya di sini: kmonsoor.wordpress.com/2012/05/26/virtualbox-increase-disk-size   jawaban "diterima" di bawah ini jauh dari benar. - kmonsoor
Ada kemungkinan lain untuk "menyalin vdi yang ada" menjadi "vdi kosong baru, yang ukurannya lebih besar dari yang ada" (lihat justintung.com/2011/01/06/… ) - parasrish
juga, perhatikan bahwa, hanya mengubah ukuran mungkin tidak membantu, karena ukuran "vdi" akan meningkat, tetapi berdasarkan "vm-os-installation", partisi utama Anda tetap sama, dan ruang yang baru dialokasikan biasanya ditampilkan "tidak dialokasikan ". Maka Anda perlu melakukan "partisi re-alokasi" (Lihat tautan di atas). - parasrish


Jawaban:


Buka terminal dan arahkan ke folder dengan gambar disk VirtualBox, kemudian gunakan perintah berikut:

VBoxManage modifyhd YOUR_HARD_DISK.vdi --resize SIZE_IN_MB

mengganti YOUR_HARD_DISK dan SIZE_IN_MB dengan nama gambar Anda dan ukuran yang diinginkan. sudo mungkin diperlukan di beberapa mesin atau Anda mungkin mengalami kesalahan. Jawaban ini dan penjelasan yang lebih lengkap adalah di sini, di webupd8. Berikan kredit kepada Andrew di sana untuk memposting jawaban ini.

Setelah mengubah ukuran, ekstra ruang hard drive virtual perlu dipartisi dan diformat untuk tamu untuk menggunakannya. Ini dapat dilakukan dengan gparted dengan mem-boot tamu dari ISO langsung. Kami juga dapat mengubah ukuran partisi yang ada menggunakan gparted. Untuk ini kita mungkin perlu menonaktifkan /swap dan buat partisi swap baru.


298
2017-12-18 12:07



+1. Hanya menggunakan ini untuk menambah ukuran disk Windows 7 saya dari 20 hingga 30 GB, dan itu bekerja sangat lancar (tidak perlu registrasi dsb). $ VBoxManage modifyhd Windows7.vdi --resize 30720 0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%  Pada awalnya Windows tidak mendeteksi ruang yang meningkat, tetapi setelah power-power-nya, dan kemudian saya bisa menggunakan alat Manajemen Disk bawaan untuk meningkatkan ukuran partisi C: saya. - Jonik
+1, Ini tentu cara paling bersih untuk melakukannya. - Starx
@ as Mengubah ukuran disk tidak cukup, Anda juga perlu mengubah ukuran partisi. - Bruno
INI AKAN BEKERJA! Namun, Anda perlu meningkatkan partisi setelah itu agar windows dapat mendaftarkan ruang baru. Metode terbaik dan tercepat / termudah: howtogeek.com/howto/windows-vista/… - tfont
Saya pikir dalam versi terbaru dari VirtualBox itu .\VBoxManage.exe modifymedium disk 4d30d154-f8c2-4a3b-bd8b-ddcfbfe64aaf --resize 30720 sekarang. modifyhd juga berfungsi - ada kompatibilitas mundur dengan perintah yang lebih lama. - TranslucentCloud


Berikut ini bekerja untuk saya:

VBoxManage modifyhd YOUR_HARD_DISK.vdi --resize SIZE_IN_MB

Namun, saya mengerti bagaimana jarak tempuh dapat bervariasi :-) Sejauh mengubah ukuran partisi, di Windows 7, saya dapat mengubah ukuran di layar yang Anda tunjukkan dengan mengeklik kanan pada C: drive di panel bawah dan pilih memperpanjang volume.

Computer management screen


23
2018-04-15 11:53



sudo aku s tidak perlu. Ini dapat merusak perizinan di direktori home Anda, yang mengharuskan Anda untuk menggunakannya sudo untuk virtualbox yang merupakan buruk ide. - Lekensteyn
@Lekensteyn: Senang mengetahui bahwa itu tidak perlu. Saya menggunakannya karena orang lain mengatakan itu tidak berfungsi tanpa menjadi root. Sejauh korupsi izin pergi, chmod berfungsi dengan baik untuk memperbaiki kesalahan tersebut. - Richard Povinelli
@Lekensteyn: chown akan memperbaiki kesalahan kepemilikan. Saya menyebutkan chmod dan chown, karena saya harus memperbaiki masalah yang sering Anda rujuk :-) - Richard Povinelli
Ini bagus untuk Windows, tetapi jika Anda memiliki OS guest Linux, tautan ini dapat membantu mengubah ukuran partisi: forums.virtualbox.org/viewtopic.php?f=35&t=50661 - Jon
Jika Anda menjalankan windows di dalam linux, Anda perlu mengikuti opsi ini, dan memperpanjang disk, jika tidak windows tidak akan menambahkan ruang tambahan yang kami tambahkan - Ajith R Nair


Wim, saya pikir Anda harus membatalkan pendaftaran dari Vbox terlebih dahulu. File, Media Manager, Klik pada Anda hdd, dan batalkan pendaftaran. Kemudian coba lagi.


17
2017-12-19 11:40



Tidak diperlukan di Linux di VirtualBox. Hanya harus menutup OS tamu sepenuhnya terlebih dahulu. - Underverse


Setelah mengubah ukuran dan tidak dapat melihat ukuran pada mesin tamu windows XP saya, saya harus

  1. klon itu
  2. ubah ukurannya dengan "VBoxManage modifyhd winxppro \ Clone.vdi --resize 30720" dan semuanya bekerja

Saya melihat di forum lain bahwa snapshot dapat mengganggu untuk mengubah ukuran dan tidak dapat menghapus semua snapshot untuk kesalahan yang berbeda yang saya dapatkan, satu-satunya solusi yang ditemukan untuk saya adalah mengkloningnya untuk menghapus snapshot dan kemudian mengubah ukurannya, dan semuanya bekerja. Untuk mengubah ukuran di luar jendela, boot cd gparted yang dapat ditemukan sini bisa membantu


7
2018-05-28 11:11





Saya memiliki masalah yang sama ketika saya memindahkan disk, dan mengganti yang asli dengan symlink. Ini berfungsi OK setelahnya, tetapi Anda mengalami masalah dengan perintah 'modifyhd', karena itu tampaknya mengkanonisasi jalur ke vdi-file ketika bekerja dengannya. Ini membuatnya terlihat seperti Anda mencoba menambahkan disk baru dengan UUID yang sama tetapi pada jalur yang berbeda - atau sesuatu seperti itu.

Ada dua masalah:

  1. Disk harus dihapus dari VM yang menggunakannya, tetapi kemudian juga "dari daftar VirtualBox dari hdds". Ini diperbaiki dengan perintah 'closemedium', yang menghapusnya dari daftar itu.

  2. Disk yang akan diubah ukurannya menjadi "fixed disk" dan bukan "dynamic", dan hanya disk dinamis yang dapat diubah ukurannya. Itu diperbaiki dengan perintah 'klon' (klon itu dinamis), dan kemudian ubah ukuran disk yang dihasilkan.

Ini adalah log saya untuk bagaimana ini dilakukan. Perhatikan aku tidak di setiap titik berjalan sebagai root, kecuali ketika saya kemudian melakukan resize partisi dan filesystem.

HAPUS ASOSIASI ATAS DISK DARI VM. 

MASALAH PROBLEM BERTANYA:

virt_box@TestBox:~/VirtualBox VMs/TestInception 64 bit$ VBoxManage modifyhd TestInception\ 64\ bit.vdi --resize 8192
VBoxManage: error: Cannot register the hard disk '/datadisk/VirtualBox VMs/TestInception 64 bit/TestInception 64 bit.vdi' {6cd99209-e4db-4178-a6c2-53f9581b1fad} because a hard disk '/home/virt_box/VirtualBox VMs/TestInception 64 bit/TestInception 64 bit.vdi' with UUID {6cd99209-e4db-4178-a6c2-53f9581b1fad} already exists
VBoxManage: error: Details: code NS_ERROR_INVALID_ARG (0x80070057), component VirtualBox, interface IVirtualBox, callee nsISupports
VBoxManage: error: Context: "OpenMedium(Bstr(pszFilenameOrUuid).raw(), enmDevType, enmAccessMode, fForceNewUuidOnOpen, pMedium.asOutParam())" at line 178 of file VBoxManageDisk.cpp

Ah, disk masih "di sistem":

virt_box@TestBox:~/VirtualBox VMs/TestInception 64 bit$ VBoxManage list hdds
UUID:        ba58276a-bbe1-4354-8ae5-246bdac390c8
Parent UUID: base
Format:      VDI
Location:    /home/virt_box/VirtualBox VMs/TestInception 32 bit/TestInception.vdi
State:       locked write
Type:        normal
Usage:       TestInception 32 bit (UUID: a693ac62-7caa-4f11-9d00-51d3a149f5f7)

UUID:        6cd99209-e4db-4178-a6c2-53f9581b1fad
Parent UUID: base
Format:      VDI
Location:    /home/virt_box/VirtualBox VMs/TestInception 64 bit/TestInception 64 bit.vdi
State:       created
Type:        normal

Hapus / hapus disk dari daftar disk VirtualBox ("closemedium"):

virt_box@TestBox:~/VirtualBox VMs/TestInception 64 bit$ VBoxManage closemedium disk 6cd99209-e4db-4178-a6c2-53f9581b1fad
virt_box@TestBox:~/VirtualBox VMs/TestInception 64 bit$ VBoxManage list hdds
UUID:        ba58276a-bbe1-4354-8ae5-246bdac390c8
Parent UUID: base
Format:      VDI
Location:    /home/virt_box/VirtualBox VMs/TestInception 32 bit/TestInception.vdi
State:       locked write
Type:        normal
Usage:       TestInception 32 bit (UUID: a693ac62-7caa-4f11-9d00-51d3a149f5f7)

Coba ubah ukurannya lagi:

virt_box@TestBox:~/VirtualBox VMs/TestInception 64 bit$ VBoxManage modifyhd TestInception\ 64\ bit.vdi --resize 8192
0%...
Progress state: VBOX_E_NOT_SUPPORTED
VBoxManage: error: Resize hard disk operation for this format is not implemented yet!

DAMN, "fixed-size" TIDAK BEKERJA! 'clonehd' untuk menyelamatkan, karena itu meninggalkan 'cloning disk yang dialokasikan secara dinamis:

virt_box@TestBox:/datadisk/VirtualBox VMs/TestInception 64 bit$ VBoxManage clonehd TestInception\ 64\ bit.vdi TestInception\ 64\ bit-cloned.vdi
0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%
Clone hard disk created in format 'VDI'. UUID: 8e237500-173b-401a-9e63-9e64da110da9

SEKARANG LAKUKAN RESIZE (instantanious):

virt_box@TestBox:/datadisk/VirtualBox VMs/TestInception 64 bit$ VBoxManage modifyhd --resize 8192 TestInception\ 64\ bit-cloned.vdi 
0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%

KEMUDIAN LAGI KE BEBERAPA VM, UNTUK MENYESUAIKAN. Ini dilakukan sebagai root. Asumsikan Anda hanya memiliki satu partisi dan mungkin bertukar.

# fdisk /dev/sdb  # <- The extra disk, just attached to be resized
// The procedure looks like this:
// m - print help
// p - print table
// d ... - delete partition (delete both if you have root and swap)
// n - new partition (create root/first partition starting on exact same sector as before, typically 2048, but ends on last, or last minus swap)
//  ... n.. (.. then add the swap partition. Calculate how many sectors using original table)
// t - change type of partition (swap partition, if any, to 82 - not 83 which is "normal Linux").
// w - write partition table (write out, with the resized partition)

# e2fsck -f /dev/sdb1

e2fsck 1.42.5 (29-Jul-2012)
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
/dev/sdb1: 99918/122160 files (0.3% non-contiguous), 471032/487936 blocks

# resize2fs /dev/sdb1

resize2fs 1.42.5 (29-Jul-2012)
Resizing the filesystem on /dev/sdb1 to 1965824 (4k) blocks.
The filesystem on /dev/sdb1 is now 1965824 blocks long.

5
2018-04-09 12:01



Ini berhasil bagi saya, mengikuti panduan di sini: yinfor.com/2015/05/ ... - marijnz0r


Ini bekerja untuk saya dengan VirtualBox 5.2.6 diinstal pada Mesin Host Ubuntu 16.04 dan Windows 10 Tamu: buka Virtualbox Manager, klik Global Tools (pojok kanan atas) dan pilih Virtual Media Manager. Klik pada Tab Hard Disk dan pilih OS Guest Anda. Di bagian bawah kotak klik pada Tab Attributes. Di bagian bawah Anda dapat melihat ukuran Disk Virtual, dan dengan slider Anda dapat memperbesar ukuran sesuai keinginan Anda. (Anda hanya dapat meningkatkan, bukan mengurangi ukuran dengan metode ini). Klik Terapkan. Mulai Windows Guest OS Anda, buka Manajemen Komputer, klik kanan pada C: Drive, dan pilih Memperpanjang Volume untuk memperluas sistem file dengan bagian yang tidak terisi.

Hanya itu yang harus saya lakukan, bekerja dengan sempurna untuk saya.


2
2018-01-24 17:55



Bekerja dengan baik. Bukankah seharusnya ini jawaban yang diterima, setidaknya untuk versi terbaru VirtualBox? - AlwaysLearning


Cara yang pasti-tahan adalah melakukannya sama dengan pindah ke hard drive yang lebih besar yang tidak berjalan di VM. Pertama-tama, gunakan program CCleaner atau serupa di XP untuk membersihkan semua file sampah yang bisa. Kemudian buat HDD virtual sekunder dengan ukuran yang Anda inginkan. Boot dengan clonezilla ISO di drive ODD virtual Anda dan clone over bersama dengan opsi 'ubah ukuran menjadi ukuran partisi baru' yang dipilih. Kemudian set HDD Virtual baru sebagai primer, dan jangan hapus yang lama sampai Anda tahu itu berhasil.


1
2017-12-19 14:03





Saya menerima kesalahan yang sama sampai saya menggunakan sudo untuk menjalankan perintah, kemudian bekerja sempurna, masih perlu memiliki partisi yang dikembangkan dari dalam tamu untuk menggunakan ruang tambahan.


1
2018-02-01 09:34



Beberapa orang melaporkan ini menyebabkan dir home memiliki perizinan yang buruk - Jonathan


Faktanya, tampaknya itu modifyhd sendiri tidak ada gunanya bagimu dalam beberapa kasus. Saya sebenarnya memperluas vdi WinXP saya dengan mengkloning gambar setelah ekspansi.

Berikut ini panduan lengkap langkah demi langkah yang berhasil bagi saya beberapa minggu yang lalu: http://libtronics.com/2011/07/resize-virtualbox-disk-for-winxp-guest/


1
2018-05-01 19:25



Bisakah Anda jelaskan langkah-langkahnya di sini? Jawaban dengan sedikit lebih dari satu link ke situs lain umumnya disukai di sini, dan dapat dihapus. - Tom Brossman
Nah, Anda perlu memahami apa yang dilakukan oleh modifikasi, yang tidak lebih dari memperluas disk virtual yang mendasari, itu saja. Anda masih perlu memperluas filesystem yang ada di dalamnya. - Marcin Kaminski


Pastikan Anda masuk sebagai pengguna dengan izin menulis ke file gambar disk. Lalu lari

VBoxManage modifyhd YOUR_HARD_DISK.vdi --resize SIZE_IN_MB  

Bekerja untuk saya pada saat pertama bertanya


1
2018-03-26 22:53



Apakah Anda harus menginstal ulang / memformat ulang / mempartisi ulang? atau apakah itu hanya boot segera kembali? - Jonathan