1 | <?xml version='1.0' encoding='UTF-8'?>
|
---|
2 | <!DOCTYPE topic PUBLIC "-//OASIS//DTD DITA Topic//EN" "topic.dtd">
|
---|
3 | <topic xml:lang="en-us" id="externalkernelmodules">
|
---|
4 | <title>The <ph conkeyref="vbox-conkeyref-phrases/product-name"/> Kernel Modules</title>
|
---|
5 |
|
---|
6 | <body>
|
---|
7 | <p>
|
---|
8 | In order to run other operating systems in virtual machines
|
---|
9 | alongside your main operating system, <ph conkeyref="vbox-conkeyref-phrases/product-name"/> needs to
|
---|
10 | integrate very tightly with your system. To do this it installs
|
---|
11 | a driver module called <userinput>vboxdrv</userinput> into the
|
---|
12 | system kernel. The kernel is the part of the operating system
|
---|
13 | which controls your processor and physical hardware. Without
|
---|
14 | this kernel module, you can still use <ph conkeyref="vbox-conkeyref-phrases/vbox-mgr"/> to configure
|
---|
15 | virtual machines, but they will not start.
|
---|
16 | </p>
|
---|
17 | <p>
|
---|
18 | Network drivers called <userinput>vboxnetflt</userinput> and
|
---|
19 | <userinput>vboxnetadp</userinput> are also installed. They enable
|
---|
20 | virtual machines to make more use of your computer's network
|
---|
21 | capabilities and are needed for any virtual machine networking
|
---|
22 | beyond the basic NAT mode.
|
---|
23 | </p>
|
---|
24 | <p>
|
---|
25 | Since distributing driver modules separately from the kernel is
|
---|
26 | not something which Linux supports well, the <ph conkeyref="vbox-conkeyref-phrases/product-name"/>
|
---|
27 | install process creates the modules on the system where they
|
---|
28 | will be used. This means that you may need to install some
|
---|
29 | software packages from the distribution which are needed for the
|
---|
30 | build process. Required packages may include the following:
|
---|
31 | </p>
|
---|
32 | <ul>
|
---|
33 | <li>
|
---|
34 | <p>
|
---|
35 | GNU compiler (GCC)
|
---|
36 | </p>
|
---|
37 | </li>
|
---|
38 | <li>
|
---|
39 | <p>
|
---|
40 | GNU Make (make)
|
---|
41 | </p>
|
---|
42 | </li>
|
---|
43 | <li>
|
---|
44 | <p>
|
---|
45 | Kernel header files
|
---|
46 | </p>
|
---|
47 | </li>
|
---|
48 | </ul>
|
---|
49 | <p>
|
---|
50 | Also ensure that all system updates have been installed and that
|
---|
51 | your system is running the most up-to-date kernel for the
|
---|
52 | distribution.
|
---|
53 | </p>
|
---|
54 | <note>
|
---|
55 | <p>
|
---|
56 | The running kernel and the kernel header files must be updated
|
---|
57 | to matching versions.
|
---|
58 | </p>
|
---|
59 | </note>
|
---|
60 | <p>
|
---|
61 | The following list includes some details of the required files
|
---|
62 | for some common distributions. Start by finding the version name
|
---|
63 | of your kernel, using the command <userinput>uname -r</userinput> in
|
---|
64 | a terminal. The list assumes that you have not changed too much
|
---|
65 | from the original installation, in particular that you have not
|
---|
66 | installed a different kernel type.
|
---|
67 | </p>
|
---|
68 | <ul>
|
---|
69 | <li>
|
---|
70 | <p>
|
---|
71 | With Debian and Ubuntu-based distributions, you must install
|
---|
72 | the correct version of the
|
---|
73 | <filepath>linux-headers</filepath>, usually whichever of
|
---|
74 | <filepath>linux-headers-generic</filepath>,
|
---|
75 | <filepath>linux-headers-amd64</filepath>,
|
---|
76 | <filepath>linux-headers-i686</filepath> or
|
---|
77 | <filepath>linux-headers-i686-pae</filepath> best matches the
|
---|
78 | kernel version name. Also, the
|
---|
79 | <filepath>linux-kbuild</filepath> package if it exists.
|
---|
80 | Basic Ubuntu releases should have the correct packages
|
---|
81 | installed by default.
|
---|
82 | </p>
|
---|
83 | </li>
|
---|
84 | <li>
|
---|
85 | <p>
|
---|
86 | On Fedora, Red Hat, Oracle Linux and many other RPM-based
|
---|
87 | systems, the kernel version sometimes has a code of letters
|
---|
88 | or a word close to the end of the version name. For example
|
---|
89 | "uek" for the Oracle Unbreakable Enterprise Kernel or
|
---|
90 | "default" or "desktop" for the standard kernels. In this
|
---|
91 | case, the package name is
|
---|
92 | <filepath>kernel-uek-devel</filepath> or equivalent. If
|
---|
93 | there is no such code, it is usually
|
---|
94 | <filepath>kernel-devel</filepath>.
|
---|
95 | </p>
|
---|
96 | </li>
|
---|
97 | <li>
|
---|
98 | <p>
|
---|
99 | On some SUSE and openSUSE Linux versions, you may need to
|
---|
100 | install the <filepath>kernel-source</filepath> and
|
---|
101 | <filepath>kernel-syms</filepath> packages.
|
---|
102 | </p>
|
---|
103 | </li>
|
---|
104 | </ul>
|
---|
105 | <p>
|
---|
106 | If you suspect that something has gone wrong with module
|
---|
107 | installation, check that your system is set up as described
|
---|
108 | above and try running the following command, as root:
|
---|
109 | </p>
|
---|
110 | <pre xml:space="preserve">rcvboxdrv setup</pre>
|
---|
111 | </body>
|
---|
112 | </topic>
|
---|