Pertanyaan Bagaimana saya dapat mengubah nomor seri BIOS di VirtualBox?


VirtualBox menetapkan nomor seri BIOS dari setiap instance VM ke 0. Tampaknya dimungkinkan untuk mengubah beberapa pengaturan BIOS, tetapi saya belum melihat apa pun yang secara langsung merujuk pada nomor seri.

Adakah yang bisa menyarankan cara untuk melakukan ini?


14
2017-10-14 23:54


asal


Ada alasan khusus apa yang ingin Anda lakukan? - Jared Harley
Iya nih. Saya memiliki alat perangkat lunak persediaan PC yang menggunakan nomor seri BIOS untuk mengidentifikasi komputer secara unik. Ini berfungsi dengan baik untuk perangkat keras fisik dan untuk VM dari vendor lain, tetapi tidak tahu bagaimana menangani beberapa VirtualBox VM. - Roger
mengedit jawaban saya untuk mencerminkan kesalahan yang Anda tangkap. - A Dwarf
Anda punya berita tentang ini, Roger? Akan sangat ingin tahu bagaimana hasilnya. - A Dwarf
Saya tidak pernah tahu cara melakukannya. Saya mendapat beberapa tanggapan di forum VirtualBox, tetapi tidak menemukan apa pun yang berhasil. Jika saya menemukan jawabannya, saya pastikan untuk menambahkan pembaruan di sini. - Roger


Jawaban:


http://www.virtualbox.org/manual/ch09.html#changedmi

Benar-benar memiliki jawaban terperinci untuk ini.

Anda dapat mengatur nomor seri bios dengan melakukan ini:

VBoxManage setextradata "VM name" 
"VBoxInternal/Devices/pcbios/0/Config/DmiSystemSerial" "System Serial"

Kesalahan yang Anda dapatkan disebabkan oleh serial yang tidak disetel sebagai nilai string, jika Anda memiliki nomor murni, Anda harus menambahkannya dengan string: seperti ini:

VBoxManage setextradata "VM name" 
"VBoxInternal/Devices/pcbios/0/Config/DmiSystemSerial" "string:1234"

17
2018-01-14 11:56



Perhatikan bahwa petunjuk ini untuk penggunaan sistem BIOS. Jika sistem Anda menggunakan EFI - dikendalikan oleh "Pengaturan -> Sistem -> Motherboard -> Aktifkan EFI" - maka Anda perlu mengganti "pcbios" dengan "efi" dalam perintah di atas. - ntc2


Bukan dari pengaturan eksternal. Tetapi Anda dapat dari kode dan kemudian membangunnya sendiri:

Sumber data:  DevPcBios.cpp
Garis: 1014 READCFGSTR("DmiSystemSerial", pszDmiSystemSerial, "0");

Ubah "0" ke nilai berapa pun yang Anda butuhkan.


EDIT: Sepertinya Anda bisa menggunakannya VBoxManage setextradata. Saya telah menggunakannya di masa lalu untuk jenis konfigurasi lain (bukan bios terkait) dan tidak menguji pengaturan khusus ini. Mencobanya:

VBoxManage setextradata *YourVMName* VBoxInternal/Devices/pcbios/0/Config/DmiSystemSerial "*yourserial*"

Jika tidak ... kembalikan ke pengeditan dan pembuatan kode sumber.

Semoga berhasil.


8
2017-10-15 00:33



Hmm Terima kasih - sangat dekat, tetapi belum ada di sana. Saya mencoba ini: "c: \ Program Files \ Sun \ VirtualBox \ VBoxManage.exe" setextradata "Server Demo" VBoxInternal / Devices / pcbios / 0 / Config / DmiSerial "123" Sepertinya berfungsi, tetapi ketika saya meluncurkan VM I mendapat pesan kesalahan ini: Gagal memulai mesin virtual Server Demo. Konfigurasi tidak valid untuk perangkat pcbios perangkat (VERR_PDM_DEVINS_UNKNOWN_CFG_VALUES). Kesalahan tidak dikenal membuat VM (VERR_PDM_DEVINS_UNKNOWN_CFG_VALUES). Menghapus dan membuat ulang definisi mesin tetap itu, jadi tidak ada salahnya dilakukan. Saya pikir Anda benar-benar dekat - ada saran lain? - Roger
hmm ... apakah Anda membuat copy / paste verbatim dari perintah Anda ke kotak komentar? Karena tidak ada spave antara / Config dan / DmiSerial. Terlepas dari itu, saya akan mengeksplorasi lebih jauh. Kira saya harus menginstal VirtualBox. Sejauh ini hanya mengandalkan catatan saya :) - A Dwarf
Bah! Kepala saya ini. Saya memposting baris kode yang relevan dan kemudian bahkan tidak memeriksanya dengan catatan saya yang jauh lebih tua. Ini bukan / DmiSerial. Ini telah diubah namanya antara versi 1.5 dan sekarang. Sekarang / DmiSystemSerial - A Dwarf
Terima kasih, A Dwarf, atas semua bantuan Anda. Saya mencoba mengganti DmiSerial dengan DmiSystemSerial, rows baris perintah (tanpa spasi, yang salah ketik), dan mendapat kesalahan yang sama. - Roger
Sepengetahuan saya itu hanya berarti ini belum sepenuhnya diimplementasikan dan Anda tidak bisa melakukannya dengan cara ini. Pada titik ini saya takut saya berhenti menjadi berguna. Anda harus pergi ke forum VirtualBox dan mencoba dari sana. Mereka adalah orang-orang yang luar biasa dan Anda akan mendapatkan jawaban yang lebih tepat. Namun saya akan senang mengetahui hasil akhirnya, jika Anda akan bersikap baik dan memposting jawaban atas pertanyaan Anda sendiri ketika itu terjadi. Semua yang terbaik. - A Dwarf


Jika Anda menjalankan perintah itu, dan mendapatkan kesalahan yang direferensikan oleh Roger, Anda harus mundur dari perintah dengan menjalankan perintah tanpa parameter terakhir (VALUE).

Ini menghapus entri yang menyebabkan kesalahan.

Jika Anda tidak yakin dengan perintah yang menyinggung terakhir, buka file ~~~ .vbox (XML) di root folder VirtualMachines dari VM spesifik dan tinjau bagian EXTRADATA.

Menjalankan panggilan baris perintah ke vboxmanage adalah cara terbaik untuk mengubahnya. Mengedit file xml tidak menempel 100% dari waktu.


3
2017-09-06 14:18





Jawaban yang diterima tidak memperbarui nomor seri dengan benar untuk saya; sebagai gantinya, saya mengikuti langkah-langkah ini untuk berhasil memperbarui nomor seri. Perhatikan OS tamu adalah macOS dan tuan rumah adalah jendela.

CATATAN: Anda harus menutup virtualbox sebelum menjalankan perintah ini agar dapat disimpan.

  1. Buka prompt perintah windows sebagai administrator
  2. cd "C:\Program Files\Oracle\VirtualBox\"
  3. VBoxManage.exe setextradata "VM NAME" "VBoxInternal/Devices/efi/0/Config/DmiSystemSerial" "SERIAL_HERE"  lihat sumber. *
    Tidak yakin mengapa perintah pcbios tidak berfungsi tetapi efi melakukannya.

LINK BERMANFAAT

  • Jika Anda mengalami kesulitan menemukan mengikuti serial yang valid instruksi di sini.
  • Jika Anda tidak yakin nama vm Anda dijalankan VBoxManage.exe list vms.

2
2018-01-15 02:29



Jika Anda membutuhkan "efi" dan menerima jawaban menggunakan "pcbios", ini mungkin karena Anda menggunakan (U) EFI dan orang itu menggunakan BIOS tradisional. Apakah Anda menggunakan EFI atau BIOS ditentukan oleh "Pengaturan -> Sistem -> Motherboard -> Aktifkan EFI" kotak centang di VirtualBox. - ntc2


Coba gunakan nomor seri yang berisi string hexadecimal 20 byte:

VBoxManage setextradata "VM name" "VBoxInternal/Devices/ahci/0/Config/Port0/SerialNumber" "serial"

(Referensi)


1
2017-08-16 14:14