VirtualBox: Bagaimana saya bisa menambahkan (me-mount) file gambar ISO dari command-line?


21

Sebelumnya ada di baris perintah VirtualBox perintah dengan sintaks ini:

VBoxManage controlvm <VM> dvdattach <filename>

Jadi melampirkan (memasukkan) CD / DVD semudah:

VBoxManage controlvm "MyVM Windows 7" dvdattach MyDVD.iso

Tetapi sekarang perintah ini telah hilang .
Saya telah menjelajahi Manual VirtualBox dan semua yang saya temukan adalah beberapa perintah storageattach , yang merujuk pada beberapa storagectl lain yang tidak cukup ringkas (saya benci dokumen tanpa contoh), tidak ada yang merujuk ke sesuatu seperti file .ISO .
Saya belum dapat menemukan solusi di forumnya sendiri , setidaknya tidak ada yang berjalan lebih jauh daripada penjelasan yang ambigu dan tidak ringkas :

Setelah Anda memiliki pengontrol di tempat dengan storagectl (atau melalui GUI), lihat VBoxManage storageattach

Alih-alih mulai menguji opsi secara acak, saya lebih suka bertanya dulu di sini apakah seseorang telah berhasil membuat ini, dan dapat memberi saya bantuan.

Jawaban:


24

Kelola pengontrol IDE

Jika VM tidak memiliki pengendali IDE, Anda dapat menggunakan storagectlperintah untuk menambahkannya:

VBoxManage.exe storagectl "<uuid|vmname>" --name IDE --add ide

Lampirkan file gambar disk

Berikut ini adalah sintaks sampel yang dapat Anda gunakan untuk melampirkan file gambar CD / DVD:

VBoxManage.exe storageattach "<uuid|vmname>" --storagectl IDE --port 0 --device 0 --type dvddrive --medium "X:\Folder\containing\the.iso"

Lepaskan file gambar disk

Untuk melepaskan file gambar sintaksnya mirip: Anda hanya perlu mengganti path file dengan "none". The --typeparameter dapat dihilangkan:

VBoxManage.exe storageattach "<uuid|vmname>" --storagectl IDE --port 0 --device 0 --medium "none"

Bacaan lebih lanjut


3
Juga, semua informasi yang relevan pada mesin virtual dapat ditemukan VBoxManage showvminfo. Ini termasuk pengontrol penyimpanan dan namanya.
Daniel B

1
@DanielB, VBoxManage showvminfodaftar IDE (1, 0): C:\Oracle\VirtualBox\VBoxGuestAdditions.isodan SATA (0, 0): d:\VirtualBox VMs\Windows 7 SP1 - SandBox 01\Win7SP1.vmdk. Saya agak bingung tentang keduanya 0dan 1. Apakah mereka berkorelasi dengan --portdan --device?
Sopalajo de Arrierez

Ketika menyangkut file gambar ISO, apakah saya harus menambahkan perangkat ideatau sata?
Sopalajo de Arrierez

@SopalajodeArrierez Ya, angka-angka itu adalah pengidentifikasi port / perangkat. Untuk kompatibilitas maksimum, Anda harus memilih pengontrol IDE untuk drive CD / DVD virtual: "Jadi, bahkan jika sistem operasi tamu Anda tidak memiliki dukungan untuk perangkat SCSI atau SATA, ia harus selalu dapat melihatnya ["]. " Selain itu, VirtualBox memberi Anda "empat slot yang terpasang pada pengontrol IDE tradisional, yang selalu ada" dan "30 slot yang terpasang pada pengontrol SATA, jika diaktifkan dan didukung oleh sistem operasi tamu." Sumber
and31415

Pengontrol IDE memiliki dua port (item pertama dalam tuple), masing-masing mampu menghubungkan dua perangkat (elemen kedua). Sama seperti pada PC nyata. GUI melampirkan media optik ke (1, 0) secara default.
Daniel B

10

Pertama-tama, periksa apakah Anda memiliki drive CD / DVD yang diinstal, apakah kosong atau tidak (perhatikan penggunaan findperintah untuk menyaring hasil):

1.- Apakah ada drive CD / DVD kosong ?

C:\Oracle\VirtualBox>vboxmanage showvminfo "Windows 7 SP1 - SandBox 01" | find "empty" /i
SATA (1, 0): Empty

Selamat, Anda telah menemukan kemungkinan drive CD / DVD kosong . Jadi Anda dapat melampirkan ISO Anda ke sana, tapi ...

... untuk menghadapi skenario terburuk, mari tunjukkan cara lain untuk menemukan drive CD / DVD Anda, jika terpasang:

2.- Cari nama VM Anda :

C:\Oracle\VirtualBox>VBoxManage.exe list vms
"Windows 7 SP1 - SandBox 01" {e016fcf2-9b6e-4b8e-b89b-49a3c8ba0898}

3.- Daftar pengontrol penyimpanannya (perhatikan findperintah untuk memfilter terlalu banyak data keluaran) (*):

C:\Oracle\VirtualBox>vboxmanage showvminfo "Windows 7 SP1 - SandBox 01" | find "storage controller name" /i
Storage Controller Name (0):            IDE
Storage Controller Name (1):            SATA

4.- Tampilkan perangkat yang terpasang :

C:\Oracle\VirtualBox>vboxmanage showvminfo "Windows 7 SP1 - SandBox 01" | find "IDE"
Storage Controller Name (0):            IDE

(yang ini kosong, jadi tidak ada pengontrol perangkat, baik hard disk atau drive CD / DVD)

C:\Oracle\VirtualBox>vboxmanage showvminfo "Windows 7 SP1 - SandBox 01" | find "SATA"
Storage Controller Name (1):            SATA
SATA (0, 0): d:\VirtualBox VMs\Windows 7 SP1 - SandBox 01\SnapShots/{71b8bf72-dca1-4816-89ff-feba271ec262}.vmdk (UUID: 71b8bf72-dca1-4816-89ff-feba271ec262)
SATA (1, 0): Empty

SATA (0,0) memiliki disk virtual (,) , dan SATA (1,0) kosong (angka pertama di antara tanda kurung dikenal type, yang kedua adalah device), jadi seharusnya drive CD / DVD .

5.- Mari kita lampirkan file gambar ISO (Office 2013, misalnya) ke:

C:\Oracle\VirtualBox>vboxmanage storageattach "Windows 7 SP1 - SandBox 01" --storagectl "SATA" --port 1 --device 0 --type dvddrive --medium "Office2013-VL-SP1.iso"

(tidak ada hasil di layar berarti OK).

$ - Untuk menghapus ISO menjaga pengontrol drive CD / DVD:

C:\Oracle\VirtualBox>vboxmanage storageattach "Windows 7 SP1 - SandBox 01" --storagectl "SATA" --port 1 --device 0 --type dvddrive --medium "emptydrive"

$ - Untuk kasus tidak ada pengontrol drive CD / DVD "kosong" yang terpasang, VirtualBox harus menambahkan yang baru ke pengontrol yang ada, dengan asumsi kami memilih port / perangkat yang tidak digunakan, misalnya untuk pengontrol SATA:

C:\Oracle\VirtualBox>vboxmanage storageattach "Windows 7 SP1 - SandBox 01" --storagectl "SATA" --port 5 --device 0 --type dvddrive --medium "Office2013-VL-SP1.iso"

(perhatikan kami menggunakan port 5)
Dan untuk pengontrol IDE:

C:\Oracle\VirtualBox>vboxmanage storageattach "Windows 7 SP1 - SandBox 01" --storagectl "IDE" --port 0 --device 0 --type dvddrive --medium "Office2013-VL-SP1.iso"

(perhatikan kami menggunakan (0,0), ini, port pertama dan perangkat pertama)

$ - Jika kita ingin menghapus (menghancurkan) (salah satu) perangkat (contoh untuk IDE terakhir):

C:\Oracle\VirtualBox>vboxmanage storageattach "Windows 7 SP1 - SandBox 01" --storagectl "IDE" --port 0 --device 0 --type dvddrive --medium "emptydrive"

(gambar ISO akan di-umount bersamaan pada saat menjalankan perintah ini).

$ - Akhirnya, jika kita ingin membuat controller baru alih-alih menggunakan yang sudah ada (contoh) untuk kontroler SATA yang kita beri nama SATA3):

C:\Oracle\VirtualBox>vboxmanage storagectl "Windows 7 SP1 - SandBox 01" --name SATA3 --add sata

$ - Dan mungkin menghapusnya nanti:

C:\Oracle\VirtualBox>vboxmanage storagectl "Windows 7 SP1 - SandBox 01" --name SATA3 --remove

(*) Jika nama tidak cukup (bisa diubah) untuk mencari tahu apa jenis pengontrol itu, coba:

C:\Oracle\VirtualBox>vboxmanage showvminfo "Windows 7 SP1 - SandBox 01" | find "storage controller" /i
Storage Controller Name (0):            IDE
Storage Controller Type (0):            PIIX4
Storage Controller Instance Number (0): 0
Storage Controller Max Port Count (0):  2
Storage Controller Port Count (0):      2
Storage Controller Bootable (0):        on
Storage Controller Name (1):            SATA
Storage Controller Type (1):            IntelAhci
Storage Controller Instance Number (1): 0
Storage Controller Max Port Count (1):  30
Storage Controller Port Count (1):      2

Seperti yang dapat kita lihat, pengontrol bernama IDE(# 0) adalah perangkat PIIX4 (IDE) dan yang bernama SATA(# 1) adalah IntelAhci (SATA).

CATATAN: Pengontrol IDE menerima kemungkinan file gambar pada 4 konfigurasi: (0,0), (0,1), (1,0) dan (1,1). Pilih salah satu yang tidak ditempati. Pengontrol SATA menerima 30. Parameter ini dapat dikonfigurasi pada properti VM. Ingat bahwa, dalam kedua kasus, hitung dimulai pada 0, bukan 1.

CATATAN2: Beberapa perangkat dapat dibuat selama eksekusi VM (berjalan), tergantung pada sistem operasi dan perangkat. Misalnya, perangkat SATA dapat dibuat pada saat runtime untuk Windows 7 VM. Bagaimanapun, file gambar ISO CD / DVD selalu dapat dimasukkan saat runtime dalam media kosong apa pun. Anda dapat memeriksa menjalankan vms dengan melakukan:

C:\Oracle\VirtualBox>vboxmanage list runningvms

Terima kasih kepada @ and31415 dan @DanielB untuk komentar dan info mereka.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.