VirtualBox

source: vbox/trunk/doc/manual/en_US/user_BasicConcepts.xml@ 76694

Last change on this file since 76694 was 76678, checked in by vboxsync, 6 years ago

Port r124260, r124263, r124271, r124273, r124277, r124278, r124279, r124284, r124285, r124286, r124287, r124288, r124289 and r124290 (Ported fixes over from 5.2, see bugref:9179 for more information)

  • Property svn:eol-style set to native
  • Property svn:keywords set to Id Revision
File size: 101.1 KB
Line 
1<?xml version="1.0" encoding="UTF-8"?>
2<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd"[
4<!ENTITY % all.entities SYSTEM "all-entities.ent">
5%all.entities;
6]>
7<chapter id="BasicConcepts">
8
9 <title>Configuring Virtual Machines</title>
10
11 <para>
12 This chapter provides detailed steps for configuring an
13 &product-name; virtual machine (VM). For an introduction to
14 &product-name; and steps to get your first virtual machine running,
15 see <xref linkend="Introduction" />.
16 </para>
17
18 <para>
19 You have considerable latitude when deciding what virtual hardware
20 to provide to the guest. Use virtual hardware to communicate with
21 the host system or with other guests. For example, you can use
22 virtual hardware in the following ways:
23 </para>
24
25 <itemizedlist>
26
27 <listitem>
28 <para>
29 Have &product-name; present an ISO CD-ROM image to a guest
30 system as if it were a physical CD-ROM.
31 </para>
32 </listitem>
33
34 <listitem>
35 <para>
36 Provide a guest system access to the physical network through
37 its virtual network card.
38 </para>
39 </listitem>
40
41 <listitem>
42 <para>
43 Provide the host system, other guests, and computers on the
44 Internet access to the guest system.
45 </para>
46 </listitem>
47
48 </itemizedlist>
49
50 <sect1 id="guestossupport">
51
52 <title>Supported Guest Operating Systems</title>
53
54 <para>
55 Because &product-name; is designed to provide a generic
56 virtualization environment for x86 systems, it can run operating
57 systems (OSes) of any kind. However, &product-name; focuses on the
58 following guest systems:
59 </para>
60
61 <itemizedlist>
62
63 <listitem>
64 <para>
65 <emphasis role="bold">Windows NT 4.0:</emphasis>
66 </para>
67
68 <itemizedlist>
69
70 <listitem>
71 <para>
72 Fully supports all versions, editions, and service packs.
73 Note that you might encounter issues with some older
74 service packs, so install at least service pack 6a.
75 </para>
76 </listitem>
77
78 <listitem>
79 <para>
80 Guest Additions are available with a limited feature set.
81 </para>
82 </listitem>
83
84 </itemizedlist>
85 </listitem>
86
87 <listitem>
88 <para>
89 <emphasis role="bold">Windows 2000, Windows XP, Windows Server
90 2003, Windows Vista, Windows Server 2008, Windows 7, Windows
91 Server 2008 R2, Windows 8, Windows Server 2012, Windows 8.1,
92 Windows Server 2012 R2, Windows 10 (non-Insider Preview releases),
93 Windows Server 2016, Windows server 2019:</emphasis>
94 </para>
95
96 <itemizedlist>
97
98 <listitem>
99 <para>
100 Fully supports all versions, editions, and service packs,
101 including 64-bit versions.
102 </para>
103 </listitem>
104
105 <listitem>
106 <para>
107 Note that you must enable hardware virtualization when
108 running at least Windows 8.
109 </para>
110 </listitem>
111
112 <listitem>
113 <para>
114 Guest Additions are available.
115 </para>
116 </listitem>
117
118 </itemizedlist>
119 </listitem>
120
121 <listitem>
122 <para>
123 <emphasis role="bold">MS-DOS, Windows 3.x, Windows 95, Windows
124 98, Windows ME:</emphasis>
125 </para>
126
127 <itemizedlist>
128
129 <listitem>
130 <para>
131 Limited testing has been performed.
132 </para>
133 </listitem>
134
135 <listitem>
136 <para>
137 Use beyond legacy installation mechanisms is not
138 recommended.
139 </para>
140 </listitem>
141
142 <listitem>
143 <para>
144 Guest Additions are not available.
145 </para>
146 </listitem>
147
148 </itemizedlist>
149 </listitem>
150
151 <listitem>
152 <para>
153 <emphasis role="bold">Linux 2.4:</emphasis>
154 </para>
155
156 <para>
157 Limited support.
158 </para>
159 </listitem>
160
161 <listitem>
162 <para>
163 <emphasis role="bold">Linux 2.6:</emphasis>
164 </para>
165
166 <itemizedlist>
167
168 <listitem>
169 <para>
170 Fully supports all versions and editions, both 32-bit and
171 64-bit.
172 </para>
173 </listitem>
174
175 <listitem>
176 <para>
177 For best performance, use at least Linux kernel version
178 2.6.13.
179 </para>
180 </listitem>
181
182 <listitem>
183 <para>
184 Guest Additions are available.
185 </para>
186 </listitem>
187
188 </itemizedlist>
189
190 <note>
191 <para>
192 Certain Linux kernel releases have bugs that prevent them
193 from executing in a virtual environment. See
194 <xref linkend="ts_linux-buggy" />.
195 </para>
196 </note>
197 </listitem>
198
199 <listitem>
200 <para>
201 <emphasis role="bold">Linux 3.x and later:</emphasis>
202 </para>
203
204 <itemizedlist>
205
206 <listitem>
207 <para>
208 Fully supports all versions and editions, both 32-bit and
209 64-bit.
210 </para>
211 </listitem>
212
213 <listitem>
214 <para>
215 Guest Additions are available.
216 </para>
217 </listitem>
218
219 </itemizedlist>
220 </listitem>
221
222 <listitem>
223 <para>
224 <emphasis role="bold"> Oracle Solaris 10 and Oracle Solaris
225 11:</emphasis>
226 </para>
227
228 <itemizedlist>
229
230 <listitem>
231 <para>
232 Fully supports all versions starting with Oracle Solaris
233 10 8/08 and Oracle Solaris 11.
234 </para>
235 </listitem>
236
237 <listitem>
238 <para>
239 Supports 64-bit prior to Oracle Solaris 11 11/11, and
240 32-bit.
241 </para>
242 </listitem>
243
244 <listitem>
245 <para>
246 Guest Additions are available.
247 </para>
248 </listitem>
249
250 </itemizedlist>
251 </listitem>
252
253 <listitem>
254 <para>
255 <emphasis role="bold">FreeBSD:</emphasis>
256 </para>
257
258 <itemizedlist>
259
260 <listitem>
261 <para>
262 Limited support.
263 </para>
264 </listitem>
265
266 <listitem>
267 <para>
268 Note that you must enable hardware virtualization when
269 running FreeBSD.
270 </para>
271 </listitem>
272
273 <listitem>
274 <para>
275 Guest Additions are not available.
276 </para>
277 </listitem>
278
279 </itemizedlist>
280 </listitem>
281
282 <listitem>
283 <para>
284 <emphasis role="bold"> OpenBSD:</emphasis>
285 </para>
286
287 <itemizedlist>
288
289 <listitem>
290 <para>
291 Supports at least version 3.7.
292 </para>
293 </listitem>
294
295 <listitem>
296 <para>
297 Note that you must enable hardware virtualization when
298 running OpenBSD.
299 </para>
300 </listitem>
301
302 <listitem>
303 <para>
304 Guest Additions are not available.
305 </para>
306 </listitem>
307
308 </itemizedlist>
309 </listitem>
310
311 <listitem>
312 <para>
313 <emphasis role="bold">OS/2 Warp 4.5:</emphasis>
314 </para>
315
316 <itemizedlist>
317
318 <listitem>
319 <para>
320 Only MCP2 is supported. Other OS/2 versions might not
321 work.
322 </para>
323 </listitem>
324
325 <listitem>
326 <para>
327 Note that you must enable hardware virtualization when
328 running OS/2 Warp 4.5.
329 </para>
330 </listitem>
331
332 <listitem>
333 <para>
334 Guest Additions are available with a limited feature set.
335 See <xref linkend="KnownIssues" />.
336 </para>
337 </listitem>
338
339 </itemizedlist>
340 </listitem>
341
342 <listitem>
343 <para>
344 <emphasis role="bold">Mac OS X:</emphasis>
345 </para>
346
347 <itemizedlist>
348
349 <listitem>
350 <para>
351 &product-name; 3.2 added experimental support for Mac OS X
352 guests, with restrictions. See
353 <xref linkend="intro-macosxguests"/> and
354 <xref linkend="KnownIssues" />.
355 </para>
356 </listitem>
357
358 <listitem>
359 <para>
360 Guest Additions are not available.
361 </para>
362 </listitem>
363
364 </itemizedlist>
365 </listitem>
366
367 </itemizedlist>
368
369 <sect2 id="intro-macosxguests">
370
371 <title>Mac OS X Guests</title>
372
373 <para>
374 &product-name; enables you to install and execute unmodified
375 versions of Mac OS X guests on supported host hardware. Note
376 that this feature is experimental and thus unsupported.
377 </para>
378
379 <para>
380 &product-name; is the first product to provide the modern PC
381 architecture expected by OS X without requiring any of the
382 modifications used by competing virtualization solutions. For
383 example, some competing solutions perform modifications to the
384 Mac OS X install DVDs, such as a different boot loader and
385 replaced files.
386 </para>
387
388 <para>
389 Be aware of the following important issues before you attempt to
390 install a Mac OS X guest:
391 </para>
392
393 <itemizedlist>
394
395 <listitem>
396 <para>
397 Mac OS X is commercial, licensed software and contains
398 <emphasis role="bold">both license and technical
399 restrictions</emphasis> that limit its use to certain
400 hardware and usage scenarios. You must understand and comply
401 with these restrictions.
402 </para>
403
404 <para>
405 In particular, Apple prohibits the installation of most
406 versions of Mac OS X on non-Apple hardware.
407 </para>
408
409 <para>
410 These license restrictions are also enforced on a technical
411 level. Mac OS X verifies that it is running on Apple
412 hardware. Most DVDs that accompany Apple hardware check for
413 the exact model. These restrictions are
414 <emphasis>not</emphasis> circumvented by &product-name; and
415 continue to apply.
416 </para>
417 </listitem>
418
419 <listitem>
420 <para>
421 Only <emphasis role="bold">CPUs</emphasis> that are known
422 and tested by Apple are supported. As a result, if your
423 Intel CPU is newer than the Mac OS X build, or if you have a
424 non-Intel CPU, you will likely encounter a panic during
425 bootup with an "Unsupported CPU" exception.
426 </para>
427
428 <para>
429 Ensure that you use the Mac OS X DVD that comes with your
430 Apple hardware.
431 </para>
432 </listitem>
433
434 <listitem>
435 <para>
436 The Mac OS X installer expects the hard disk to be
437 <emphasis>partitioned</emphasis>. So, the installer will not
438 offer a partition selection to you. Before you can install
439 the software successfully, start the Disk Utility from the
440 Tools menu and partition the hard disk. Close the Disk
441 Utility and proceed with the installation.
442 </para>
443 </listitem>
444
445 <listitem>
446 <para>
447 In addition, Mac OS X support in &product-name; is an
448 experimental feature. See <xref linkend="KnownIssues" />.
449 </para>
450 </listitem>
451
452 </itemizedlist>
453
454 </sect2>
455
456 <sect2 id="intro-64bitguests">
457
458 <title>64-bit Guests</title>
459
460 <para>
461 &product-name; enables you to run 64-bit guest OSes even on a
462 32-bit host OS. To run a 64-bit guest OS on a 32-bit host
463 system, ensure that you meet the following conditions:
464 </para>
465
466 <itemizedlist>
467
468 <listitem>
469 <para>
470 You need a 64-bit processor that has hardware virtualization
471 support. See <xref linkend="hwvirt" />.
472 </para>
473 </listitem>
474
475 <listitem>
476 <para>
477 You must enable hardware virtualization for the particular
478 VM that requires 64-bit support. Software virtualization is
479 not supported for 64-bit VMs.
480 </para>
481 </listitem>
482
483 <listitem>
484 <para>
485 To use 64-bit guest support on a 32-bit host OS, you must
486 select a 64-bit OS for the particular VM. Since supporting
487 64 bits on 32-bit hosts incurs additional overhead,
488 &product-name; only enables this support only upon explicit
489 request.
490 </para>
491
492 <para>
493 64-bit hosts typically come with hardware virtualization
494 support. So, you can install a 64-bit guest OS in the guest
495 regardless of the settings.
496 </para>
497 </listitem>
498
499 </itemizedlist>
500
501 <warning>
502 <para>
503 Be sure to enable <emphasis role="bold">I/O APIC</emphasis>
504 for virtual machines that you intend to use in 64-bit mode.
505 This is especially true for 64-bit Windows VMs. See
506 <xref linkend="settings-general-advanced" />. For 64-bit
507 Windows guests, ensure that the VM uses the
508 <emphasis role="bold">Intel networking device</emphasis>
509 because there is no 64-bit driver support for the AMD PCNet
510 card. See <xref linkend="nichardware" />.
511 </para>
512 </warning>
513
514 <para>
515 If you use the <emphasis role="bold">Create VM</emphasis> wizard
516 of the &product-name; graphical user interface (GUI),
517 &product-name; automatically uses the correct settings for each
518 selected 64-bit OS type. See <xref linkend="gui-createvm" />.
519 </para>
520
521 </sect2>
522
523 </sect1>
524
525 <sect1 id="basic-unattended">
526
527 <title>Unattended Guest Installation</title>
528
529 <para>
530 &product-name; is able to install a guest operating system
531 automatically. You only need to provide the installation medium
532 and a few other parameters, such as the name of the default user.
533 </para>
534
535 <para>
536 Performing an unattended guest installation involves the following
537 steps:
538 </para>
539
540 <itemizedlist>
541
542 <listitem>
543 <para>
544 <emphasis role="bold">Create a new VM.</emphasis> You can use
545 either of the following to do this:
546 </para>
547
548 <itemizedlist>
549
550 <listitem>
551 <para>
552 The VirtualBox Manager, see
553 <xref linkend="gui-createvm" />.
554 </para>
555 </listitem>
556
557 <listitem>
558 <para>
559 The <command>VBoxManage</command> command, see
560 <xref linkend="vboxmanage-createvm" />.
561 </para>
562 </listitem>
563
564 </itemizedlist>
565
566 <para>
567 For the new VM, you can usually just choose the type of the
568 guest operating system and accept the default settings for
569 that operating system. The following sections in this chapter
570 describe how to change the settings for a VM.
571 </para>
572 </listitem>
573
574 <listitem>
575 <para>
576 <emphasis role="bold">Prepare the VM for unattended guest
577 installation.</emphasis> Use the <command>VBoxManage
578 unattended</command> command, see
579 <xref linkend="vboxmanage-unattended" />.
580 </para>
581
582 <para>
583 During this step, &product-name; scans the installation medium
584 and changes certain parameters to ensure a seamless
585 installation as a guest running on &product-name;.
586 </para>
587 </listitem>
588
589 <listitem>
590 <para>
591 <emphasis role="bold">Start the VM.</emphasis> You can use the
592 VirtualBox Manager or the <command>VBoxManage
593 startvm</command> command.
594 </para>
595
596 <para>
597 When you start the VM, the unattended installation is
598 performed automatically.
599 </para>
600
601 <para>
602 Note that the boot order is changed during the preparation
603 step, giving the virtual hard disk the highest priority. As
604 this disk is normally empty before an automatic installation
605 is started, the VM will instead boot from the virtual DVD
606 drive as next available boot medium and the installation will
607 start. If the virtual hard disk contains a bootable operating
608 system, then the installation will not start. The boot order
609 must be manually changed, by pressing F12 during the BIOS
610 splash screen.
611 </para>
612 </listitem>
613
614 </itemizedlist>
615
616 <para>
617 <xref linkend="unattended-guest-install-example"/> describes how
618 to perform an unattended guest installation for an Oracle Linux
619 guest.
620 </para>
621
622 <sect2 id="unattended-guest-install-example">
623
624 <title>An Example of Unattended Guest Installation</title>
625
626 <para>
627 The following example shows how to perform an unattended guest
628 installation for an Oracle Linux virtual machine. The example
629 uses various <command>VBoxManage</command> commands to prepare
630 the guest VM. The <command>VBoxManage unattended
631 install</command> command is then used to install and configure
632 the guest operating system.
633 </para>
634
635 <orderedlist>
636
637 <listitem>
638 <para>
639 Create the virtual machine.
640 </para>
641
642<screen># VM="ol7-autoinstall"
643# VBoxManage list ostypes
644# VBoxManage createvm --name $VM --ostype "Oracle_64" --register</screen>
645
646 <para>
647 Note the following:
648 </para>
649
650 <itemizedlist>
651
652 <listitem>
653 <para>
654 The variable $VM represents the name of the VM.
655 </para>
656 </listitem>
657
658 <listitem>
659 <para>
660 The <command>VBoxManage list ostypes</command> command
661 lists the guest operating systems supported by
662 &product-name;, including the name used for each
663 operating system in the <command>VBoxManage</command>
664 commands.
665 </para>
666 </listitem>
667
668 <listitem>
669 <para>
670 A 64-bit Oracle Linux 7 VM is created and registered
671 with &product-name;.
672 </para>
673 </listitem>
674
675 <listitem>
676 <para>
677 The VM has a unique UUID.
678 </para>
679 </listitem>
680
681 <listitem>
682 <para>
683 An XML settings file is generated.
684 </para>
685 </listitem>
686
687 </itemizedlist>
688 </listitem>
689
690 <listitem>
691 <para>
692 Create a virtual hard disk and storage devices for the VM.
693 </para>
694
695<screen># VBoxManage createhd --filename /VirtualBox/$VM/$VM.vdi --size 32768
696# VBoxManage storagectl $VM --name "SATA Controller" --add sata --controller IntelAHCI
697# VBoxManage storageattach $VM --storagectl "SATA Controller" --port 0 --device 0 \
698--type hdd --medium /VirtualBox/$VM/$VM.vdi
699# VBoxManage storagectl $VM --name "IDE Controller" --add ide
700# VBoxManage storageattach $VM --storagectl "IDE Controller" --port 0 --device 0 \
701--type dvddrive --medium /u01/Software/OL/OracleLinux-R7-U6-Server-x86_64-dvd.iso</screen>
702
703 <para>
704 Note the following:
705 </para>
706
707 <itemizedlist>
708
709 <listitem>
710 <para>
711 A 32768 MB virtual hard disk is created.
712 </para>
713 </listitem>
714
715 <listitem>
716 <para>
717 A SATA storage controller is created and the virtual
718 hard disk is attached.
719 </para>
720 </listitem>
721
722 <listitem>
723 <para>
724 An IDE storage controller for a virtual DVD drive is
725 created and an Oracle Linux installation ISO is
726 attached.
727 </para>
728 </listitem>
729
730 </itemizedlist>
731 </listitem>
732
733 <listitem>
734 <para>
735 (Optional) Configure some settings for the VM.
736 </para>
737
738<screen># VBoxManage modifyvm $VM --ioapic on
739# VBoxManage modifyvm $VM --boot1 dvd --boot2 disk --boot3 none --boot4 none
740# VBoxManage modifyvm $VM --memory 8192 --vram 128</screen>
741
742 <para>
743 Note the following:
744 </para>
745
746 <itemizedlist>
747
748 <listitem>
749 <para>
750 I/O APIC is enabled for the motherboard of the VM.
751 </para>
752 </listitem>
753
754 <listitem>
755 <para>
756 The boot order for the VM is configured.
757 </para>
758 </listitem>
759
760 <listitem>
761 <para>
762 8192 MB of RAM and 128 MB of video RAM are allocated to
763 the VM.
764 </para>
765 </listitem>
766
767 </itemizedlist>
768 </listitem>
769
770 <listitem>
771 <para>
772 Perform an unattended install of the operating system.
773 </para>
774
775<screen># VBoxManage unattended install $VM \
776--iso=/u01/Software/OL/OracleLinux-R7-U6-Server-x86_64-dvd.iso \
777--user=<replaceable>login</replaceable> --full-user-name=<replaceable>name</replaceable> --password <replaceable>password</replaceable> \
778--install-additions --time-zone=CET</screen>
779
780 <para>
781 Note the following:
782 </para>
783
784 <itemizedlist>
785
786 <listitem>
787 <para>
788 An Oracle Linux ISO is specified as the installation
789 ISO.
790 </para>
791 </listitem>
792
793 <listitem>
794 <para>
795 Specify a login name, full name, and login password for
796 a default user on the guest operating system.
797 </para>
798
799 <para>
800 The specified password is also used for the root user
801 account on the guest.
802 </para>
803 </listitem>
804
805 <listitem>
806 <para>
807 The Guest Additions are installed on the VM.
808 </para>
809 </listitem>
810
811 <listitem>
812 <para>
813 The time zone for the guest operating system is set to
814 Central European Time (CET).
815 </para>
816 </listitem>
817
818 </itemizedlist>
819 </listitem>
820
821 <listitem>
822 <para>
823 Start the virtual machine.
824 </para>
825
826 <para>
827 This step completes the unattended install process.
828 </para>
829
830<screen># VBoxManage startvm $VM --type headless</screen>
831
832 <para>
833 The VM is started in headless mode. The VirtualBox Manager
834 window is not displayed.
835 </para>
836 </listitem>
837
838 <listitem>
839 <para>
840 (Optional) Update the guest operating system to use the
841 latest Oracle Linux packages.
842 </para>
843
844 <para>
845 On the guest VM, run the following command:
846 </para>
847
848<screen># yum update</screen>
849 </listitem>
850
851 </orderedlist>
852
853 </sect2>
854
855 </sect1>
856
857 <sect1 id="emul-hardware">
858
859 <title>Emulated Hardware</title>
860
861 <para>
862 &product-name; virtualizes nearly all hardware of the host.
863 Depending on a VM's configuration, the guest will see the
864 following virtual hardware:
865 </para>
866
867 <itemizedlist>
868
869 <listitem>
870 <para>
871 <emphasis role="bold">Input devices.</emphasis> By default,
872 &product-name; emulates a standard PS/2 keyboard and mouse.
873 These devices are supported by almost all past and present
874 operating systems.
875 </para>
876
877 <para>
878 In addition, &product-name; can provide virtual USB input
879 devices to avoid having to capture mouse and keyboard, as
880 described in <xref
881 linkend="keyb_mouse_normal" />.
882 </para>
883 </listitem>
884
885 <listitem>
886 <para>
887 <emphasis role="bold">Graphics.</emphasis> The &product-name;
888 graphics device, sometimes referred to as a VGA device, is not
889 based on any physical counterpart. This is unlike nearly all
890 other emulated devices. It is a simple, synthetic device which
891 provides compatibility with standard VGA and several extended
892 registers used by the VESA BIOS Extensions (VBE).
893 </para>
894 </listitem>
895
896 <listitem>
897 <para>
898 <emphasis role="bold">Storage.</emphasis> &product-name;
899 currently emulates the standard ATA interface found on Intel
900 PIIX3/PIIX4 chips, the SATA (AHCI) interface, and two SCSI
901 adapters (LSI Logic and BusLogic). See
902 <xref linkend="harddiskcontrollers" /> for details. Whereas
903 providing one of these would be enough for &product-name; by
904 itself, this multitude of storage adapters is required for
905 compatibility with other hypervisors. Windows is particularly
906 picky about its boot devices, and migrating VMs between
907 hypervisors is very difficult or impossible if the storage
908 controllers are different.
909 </para>
910 </listitem>
911
912 <listitem>
913 <para>
914 <emphasis role="bold">Networking.</emphasis> See
915 <xref
916 linkend="nichardware" />.
917 </para>
918 </listitem>
919
920 <listitem>
921 <para>
922 <emphasis role="bold">USB.</emphasis> &product-name; emulates
923 three USB host controllers: xHCI, EHCI, and OHCI. While xHCI
924 handles all USB transfer speeds, only guest operating systems
925 released approximately after 2011 support xHCI. Note that for
926 Windows 7 guests, 3rd party drivers must be installed for xHCI
927 support.
928 </para>
929
930 <para>
931 Older operating systems typically support OHCI and EHCI. The
932 two controllers are needed because OHCI only handles USB
933 low-speed and full-speed devices (both USB 1.x and 2.0), while
934 EHCI only handles high-speed devices (USB 2.0 only).
935 </para>
936
937 <para>
938 The emulated USB controllers do not communicate directly with
939 devices on the host but rather with a virtual USB layer which
940 abstracts the USB protocol and enables the use of remote USB
941 devices.
942 </para>
943 </listitem>
944
945 <listitem>
946 <para>
947 <emphasis role="bold">Audio.</emphasis> See
948 <xref linkend="settings-audio" />.
949 </para>
950 </listitem>
951
952 </itemizedlist>
953
954 </sect1>
955
956 <sect1 id="generalsettings">
957
958 <title>General Settings</title>
959
960 <para>
961 In the <emphasis role="bold">Settings</emphasis> window, under
962 <emphasis role="bold">General</emphasis>, you can configure the
963 most fundamental aspects of the virtual machine such as memory and
964 essential hardware. The following tabs are available.
965 </para>
966
967 <sect2 id="settings-basic">
968
969 <title>Basic Tab</title>
970
971 <para>
972 In the <emphasis role="bold">Basic</emphasis> tab of the
973 <emphasis role="bold">General</emphasis> settings category, you
974 can find these settings:
975 </para>
976
977 <itemizedlist>
978
979 <listitem>
980 <para>
981 <emphasis role="bold">Name:</emphasis> The name under which
982 the VM is shown in the list of VMs in the main window. Under
983 this name, &product-name; also saves the VM's configuration
984 files. By changing the name, &product-name; renames these
985 files as well. As a result, you can only use characters
986 which are allowed in your host operating system's file
987 names.
988 </para>
989
990 <para>
991 Note that internally, &product-name; uses unique identifiers
992 (UUIDs) to identify virtual machines. You can display these
993 with <command>VBoxManage</command>.
994 </para>
995 </listitem>
996
997 <listitem>
998 <para>
999 <emphasis role="bold">Type:</emphasis> The type of the guest
1000 operating system for the VM. This is the same setting that
1001 is specified in the <emphasis role="bold">New Virtual
1002 Machine</emphasis> wizard. See
1003 <xref linkend="gui-createvm" />.
1004 </para>
1005
1006 <para>
1007 Whereas the default settings of a newly created VM depend on
1008 the selected operating system type, changing the type later
1009 has no effect on VM settings. This value is purely
1010 informational and decorative.
1011 </para>
1012 </listitem>
1013
1014 <listitem>
1015 <para>
1016 <emphasis role="bold">Version:</emphasis> The version of the
1017 guest operating system for the VM. This is the same setting
1018 that is specified in the <emphasis role="bold">New Virtual
1019 Machine</emphasis> wizard. See
1020 <xref linkend="gui-createvm" />.
1021 </para>
1022 </listitem>
1023
1024 </itemizedlist>
1025
1026 </sect2>
1027
1028 <sect2 id="settings-general-advanced">
1029
1030 <title>Advanced Tab</title>
1031
1032 <para>
1033 The following settings are available in the
1034 <emphasis role="bold">Advanced</emphasis> tab:
1035 </para>
1036
1037 <itemizedlist>
1038
1039 <listitem>
1040 <para>
1041 <emphasis role="bold">Snapshot Folder:</emphasis> By
1042 default, &product-name; saves snapshot data together with
1043 your other &product-name; configuration data. See
1044 <xref linkend="vboxconfigdata" />. With this setting, you
1045 can specify any other folder for each VM.
1046 </para>
1047 </listitem>
1048
1049 <listitem>
1050 <para>
1051 <emphasis role="bold">Shared Clipboard:</emphasis> You can
1052 select here whether the clipboard of the guest operating
1053 system should be shared with that of your host. If you
1054 select <emphasis role="bold">Bidirectional</emphasis>, then
1055 &product-name; will always make sure that both clipboards
1056 contain the same data. If you select
1057 <emphasis role="bold">Host to Guest</emphasis> or
1058 <emphasis role="bold">Guest to Host</emphasis>, then
1059 &product-name; will only ever copy clipboard data in one
1060 direction.
1061 </para>
1062
1063 <para>
1064 Clipboard sharing requires that the &product-name; Guest
1065 Additions be installed. In such a case, this setting has no
1066 effect. See <xref linkend="guestadditions" />.
1067 </para>
1068
1069 <para>
1070 For security reasons, the shared clipboard is disabled by
1071 default. This setting can be changed at any time using the
1072 <emphasis role="bold">Shared Clipboard</emphasis> menu item
1073 in the <emphasis role="bold">Devices</emphasis> menu of the
1074 virtual machine.
1075 </para>
1076 </listitem>
1077
1078 <listitem>
1079 <para>
1080 <emphasis role="bold">Drag and Drop:</emphasis> This setting
1081 enables support for drag and drop. Select an object, such as
1082 a file, from the host or guest and directly copy or open it
1083 on the guest or host. Multiple per-VM drag and drop modes
1084 allow restricting access in either direction.
1085 </para>
1086
1087 <para>
1088 For drag and drop to work the Guest Additions need to be
1089 installed on the guest.
1090 </para>
1091
1092 <note>
1093 <para>
1094 Drag and drop is disabled by default. This setting can be
1095 changed at any time using the <emphasis role="bold">Drag
1096 and Drop</emphasis> menu item in the
1097 <emphasis role="bold">Devices</emphasis> menu of the
1098 virtual machine.
1099 </para>
1100 </note>
1101
1102 <para>
1103 See <xref linkend="guestadd-dnd"/>.
1104 </para>
1105 </listitem>
1106
1107 </itemizedlist>
1108
1109 </sect2>
1110
1111 <sect2 id="settings-description">
1112
1113 <title>Description Tab</title>
1114
1115 <para>
1116 On the <emphasis role="bold">Description</emphasis> tab you can
1117 enter a description for your virtual machine. This has no effect
1118 on the functionality of the machine, but you may find this space
1119 useful to note down things such as the configuration of a
1120 virtual machine and the software that has been installed into
1121 it.
1122 </para>
1123
1124 <para>
1125 To insert a line break into the
1126 <emphasis role="bold">Description</emphasis> text field, press
1127 Shift+Enter.
1128 </para>
1129
1130 </sect2>
1131
1132 <sect2 id="settings-disk-encryption">
1133
1134 <title>Disk Encryption Tab</title>
1135
1136 <para>
1137 The <emphasis role="bold">Disk Encryption</emphasis> tab enables
1138 you to encrypt disks that are attached to the virtual machine.
1139 </para>
1140
1141 <para>
1142 To enable disk encryption, select the
1143 <emphasis role="bold">Enable Disk Encryption</emphasis> check
1144 box.
1145 </para>
1146
1147 <para>
1148 Settings are available to configure the cipher used for
1149 encryption and the encryption password.
1150 </para>
1151
1152 </sect2>
1153
1154 </sect1>
1155
1156 <sect1 id="settings-system">
1157
1158 <title>System Settings</title>
1159
1160 <para>
1161 The <emphasis role="bold">System</emphasis> category groups
1162 various settings that are related to the basic hardware that is
1163 presented to the virtual machine.
1164 </para>
1165
1166 <note>
1167 <para>
1168 As the activation mechanism of Microsoft Windows is sensitive to
1169 hardware changes, if you are changing hardware settings for a
1170 Windows guest, some of these changes may trigger a request for
1171 another activation with Microsoft.
1172 </para>
1173 </note>
1174
1175 <para>
1176 The following tabs are available.
1177 </para>
1178
1179 <sect2 id="settings-motherboard">
1180
1181 <title>Motherboard Tab</title>
1182
1183 <para>
1184 On the <emphasis role="bold">Motherboard</emphasis> tab, you can
1185 configure virtual hardware that would normally be on the
1186 motherboard of a real computer.
1187 </para>
1188
1189 <itemizedlist>
1190
1191 <listitem>
1192 <para>
1193 <emphasis role="bold">Base Memory:</emphasis> Sets the
1194 amount of RAM that is allocated and given to the VM when it
1195 is running. The specified amount of memory will be requested
1196 from the host operating system, so it must be available or
1197 made available as free memory on the host when attempting to
1198 start the VM and will not be available to the host while the
1199 VM is running. This is the same setting that was specified
1200 in the <emphasis role="bold">New Virtual Machine</emphasis>
1201 wizard, as described in <xref linkend="gui-createvm" />.
1202 </para>
1203
1204 <para>
1205 Generally, it is possible to change the memory size after
1206 installing the guest operating system. But you must not
1207 reduce the memory to an amount where the operating system
1208 would no longer boot.
1209 </para>
1210 </listitem>
1211
1212 <listitem>
1213 <para>
1214 <emphasis role="bold">Boot Order:</emphasis> Determines the
1215 order in which the guest operating system will attempt to
1216 boot from the various virtual boot devices. Analogous to a
1217 real PC's BIOS setting, &product-name; can tell a guest OS
1218 to start from the virtual floppy, the virtual CD/DVD drive,
1219 the virtual hard drive (each of these as defined by the
1220 other VM settings), the network, or none of these.
1221 </para>
1222
1223 <para>
1224 If you select <emphasis role="bold">Network</emphasis>, the
1225 VM will attempt to boot from a network using the PXE
1226 mechanism. This needs to be configured in detail on the
1227 command line. See <xref linkend="vboxmanage-modifyvm" />.
1228 </para>
1229 </listitem>
1230
1231 <listitem>
1232 <para>
1233 <emphasis role="bold">Chipset:</emphasis> You can select
1234 which chipset will be presented to the virtual machine. In
1235 legacy versions of &product-name;, PIIX3 was the only
1236 available option. For modern guest operating systems such as
1237 Mac OS X, that old chipset is no longer well supported. As a
1238 result, &product-name; supports an emulation of the more
1239 modern ICH9 chipset, which supports PCI express, three PCI
1240 buses, PCI-to-PCI bridges and Message Signaled Interrupts
1241 (MSI). This enables modern operating systems to address more
1242 PCI devices and no longer requires IRQ sharing. Using the
1243 ICH9 chipset it is also possible to configure up to 36
1244 network cards, up to 8 network adapters with PIIX3. Note
1245 that the ICH9 support is experimental and not recommended
1246 for guest operating systems which do not require it.
1247 </para>
1248 </listitem>
1249
1250 <listitem>
1251 <para>
1252 <emphasis role="bold">Pointing Device:</emphasis> The
1253 default virtual pointing devices for older guests is the
1254 traditional PS/2 mouse. If set to <emphasis>USB
1255 tablet</emphasis>, &product-name; reports to the virtual
1256 machine that a USB tablet device is present and communicates
1257 mouse events to the virtual machine through this device. The
1258 third setting is a <emphasis>USB Multi-Touch
1259 Tablet</emphasis> which is suited for recent Windows guests.
1260 </para>
1261
1262 <para>
1263 Using the virtual USB tablet has the advantage that
1264 movements are reported in absolute coordinates, instead of
1265 as relative position changes. This enables &product-name; to
1266 translate mouse events over the VM window into tablet events
1267 without having to "capture" the mouse in the guest as
1268 described in <xref linkend="keyb_mouse_normal" />. This
1269 makes using the VM less tedious even if Guest Additions are
1270 not installed.
1271 </para>
1272 </listitem>
1273
1274 <listitem>
1275 <para>
1276 <emphasis role="bold">Enable I/O APIC:</emphasis> Advanced
1277 Programmable Interrupt Controllers (APICs) are a newer x86
1278 hardware feature that have replaced old-style Programmable
1279 Interrupt Controllers (PICs) in recent years. With an I/O
1280 APIC, operating systems can use more than 16 interrupt
1281 requests (IRQs) and therefore avoid IRQ sharing for improved
1282 reliability.
1283 </para>
1284
1285 <note>
1286 <para>
1287 Enabling the I/O APIC is <emphasis>required</emphasis> for
1288 64-bit guest operating systems, especially Windows Vista.
1289 It is also required if you want to use more than one
1290 virtual CPU in a virtual machine.
1291 </para>
1292 </note>
1293
1294 <para>
1295 However, software support for I/O APICs has been unreliable
1296 with some operating systems other than Windows. Also, the
1297 use of an I/O APIC slightly increases the overhead of
1298 virtualization and therefore slows down the guest OS a
1299 little.
1300 </para>
1301
1302 <warning>
1303 <para>
1304 All Windows operating systems starting with Windows 2000
1305 install different kernels, depending on whether an I/O
1306 APIC is available. As with ACPI, the I/O APIC therefore
1307 <emphasis>must not be turned off after
1308 installation</emphasis> of a Windows guest OS. Turning it
1309 on after installation will have no effect however.
1310 </para>
1311 </warning>
1312 </listitem>
1313
1314 <listitem>
1315 <para>
1316 <emphasis role="bold">Enable EFI:</emphasis> Enables
1317 Extensible Firmware Interface (EFI), which replaces the
1318 legacy BIOS and may be useful for certain advanced use
1319 cases. See <xref linkend="efi" />.
1320 </para>
1321 </listitem>
1322
1323 <listitem>
1324 <para>
1325 <emphasis role="bold">Hardware Clock in UTC Time:</emphasis>
1326 If selected, &product-name; will report the system time in
1327 UTC format to the guest instead of the local (host) time.
1328 This affects how the virtual real-time clock (RTC) operates
1329 and may be useful for UNIX-like guest operating systems,
1330 which typically expect the hardware clock to be set to UTC.
1331 </para>
1332 </listitem>
1333
1334 </itemizedlist>
1335
1336 <para>
1337 In addition, you can turn off the <emphasis role="bold">Advanced
1338 Configuration and Power Interface (ACPI)</emphasis> which
1339 &product-name; presents to the guest operating system by
1340 default.
1341 </para>
1342
1343 <para>
1344 ACPI is the current industry standard to allow operating systems
1345 to recognize hardware, configure motherboards and other devices
1346 and manage power. As all modern PCs contain this feature and
1347 Windows and Linux have been supporting it for years, it is also
1348 enabled by default in &product-name;. ACPI can only be turned
1349 off using the command line. See
1350 <xref linkend="vboxmanage-modifyvm" />.
1351 </para>
1352
1353 <warning>
1354 <para>
1355 All Windows operating systems starting with Windows 2000
1356 install different kernels, depending on whether ACPI is
1357 available. This means that ACPI <emphasis>must not be turned
1358 off</emphasis> after installation of a Windows guest OS.
1359 However, turning it on after installation will have no effect.
1360 </para>
1361 </warning>
1362
1363 </sect2>
1364
1365 <sect2 id="settings-processor">
1366
1367 <title>Processor Tab</title>
1368
1369 <para>
1370 On the <emphasis role="bold">Processor</emphasis> tab, you can
1371 configure settings for the CPU used by the virtual machine.
1372 </para>
1373
1374 <itemizedlist>
1375
1376 <listitem>
1377 <para>
1378 <emphasis role="bold">Processor(s):</emphasis> Sets the
1379 number of virtual CPU cores the guest operating systems can
1380 see. &product-name; supports symmetrical multiprocessing
1381 (SMP) and can present up to 32 virtual CPU cores to each
1382 virtual machine.
1383 </para>
1384
1385 <para>
1386 You should not configure virtual machines to use more CPU
1387 cores than are available physically. This includes real
1388 cores, with no hyperthreads.
1389 </para>
1390 </listitem>
1391
1392 <listitem>
1393 <para>
1394 <emphasis role="bold">Execution Cap:</emphasis> Configures
1395 the CPU execution cap. This limits the amount of time a host
1396 CPU spends to emulate a virtual CPU. The default setting is
1397 100%, meaning that there is no limitation. A setting of 50%
1398 implies a single virtual CPU can use up to 50% of a single
1399 host CPU. Note that limiting the execution time of the
1400 virtual CPUs may cause guest timing problems.
1401 </para>
1402
1403 <para>
1404 A warning is displayed at the bottom of the Processor tab if
1405 an Execution Cap setting is made that may affect system
1406 performance.
1407 </para>
1408 </listitem>
1409
1410 <listitem>
1411 <para>
1412 <emphasis role="bold">Enable PAE/NX:</emphasis> Determines
1413 whether the PAE and NX capabilities of the host CPU will be
1414 exposed to the virtual machine. To enable this feature,
1415 select the <emphasis role="bold">Extended
1416 Features</emphasis> check box.
1417 </para>
1418
1419 <para>
1420 PAE stands for Physical Address Extension. Normally, if
1421 enabled and supported by the operating system, then even a
1422 32-bit x86 CPU can access more than 4 GB of RAM. This is
1423 made possible by adding another 4 bits to memory addresses,
1424 so that with 36 bits, up to 64 GB can be addressed. Some
1425 operating systems, such as Ubuntu Server, require PAE
1426 support from the CPU and cannot be run in a virtual machine
1427 without it.
1428 </para>
1429 </listitem>
1430
1431 </itemizedlist>
1432
1433 <para>
1434 With virtual machines running modern server operating systems,
1435 &product-name; also supports CPU hot-plugging. For details, see
1436 <xref linkend="cpuhotplug" />.
1437 </para>
1438
1439 </sect2>
1440
1441 <sect2 id="settings-acceleration">
1442
1443 <title>Acceleration Tab</title>
1444
1445 <para>
1446 On this tab, you can configure &product-name; to use hardware
1447 virtualization extensions that your host CPU supports.
1448 </para>
1449
1450 <itemizedlist>
1451
1452 <listitem>
1453 <para>
1454 <emphasis role="bold">Paravirtualization
1455 Interface:</emphasis> &product-name; provides
1456 paravirtualization interfaces to improve time-keeping
1457 accuracy and performance of guest operating systems. The
1458 options available are documented under the
1459 <computeroutput>paravirtprovider</computeroutput> option in
1460 <xref linkend="vboxmanage-modifyvm" />. For further details
1461 on the paravirtualization providers, see
1462 <xref linkend="gimproviders" />.
1463 </para>
1464 </listitem>
1465
1466 <listitem>
1467 <para>
1468 <emphasis role="bold">Hardware Virtualization:</emphasis>
1469 You can select for each virtual machine individually whether
1470 &product-name; should use software or hardware
1471 virtualization.
1472 </para>
1473
1474 <itemizedlist>
1475
1476 <listitem>
1477 <para>
1478 <emphasis role="bold">Enable VT-x/AMD-V:</emphasis>
1479 Enables Intel VT-x and AMD-V hardware extensions if the
1480 host CPU supports them.
1481 </para>
1482 </listitem>
1483
1484 <listitem>
1485 <para>
1486 <emphasis role="bold">Enable Nested Paging:</emphasis>
1487 If the host CPU supports the nested paging (AMD-V) or
1488 EPT (Intel VT-x) features, then you can expect a
1489 significant performance increase by enabling nested
1490 paging in addition to hardware virtualization. For
1491 technical details, see <xref linkend="nestedpaging" />.
1492 For Intel EPT security recommendations, see
1493 <xref linkend="sec-rec-cve-2018-3646" />.
1494 </para>
1495 </listitem>
1496
1497 </itemizedlist>
1498
1499 <para>
1500 Advanced users may be interested in technical details about
1501 software versus hardware virtualization. See
1502 <xref linkend="hwvirt" />.
1503 </para>
1504 </listitem>
1505
1506 </itemizedlist>
1507
1508 <para>
1509 In most cases, the default settings on the
1510 <emphasis role="bold">Acceleration</emphasis> tab will work
1511 well. &product-name; selects sensible defaults, depending on the
1512 operating system that you selected when you created the virtual
1513 machine. In certain situations, however, you may want to change
1514 the preconfigured defaults.
1515 </para>
1516
1517 </sect2>
1518
1519 </sect1>
1520
1521 <sect1 id="settings-display">
1522
1523 <title>Display Settings</title>
1524
1525 <para>
1526 The following tabs are available for configuring the display for a
1527 virtual machine.
1528 </para>
1529
1530 <sect2 id="settings-screen">
1531
1532 <title>Screen Tab</title>
1533
1534 <itemizedlist>
1535
1536 <listitem>
1537 <para>
1538 <emphasis role="bold">Video Memory:</emphasis> Sets the size
1539 of the memory provided by the virtual graphics card
1540 available to the guest, in MB. As with the main memory, the
1541 specified amount will be allocated from the host's resident
1542 memory. Based on the amount of video memory, higher
1543 resolutions and color depths may be available.
1544 </para>
1545
1546 <para>
1547 The GUI will show a warning if the amount of video memory is
1548 too small to be able to switch the VM into full screen mode.
1549 The minimum value depends on the number of virtual monitors,
1550 the screen resolution and the color depth of the host
1551 display as well as on the use of <emphasis>3D
1552 acceleration</emphasis> and <emphasis>2D video
1553 acceleration</emphasis>. A rough estimate is
1554 (<emphasis>color depth</emphasis> / 8) x <emphasis>vertical
1555 pixels</emphasis> x <emphasis>horizontal pixels</emphasis> x
1556 <emphasis>number of screens</emphasis> = <emphasis>number of
1557 bytes</emphasis>. Extra memory may be required if display
1558 acceleration is used.
1559 </para>
1560 </listitem>
1561
1562 <listitem>
1563 <para>
1564 <emphasis role="bold">Monitor Count:</emphasis> With this
1565 setting, &product-name; can provide more than one virtual
1566 monitor to a virtual machine. If a guest operating system
1567 supports multiple attached monitors, &product-name; can
1568 pretend that multiple virtual monitors are present. Up to
1569 eight such virtual monitors are supported.
1570 </para>
1571
1572 <para>
1573 The output of the multiple monitors are displayed on the
1574 host in multiple VM windows which are running side by side.
1575 However, in full screen and seamless mode, they use the
1576 available physical monitors attached to the host. As a
1577 result, for full screen and seamless modes to work with
1578 multiple monitors, you will need at least as many physical
1579 monitors as you have virtual monitors configured, or
1580 &product-name; will report an error.
1581 </para>
1582
1583 <para>
1584 You can configure the relationship between guest and host
1585 monitors using the <emphasis role="bold">View</emphasis>
1586 menu by pressing Host key + Home when you are in full screen
1587 or seamless mode.
1588 </para>
1589
1590 <para>
1591 See also <xref linkend="KnownIssues" />.
1592 </para>
1593 </listitem>
1594
1595 <listitem>
1596 <para>
1597 <emphasis role="bold">Scale Factor:</emphasis> Enables
1598 scaling of the display size. For multiple monitor displays,
1599 you can set the scale factor for individual monitors, or
1600 globally for all of the monitors. Use the slider to select a
1601 scaling factor up to 200%.
1602 </para>
1603
1604 <para>
1605 You can set a default scale factor for all VMs. Use the
1606 <emphasis role="bold">Display</emphasis> tab in the Global
1607 Settings dialogs.
1608 </para>
1609 </listitem>
1610
1611 <listitem>
1612 <para>
1613 <emphasis role="bold">Enable 3D Acceleration:</emphasis> If
1614 a virtual machine has Guest Additions installed, you can
1615 select here whether the guest should support accelerated 3D
1616 graphics. See <xref linkend="guestadd-3d" />.
1617 </para>
1618 </listitem>
1619
1620 <listitem>
1621 <para>
1622 <emphasis role="bold">Enable 2D Video
1623 Acceleration:</emphasis> If a virtual machine with Microsoft
1624 Windows has Guest Additions installed, you can select here
1625 whether the guest should support accelerated 2D video
1626 graphics. See <xref linkend="guestadd-2d" />.
1627 </para>
1628 </listitem>
1629
1630 <listitem>
1631 <para>
1632 <emphasis role="bold">Graphics Controller:</emphasis>
1633 Specifies the graphics adapter type used by the VM. The
1634 following options are available:
1635 </para>
1636
1637 <itemizedlist>
1638
1639 <listitem>
1640 <para>
1641 <emphasis role="bold">VBoxSVGA:</emphasis> The default
1642 graphics controller for new VMs that use Linux or
1643 Windows 7 or later. Requires the Guest Additions.
1644 </para>
1645 </listitem>
1646
1647 <listitem>
1648 <para>
1649 <emphasis role="bold">VBoxVGA:</emphasis> Used for
1650 legacy guest operating systems. This was the default
1651 graphics controller in previous releases.
1652 </para>
1653
1654 <para>
1655 For Windows versions before Windows 7, this is the
1656 default option. Does not require the Guest Additions.
1657 </para>
1658 </listitem>
1659
1660 <listitem>
1661 <para>
1662 <emphasis role="bold">VMSVGA:</emphasis> Used to emulate
1663 a VMware SVGA graphic device. Requires the Guest
1664 Additions.
1665 </para>
1666 </listitem>
1667
1668 <listitem>
1669 <para>
1670 <emphasis role="bold">None:</emphasis> Do not emulate a
1671 graphics adapter type.
1672 </para>
1673 </listitem>
1674
1675 </itemizedlist>
1676 </listitem>
1677
1678 </itemizedlist>
1679
1680 </sect2>
1681
1682 <sect2 id="settings-remote-display">
1683
1684 <title>Remote Display Tab</title>
1685
1686 <para>
1687 On the <emphasis role="bold">Remote Display</emphasis> tab, if
1688 the VirtualBox Remote Display Extension (VRDE) is installed, you
1689 can enable the VRDP server that is built into &product-name;.
1690 This enables you to connect to the console of the virtual
1691 machine remotely with any standard RDP viewer, such as
1692 <command>mstsc.exe</command> that comes with Microsoft Windows.
1693 On Linux and Oracle Solaris systems you can use the standard
1694 open source <command>rdesktop</command> program. These features
1695 are described in <xref linkend="vrde" />.
1696 </para>
1697
1698 <itemizedlist>
1699
1700 <listitem>
1701 <para>
1702 <emphasis role="bold">Enable Server:</emphasis> Select this
1703 check box and configure settings for the remote display
1704 connection.
1705 </para>
1706 </listitem>
1707
1708 </itemizedlist>
1709
1710 </sect2>
1711
1712 <sect2 id="settings-capture">
1713
1714 <title>Recording Tab</title>
1715
1716 <remark>
1717 Renamed to Recording tab? Check against RC version.
1718 </remark>
1719
1720 <para>
1721 On the <emphasis role="bold">Recording</emphasis> tab you can
1722 enable video and audio recording for a virtual machine and
1723 change related settings. Note that these features can be enabled
1724 and disabled while a VM is running.
1725 </para>
1726
1727 <itemizedlist>
1728
1729 <listitem>
1730 <para>
1731 <emphasis role="bold">Enable Capture:</emphasis> Select this
1732 check box and select a <emphasis role="bold">Capture
1733 Mode</emphasis> option.
1734 </para>
1735 </listitem>
1736
1737 <listitem>
1738 <para>
1739 <emphasis role="bold">Capture Mode:</emphasis> You can
1740 choose to record video, audio, or both video and audio.
1741 </para>
1742
1743 <para>
1744 Some settings on the
1745 <emphasis role="bold">Recording</emphasis> tab may be grayed
1746 out, depending on the <emphasis role="bold">Capture
1747 Mode</emphasis> setting.
1748 </para>
1749 </listitem>
1750
1751 <listitem>
1752 <para>
1753 <emphasis role="bold">File Path:</emphasis> The file where
1754 the recording is saved.
1755 </para>
1756 </listitem>
1757
1758 <listitem>
1759 <para>
1760 <emphasis role="bold">Frame Size:</emphasis> The video
1761 resolution of the recorded video, in pixels. The drop-down
1762 list enables you to select from common frame sizes.
1763 </para>
1764 </listitem>
1765
1766 <listitem>
1767 <para>
1768 <emphasis role="bold">Frame Rate:</emphasis> Use the slider
1769 to set the maximum number of video frames per second (FPS)
1770 to record. Frames that have a higher frequency are skipped.
1771 Increasing this value reduces the number of skipped frames
1772 and increases the file size.
1773 </para>
1774 </listitem>
1775
1776 <listitem>
1777 <para>
1778 <emphasis role="bold">Quality:</emphasis> Use the slider to
1779 set the the bit rate of the video in kilobits per second.
1780 Increasing this value improves the appearance of the video
1781 at the cost of an increased file size.
1782 </para>
1783 </listitem>
1784
1785 <listitem>
1786 <para>
1787 <emphasis role="bold">Audio Quality:</emphasis> Use the
1788 slider to set the quality of the audio recording. Increasing
1789 this value improves the audio quality at the cost of an
1790 increased file size.
1791 </para>
1792 </listitem>
1793
1794 <listitem>
1795 <para>
1796 <emphasis role="bold">Screens:</emphasis> For a multiple
1797 monitor display, you can select which screens to record
1798 video from.
1799 </para>
1800 </listitem>
1801
1802 </itemizedlist>
1803
1804 <para>
1805 As you adjust the video and audio recording settings, the
1806 approximate output file size for a five minute video is shown.
1807 </para>
1808
1809 </sect2>
1810
1811 </sect1>
1812
1813 <sect1 id="settings-storage">
1814
1815 <title>Storage Settings</title>
1816
1817 <para>
1818 The <emphasis role="bold">Storage</emphasis> category in the VM
1819 settings enables you to connect virtual hard disk, CD/DVD, and
1820 floppy images and drives to your virtual machine.
1821 </para>
1822
1823 <para>
1824 In a real PC, so-called <emphasis>storage controllers</emphasis>
1825 connect physical disk drives to the rest of the computer.
1826 Similarly, &product-name; presents virtual storage controllers to
1827 a virtual machine. Under each controller, the virtual devices,
1828 such as hard disks, CD/DVD or floppy drives, attached to the
1829 controller are shown.
1830 </para>
1831
1832 <note>
1833 <para>
1834 This section gives a quick introduction to the &product-name;
1835 storage settings. See <xref linkend="storage" /> for a full
1836 description of the available storage settings in &product-name;.
1837 </para>
1838 </note>
1839
1840 <para>
1841 If you have used the <emphasis role="bold">Create VM</emphasis>
1842 wizard to create a machine, you will normally see something like
1843 the following:
1844 </para>
1845
1846 <figure id="fig-storage-settings">
1847 <title>Storage Settings for a Virtual Machine</title>
1848 <mediaobject>
1849 <imageobject>
1850 <imagedata align="center" fileref="images/vm-settings-harddisk.png"
1851 width="10cm" />
1852 </imageobject>
1853 </mediaobject>
1854 </figure>
1855
1856 <para>
1857 Depending on the guest operating system type that you selected
1858 when you created the VM, a new VM includes the following storage
1859 devices:
1860 </para>
1861
1862 <itemizedlist>
1863
1864 <listitem>
1865 <para>
1866 <emphasis role="bold">IDE controller.</emphasis> A virtual
1867 CD/DVD drive is attached to the secondary master port of the
1868 IDE controller.
1869 </para>
1870 </listitem>
1871
1872 <listitem>
1873 <para>
1874 <emphasis role="bold">SATA controller.</emphasis> This is a
1875 modern type of storage controller for higher hard disk data
1876 throughput, to which the virtual hard disks are attached.
1877 Initially you will normally have one such virtual disk, but as
1878 shown in the previous screenshot, you can have more than one.
1879 Each is represented by a disk image file, such as a VDI file
1880 in this example.
1881 </para>
1882 </listitem>
1883
1884 </itemizedlist>
1885
1886 <para>
1887 If you created your VM with an older version of &product-name;,
1888 the default storage layout may differ. You might then only have an
1889 IDE controller to which both the CD/DVD drive and the hard disks
1890 have been attached. This might also apply if you selected an older
1891 operating system type when you created the VM. Since older
1892 operating systems do not support SATA without additional drivers,
1893 &product-name; will make sure that no such devices are present
1894 initially. See <xref linkend="harddiskcontrollers" />.
1895 </para>
1896
1897 <para>
1898 &product-name; also provides a <emphasis>floppy
1899 controller</emphasis>. You cannot add devices other than floppy
1900 drives to this controller. Virtual floppy drives, like virtual
1901 CD/DVD drives, can be connected to either a host floppy drive, if
1902 you have one, or a disk image, which in this case must be in RAW
1903 format.
1904 </para>
1905
1906 <para>
1907 You can modify these media attachments freely. For example, if you
1908 wish to copy some files from another virtual disk that you
1909 created, you can connect that disk as a second hard disk, as in
1910 the above screenshot. You could also add a second virtual CD/DVD
1911 drive, or change where these items are attached. The following
1912 options are available:
1913 </para>
1914
1915 <itemizedlist>
1916
1917 <listitem>
1918 <para>
1919 To <emphasis role="bold">add another virtual hard disk, or a
1920 CD/DVD or floppy drive</emphasis>, select the storage
1921 controller to which it should be added (IDE, SATA, SCSI, SAS,
1922 floppy controller) and then click the
1923 <emphasis role="bold">Add Disk</emphasis> button below the
1924 tree. You can then either select <emphasis role="bold">Add
1925 CD/DVD Device</emphasis> or <emphasis role="bold">Add Hard
1926 Disk</emphasis>. If you clicked on a floppy controller, you
1927 can add a floppy drive instead. Alternatively, right-click on
1928 the storage controller and select a menu item there.
1929 </para>
1930
1931 <para>
1932 On the right part of the window, you can then set the
1933 following:
1934 </para>
1935
1936 <orderedlist>
1937
1938 <listitem>
1939 <para>
1940 You can then select to which <emphasis role="bold">device
1941 slot</emphasis> of the controller the virtual disk should
1942 be connected to. IDE controllers have four slots which
1943 have traditionally been called primary master, primary
1944 slave, secondary master, and secondary slave. By contrast,
1945 SATA and SCSI controllers offer you up to 30 slots for
1946 attaching virtual devices.
1947 </para>
1948 </listitem>
1949
1950 <listitem>
1951 <para>
1952 You can select which <emphasis role="bold">image
1953 file</emphasis> to use.
1954 </para>
1955
1956 <itemizedlist>
1957
1958 <listitem>
1959 <para>
1960 For virtual hard disks, a button with a drop-down list
1961 appears on the right, offering you to either select a
1962 <emphasis role="bold">virtual hard disk
1963 file</emphasis> using a standard file dialog or to
1964 <emphasis role="bold">create a new hard
1965 disk</emphasis> (image file). The latter option
1966 displays the <emphasis role="bold">Create New
1967 Disk</emphasis> wizard, described in
1968 <xref linkend="gui-createvm" />.
1969 </para>
1970
1971 <para>
1972 For virtual floppy drives, a dialog enables you to
1973 create and format a new floppy disk image
1974 automatically.
1975 </para>
1976
1977 <para>
1978 For details on the image file types that are
1979 supported, see <xref linkend="vdidetails" />.
1980 </para>
1981 </listitem>
1982
1983 <listitem>
1984 <para>
1985 For virtual CD/DVD drives, the image files will
1986 typically be in the standard ISO format instead. Most
1987 commonly, you will select this option when installing
1988 an operating system from an ISO file that you have
1989 obtained from the Internet. For example, most Linux
1990 distributions are available in this way.
1991 </para>
1992
1993 <para>
1994 For virtual CD/DVD drives, the following additional
1995 options are available:
1996 </para>
1997
1998 <itemizedlist>
1999
2000 <listitem>
2001 <para>
2002 If you select <emphasis role="bold">Host
2003 Drive</emphasis> from the list, then the physical
2004 device of the host computer is connected to the
2005 VM, so that the guest operating system can read
2006 from and write to your physical device. This is,
2007 for instance, useful if you want to install
2008 Windows from a real installation CD. In this case,
2009 select your host drive from the drop-down list
2010 presented.
2011 </para>
2012
2013 <para>
2014 If you want to write, or burn, CDs or DVDs using
2015 the host drive, you need to also enable the
2016 <emphasis role="bold">Passthrough</emphasis>
2017 option. See <xref linkend="storage-cds" />.
2018 </para>
2019 </listitem>
2020
2021 <listitem>
2022 <para>
2023 If you select <emphasis role="bold">Remove Disk
2024 from Virtual Drive</emphasis>, &product-name; will
2025 present an empty CD/DVD drive to the guest into
2026 which no media has been inserted.
2027 </para>
2028 </listitem>
2029
2030 </itemizedlist>
2031 </listitem>
2032
2033 </itemizedlist>
2034 </listitem>
2035
2036 </orderedlist>
2037 </listitem>
2038
2039 <listitem>
2040 <para>
2041 To <emphasis role="bold">remove an attachment</emphasis>,
2042 either select it and click on the
2043 <emphasis role="bold">Remove</emphasis> icon at the bottom, or
2044 right-click on it and select the menu item.
2045 </para>
2046 </listitem>
2047
2048 </itemizedlist>
2049
2050 <para>
2051 Removable media, such as CD/DVDs and floppies, can be changed
2052 while the guest is running. Since the
2053 <emphasis role="bold">Settings</emphasis> dialog is not available
2054 at that time, you can also access these settings from the
2055 <emphasis role="bold">Devices</emphasis> menu of your virtual
2056 machine window.
2057 </para>
2058
2059 </sect1>
2060
2061 <sect1 id="settings-audio">
2062
2063 <title>Audio Settings</title>
2064
2065 <para>
2066 The <emphasis role="bold">Audio</emphasis> section in a virtual
2067 machine's <emphasis role="bold">Settings</emphasis> window
2068 determines whether the VM will detect a connected sound card, and
2069 if the audio output should be played on the host system.
2070 </para>
2071
2072 <para>
2073 To enable audio for a guest, select the
2074 <emphasis role="bold">Enable Audio</emphasis> check box. The
2075 following settings are available:
2076 </para>
2077
2078 <itemizedlist>
2079
2080 <listitem>
2081 <para>
2082 <emphasis role="bold">Host Audio Driver:</emphasis> The audio
2083 driver that &product-name; uses on the host. On a Linux host,
2084 depending on your host configuration, you can select between
2085 the OSS, ALSA, or the PulseAudio subsystem. On newer Linux
2086 distributions, the PulseAudio subsystem is preferred.
2087 </para>
2088
2089 <para>
2090 Only OSS is supported on Oracle Solaris hosts. The Oracle
2091 Solaris Audio audio backend is no longer supported on Oracle
2092 Solaris hosts.
2093 </para>
2094 </listitem>
2095
2096 <listitem>
2097 <para>
2098 <emphasis role="bold">Audio Controller:</emphasis> You can
2099 choose between the emulation of an Intel AC'97 controller, an
2100 Intel HD Audio controller, or a SoundBlaster 16 card.
2101 </para>
2102 </listitem>
2103
2104 <listitem>
2105 <para>
2106 <emphasis role="bold">Enable Audio Output:</emphasis> Enables
2107 audio output only for the VM.
2108 </para>
2109 </listitem>
2110
2111 <listitem>
2112 <para>
2113 <emphasis role="bold">Enable Audio Input:</emphasis> Enables
2114 audio input only for the VM.
2115 </para>
2116 </listitem>
2117
2118 </itemizedlist>
2119
2120 </sect1>
2121
2122 <sect1 id="settings-network">
2123
2124 <title>Network Settings</title>
2125
2126 <para>
2127 The <emphasis role="bold">Network</emphasis> section in a virtual
2128 machine's <emphasis role="bold">Settings</emphasis> window enables
2129 you to configure how &product-name; presents virtual network cards
2130 to your VM, and how they operate.
2131 </para>
2132
2133 <para>
2134 When you first create a virtual machine, &product-name; by default
2135 enables one virtual network card and selects the Network Address
2136 Translation (NAT) mode for it. This way the guest can connect to
2137 the outside world using the host's networking and the outside
2138 world can connect to services on the guest which you choose to
2139 make visible outside of the virtual machine.
2140 </para>
2141
2142 <para>
2143 This default setup is good for the majority of &product-name;
2144 users. However, &product-name; is extremely flexible in how it can
2145 virtualize networking. It supports many virtual network cards per
2146 virtual machine. The first four virtual network cards can be
2147 configured in detail in the VirtualBox Manager window. Additional
2148 network cards can be configured using the
2149 <command>VBoxManage</command> command.
2150 </para>
2151
2152 <para>
2153 Many networking options are available. See
2154 <xref linkend="networkingdetails" /> for more information.
2155 </para>
2156
2157 </sect1>
2158
2159 <sect1 id="serialports">
2160
2161 <title>Serial Ports</title>
2162
2163 <para>
2164 &product-name; supports the use of virtual serial ports in a
2165 virtual machine.
2166 </para>
2167
2168 <para>
2169 Ever since the original IBM PC, personal computers have been
2170 equipped with one or two serial ports, also called COM ports by
2171 DOS and Windows. Serial ports were commonly used with modems, and
2172 some computer mice used to be connected to serial ports before USB
2173 became commonplace.
2174 </para>
2175
2176 <para>
2177 While serial ports are no longer as common as they used to be,
2178 there are still some important uses left for them. For example,
2179 serial ports can be used to set up a primitive network over a
2180 null-modem cable, in case Ethernet is not available. Also, serial
2181 ports are indispensable for system programmers needing to do
2182 kernel debugging, since kernel debugging software usually
2183 interacts with developers over a serial port. With virtual serial
2184 ports, system programmers can do kernel debugging on a virtual
2185 machine instead of needing a real computer to connect to.
2186 </para>
2187
2188 <para>
2189 If a virtual serial port is enabled, the guest operating system
2190 sees a standard 16550A compatible UART device. Other UART types
2191 can be configured using the <command>VBoxManage modifyvm</command>
2192 command. Both receiving and transmitting data is supported. How
2193 this virtual serial port is then connected to the host is
2194 configurable, and the details depend on your host operating
2195 system.
2196 </para>
2197
2198 <para>
2199 You can use either the Settings tabs or the
2200 <command>VBoxManage</command> command to set up virtual serial
2201 ports. For the latter, see <xref linkend="vboxmanage-modifyvm" />
2202 for information on the <computeroutput>--uart</computeroutput>,
2203 <computeroutput>--uartmode</computeroutput> and
2204 <computeroutput>--uarttype</computeroutput> options.
2205 </para>
2206
2207 <para>
2208 You can configure up to four virtual serial ports per virtual
2209 machine. For each device, you must set the following:
2210 </para>
2211
2212 <orderedlist>
2213
2214 <listitem>
2215 <para>
2216 <emphasis role="bold">Port Number:</emphasis> This determines
2217 the serial port that the virtual machine should see. For best
2218 results, use the traditional values as follows:
2219 </para>
2220
2221 <itemizedlist>
2222
2223 <listitem>
2224 <para>
2225 COM1: I/O base 0x3F8, IRQ 4
2226 </para>
2227 </listitem>
2228
2229 <listitem>
2230 <para>
2231 COM2: I/O base 0x2F8, IRQ 3
2232 </para>
2233 </listitem>
2234
2235 <listitem>
2236 <para>
2237 COM3: I/O base 0x3E8, IRQ 4
2238 </para>
2239 </listitem>
2240
2241 <listitem>
2242 <para>
2243 COM4: I/O base 0x2E8, IRQ 3
2244 </para>
2245 </listitem>
2246
2247 </itemizedlist>
2248
2249 <para>
2250 You can also configure a user-defined serial port. Enter an
2251 I/O base address and interrupt (IRQ).
2252 </para>
2253
2254 <para>
2255 See also
2256 <ulink
2257 url="http://en.wikipedia.org/wiki/COM_(hardware_interface)">http://en.wikipedia.org/wiki/COM_(hardware_interface)</ulink>.
2258 </para>
2259 </listitem>
2260
2261 <listitem>
2262 <para>
2263 <emphasis role="bold">Port Mode:</emphasis> What the virtual
2264 port is connected to. For each virtual serial port, you have
2265 the following options:
2266 </para>
2267
2268 <itemizedlist>
2269
2270 <listitem>
2271 <para>
2272 <emphasis role="bold">Disconnected:</emphasis> The guest
2273 will see the device, but it will behave as if no cable had
2274 been connected to it.
2275 </para>
2276 </listitem>
2277
2278 <listitem>
2279 <para>
2280 <emphasis role="bold">Host Device:</emphasis> Connects the
2281 virtual serial port to a physical serial port on your
2282 host. On a Windows host, this will be a name like
2283 <computeroutput>COM1</computeroutput>. On Linux or Oracle
2284 Solaris hosts, it will be a device node like
2285 <computeroutput>/dev/ttyS0</computeroutput>.
2286 &product-name; will then simply redirect all data received
2287 from and sent to the virtual serial port to the physical
2288 device.
2289 </para>
2290 </listitem>
2291
2292 <listitem>
2293 <para>
2294 <emphasis role="bold">Host Pipe:</emphasis> Configure
2295 &product-name; to connect the virtual serial port to a
2296 software pipe on the host. This depends on your host
2297 operating system, as follows:
2298 </para>
2299
2300 <itemizedlist>
2301
2302 <listitem>
2303 <para>
2304 On a Windows host, data will be sent and received
2305 through a named pipe. The pipe name must be in the
2306 format
2307 <computeroutput>\\.\pipe\&lt;name&gt;</computeroutput>
2308 where <computeroutput>&lt;name&gt;</computeroutput>
2309 should identify the virtual machine but may be freely
2310 chosen.
2311 </para>
2312 </listitem>
2313
2314 <listitem>
2315 <para>
2316 On a Mac, Linux, or Oracle Solaris host, a local
2317 domain socket is used instead. The socket filename
2318 must be chosen such that the user running
2319 &product-name; has sufficient privileges to create and
2320 write to it. The <computeroutput>/tmp</computeroutput>
2321 directory is often a good candidate.
2322 </para>
2323
2324 <para>
2325 On Linux there are various tools which can connect to
2326 a local domain socket or create one in server mode.
2327 The most flexible tool is
2328 <computeroutput>socat</computeroutput> and is
2329 available as part of many distributions.
2330 </para>
2331 </listitem>
2332
2333 </itemizedlist>
2334
2335 <para>
2336 In this case, you can configure whether &product-name;
2337 should create the named pipe, or the local domain socket
2338 non-Windows hosts, itself or whether &product-name; should
2339 assume that the pipe or socket exists already. With the
2340 <command>VBoxManage</command> command-line options, this
2341 is referred to as server mode or client mode,
2342 respectively.
2343 </para>
2344
2345 <para>
2346 For a direct connection between two virtual machines,
2347 corresponding to a null-modem cable, simply configure one
2348 VM to create a pipe or socket and another to attach to it.
2349 </para>
2350 </listitem>
2351
2352 <listitem>
2353 <para>
2354 <emphasis role="bold">Raw File:</emphasis> Send the
2355 virtual serial port output to a file. This option is very
2356 useful for capturing diagnostic output from a guest. Any
2357 file may be used for this purpose, as long as the user
2358 running &product-name; has sufficient privileges to create
2359 and write to the file.
2360 </para>
2361 </listitem>
2362
2363 <listitem>
2364 <para>
2365 <emphasis role="bold">TCP Socket:</emphasis> Useful for
2366 forwarding serial traffic over TCP/IP, acting as a server,
2367 or it can act as a TCP client connecting to other servers.
2368 This option enables a remote machine to directly connect
2369 to the guest's serial port using TCP.
2370 </para>
2371
2372 <itemizedlist>
2373
2374 <listitem>
2375 <para>
2376 <emphasis role="bold">TCP Server:</emphasis> Deselect
2377 the <emphasis role="bold">Connect to Existing
2378 Pipe/Socket</emphasis> check box and specify the port
2379 number in the
2380 <emphasis role="bold">Path/Address</emphasis> field.
2381 This is typically 23 or 2023. Note that on UNIX-like
2382 systems you will have to use a port a number greater
2383 than 1024 for regular users.
2384 </para>
2385
2386 <para>
2387 The client can use software such as
2388 <command>PuTTY</command> or the
2389 <command>telnet</command> command line tool to access
2390 the TCP Server.
2391 </para>
2392 </listitem>
2393
2394 <listitem>
2395 <para>
2396 <emphasis role="bold">TCP Client:</emphasis> To create
2397 a virtual null-modem cable over the Internet or LAN,
2398 the other side can connect using TCP by specifying
2399 <computeroutput>hostname:port</computeroutput> in the
2400 <emphasis role="bold">Path/Address</emphasis> field.
2401 The TCP socket will act in client mode if you select
2402 the <emphasis role="bold">Connect to Existing
2403 Pipe/Socket</emphasis> check box.
2404 </para>
2405 </listitem>
2406
2407 </itemizedlist>
2408 </listitem>
2409
2410 </itemizedlist>
2411 </listitem>
2412
2413 </orderedlist>
2414
2415 <para>
2416 Up to four serial ports can be configured per virtual machine, but
2417 you can pick any port numbers out of the above. However, serial
2418 ports cannot reliably share interrupts. If both ports are to be
2419 used at the same time, they must use different interrupt levels,
2420 for example COM1 and COM2, but not COM1 and COM3.
2421 </para>
2422
2423 </sect1>
2424
2425 <sect1 id="usb-support">
2426
2427 <title>USB Support</title>
2428
2429 <sect2 id="settings-usb">
2430
2431 <title>USB Settings</title>
2432
2433 <para>
2434 The <emphasis role="bold">USB</emphasis> section in a virtual
2435 machine's <emphasis role="bold">Settings</emphasis> window
2436 enables you to configure &product-name;'s sophisticated USB
2437 support.
2438 </para>
2439
2440 <para>
2441 &product-name; can enable virtual machines to access the USB
2442 devices on your host directly. To achieve this, &product-name;
2443 presents the guest operating system with a virtual USB
2444 controller. As soon as the guest system starts using a USB
2445 device, it will appear as unavailable on the host.
2446 </para>
2447
2448 <note>
2449 <itemizedlist>
2450
2451 <listitem>
2452 <para>
2453 Be careful with USB devices that are currently in use on
2454 the host. For example, if you allow your guest to connect
2455 to your USB hard disk that is currently mounted on the
2456 host, when the guest is activated, it will be disconnected
2457 from the host without a proper shutdown. This may cause
2458 data loss.
2459 </para>
2460 </listitem>
2461
2462 <listitem>
2463 <para>
2464 Oracle Solaris hosts have a few known limitations
2465 regarding USB support. See <xref linkend="KnownIssues" />.
2466 </para>
2467 </listitem>
2468
2469 </itemizedlist>
2470 </note>
2471
2472 <para>
2473 In addition to allowing a guest access to your local USB
2474 devices, &product-name; even enables your guests to connect to
2475 remote USB devices by use of the VirtualBox Remote Desktop
2476 Extension (VRDE). See <xref linkend="usb-over-rdp" />.
2477 </para>
2478
2479 <para>
2480 To enable USB for a VM, select the <emphasis role="bold">Enable
2481 USB Controller</emphasis> check box. The following settings are
2482 available:
2483 </para>
2484
2485 <itemizedlist>
2486
2487 <listitem>
2488 <para>
2489 <emphasis role="bold">USB Controller:</emphasis> Selects a
2490 controller with the specified level of USB support, as
2491 follows:
2492 </para>
2493
2494 <itemizedlist>
2495
2496 <listitem>
2497 <para>
2498 OHCI for USB 1.1
2499 </para>
2500 </listitem>
2501
2502 <listitem>
2503 <para>
2504 EHCI for USB 2.0. This also enables OHCI.
2505 </para>
2506 </listitem>
2507
2508 <listitem>
2509 <para>
2510 xHCI for USB 3.0. This supports all USB speeds.
2511 </para>
2512 </listitem>
2513
2514 </itemizedlist>
2515
2516 <note>
2517 <para>
2518 The xHCI and EHCI controllers are shipped as an
2519 &product-name; extension package, which must be installed
2520 separately. See <xref linkend="intro-installing" />.
2521 </para>
2522 </note>
2523 </listitem>
2524
2525 <listitem>
2526 <para>
2527 <emphasis role="bold">USB Device Filters:</emphasis> When
2528 USB support is enabled for a VM, you can determine in detail
2529 which devices will be automatically attached to the guest.
2530 For this, you can create filters by specifying certain
2531 properties of the USB device. USB devices with a matching
2532 filter will be automatically passed to the guest once they
2533 are attached to the host. USB devices without a matching
2534 filter can be passed manually to the guest, for example by
2535 using the <emphasis role="bold">Devices</emphasis>,
2536 <emphasis role="bold">USB</emphasis> menu.
2537 </para>
2538
2539 <para>
2540 Clicking on the <emphasis role="bold">+</emphasis> button to
2541 the right of the <emphasis role="bold">USB Device
2542 Filters</emphasis> window creates a new filter. You can give
2543 the filter a name, for later reference, and specify the
2544 filter criteria. The more criteria you specify, the more
2545 precisely devices will be selected. For instance, if you
2546 specify only a vendor ID of 046d, all devices produced by
2547 Logitech will be available to the guest. If you fill in all
2548 fields, on the other hand, the filter will only apply to a
2549 particular device model from a particular vendor, and not
2550 even to other devices of the same type with a different
2551 revision and serial number.
2552 </para>
2553
2554 <para>
2555 In detail, the following criteria are available:
2556 </para>
2557
2558 <itemizedlist>
2559
2560 <listitem>
2561 <para>
2562 <emphasis role="bold">Vendor and Product ID.</emphasis>
2563 With USB, each vendor of USB products carries an
2564 identification number that is unique world-wide, called
2565 the <emphasis>vendor ID</emphasis>. Similarly, each line
2566 of products is assigned a <emphasis>product
2567 ID</emphasis> number. Both numbers are commonly written
2568 in hexadecimal, and a colon separates the vendor from
2569 the product ID. For example,
2570 <computeroutput>046d:c016</computeroutput> stands for
2571 Logitech as a vendor, and the M-UV69a Optical Wheel
2572 Mouse product.
2573 </para>
2574
2575 <para>
2576 Alternatively, you can also specify
2577 <emphasis role="bold">Manufacturer</emphasis> and
2578 <emphasis role="bold">Product</emphasis> by name.
2579 </para>
2580
2581 <para>
2582 To list all the USB devices that are connected to your
2583 host machine with their respective vendor IDs and
2584 product IDs, use the following command:
2585 </para>
2586
2587<screen>VBoxManage list usbhost</screen>
2588
2589 <para>
2590 On Windows, you can also see all USB devices that are
2591 attached to your system in the Device Manager. On Linux,
2592 you can use the <command>lsusb</command> command.
2593 </para>
2594 </listitem>
2595
2596 <listitem>
2597 <para>
2598 <emphasis role="bold">Serial Number.</emphasis> While
2599 vendor ID and product ID are quite specific to identify
2600 USB devices, if you have two identical devices of the
2601 same brand and product line, you will also need their
2602 serial numbers to filter them out correctly.
2603 </para>
2604 </listitem>
2605
2606 <listitem>
2607 <para>
2608 <emphasis role="bold">Remote.</emphasis> This setting
2609 specifies whether the device will be local only, remote
2610 only, such as over VRDP, or either.
2611 </para>
2612 </listitem>
2613
2614 </itemizedlist>
2615
2616 <para>
2617 On a Windows host, you will need to unplug and reconnect a
2618 USB device to use it after creating a filter for it.
2619 </para>
2620
2621 <para>
2622 As an example, you could create a new USB filter and specify
2623 a vendor ID of 046d for Logitech, Inc, a manufacturer index
2624 of 1, and "not remote". Then any USB devices on the host
2625 system produced by Logitech, Inc with a manufacturer index
2626 of 1 will be visible to the guest system.
2627 </para>
2628
2629 <para>
2630 Several filters can select a single device. For example, a
2631 filter which selects all Logitech devices, and one which
2632 selects a particular webcam.
2633 </para>
2634
2635 <para>
2636 You can deactivate filters without deleting them by
2637 deselecting the check box next to the filter name.
2638 </para>
2639 </listitem>
2640
2641 </itemizedlist>
2642
2643 </sect2>
2644
2645 <sect2 id="usb-implementation-notes">
2646
2647 <title>Implementation Notes for Windows and Linux Hosts</title>
2648
2649 <para>
2650 On Windows hosts, a kernel mode device driver provides USB proxy
2651 support. It implements both a USB monitor, which enables
2652 &product-name; to capture devices when they are plugged in, and
2653 a USB device driver to claim USB devices for a particular
2654 virtual machine. As opposed to &product-name; versions before
2655 1.4.0, system reboots are no longer necessary after installing
2656 the driver. Also, you no longer need to replug devices for
2657 &product-name; to claim them.
2658 </para>
2659
2660 <para>
2661 On newer Linux hosts, &product-name; accesses USB devices
2662 through special files in the file system. When &product-name; is
2663 installed, these are made available to all users in the
2664 <computeroutput>vboxusers</computeroutput> system group. In
2665 order to be able to access USB from guest systems, make sure
2666 that you are a member of this group.
2667 </para>
2668
2669 <para>
2670 On older Linux hosts, USB devices are accessed using the
2671 <computeroutput>usbfs</computeroutput> file system. Therefore,
2672 the user executing &product-name; needs read and write
2673 permission to the USB file system. Most distributions provide a
2674 group, such as <computeroutput>usbusers</computeroutput>, which
2675 the &product-name; user needs to be added to. Also,
2676 &product-name; can only proxy to virtual machines USB devices
2677 which are not claimed by a Linux host USB driver. The
2678 <computeroutput>Driver=</computeroutput> entry in
2679 <computeroutput>/proc/bus/usb/devices</computeroutput> will show
2680 you which devices are currently claimed. See also
2681 <xref
2682 linkend="ts_usb-linux" /> for details about
2683 <computeroutput>usbfs</computeroutput>.
2684 </para>
2685
2686 </sect2>
2687
2688 </sect1>
2689
2690 <sect1 id="shared-folders">
2691
2692 <title>Shared Folders</title>
2693
2694 <para>
2695 Shared folders enable you to easily exchange data between a
2696 virtual machine and your host. This feature requires that the
2697 &product-name; Guest Additions be installed in a virtual machine
2698 and is described in detail in <xref linkend="sharedfolders" />.
2699 </para>
2700
2701 </sect1>
2702
2703 <sect1 id="user-interface">
2704
2705 <title>User Interface</title>
2706
2707 <para>
2708 The <emphasis role="bold">User Interface</emphasis> section
2709 enables you to change certain aspects of the user interface of
2710 this VM.
2711 </para>
2712
2713 <itemizedlist>
2714
2715 <listitem>
2716 <para>
2717 <emphasis role="bold">Menu Bar:</emphasis> This widget enables
2718 you to disable menus by clicking on the menu to release it,
2719 menu entries by deselecting the check box of the entry to
2720 disable it and the complete menu bar by deselecting the
2721 rightmost check box.
2722 </para>
2723 </listitem>
2724
2725 <listitem>
2726 <para>
2727 <emphasis role="bold">Mini ToolBar:</emphasis> In full screen
2728 or seamless mode, &product-name; can display a small toolbar
2729 that contains some of the items that are normally available
2730 from the virtual machine's menu bar. This toolbar reduces
2731 itself to a small gray line unless you move the mouse over it.
2732 With the toolbar, you can return from full screen or seamless
2733 mode, control machine execution or enable certain devices. If
2734 you do not want to see the toolbar, disable this setting.
2735 </para>
2736
2737 <para>
2738 The second setting enables you to show the toolbar at the top
2739 of the screen, instead of showing it at the bottom.
2740 </para>
2741 </listitem>
2742
2743 <listitem>
2744 <para>
2745 <emphasis role="bold">Status Bar:</emphasis> This widget
2746 enables you to disable icons on the status bar by deselecting
2747 the check box of an icon to disable it, to rearrange icons by
2748 dragging and dropping the icon, and to disable the complete
2749 status bar by deselecting the leftmost check box.
2750 </para>
2751 </listitem>
2752
2753 </itemizedlist>
2754
2755 </sect1>
2756
2757 <sect1 id="efi">
2758
2759 <title>Alternative Firmware (EFI)</title>
2760
2761 <para>
2762 &product-name; includes experimental support for the Extensible
2763 Firmware Interface (EFI), which is a new industry standard
2764 intended to eventually replace the legacy BIOS as the primary
2765 interface for bootstrapping computers and certain system services
2766 later.
2767 </para>
2768
2769 <para>
2770 By default, &product-name; uses the BIOS firmware for virtual
2771 machines. To use EFI for a given virtual machine, you can enable
2772 EFI in the machine's <emphasis role="bold">Settings</emphasis>
2773 dialog. See <xref linkend="settings-motherboard"/>. Alternatively,
2774 use the <command>VBoxManage</command> command line interface as
2775 follows:
2776 </para>
2777
2778<screen>VBoxManage modifyvm "VM name" --firmware efi</screen>
2779
2780 <para>
2781 To switch back to using the BIOS:
2782 </para>
2783
2784<screen>VBoxManage modifyvm "VM name" --firmware bios</screen>
2785
2786 <para>
2787 One notable user of EFI is Apple Mac OS X. More recent Linux
2788 versions and Windows releases, starting with Vista, also offer
2789 special versions that can be booted using EFI.
2790 </para>
2791
2792 <para>
2793 Another possible use of EFI in &product-name; is development and
2794 testing of EFI applications, without booting any OS.
2795 </para>
2796
2797 <para>
2798 Note that the &product-name; EFI support is experimental and will
2799 be enhanced as EFI matures and becomes more widespread. Mac OS X,
2800 Linux, and newer Windows guests are known to work fine. Windows 7
2801 guests are unable to boot with the &product-name; EFI
2802 implementation.
2803 </para>
2804
2805 <sect2 id="efividmode">
2806
2807 <title>Video Modes in EFI</title>
2808
2809 <para>
2810 EFI provides two distinct video interfaces: GOP (Graphics Output
2811 Protocol) and UGA (Universal Graphics Adapter). Modern operating
2812 systems, such as Mac OS X, generally use GOP, while some older
2813 ones still use UGA. &product-name; provides a configuration
2814 option to control the graphics resolution for both interfaces,
2815 making the difference mostly irrelevant for users.
2816 </para>
2817
2818 <para>
2819 The default resolution is 1024x768. To select a graphics
2820 resolution for EFI, use the following
2821 <command>VBoxManage</command> command:
2822 </para>
2823
2824<screen>VBoxManage setextradata "VM name" VBoxInternal2/EfiGraphicsResolution HxV</screen>
2825
2826 <para>
2827 Determine the horizontal resolution H and the vertical
2828 resolution V from the following list of default resolutions:
2829 </para>
2830
2831 <variablelist>
2832
2833 <varlistentry>
2834 <term>
2835 VGA
2836 </term>
2837
2838 <listitem>
2839 <para>
2840 640x480, 32bpp, 4:3
2841 </para>
2842 </listitem>
2843 </varlistentry>
2844
2845 <varlistentry>
2846 <term>
2847 SVGA
2848 </term>
2849
2850 <listitem>
2851 <para>
2852 800x600, 32bpp, 4:3
2853 </para>
2854 </listitem>
2855 </varlistentry>
2856
2857 <varlistentry>
2858 <term>
2859 XGA
2860 </term>
2861
2862 <listitem>
2863 <para>
2864 1024x768, 32bpp, 4:3
2865 </para>
2866 </listitem>
2867 </varlistentry>
2868
2869 <varlistentry>
2870 <term>
2871 XGA+
2872 </term>
2873
2874 <listitem>
2875 <para>
2876 1152x864, 32bpp, 4:3
2877 </para>
2878 </listitem>
2879 </varlistentry>
2880
2881 <varlistentry>
2882 <term>
2883 HD
2884 </term>
2885
2886 <listitem>
2887 <para>
2888 1280x720, 32bpp, 16:9
2889 </para>
2890 </listitem>
2891 </varlistentry>
2892
2893 <varlistentry>
2894 <term>
2895 WXGA
2896 </term>
2897
2898 <listitem>
2899 <para>
2900 1280x800, 32bpp, 16:10
2901 </para>
2902 </listitem>
2903 </varlistentry>
2904
2905 <varlistentry>
2906 <term>
2907 SXGA
2908 </term>
2909
2910 <listitem>
2911 <para>
2912 1280x1024, 32bpp, 5:4
2913 </para>
2914 </listitem>
2915 </varlistentry>
2916
2917 <varlistentry>
2918 <term>
2919 SXGA+
2920 </term>
2921
2922 <listitem>
2923 <para>
2924 1400x1050, 32bpp, 4:3
2925 </para>
2926 </listitem>
2927 </varlistentry>
2928
2929 <varlistentry>
2930 <term>
2931 WXGA+
2932 </term>
2933
2934 <listitem>
2935 <para>
2936 1440x900, 32bpp, 16:10
2937 </para>
2938 </listitem>
2939 </varlistentry>
2940
2941 <varlistentry>
2942 <term>
2943 HD+
2944 </term>
2945
2946 <listitem>
2947 <para>
2948 1600x900, 32bpp, 16:9
2949 </para>
2950 </listitem>
2951 </varlistentry>
2952
2953 <varlistentry>
2954 <term>
2955 UXGA
2956 </term>
2957
2958 <listitem>
2959 <para>
2960 1600x1200, 32bpp, 4:3
2961 </para>
2962 </listitem>
2963 </varlistentry>
2964
2965 <varlistentry>
2966 <term>
2967 WSXGA+
2968 </term>
2969
2970 <listitem>
2971 <para>
2972 1680x1050, 32bpp, 16:10
2973 </para>
2974 </listitem>
2975 </varlistentry>
2976
2977 <varlistentry>
2978 <term>
2979 Full HD
2980 </term>
2981
2982 <listitem>
2983 <para>
2984 1920x1080, 32bpp, 16:9
2985 </para>
2986 </listitem>
2987 </varlistentry>
2988
2989 <varlistentry>
2990 <term>
2991 WUXGA
2992 </term>
2993
2994 <listitem>
2995 <para>
2996 1920x1200, 32bpp, 16:10
2997 </para>
2998 </listitem>
2999 </varlistentry>
3000
3001 <varlistentry>
3002 <term>
3003 DCI 2K
3004 </term>
3005
3006 <listitem>
3007 <para>
3008 2048x1080, 32bpp, 19:10
3009 </para>
3010 </listitem>
3011 </varlistentry>
3012
3013 <varlistentry>
3014 <term>
3015 Full HD+
3016 </term>
3017
3018 <listitem>
3019 <para>
3020 2160x1440, 32bpp, 3:2
3021 </para>
3022 </listitem>
3023 </varlistentry>
3024
3025 <varlistentry>
3026 <term>
3027 Unnamed
3028 </term>
3029
3030 <listitem>
3031 <para>
3032 2304x1440, 32bpp, 16:10
3033 </para>
3034 </listitem>
3035 </varlistentry>
3036
3037 <varlistentry>
3038 <term>
3039 QHD
3040 </term>
3041
3042 <listitem>
3043 <para>
3044 2560x1440, 32bpp, 16:9
3045 </para>
3046 </listitem>
3047 </varlistentry>
3048
3049 <varlistentry>
3050 <term>
3051 WQXGA
3052 </term>
3053
3054 <listitem>
3055 <para>
3056 2560x1600, 32bpp, 16:10
3057 </para>
3058 </listitem>
3059 </varlistentry>
3060
3061 <varlistentry>
3062 <term>
3063 QWXGA+
3064 </term>
3065
3066 <listitem>
3067 <para>
3068 2880x1800, 32bpp, 16:10
3069 </para>
3070 </listitem>
3071 </varlistentry>
3072
3073 <varlistentry>
3074 <term>
3075 QHD+
3076 </term>
3077
3078 <listitem>
3079 <para>
3080 3200x1800, 32bpp, 16:9
3081 </para>
3082 </listitem>
3083 </varlistentry>
3084
3085 <varlistentry>
3086 <term>
3087 WQSXGA
3088 </term>
3089
3090 <listitem>
3091 <para>
3092 3200x2048, 32bpp, 16:10
3093 </para>
3094 </listitem>
3095 </varlistentry>
3096
3097 <varlistentry>
3098 <term>
3099 4K UHD
3100 </term>
3101
3102 <listitem>
3103 <para>
3104 3840x2160, 32bpp, 16:9
3105 </para>
3106 </listitem>
3107 </varlistentry>
3108
3109 <varlistentry>
3110 <term>
3111 WQUXGA
3112 </term>
3113
3114 <listitem>
3115 <para>
3116 3840x2400, 32bpp, 16:10
3117 </para>
3118 </listitem>
3119 </varlistentry>
3120
3121 <varlistentry>
3122 <term>
3123 DCI 4K
3124 </term>
3125
3126 <listitem>
3127 <para>
3128 4096x2160, 32bpp, 19:10
3129 </para>
3130 </listitem>
3131 </varlistentry>
3132
3133 <varlistentry>
3134 <term>
3135 HXGA
3136 </term>
3137
3138 <listitem>
3139 <para>
3140 4096x3072, 32bpp, 4:3
3141 </para>
3142 </listitem>
3143 </varlistentry>
3144
3145 <varlistentry>
3146 <term>
3147 UHD+
3148 </term>
3149
3150 <listitem>
3151 <para>
3152 5120x2880, 32bpp, 16:9
3153 </para>
3154 </listitem>
3155 </varlistentry>
3156
3157 <varlistentry>
3158 <term>
3159 WHXGA
3160 </term>
3161
3162 <listitem>
3163 <para>
3164 5120x3200, 32bpp, 16:10
3165 </para>
3166 </listitem>
3167 </varlistentry>
3168
3169 <varlistentry>
3170 <term>
3171 WHSXGA
3172 </term>
3173
3174 <listitem>
3175 <para>
3176 6400x4096, 32bpp, 16:10
3177 </para>
3178 </listitem>
3179 </varlistentry>
3180
3181 <varlistentry>
3182 <term>
3183 HUXGA
3184 </term>
3185
3186 <listitem>
3187 <para>
3188 6400x4800, 32bpp, 4:3
3189 </para>
3190 </listitem>
3191 </varlistentry>
3192
3193 <varlistentry>
3194 <term>
3195 8K UHD2
3196 </term>
3197
3198 <listitem>
3199 <para>
3200 7680x4320, 32bpp, 16:9
3201 </para>
3202 </listitem>
3203 </varlistentry>
3204
3205 </variablelist>
3206
3207 <para>
3208 If this list of default resolution does not cover your needs,
3209 see <xref linkend="customvesa" />. Note that the color depth
3210 value specified in a custom video mode must be specified. Color
3211 depths of 8, 16, 24, and 32 are accepted. EFI assumes a color
3212 depth of 32 by default.
3213 </para>
3214
3215 <para>
3216 The EFI default video resolution settings can only be changed
3217 when the VM is powered off.
3218 </para>
3219
3220 </sect2>
3221
3222 <sect2 id="efibootargs">
3223
3224 <title>Specifying Boot Arguments</title>
3225
3226 <para>
3227 It is currently not possible to manipulate EFI variables from
3228 within a running guest. For example, setting the "boot-args"
3229 variable by running the <computeroutput>nvram</computeroutput>
3230 tool in a Mac OS X guest will not work. As an alternative way,
3231 "VBoxInternal2/EfiBootArgs" extradata can be passed to a VM in
3232 order to set the "boot-args" variable. To change the "boot-args"
3233 EFI variable, use the following command:
3234 </para>
3235
3236<screen>VBoxManage setextradata "VM name" VBoxInternal2/EfiBootArgs &lt;value&gt;</screen>
3237
3238 </sect2>
3239
3240 </sect1>
3241
3242</chapter>
Note: See TracBrowser for help on using the repository browser.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette