VirtualBox

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

Last change on this file since 80954 was 77947, checked in by vboxsync, 6 years ago

doc/manual: update information about default graphics devices for guest systems.
bugref:9406: Docs: default graphics device for Linux and Solaris guests is VMSVGA.

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