diff options
Diffstat (limited to 'doc/manual/fr_FR')
41 files changed, 40546 insertions, 0 deletions
diff --git a/doc/manual/fr_FR/Makefile.kup b/doc/manual/fr_FR/Makefile.kup new file mode 100644 index 00000000..e69de29b --- /dev/null +++ b/doc/manual/fr_FR/Makefile.kup diff --git a/doc/manual/fr_FR/SDKRef.xml b/doc/manual/fr_FR/SDKRef.xml new file mode 100644 index 00000000..4c8a9ca0 --- /dev/null +++ b/doc/manual/fr_FR/SDKRef.xml @@ -0,0 +1,4900 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" +"http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd"> +<book> + <bookinfo> + <title>@VBOX_PRODUCT@<superscript>®</superscript></title> + + <subtitle>Programming Guide and Reference</subtitle> + + <edition>Version @VBOX_VERSION_STRING@</edition> + + <corpauthor>@VBOX_VENDOR@</corpauthor> + + <address>http://www.virtualbox.org</address> + + <copyright> + <year>2004-@VBOX_C_YEAR@</year> + + <holder>@VBOX_VENDOR@</holder> + </copyright> + </bookinfo> + + <chapter> + <title>Introduction</title> + + <para>VirtualBox comes with comprehensive support for third-party + developers. This Software Development Kit (SDK) contains all the + documentation and interface files that are needed to write code that + interacts with VirtualBox.</para> + + <sect1> + <title>Modularity: the building blocks of VirtualBox</title> + + <para>VirtualBox is cleanly separated into several layers, which can be + visualized like in the picture below:</para> + + <mediaobject> + <imageobject> + <imagedata align="center" fileref="images/vbox-components.png" + width="12cm" /> + </imageobject> + </mediaobject> + + <para>The orange area represents code that runs in kernel mode, the blue + area represents userspace code.</para> + + <para>At the bottom of the stack resides the hypervisor -- the core of + the virtualization engine, controlling execution of the virtual machines + and making sure they do not conflict with each other or whatever the + host computer is doing otherwise.</para> + + <para>On top of the hypervisor, additional internal modules provide + extra functionality. For example, the RDP server, which can deliver the + graphical output of a VM remotely to an RDP client, is a separate module + that is only loosely tacked into the virtual graphics device. Live + Migration and Resource Monitor are additional modules currently in the + process of being added to VirtualBox.</para> + + <para>What is primarily of interest for purposes of the SDK is the API + layer block that sits on top of all the previously mentioned blocks. + This API, which we call the <emphasis role="bold">"Main API"</emphasis>, + exposes the entire feature set of the virtualization engine below. It is + completely documented in this SDK Reference -- see <xref + linkend="sdkref_classes" /> and <xref linkend="sdkref_enums" /> -- and + available to anyone who wishes to control VirtualBox programmatically. + We chose the name "Main API" to differentiate it from other programming + interfaces of VirtualBox that may be publicly accessible.</para> + + <para>With the Main API, you can create, configure, start, stop and + delete virtual machines, retrieve performance statistics about running + VMs, configure the VirtualBox installation in general, and more. In + fact, internally, the front-end programs + <computeroutput>VirtualBox</computeroutput> and + <computeroutput>VBoxManage</computeroutput> use nothing but this API as + well -- there are no hidden backdoors into the virtualization engine for + our own front-ends. This ensures the entire Main API is both + well-documented and well-tested. (The same applies to + <computeroutput>VBoxHeadless</computeroutput>, which is not shown in the + image.)</para> + </sect1> + + <sect1 id="webservice-or-com"> + <title>Two guises of the same "Main API": the web service or + COM/XPCOM</title> + + <para>There are several ways in which the Main API can be called by + other code:<orderedlist> + <listitem> + <para>VirtualBox comes with a <emphasis role="bold">web + service</emphasis> that maps nearly the entire Main API. The web + service ships in a stand-alone executable + (<computeroutput>vboxwebsrv</computeroutput>) that, when running, + acts as an HTTP server, accepts SOAP connections and processes + them.</para> + + <para>Since the entire web service API is publicly described in a + web service description file (in WSDL format), you can write + client programs that call the web service in any language with a + toolkit that understands WSDL. These days, that includes most + programming languages that are available: Java, C++, .NET, PHP, + Python, Perl and probably many more.</para> + + <para>All of this is explained in detail in subsequent chapters of + this book.</para> + + <para>There are two ways in which you can write client code that + uses the web service:<orderedlist> + <listitem> + <para>For Java as well as Python, the SDK contains + easy-to-use classes that allow you to use the web service in + an object-oriented, straightforward manner. We shall refer + to this as the <emphasis role="bold">"object-oriented web + service (OOWS)"</emphasis>.</para> + + <para>The OO bindings for Java are described in <xref + linkend="javaapi" />, those for Python in <xref lang="" + linkend="glue-python-ws" />.</para> + </listitem> + + <listitem> + <para>Alternatively, you can use the web service directly, + without the object-oriented client layer. We shall refer to + this as the <emphasis role="bold">"raw web + service"</emphasis>.</para> + + <para>You will then have neither native object orientation + nor full type safety, since web services are neither + object-oriented nor stateful. However, in this way, you can + write client code even in languages for which we do not ship + object-oriented client code; all you need is a programming + language with a toolkit that can parse WSDL and generate + client wrapper code from it.</para> + + <para>We describe this further in <xref + linkend="raw-webservice" />, with samples for Java and + Perl.</para> + </listitem> + </orderedlist></para> + </listitem> + + <listitem> + <para>Internally, for portability and easier maintenance, the Main + API is implemented using the <emphasis role="bold">Component + Object Model (COM),</emphasis> an interprocess mechanism for + software components originally introduced by Microsoft for + Microsoft Windows. On a Windows host, VirtualBox will use + Microsoft COM; on other hosts where COM is not present, it ships + with XPCOM, a free software implementation of COM originally + created by the Mozilla project for their browsers.</para> + + <para>So, if you are familiar with COM and the C++ programming + language (or with any other programming language that can handle + COM/XPCOM objects, such as Java, Visual Basic or C#), then you can + use the COM/XPCOM API directly. VirtualBox comes with all + necessary files and documentation to build fully functional COM + applications. For an introduction, please see <xref + linkend="api_com" /> below.</para> + + <para>The VirtualBox front-ends (the graphical user interfaces as + well as the command line), which are all written in C++, use + COM/XPCOM to call the Main API. Technically, the web service is + another front-end to this COM API, mapping almost all of it to + SOAP clients.</para> + </listitem> + </orderedlist></para> + + <para>If you wonder which way to choose, here are a few + comparisons:<table> + <title>Comparison web service vs. COM/XPCOM</title> + + <tgroup cols="2"> + <tbody> + <row> + <entry><emphasis role="bold">Web service</emphasis></entry> + + <entry><emphasis role="bold">COM/XPCOM</emphasis></entry> + </row> + + <row> + <entry><emphasis role="bold">Pro:</emphasis> Easy to use with + Java and Python with the object-oriented web service; + extensive support even with other languages (C++, .NET, PHP, + Perl and others)</entry> + + <entry><emphasis role="bold">Con:</emphasis> Usable from + languages where COM bridge available (most languages on + Windows platform, Python and C++ on other hosts)</entry> + </row> + + <row> + <entry><emphasis role="bold">Pro:</emphasis> Client can be on + remote machine</entry> + + <entry><emphasis role="bold">Con: </emphasis>Client must be on + the same host where virtual machine is executed</entry> + </row> + + <row> + <entry><emphasis role="bold">Con: </emphasis>Significant + overhead due to XML marshalling over the wire for each method + call</entry> + + <entry><emphasis role="bold">Pro: </emphasis>Relatively low + invocation overhead</entry> + </row> + </tbody> + </tgroup> + </table></para> + + <para>In the following chapters, we will describe the different ways in + which to program VirtualBox, starting with the method that is easiest to + use and then increase complexity as we go along.</para> + </sect1> + + <sect1 id="api_soap_intro"> + <title>About web services in general</title> + + <para>Web services are a particular type of programming interface. + Whereas, with "normal" programming, a program calls an application + programming interface (API) defined by another program or the operating + system and both sides of the interface have to agree on the calling + convention and, in most cases, use the same programming language, web + services use Internet standards such as HTTP and XML to + communicate.<footnote> + <para>In some ways, web services promise to deliver the same thing + as CORBA and DCOM did years ago. However, while these previous + technologies relied on specific binary protocols and thus proved to + be difficult to use between diverging platforms, web services + circumvent these incompatibilities by using text-only standards like + HTTP and XML. On the downside (and, one could say, typical of things + related to XML), a lot of standards are involved before a web + service can be implemented. Many of the standards invented around + XML are used one way or another. As a result, web services are slow + and verbose, and the details can be incredibly messy. The relevant + standards here are called SOAP and WSDL, where SOAP describes the + format of the messages that are exchanged (an XML document wrapped + in an HTTP header), and WSDL is an XML format that describes a + complete API provided by a web service. WSDL in turn uses XML Schema + to describe types, which is not exactly terse either. However, as + you will see from the samples provided in this chapter, the + VirtualBox web service shields you from these details and is easy to + use.</para> + </footnote></para> + + <para>In order to successfully use a web service, a number of things are + required -- primarily, a web service accepting connections; service + descriptions; and then a client that connects to that web service. The + connections are governed by the SOAP standard, which describes how + messages are to be exchanged between a service and its clients; the + service descriptions are governed by WSDL.</para> + + <para>In the case of VirtualBox, this translates into the following + three components:<orderedlist> + <listitem> + <para>The VirtualBox web service (the "server"): this is the + <computeroutput>vboxwebsrv</computeroutput> executable shipped + with VirtualBox. Once you start this executable (which acts as a + HTTP server on a specific TCP/IP port), clients can connect to the + web service and thus control a VirtualBox installation.</para> + </listitem> + + <listitem> + <para>VirtualBox also comes with WSDL files that describe the + services provided by the web service. You can find these files in + the <computeroutput>sdk/bindings/webservice/</computeroutput> + directory. These files are understood by the web service toolkits + that are shipped with most programming languages and enable you to + easily access a web service even if you don't use our + object-oriented client layers. VirtualBox is shipped with + pregenerated web service glue code for several languages (Python, + Perl, Java).</para> + </listitem> + + <listitem> + <para>A client that connects to the web service in order to + control the VirtualBox installation.</para> + + <para>Unless you play with some of the samples shipped with + VirtualBox, this needs to be written by you.</para> + </listitem> + </orderedlist></para> + </sect1> + + <sect1 id="runvboxwebsrv"> + <title>Running the web service</title> + + <para>The web service ships in an stand-alone executable, + <computeroutput>vboxwebsrv</computeroutput>, that, when running, acts as + a HTTP server, accepts SOAP connections and processes them -- remotely + or from the same machine.<note> + <para>The web service executable is not contained with the + VirtualBox SDK, but instead ships with the standard VirtualBox + binary package for your specific platform. Since the SDK contains + only platform-independent text files and documentation, the binaries + are instead shipped with the platform-specific packages. For this + reason the information how to run it as a service is included in the + VirtualBox documentation.</para> + </note></para> + + <para>The <computeroutput>vboxwebsrv</computeroutput> program, which + implements the web service, is a text-mode (console) program which, + after being started, simply runs until it is interrupted with Ctrl-C or + a kill command.</para> + + <para>Once the web service is started, it acts as a front-end to the + VirtualBox installation of the user account that it is running under. In + other words, if the web service is run under the user account of + <computeroutput>user1</computeroutput>, it will see and manipulate the + virtual machines and other data represented by the VirtualBox data of + that user (for example, on a Linux machine, under + <computeroutput>/home/user1/.VirtualBox</computeroutput>; see the + VirtualBox User Manual for details on where this data is stored).</para> + + <sect2 id="vboxwebsrv-ref"> + <title>Command line options of vboxwebsrv</title> + + <para>The web service supports the following command line + options:</para> + + <itemizedlist> + <listitem> + <para><computeroutput>--help</computeroutput> (or + <computeroutput>-h</computeroutput>): print a brief summary of + command line options.</para> + </listitem> + + <listitem> + <para><computeroutput>--background</computeroutput> (or + <computeroutput>-b</computeroutput>): run the web service as a + background daemon. This option is not supported on Windows + hosts.</para> + </listitem> + + <listitem> + <para><computeroutput>--host</computeroutput> (or + <computeroutput>-H</computeroutput>): This specifies the host to + bind to and defaults to "localhost".</para> + </listitem> + + <listitem> + <para><computeroutput>--port</computeroutput> (or + <computeroutput>-p</computeroutput>): This specifies which port to + bind to on the host and defaults to 18083.</para> + </listitem> + + <listitem> + <para><computeroutput>--ssl</computeroutput> (or + <computeroutput>-s</computeroutput>): This enables SSL support.</para> + </listitem> + + <listitem> + <para><computeroutput>--keyfile</computeroutput> (or + <computeroutput>-K</computeroutput>): This specifies the file name + containing the server private key and the certificate. This is a + mandatory parameter if SSL is enabled.</para> + </listitem> + + <listitem> + <para><computeroutput>--passwordfile</computeroutput> (or + <computeroutput>-a</computeroutput>): This specifies the file name + containing the password for the server private key. If unspecified + or an empty string is specified this is interpreted as an empty + password (i.e. the private key is not protected by a password). If + the file name <computeroutput>-</computeroutput> is specified then + then the password is read from the standard input stream, otherwise + from the specified file. The user is responsible for appropriate + access rights to protect the confidential password.</para> + </listitem> + + <listitem> + <para><computeroutput>--cacert</computeroutput> (or + <computeroutput>-c</computeroutput>): This specifies the file name + containing the CA certificate appropriate for the server + certificate.</para> + </listitem> + + <listitem> + <para><computeroutput>--capath</computeroutput> (or + <computeroutput>-C</computeroutput>): This specifies the directory + containing several CA certificates appropriate for the server + certificate.</para> + </listitem> + + <listitem> + <para><computeroutput>--dhfile</computeroutput> (or + <computeroutput>-D</computeroutput>): This specifies the file name + containing the DH key. Alternatively it can contain the number of + bits of the DH key to generate. If left empty, RSA is used.</para> + </listitem> + + <listitem> + <para><computeroutput>--randfile</computeroutput> (or + <computeroutput>-r</computeroutput>): This specifies the file name + containing the seed for the random number generator. If left empty, + an operating system specific source of the seed.</para> + </listitem> + + <listitem> + <para><computeroutput>--timeout</computeroutput> (or + <computeroutput>-t</computeroutput>): This specifies the session + timeout, in seconds, and defaults to 300 (five minutes). A web + service client that has logged on but makes no calls to the web + service will automatically be disconnected after the number of + seconds specified here, as if it had called the + <computeroutput>IWebSessionManager::logoff()</computeroutput> + method provided by the web service itself.</para> + + <para>It is normally vital that each web service client call this + method, as the web service can accumulate large amounts of memory + when running, especially if a web service client does not properly + release managed object references. As a result, this timeout value + should not be set too high, especially on machines with a high + load on the web service, or the web service may eventually deny + service.</para> + </listitem> + + <listitem> + <para><computeroutput>--check-interval</computeroutput> (or + <computeroutput>-i</computeroutput>): This specifies the interval + in which the web service checks for timed-out clients, in seconds, + and defaults to 5. This normally does not need to be + changed.</para> + </listitem> + + <listitem> + <para><computeroutput>--threads</computeroutput> (or + <computeroutput>-T</computeroutput>): This specifies the maximum + number or worker threads, and defaults to 100. This normally does + not need to be changed.</para> + </listitem> + + <listitem> + <para><computeroutput>--keepalive</computeroutput> (or + <computeroutput>-k</computeroutput>): This specifies the maximum + number of requests which can be sent in one web service connection, + and defaults to 100. This normally does not need to be changed.</para> + </listitem> + + <listitem> + <para><computeroutput>--authentication</computeroutput> (or + <computeroutput>-A</computeroutput>): This specifies the desired + web service authentication method. If the parameter is not + specified or the empty string is specified it does not change the + authentication method, otherwise it is set to the specified value. + Using this parameter is a good measure against accidental + misconfiguration, as the web service ensures periodically that it + isn't changed.</para> + </listitem> + + <listitem> + <para><computeroutput>--verbose</computeroutput> (or + <computeroutput>-v</computeroutput>): Normally, the web service + outputs only brief messages to the console each time a request is + served. With this option, the web service prints much more detailed + data about every request and the COM methods that those requests + are mapped to internally, which can be useful for debugging client + programs.</para> + </listitem> + + <listitem> + <para><computeroutput>--pidfile</computeroutput> (or + <computeroutput>-P</computeroutput>): Name of the PID file which is + created when the daemon was started.</para> + </listitem> + + <listitem> + <para><computeroutput>--logfile</computeroutput> (or + <computeroutput>-F</computeroutput>) + <computeroutput><file></computeroutput>: If this is + specified, the web service not only prints its output to the + console, but also writes it to the specified file. The file is + created if it does not exist; if it does exist, new output is + appended to it. This is useful if you run the web service + unattended and need to debug problems after they have + occurred.</para> + </listitem> + + <listitem> + <para><computeroutput>--logrotate</computeroutput> (or + <computeroutput>-R</computeroutput>): Number of old log files to + keep, defaults to 10. Log rotation is disabled if set to 0.</para> + </listitem> + + <listitem> + <para><computeroutput>--logsize</computeroutput> (or + <computeroutput>-S</computeroutput>): Maximum size of log file in + bytes, defaults to 100MB. Log rotation is triggered if the file + grows beyond this limit.</para> + </listitem> + + <listitem> + <para><computeroutput>--loginterval</computeroutput> (or + <computeroutput>-I</computeroutput>): Maximum time interval to be + put in a log file before rotation is triggered, in seconds, and + defaults to one day.</para> + </listitem> + </itemizedlist> + </sect2> + + <sect2 id="websrv_authenticate"> + <title>Authenticating at web service logon</title> + + <para>As opposed to the COM/XPCOM variant of the Main API, a client + that wants to use the web service must first log on by calling the + <computeroutput>IWebsessionManager::logon()</computeroutput> API (see + <xref linkend="IWebsessionManager__logon" />) that is specific to the + web service. Logon is necessary for the web service to be stateful; + internally, it maintains a session for each client that connects to + it.</para> + + <para>The <computeroutput>IWebsessionManager::logon()</computeroutput> + API takes a user name and a password as arguments, which the web + service then passes to a customizable authentication plugin that + performs the actual authentication.</para> + + <para>For testing purposes, it is recommended that you first disable + authentication with this command:<screen>VBoxManage setproperty websrvauthlibrary null</screen></para> + + <para><warning> + <para>This will cause all logons to succeed, regardless of user + name or password. This should of course not be used in a + production environment.</para> + </warning>Generally, the mechanism by which clients are + authenticated is configurable by way of the + <computeroutput>VBoxManage</computeroutput> command:</para> + + <para><screen>VBoxManage setproperty websrvauthlibrary default|null|<library></screen></para> + + <para>This way you can specify any shared object/dynamic link module + that conforms with the specifications for VirtualBox external + authentication modules as laid out in section <emphasis + role="bold">VRDE authentication</emphasis> of the VirtualBox User + Manual; the web service uses the same kind of modules as the + VirtualBox VRDE server. For technical details on VirtualBox external + authentication modules see <xref linkend="vbox-auth" /></para> + + <para>By default, after installation, the web service uses the + VBoxAuth module that ships with VirtualBox. This module uses PAM on + Linux hosts to authenticate users. Any valid username/password + combination is accepted, it does not have to be the username and + password of the user running the web service daemon. Unless + <computeroutput>vboxwebsrv</computeroutput> runs as root, PAM + authentication can fail, because sometimes the file + <computeroutput>/etc/shadow</computeroutput>, which is used by PAM, is + not readable. On most Linux distribution PAM uses a suid root helper + internally, so make sure you test this before deploying it. One can + override this behavior by setting the environment variable + <computeroutput>VBOX_PAM_ALLOW_INACTIVE</computeroutput> which will + suppress failures when unable to read the shadow password file. Please + use this variable carefully, and only if you fully understand what + you're doing.</para> + </sect2> + </sect1> + </chapter> + + <chapter> + <title>Environment-specific notes</title> + + <para>The Main API described in <xref linkend="sdkref_classes" /> and + <xref linkend="sdkref_enums" /> is mostly identical in all the supported + programming environments which have been briefly mentioned in the + introduction of this book. As a result, the Main API's general concepts + described in <xref linkend="concepts" /> are the same whether you use the + object-oriented web service (OOWS) for JAX-WS or a raw web service + connection via, say, Perl, or whether you use C++ COM bindings.</para> + + <para>Some things are different depending on your environment, however. + These differences are explained in this chapter.</para> + + <sect1 id="glue"> + <title>Using the object-oriented web service (OOWS)</title> + + <para>As explained in <xref linkend="webservice-or-com" />, VirtualBox + ships with client-side libraries for Java, Python and PHP that allow you + to use the VirtualBox web service in an intuitive, object-oriented way. + These libraries shield you from the client-side complications of managed + object references and other implementation details that come with the + VirtualBox web service. (If you are interested in these complications, + have a look at <xref linkend="raw-webservice" />).</para> + + <para>We recommend that you start your experiments with the VirtualBox + web service by using our object-oriented client libraries for JAX-WS, a + web service toolkit for Java, which enables you to write code to + interact with VirtualBox in the simplest manner possible.</para> + + <para>As "interfaces", "attributes" and "methods" are COM concepts, + please read the documentation in <xref linkend="sdkref_classes" /> and + <xref linkend="sdkref_enums" /> with the following notes in mind.</para> + + <para>The OOWS bindings attempt to map the Main API as closely as + possible to the Java, Python and PHP languages. In other words, objects + are objects, interfaces become classes, and you can call methods on + objects as you would on local objects.</para> + + <para>The main difference remains with attributes: to read an attribute, + call a "getXXX" method, with "XXX" being the attribute name with a + capitalized first letter. So when the Main API Reference says that + <computeroutput>IMachine</computeroutput> has a "name" attribute (see + <xref linkend="IMachine__name" xreflabel="IMachine::name" />), call + <computeroutput>getName()</computeroutput> on an IMachine object to + obtain a machine's name. Unless the attribute is marked as read-only in + the documentation, there will also be a corresponding "set" + method.</para> + + <sect2 id="glue-jax-ws"> + <title>The object-oriented web service for JAX-WS</title> + + <para>JAX-WS is a powerful toolkit by Sun Microsystems to build both + server and client code with Java. It is part of Java 6 (JDK 1.6), but + can also be obtained separately for Java 5 (JDK 1.5). The VirtualBox + SDK comes with precompiled OOWS bindings working with both Java 5 and + 6.</para> + + <para>The following sections explain how to get the JAX-WS sample code + running and explain a few common practices when using the JAX-WS + object-oriented web service.</para> + + <sect3> + <title>Preparations</title> + + <para>Since JAX-WS is already integrated into Java 6, no additional + preparations are needed for Java 6.</para> + + <para>If you are using Java 5 (JDK 1.5.x), you will first need to + download and install an external JAX-WS implementation, as Java 5 + does not support JAX-WS out of the box; for example, you can + download one from here: <ulink + url="https://jax-ws.dev.java.net/2.1.4/JAXWS2.1.4-20080502.jar">https://jax-ws.dev.java.net/2.1.4/JAXWS2.1.4-20080502.jar</ulink>. + Then perform the installation (<computeroutput>java -jar + JAXWS2.1.4-20080502.jar</computeroutput>).</para> + </sect3> + + <sect3> + <title>Getting started: running the sample code</title> + + <para>To run the OOWS for JAX-WS samples that we ship with the SDK, + perform the following steps: <orderedlist> + <listitem> + <para>Open a terminal and change to the directory where the + JAX-WS samples reside.<footnote> + <para>In + <computeroutput>sdk/bindings/glue/java/</computeroutput>.</para> + </footnote> Examine the header of + <computeroutput>Makefile</computeroutput> to see if the + supplied variables (Java compiler, Java executable) and a few + other details match your system settings.</para> + </listitem> + + <listitem> + <para>To start the VirtualBox web service, open a second + terminal and change to the directory where the VirtualBox + executables are located. Then type:<screen>./vboxwebsrv -v</screen></para> + + <para>The web service now waits for connections and will run + until you press Ctrl+C in this second terminal. The -v + argument causes it to log all connections to the terminal. + (See <xref linkend="runvboxwebsrv" os="" /> for details on how + to run the web service.)</para> + </listitem> + + <listitem> + <para>Back in the first terminal and still in the samples + directory, to start a simple client example just type:<screen>make run16</screen></para> + + <para>if you're on a Java 6 system; on a Java 5 system, run + <computeroutput>make run15</computeroutput> instead.</para> + + <para>This should work on all Unix-like systems such as Linux + and Solaris. For Windows systems, use commands similar to what + is used in the Makefile.</para> + + <para>This will compile the + <computeroutput>clienttest.java</computeroutput> code on the + first call and then execute the resulting + <computeroutput>clienttest</computeroutput> class to show the + locally installed VMs (see below).</para> + </listitem> + </orderedlist></para> + + <para>The <computeroutput>clienttest</computeroutput> sample + imitates a few typical command line tasks that + <computeroutput>VBoxManage</computeroutput>, VirtualBox's regular + command-line front-end, would provide (see the VirtualBox User + Manual for details). In particular, you can run:<itemizedlist> + <listitem> + <para><computeroutput>java clienttest show + vms</computeroutput>: show the virtual machines that are + registered locally.</para> + </listitem> + + <listitem> + <para><computeroutput>java clienttest list + hostinfo</computeroutput>: show various information about the + host this VirtualBox installation runs on.</para> + </listitem> + + <listitem> + <para><computeroutput>java clienttest startvm + <vmname|uuid></computeroutput>: start the given virtual + machine.</para> + </listitem> + </itemizedlist></para> + + <para>The <computeroutput>clienttest.java</computeroutput> sample + code illustrates common basic practices how to use the VirtualBox + OOWS for JAX-WS, which we will explain in more detail in the + following chapters.</para> + </sect3> + + <sect3> + <title>Logging on to the web service</title> + + <para>Before a web service client can do anything useful, two + objects need to be created, as can be seen in the + <computeroutput>clienttest</computeroutput> constructor:<orderedlist> + <listitem> + <para>An instance of <xref linkend="IWebsessionManager" + xreflabel="IWebsessionManager" />, which is an interface + provided by the web service to manage "web sessions" -- that + is, stateful connections to the web service with persistent + objects upon which methods can be invoked.</para> + + <para>In the OOWS for JAX-WS, the IWebsessionManager class + must be constructed explicitly, and a URL must be provided in + the constructor that specifies where the web service (the + server) awaits connections. The code in + <computeroutput>clienttest.java</computeroutput> connects to + "http://localhost:18083/", which is the default.</para> + + <para>The port number, by default 18083, must match the port + number given to the + <computeroutput>vboxwebsrv</computeroutput> command line; see + <xref linkend="vboxwebsrv-ref" />.</para> + </listitem> + + <listitem> + <para>After that, the code calls <xref + linkend="IWebsessionManager__logon" + xreflabel="IWebsessionManager::logon()" />, which is the first + call that actually communicates with the server. This + authenticates the client with the web service and returns an + instance of <xref linkend="IVirtualBox" + xreflabel="IVirtualBox" />, the most fundamental interface of + the VirtualBox web service, from which all other functionality + can be derived.</para> + + <para>If logon doesn't work, please take another look at <xref + linkend="websrv_authenticate" />.</para> + </listitem> + </orderedlist></para> + </sect3> + + <sect3> + <title>Object management</title> + + <para>The current OOWS for JAX-WS has certain memory management + related limitations. When you no longer need an object, call its + <xref linkend="IManagedObjectRef__release" + xreflabel="IManagedObjectRef::release()" /> method explicitly, which + frees appropriate managed reference, as is required by the raw + web service; see <xref linkend="managed-object-references" /> for + details. This limitation may be reconsidered in a future version of + the VirtualBox SDK.</para> + </sect3> + </sect2> + + <sect2 id="glue-python-ws"> + <title>The object-oriented web service for Python</title> + + <para>VirtualBox comes with two flavors of a Python API: one for web + service, discussed here, and one for the COM/XPCOM API discussed in + <xref linkend="pycom" />. The client code is mostly similar, except + for the initialization part, so it is up to the application developer + to choose the appropriate technology. Moreover, a common Python glue + layer exists, abstracting out concrete platform access details, see + <xref linkend="glue-python" />.</para> + + <para>As indicated in <xref linkend="webservice-or-com" />, the + COM/XPCOM API gives better performance without the SOAP overhead, and + does not require a web server to be running. On the other hand, the + COM/XPCOM Python API requires a suitable Python bridge for your Python + installation (VirtualBox ships the most important ones for each + platform<footnote> + <para>On On Mac OS X only the Python versions bundled with the OS + are officially supported. This means Python 2.3 for 10.4, Python + 2.5 for 10.5 and Python 2.5 and 2.6 for 10.6.</para> + </footnote>). On Windows, you can use the Main API from Python if the Win32 extensions + package for Python<footnote> + <para>See <ulink + url="http://sourceforge.net/project/showfiles.php?group_id=78018">http://sourceforge.net/project/showfiles.php?group_id=78018</ulink>.</para> + </footnote> is installed. Version of Python Win32 extensions earlier than 2.16 are known to have bugs, + leading to issues with VirtualBox Python bindings, and also some early builds of Python 2.5 for Windows have issues with + reporting platform name on some Windows versions, so please make sure to use latest available Python + and Win32 extensions.</para> + + <para>The VirtualBox OOWS for Python relies on the Python ZSI SOAP + implementation (see <ulink + url="http://pywebsvcs.sourceforge.net/zsi.html">http://pywebsvcs.sourceforge.net/zsi.html</ulink>), + which you will need to install locally before trying the examples. + Most Linux distributions come with package for ZSI, such as + <computeroutput>python-zsi</computeroutput> in Ubuntu.</para> + + <para>To get started, open a terminal and change to the + <computeroutput>bindings/glue/python/sample</computeroutput> + directory, which contains an example of a simple interactive shell + able to control a VirtualBox instance. The shell is written using the + API layer, thereby hiding different implementation details, so it is + actually an example of code share among XPCOM, MSCOM and web services. + If you are interested in how to interact with the web services layer + directly, have a look at + <computeroutput>install/vboxapi/__init__.py</computeroutput> which + contains the glue layer for all target platforms (i.e. XPCOM, MSCOM + and web services).</para> + + <para>To start the shell, perform the following commands: <screen>/opt/VirtualBox/vboxwebsrv -t 0 + # start web service with object autocollection disabled +export VBOX_PROGRAM_PATH=/opt/VirtualBox + # your VirtualBox installation directory +export VBOX_SDK_PATH=/home/youruser/vbox-sdk + # where you've extracted the SDK +./vboxshell.py -w </screen>See <xref linkend="vboxshell" /> for more + details on the shell's functionality. For you, as a VirtualBox + application developer, the vboxshell sample could be interesting as an + example of how to write code targeting both local and remote cases + (COM/XPCOM and SOAP). The common part of the shell is the same -- the + only difference is how it interacts with the invocation layer. You can + use the <computeroutput>connect</computeroutput> shell command to + connect to remote VirtualBox servers; in this case you can skip + starting the local web server.</para> + </sect2> + + <sect2> + <title>The object-oriented web service for PHP</title> + + <para>VirtualBox also comes with object-oriented web service (OOWS) + wrappers for PHP5. These wrappers rely on the PHP SOAP + Extension<footnote> + <para>See <ulink url="???">http://www.php.net/soap</ulink>.</para> + </footnote>, which can be installed by configuring PHP with + <computeroutput>--enable-soap</computeroutput>.</para> + </sect2> + </sect1> + + <sect1 id="raw-webservice"> + <title>Using the raw web service with any language</title> + + <para>The following examples show you how to use the raw web service, + without the object-oriented client-side code that was described in the + previous chapter.</para> + + <para>Generally, when reading the documentation in <xref + linkend="sdkref_classes" /> and <xref linkend="sdkref_enums" />, due to + the limitations of SOAP and WSDL lined out in <xref + linkend="rawws-conventions" />, please have the following notes in + mind:</para> + + <para><orderedlist> + <listitem> + <para>Any COM method call becomes a <emphasis role="bold">plain + function call</emphasis> in the raw web service, with the object + as an additional first parameter (before the "real" parameters + listed in the documentation). So when the documentation says that + the <computeroutput>IVirtualBox</computeroutput> interface + supports the <computeroutput>createMachine()</computeroutput> + method (see <xref linkend="IVirtualBox__createMachine" + xreflabel="IVirtualBox::createMachine()" />), the web service + operation is + <computeroutput>IVirtualBox_createMachine(...)</computeroutput>, + and a managed object reference to an + <computeroutput>IVirtualBox</computeroutput> object must be passed + as the first argument.</para> + </listitem> + + <listitem> + <para>For <emphasis role="bold">attributes</emphasis> in + interfaces, there will be at least one "get" function; there will + also be a "set" function, unless the attribute is "readonly". The + attribute name will be appended to the "get" or "set" prefix, with + a capitalized first letter. So, the "version" readonly attribute + of the <computeroutput>IVirtualBox</computeroutput> interface can + be retrieved by calling + <computeroutput>IVirtualBox_getVersion(vbox)</computeroutput>, + with <computeroutput>vbox</computeroutput> being the VirtualBox + object.</para> + </listitem> + + <listitem> + <para>Whenever the API documentation says that a method (or an + attribute getter) returns an <emphasis + role="bold">object</emphasis>, it will returned a managed object + reference in the web service instead. As said above, managed + object references should be released if the web service client + does not log off again immediately!</para> + </listitem> + </orderedlist></para> + + <para></para> + + <sect2 id="webservice-java-sample"> + <title>Raw web service example for Java with Axis</title> + + <para>Axis is an older web service toolkit created by the Apache + foundation. If your distribution does not have it installed, you can + get a binary from <ulink + url="http://www.apache.org">http://www.apache.org</ulink>. The + following examples assume that you have Axis 1.4 installed.</para> + + <para>The VirtualBox SDK ships with an example for Axis that, again, + is called <computeroutput>clienttest.java</computeroutput> and that + imitates a few of the commands of + <computeroutput>VBoxManage</computeroutput> over the wire.</para> + + <para>Then perform the following steps:<orderedlist> + <listitem> + <para>Create a working directory somewhere. Under your + VirtualBox installation directory, find the + <computeroutput>sdk/webservice/samples/java/axis/</computeroutput> + directory and copy the file + <computeroutput>clienttest.java</computeroutput> to your working + directory.</para> + </listitem> + + <listitem> + <para>Open a terminal in your working directory. Execute the + following command:<screen> java org.apache.axis.wsdl.WSDL2Java /path/to/vboxwebService.wsdl</screen></para> + + <para>The <computeroutput>vboxwebService.wsdl</computeroutput> + file should be located in the + <computeroutput>sdk/webservice/</computeroutput> + directory.</para> + + <para>If this fails, your Apache Axis may not be located on your + system classpath, and you may have to adjust the CLASSPATH + environment variable. Something like this:<screen>export CLASSPATH="/path-to-axis-1_4/lib/*":$CLASSPATH</screen></para> + + <para>Use the directory where the Axis JAR files are located. + Mind the quotes so that your shell passes the "*" character to + the java executable without expanding. Alternatively, add a + corresponding <computeroutput>-classpath</computeroutput> + argument to the "java" call above.</para> + + <para>If the command executes successfully, you should see an + "org" directory with subdirectories containing Java source files + in your working directory. These classes represent the + interfaces that the VirtualBox web service offers, as described + by the WSDL file.</para> + + <para>This is the bit that makes using web services so + attractive to client developers: if a language's toolkit + understands WSDL, it can generate large amounts of support code + automatically. Clients can then easily use this support code and + can be done with just a few lines of code.</para> + </listitem> + + <listitem> + <para>Next, compile the + <computeroutput>clienttest.java</computeroutput> source:<screen>javac clienttest.java </screen></para> + + <para>This should yield a "clienttest.class" file.</para> + </listitem> + + <listitem> + <para>To start the VirtualBox web service, open a second + terminal and change to the directory where the VirtualBox + executables are located. Then type:<screen>./vboxwebsrv -v</screen></para> + + <para>The web service now waits for connections and will run + until you press Ctrl+C in this second terminal. The -v argument + causes it to log all connections to the terminal. (See <xref + linkend="runvboxwebsrv" os="" /> for details on how to run the + web service.)</para> + </listitem> + + <listitem> + <para>Back in the original terminal where you compiled the Java + source, run the resulting binary, which will then connect to the + web service:<screen>java clienttest</screen></para> + + <para>The client sample will connect to the web service (on + localhost, but the code could be changed to connect remotely if + the web service was running on a different machine) and make a + number of method calls. It will output the version number of + your VirtualBox installation and a list of all virtual machines + that are currently registered (with a bit of seemingly random + data, which will be explained later).</para> + </listitem> + </orderedlist></para> + </sect2> + + <sect2 id="raw-webservice-perl"> + <title>Raw web service example for Perl</title> + + <para>We also ship a small sample for Perl. It uses the SOAP::Lite + perl module to communicate with the VirtualBox web service.</para> + + <para>The + <computeroutput>sdk/bindings/webservice/perl/lib/</computeroutput> + directory contains a pre-generated Perl module that allows for + communicating with the web service from Perl. You can generate such a + module yourself using the "stubmaker" tool that comes with SOAP::Lite, + but since that tool is slow as well as sometimes unreliable, we are + shipping a working module with the SDK for your convenience.</para> + + <para>Perform the following steps:<orderedlist> + <listitem> + <para>If SOAP::Lite is not yet installed on your system, you + will need to install the package first. On Debian-based systems, + the package is called + <computeroutput>libsoap-lite-perl</computeroutput>; on Gentoo, + it's <computeroutput>dev-perl/SOAP-Lite</computeroutput>.</para> + </listitem> + + <listitem> + <para>Open a terminal in the + <computeroutput>sdk/bindings/webservice/perl/samples/</computeroutput> + directory.</para> + </listitem> + + <listitem> + <para>To start the VirtualBox web service, open a second + terminal and change to the directory where the VirtualBox + executables are located. Then type:<screen>./vboxwebsrv -v</screen></para> + + <para>The web service now waits for connections and will run + until you press Ctrl+C in this second terminal. The -v argument + causes it to log all connections to the terminal. (See <xref + linkend="runvboxwebsrv" os="" /> for details on how to run the + web service.)</para> + </listitem> + + <listitem> + <para>In the first terminal with the Perl sample, run the + clienttest.pl script:<screen>perl -I ../lib clienttest.pl</screen></para> + </listitem> + </orderedlist></para> + </sect2> + + <sect2> + <title>Programming considerations for the raw web service</title> + + <para>If you use the raw web service, you need to keep a number of + things in mind, or you will sooner or later run into issues that are + not immediately obvious. By contrast, the object-oriented client-side + libraries described in <xref linkend="glue" /> take care of these + things automatically and thus greatly simplify using the web + service.</para> + + <sect3 id="rawws-conventions"> + <title>Fundamental conventions</title> + + <para>If you are familiar with other web services, you may find the + VirtualBox web service to behave a bit differently to accommodate + for the fact that VirtualBox web service more or less maps the + VirtualBox Main COM API. The following main differences had to be + taken care of:<itemizedlist> + <listitem> + <para>Web services, as expressed by WSDL, are not + object-oriented. Even worse, they are normally stateless (or, + in web services terminology, "loosely coupled"). Web service + operations are entirely procedural, and one cannot normally + make assumptions about the state of a web service between + function calls.</para> + + <para>In particular, this normally means that you cannot work + on objects in one method call that were created by another + call.</para> + </listitem> + + <listitem> + <para>By contrast, the VirtualBox Main API, being expressed in + COM, is object-oriented and works entirely on objects, which + are grouped into public interfaces, which in turn have + attributes and methods associated with them.</para> + </listitem> + </itemizedlist> For the VirtualBox web service, this results in + three fundamental conventions:<orderedlist> + <listitem> + <para>All <emphasis role="bold">function names</emphasis> in + the VirtualBox web service consist of an interface name and a + method name, joined together by an underscore. This is because + there are only functions ("operations") in WSDL, but no + classes, interfaces, or methods.</para> + + <para>In addition, all calls to the VirtualBox web service + (except for logon, see below) take a <emphasis + role="bold">managed object reference</emphasis> as the first + argument, representing the object upon which the underlying + method is invoked. (Managed object references are explained in + detail below; see <xref + linkend="managed-object-references" />.)</para> + + <para>So, when one would normally code, in the pseudo-code of + an object-oriented language, to invoke a method upon an + object:<screen>IMachine machine; +result = machine.getName();</screen></para> + + <para>In the VirtualBox web service, this looks something like + this (again, pseudo-code):<screen>IMachineRef machine; +result = IMachine_getName(machine);</screen></para> + </listitem> + + <listitem> + <para>To make the web service stateful, and objects persistent + between method calls, the VirtualBox web service introduces a + <emphasis role="bold">session manager</emphasis> (by way of + the <xref linkend="IWebsessionManager" + xreflabel="IWebsessionManager" /> interface), which manages + object references. Any client wishing to interact with the web + service must first log on to the session manager and in turn + receives a managed object reference to an object that supports + the <xref linkend="IVirtualBox" xreflabel="IVirtualBox" /> + interface (the basic interface in the Main API).</para> + </listitem> + </orderedlist></para> + + <para>In other words, as opposed to other web services, <emphasis + role="bold">the VirtualBox web service is both object-oriented and + stateful.</emphasis></para> + </sect3> + + <sect3> + <title>Example: A typical web service client session</title> + + <para>A typical short web service session to retrieve the version + number of the VirtualBox web service (to be precise, the underlying + Main API version number) looks like this:<orderedlist> + <listitem> + <para>A client logs on to the web service by calling <xref + linkend="IWebsessionManager__logon" + xreflabel="IWebsessionManager::logon()" /> with a valid user + name and password. See <xref linkend="websrv_authenticate" /> + for details about how authentication works.</para> + </listitem> + + <listitem> + <para>On the server side, + <computeroutput>vboxwebsrv</computeroutput> creates a session, + which persists until the client calls <xref + linkend="IWebsessionManager__logoff" + xreflabel="IWebsessionManager::logoff()" /> or the session + times out after a configurable period of inactivity (see <xref + linkend="vboxwebsrv-ref" />).</para> + + <para>For the new session, the web service creates an instance + of <xref linkend="IVirtualBox" xreflabel="IVirtualBox" />. + This interface is the most central one in the Main API and + allows access to all other interfaces, either through + attributes or method calls. For example, IVirtualBox contains + a list of all virtual machines that are currently registered + (as they would be listed on the left side of the VirtualBox + main program).</para> + + <para>The web service then creates a managed object reference + for this instance of IVirtualBox and returns it to the calling + client, which receives it as the return value of the logon + call. Something like this:</para> + + <screen>string oVirtualBox; +oVirtualBox = webservice.IWebsessionManager_logon("user", "pass");</screen> + + <para>(The managed object reference "oVirtualBox" is just a + string consisting of digits and dashes. However, it is a + string with a meaning and will be checked by the web service. + For details, see below. As hinted above, <xref + linkend="IWebsessionManager__logon" + xreflabel="IWebsessionManager::logon()" /> is the + <emphasis>only</emphasis> operation provided by the web + service which does not take a managed object reference as the + first argument!)</para> + </listitem> + + <listitem> + <para>The VirtualBox Main API documentation says that the + <computeroutput>IVirtualBox</computeroutput> interface has a + <xref linkend="IVirtualBox__version" xreflabel="version" /> + attribute, which is a string. For each attribute, there is a + "get" and a "set" method in COM, which maps to according + operations in the web service. So, to retrieve the "version" + attribute of this <computeroutput>IVirtualBox</computeroutput> + object, the web service client does this:<screen>string version; +version = webservice.IVirtualBox_getVersion(oVirtualBox); + +print version;</screen></para> + + <para>And it will print + "@VBOX_VERSION_MAJOR@.@VBOX_VERSION_MINOR@.@VBOX_VERSION_BUILD@".</para> + </listitem> + + <listitem> + <para>The web service client calls <xref + linkend="IWebsessionManager__logoff" + xreflabel="IWebsessionManager::logoff()" /> with the + VirtualBox managed object reference. This will clean up all + allocated resources.</para> + </listitem> + </orderedlist></para> + </sect3> + + <sect3 id="managed-object-references"> + <title>Managed object references</title> + + <para>To a web service client, a managed object reference looks like + a string: two 64-bit hex numbers separated by a dash. This string, + however, represents a COM object that "lives" in the web service + process. The two 64-bit numbers encoded in the managed object + reference represent a session ID (which is the same for all objects + in the same web service session, i.e. for all objects after one + logon) and a unique object ID within that session.</para> + + <para>Managed object references are created in two + situations:<orderedlist> + <listitem> + <para>When a client logs on, by calling <xref + linkend="IWebsessionManager__logon" + xreflabel="IWebsessionManager::logon()" />.</para> + + <para>Upon logon, the websession manager creates one instance + of <xref linkend="IVirtualBox" xreflabel="IVirtualBox" /> and + another object of <xref linkend="ISession" + xreflabel="ISession" /> representing the web service session. + This can be retrieved using <xref + linkend="IWebsessionManager__getSessionObject" + xreflabel="IWebsessionManager::getSessionObject()" />.</para> + + <para>(Technically, there is always only one <xref + linkend="IVirtualBox" xreflabel="IVirtualBox" /> object, which + is shared between all sessions and clients, as it is a COM + singleton. However, each session receives its own managed + object reference to it. The <xref linkend="ISession" + xreflabel="ISession" /> object, however, is created and + destroyed for each session.)</para> + </listitem> + + <listitem> + <para>Whenever a web service clients invokes an operation + whose COM implementation creates COM objects.</para> + + <para>For example, <xref linkend="IVirtualBox__createMachine" + xreflabel="IVirtualBox::createMachine()" /> creates a new + instance of <xref linkend="IMachine" xreflabel="IMachine" />; + the COM object returned by the COM method call is then wrapped + into a managed object reference by the web server, and this + reference is returned to the web service client.</para> + </listitem> + </orderedlist></para> + + <para>Internally, in the web service process, each managed object + reference is simply a small data structure, containing a COM pointer + to the "real" COM object, the web session ID and the object ID. This + structure is allocated on creation and stored efficiently in hashes, + so that the web service can look up the COM object quickly whenever + a web service client wishes to make a method call. The random + session ID also ensures that one web service client cannot intercept + the objects of another.</para> + + <para>Managed object references are not destroyed automatically and + must be released by explicitly calling <xref + linkend="IManagedObjectRef__release" + xreflabel="IManagedObjectRef::release()" />. This is important, as + otherwise hundreds or thousands of managed object references (and + corresponding COM objects, which can consume much more memory!) can + pile up in the web service process and eventually cause it to deny + service.</para> + + <para>To reiterate: The underlying COM object, which the reference + points to, is only freed if the managed object reference is + released. It is therefore vital that web service clients properly + clean up after the managed object references that are returned to + them.</para> + + <para>When a web service client calls <xref + linkend="IWebsessionManager__logoff" + xreflabel="IWebsessionManager::logoff()" />, all managed object + references created during the session are automatically freed. For + short-lived sessions that do not create a lot of objects, logging + off may therefore be sufficient, although it is certainly not "best + practice".</para> + </sect3> + + <sect3> + <title>Some more detail about web service operation</title> + + <sect4 id="soap"> + <title>SOAP messages</title> + + <para>Whenever a client makes a call to a web service, this + involves a complicated procedure internally. These calls are + remote procedure calls. Each such procedure call typically + consists of two "message" being passed, where each message is a + plain-text HTTP request with a standard HTTP header and a special + XML document following. This XML document encodes the name of the + procedure to call and the argument names and values passed to + it.</para> + + <para>To give you an idea of what such a message looks like, + assuming that a web service provides a procedure called + "SayHello", which takes a string "name" as an argument and returns + "Hello" with a space and that name appended, the request message + could look like this:</para> + + <para><screen><?xml version="1.0" encoding="UTF-8"?> +<SOAP-ENV:Envelope + xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" + xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xmlns:xsd="http://www.w3.org/2001/XMLSchema" + xmlns:test="http://test/"> +<SOAP-ENV:Body> + <test:SayHello> + <name>Peter</name> + </test:SayHello> + </SOAP-ENV:Body> +</SOAP-ENV:Envelope></screen>A similar message -- the "response" message + -- would be sent back from the web service to the client, + containing the return value "Hello Peter".</para> + + <para>Most programming languages provide automatic support to + generate such messages whenever code in that programming language + makes such a request. In other words, these programming languages + allow for writing something like this (in pseudo-C++ code):</para> + + <para><screen>webServiceClass service("localhost", 18083); // server and port +string result = service.SayHello("Peter"); // invoke remote procedure</screen>and + would, for these two pseudo-lines, automatically perform these + steps:</para> + + <para><orderedlist> + <listitem> + <para>prepare a connection to a web service running on port + 18083 of "localhost";</para> + </listitem> + + <listitem> + <para>for the <computeroutput>SayHello()</computeroutput> + function of the web service, generate a SOAP message like in + the above example by encoding all arguments of the remote + procedure call (which could involve all kinds of type + conversions and complex marshalling for arrays and + structures);</para> + </listitem> + + <listitem> + <para>connect to the web service via HTTP and send that + message;</para> + </listitem> + + <listitem> + <para>wait for the web service to send a response + message;</para> + </listitem> + + <listitem> + <para>decode that response message and put the return value + of the remote procedure into the "result" variable.</para> + </listitem> + </orderedlist></para> + </sect4> + + <sect4 id="wsdl"> + <title>Service descriptions in WSDL</title> + + <para>In the above explanations about SOAP, it was left open how + the programming language learns about how to translate function + calls in its own syntax into proper SOAP messages. In other words, + the programming language needs to know what operations the web + service supports and what types of arguments are required for the + operation's data in order to be able to properly serialize and + deserialize the data to and from the web service. For example, if + a web service operation expects a number in "double" floating + point format for a particular parameter, the programming language + cannot send to it a string instead.</para> + + <para>For this, the Web Service Definition Language (WSDL) was + invented, another XML substandard that describes exactly what + operations the web service supports and, for each operation, which + parameters and types are needed with each request and response + message. WSDL descriptions can be incredibly verbose, and one of + the few good things that can be said about this standard is that + it is indeed supported by most programming languages.</para> + + <para>So, if it is said that a programming language "supports" web + services, this typically means that a programming language has + support for parsing WSDL files and somehow integrating the remote + procedure calls into the native language syntax -- for example, + like in the Java sample shown in <xref + linkend="webservice-java-sample" />.</para> + + <para>For details about how programming languages support web + services, please refer to the documentation that comes with the + individual languages. Here are a few pointers:</para> + + <orderedlist> + <listitem> + <para>For <emphasis role="bold">C++,</emphasis> among many + others, the gSOAP toolkit is a good option. Parts of gSOAP are + also used in VirtualBox to implement the VirtualBox web + service.</para> + </listitem> + + <listitem> + <para>For <emphasis role="bold">Java,</emphasis> there are + several implementations already described in this document + (see <xref linkend="glue-jax-ws" /> and <xref + linkend="webservice-java-sample" />).</para> + </listitem> + + <listitem> + <para><emphasis role="bold">Perl</emphasis> supports WSDL via + the SOAP::Lite package. This in turn comes with a tool called + <computeroutput>stubmaker.pl</computeroutput> that allows you + to turn any WSDL file into a Perl package that you can import. + (You can also import any WSDL file "live" by having it parsed + every time the script runs, but that can take a while.) You + can then code (again, assuming the above example):<screen>my $result = servicename->sayHello("Peter");</screen></para> + + <para>A sample that uses SOAP::Lite was described in <xref + linkend="raw-webservice-perl" />.</para> + </listitem> + </orderedlist> + </sect4> + </sect3> + </sect2> + </sect1> + + <sect1 id="api_com"> + <title>Using COM/XPCOM directly</title> + + <para>If you do not require <emphasis>remote</emphasis> procedure calls + such as those offered by the VirtualBox web service, and if you know + Python or C++ as well as COM, you might find it preferable to program + VirtualBox's Main API directly via COM.</para> + + <para>COM stands for "Component Object Model" and is a standard + originally introduced by Microsoft in the 1990s for Microsoft Windows. + It allows for organizing software in an object-oriented way and across + processes; code in one process may access objects that live in another + process.</para> + + <para>COM has several advantages: it is language-neutral, meaning that + even though all of VirtualBox is internally written in C++, programs + written in other languages could communicate with it. COM also cleanly + separates interface from implementation, so that external programs need + not know anything about the messy and complicated details of VirtualBox + internals.</para> + + <para>On a Windows host, all parts of VirtualBox will use the COM + functionality that is native to Windows. On other hosts (including + Linux), VirtualBox comes with a built-in implementation of XPCOM, as + originally created by the Mozilla project, which we have enhanced to + support interprocess communication on a level comparable to Microsoft + COM. Internally, VirtualBox has an abstraction layer that allows the + same VirtualBox code to work both with native COM as well as our XPCOM + implementation.</para> + + <sect2 id="pycom"> + <title>Python COM API</title> + + <para>On Windows, Python scripts can use COM and VirtualBox interfaces + to control almost all aspects of virtual machine execution. As an + example, use the following commands to instantiate the VirtualBox + object and start a VM: <screen> + vbox = win32com.client.Dispatch("VirtualBox.VirtualBox") + session = win32com.client.Dispatch("VirtualBox.Session") + mach = vbox.findMachine("uuid or name of machine to start") + progress = mach.launchVMProcess(session, "gui", "") + progress.waitForCompletion(-1) + </screen> Also, see + <computeroutput>/bindings/glue/python/samples/vboxshell.py</computeroutput> + for more advanced usage scenarious. However, unless you have specific + requirements, we strongly recommend to use the generic glue layer + described in the next section to access MS COM objects.</para> + </sect2> + + <sect2 id="glue-python"> + <title>Common Python bindings layer</title> + + <para>As different wrappers ultimately provide access to the same + underlying API, and to simplify porting and development of Python + application using the VirtualBox Main API, we developed a common glue + layer that abstracts out most platform-specific details from the + application and allows the developer to focus on application logic. + The VirtualBox installer automatically sets up this glue layer for the + system default Python install. See below for details on how to set up + the glue layer if you want to use a different Python + installation.</para> + + <para>In this layer, the class + <computeroutput>VirtualBoxManager</computeroutput> hides most + platform-specific details. It can be used to access both the local + (COM) and the web service based API. The following code can be used by + an application to use the glue layer.</para> + + <screen># This code assumes vboxapi.py from VirtualBox distribution +# being in PYTHONPATH, or installed system-wide +from vboxapi import VirtualBoxManager + +# This code initializes VirtualBox manager with default style +# and parameters +virtualBoxManager = VirtualBoxManager(None, None) + +# Alternatively, one can be more verbose, and initialize +# glue with web service backend, and provide authentication +# information +virtualBoxManager = VirtualBoxManager("WEBSERVICE", + {'url':'http://myhost.com::18083/', + 'user':'me', + 'password':'secret'}) </screen> + + <para>We supply the <computeroutput>VirtualBoxManager</computeroutput> + constructor with 2 arguments: style and parameters. Style defines + which bindings style to use (could be "MSCOM", "XPCOM" or + "WEBSERVICE"), and if set to <computeroutput>None</computeroutput> + defaults to usable platform bindings (MS COM on Windows, XPCOM on + other platforms). The second argument defines parameters, passed to + the platform-specific module, as we do in the second example, where we + pass username and password to be used to authenticate against the web + service.</para> + + <para>After obtaining the + <computeroutput>VirtualBoxManager</computeroutput> instance, one can + perform operations on the IVirtualBox class. For example, the + following code will a start virtual machine by name or ID:</para> + + <screen>from vboxapi import VirtualBoxManager +mgr = VirtualBoxManager(None, None) +vbox = mgr.vbox +name = "Linux" +mach = vbox.findMachine(name) +session = mgr.mgr.getSessionObject(vbox) +progress = mach.launchVMProcess(session, "gui", "") +progress.waitForCompletion(-1) +mgr.closeMachineSession(session) + </screen> + <para> + Following code will print all registered machines and their log folders + </para> + <screen>from vboxapi import VirtualBoxManager +mgr = VirtualBoxManager(None, None) +vbox = mgr.vbox + +for m in mgr.getArray(vbox, 'machines'): +print "Machine '%s' logs in '%s'" %(m.name, m.logFolder) + </screen> + + <para>Code above demonstartes cross-platform access to array properties + (certain limitations prevent one from using + <computeroutput>vbox.machines</computeroutput> to access a list of + available virtual machines in case of XPCOM), and a mechanism of + uniform session creation and closing + (<computeroutput>mgr.mgr.getSessionObject()</computeroutput>).</para> + + <para>In case you want to use the glue layer with a different Python + installation, use these steps in a shell to add the necessary + files:</para> + + <screen> # cd VBOX_INSTALL_PATH/sdk/installer + # PYTHON vboxapisetup.py install</screen> + </sect2> + + <sect2 id="cppcom"> + <title>C++ COM API</title> + + <para>C++ is the language that VirtualBox itself is written in, so C++ + is the most direct way to use the Main API -- but it is not + necessarily the easiest, as using COM and XPCOM has its own set of + complications.</para> + + <para>VirtualBox ships with sample programs that demonstrate how to + use the Main API to implement a number of tasks on your host platform. + These samples can be found in the + <computeroutput>/bindings/xpcom/samples</computeroutput> directory for + Linux, Mac OS X and Solaris and + <computeroutput>/bindings/mscom/samples</computeroutput> for Windows. + The two samples are actually different, because the one for Windows + uses native COM, whereas the other uses our XPCOM implementation, as + described above.</para> + + <para>Since COM and XPCOM are conceptually very similar but vary in + the implementation details, we have created a "glue" layer that + shields COM client code from these differences. All VirtualBox uses is + this glue layer, so the same code written once works on both Windows + hosts (with native COM) as well as on other hosts (with our XPCOM + implementation). It is recommended to always use this glue code + instead of using the COM and XPCOM APIs directly, as it is very easy + to make your code completely independent from the platform it is + running on.<!-- A third sample, + <computeroutput>tstVBoxAPIGlue.cpp</computeroutput>, illustrates how to + use the glue layer. +--></para> + + <para>In order to encapsulate platform differences between Microsoft + COM and XPCOM, the following items should be kept in mind when using + the glue layer:</para> + + <para><orderedlist> + <listitem> + <para><emphasis role="bold">Attribute getters and + setters.</emphasis> COM has the notion of "attributes" in + interfaces, which roughly compare to C++ member variables in + classes. The difference is that for each attribute declared in + an interface, COM automatically provides a "get" method to + return the attribute's value. Unless the attribute has been + marked as "readonly", a "set" attribute is also provided.</para> + + <para>To illustrate, the IVirtualBox interface has a "version" + attribute, which is read-only and of the "wstring" type (the + standard string type in COM). As a result, you can call the + "get" method for this attribute to retrieve the version number + of VirtualBox.</para> + + <para>Unfortunately, the implementation differs between COM and + XPCOM. Microsoft COM names the "get" method like this: + <computeroutput>get_Attribute()</computeroutput>, whereas XPCOM + uses this syntax: + <computeroutput>GetAttribute()</computeroutput> (and accordingly + for "set" methods). To hide these differences, the VirtualBox + glue code provides the + <computeroutput>COMGETTER(attrib)</computeroutput> and + <computeroutput>COMSETTER(attrib)</computeroutput> macros. So, + <computeroutput>COMGETTER(version)()</computeroutput> (note, two + pairs of brackets) expands to + <computeroutput>get_Version()</computeroutput> on Windows and + <computeroutput>GetVersion()</computeroutput> on other + platforms.</para> + </listitem> + + <listitem> + <para><emphasis role="bold">Unicode conversions.</emphasis> + While the rest of the modern world has pretty much settled on + encoding strings in UTF-8, COM, unfortunately, uses UCS-16 + encoding. This requires a lot of conversions, in particular + between the VirtualBox Main API and the Qt GUI, which, like the + rest of Qt, likes to use UTF-8.</para> + + <para>To facilitate these conversions, VirtualBox provides the + <computeroutput>com::Bstr</computeroutput> and + <computeroutput>com::Utf8Str</computeroutput> classes, which + support all kinds of conversions back and forth.</para> + </listitem> + + <listitem> + <para><emphasis role="bold">COM autopointers.</emphasis> + Possibly the greatest pain of using COM -- reference counting -- + is alleviated by the + <computeroutput>ComPtr<></computeroutput> template + provided by the <computeroutput>ptr.h</computeroutput> file in + the glue layer.</para> + </listitem> + </orderedlist></para> + </sect2> + + <sect2 id="event-queue"> + <title>Event queue processing</title> + + <para>Both VirtualBox client programs and frontends should + periodically perform processing of the main event queue, and do that + on the application's main thread. In case of a typical GUI Windows/Mac + OS application this happens automatically in the GUI's dispatch loop. + However, for CLI only application, the appropriate actions have to be + taken. For C++ applications, the VirtualBox SDK provided glue method + <screen> + int EventQueue::processEventQueue(uint32_t cMsTimeout) + </screen> can be used for both blocking and non-blocking operations. + For the Python bindings, a common layer provides the method <screen> + VirtualBoxManager.waitForEvents(ms) + </screen> with similar semantics.</para> + + <para>Things get somewhat more complicated for situations where an + application using VirtualBox cannot directly control the main event + loop and the main event queue is separated from the event queue of the + programming librarly (for example in case of Qt on Unix platforms). In + such a case, the application developer is advised to use a + platform/toolkit specific event injection mechanism to force event + queue checks either based on periodical timer events delivered to the + main thread, or by using custom platform messages to notify the main + thread when events are available. See the VBoxSDL and Qt (VirtualBox) + frontends as examples.</para> + </sect2> + + <sect2 id="vbcom"> + <title>Visual Basic and Visual Basic Script (VBS) on Windows + hosts</title> + + <para>On Windows hosts, one can control some of the VirtualBox Main + API functionality from VBS scripts, and pretty much everything from + Visual Basic programs.<footnote> + <para>The difference results from the way VBS treats COM + safearrays, which are used to keep lists in the Main API. VBS + expects every array element to be a + <computeroutput>VARIANT</computeroutput>, which is too strict a + limitation for any high performance API. We may lift this + restriction for interface APIs in a future version, or + alternatively provide conversion APIs.</para> + </footnote></para> + + <para>VBS is scripting language available in any recent Windows + environment. As an example, the following VBS code will print + VirtualBox version: <screen> + set vb = CreateObject("VirtualBox.VirtualBox") + Wscript.Echo "VirtualBox version " & vb.version + </screen> See + <computeroutput>bindings/mscom/vbs/sample/vboxinfo.vbs</computeroutput> + for the complete sample.</para> + + <para>Visual Basic is a popular high level language capable of + accessing COM objects. The following VB code will iterate over all + available virtual machines:<screen> + Dim vb As VirtualBox.IVirtualBox + + vb = CreateObject("VirtualBox.VirtualBox") + machines = "" + For Each m In vb.Machines + m = m & " " & m.Name + Next + </screen> See + <computeroutput>bindings/mscom/vb/sample/vboxinfo.vb</computeroutput> + for the complete sample.</para> + </sect2> + + <sect2 id="cbinding"> + <title>C binding to XPCOM API</title> + + <note> + <para>This section currently applies to Linux hosts only.</para> + </note> + + <para>Starting with version 2.2, VirtualBox offers a C binding for the + XPCOM API.</para> + + <para>The C binding provides a layer enabling object creation, method + invocation and attribute access from C.</para> + + <sect3 id="c-gettingstarted"> + <title>Getting started</title> + + <para>The following sections describe how to use the C binding in a + C program.</para> + + <para>For Linux, a sample program is provided which demonstrates use + of the C binding to initialize XPCOM, get handles for VirtualBox and + Session objects, make calls to list and start virtual machines, and + uninitialize resources when done. The program uses the VBoxGlue + library to open the C binding layer during runtime.</para> + + <para>The sample program + <computeroutput>tstXPCOMCGlue</computeroutput> is located in the bin + directory and can be run without arguments. It lists registered + machines on the host along with some additional information and ask + for a machine to start. The source for this program is available in + <computeroutput>sdk/bindings/xpcom/cbinding/samples/</computeroutput> + directory. The source for the VBoxGlue library is available in the + <computeroutput>sdk/bindings/xpcom/cbinding/</computeroutput> + directory.</para> + </sect3> + + <sect3 id="c-initialization"> + <title>XPCOM initialization</title> + + <para>Just like in C++, XPCOM needs to be initialized before it can + be used. The <computeroutput>VBoxCAPI_v2_5.h</computeroutput> header + provides the interface to the C binding. Here's how to initialize + XPCOM:</para> + + <screen>#include "VBoxCAPI_v2_5.h" +... +PCVBOXXPCOM g_pVBoxFuncs = NULL; +IVirtualBox *vbox = NULL; +ISession *session = NULL; + +/* + * VBoxGetXPCOMCFunctions() is the only function exported by + * VBoxXPCOMC.so and the only one needed to make virtualbox + * work with C. This functions gives you the pointer to the + * function table (g_pVBoxFuncs). + * + * Once you get the function table, then how and which functions + * to use is explained below. + * + * g_pVBoxFuncs->pfnComInitialize does all the necessary startup + * action and provides us with pointers to vbox and session handles. + * It should be matched by a call to g_pVBoxFuncs->pfnComUninitialize() + * when done. + */ + +g_pVBoxFuncs = VBoxGetXPCOMCFunctions(VBOX_XPCOMC_VERSION); +g_pVBoxFuncs->pfnComInitialize(&vbox, &session);</screen> + + <para>If either <computeroutput>vbox</computeroutput> or + <computeroutput>session</computeroutput> is still + <computeroutput>NULL</computeroutput>, initialization failed and the + XPCOM API cannot be used.</para> + </sect3> + + <sect3 id="c-invocation"> + <title>XPCOM method invocation</title> + + <para>Method invocation is straightforward. It looks pretty much + like the C++ way, augmented with an extra indirection due to + accessing the vtable and passing a pointer to the object as the + first argument to serve as the <computeroutput>this</computeroutput> + pointer.</para> + + <para>Using the C binding, all method invocations return a numeric + result code.</para> + + <para>If an interface is specified as returning an object, a pointer + to a pointer to the appropriate object must be passed as the last + argument. The method will then store an object pointer in that + location.</para> + + <para>In other words, to call an object's method what you need + is</para> + + <screen>IObject *object; +nsresult rc; +... +/* + * Calling void IObject::method(arg, ...) + */ +rc = object->vtbl->Method(object, arg, ...); + +... +IFoo *foo; +/* + * Calling IFoo IObject::method(arg, ...) + */ +rc = object->vtbl->Method(object, args, ..., &foo);</screen> + + <para>As a real-world example of a method invocation, let's call + <xref linkend="IMachine__launchVMProcess" + xreflabel="IMachine::launchVMProcess" /> which returns an + IProgress object. Note again that the method name is + capitalized.</para> + + <screen>IProgress *progress; +... +rc = vbox->vtbl->LaunchVMProcess( + machine, /* this */ + session, /* arg 1 */ + sessionType, /* arg 2 */ + env, /* arg 3 */ + &progress /* Out */ +); +</screen> + </sect3> + + <sect3 id="c-attributes"> + <title>XPCOM attribute access</title> + + <para>A construct similar to calling non-void methods is used to + access object attributes. For each attribute there exists a getter + method, the name of which is composed of + <computeroutput>Get</computeroutput> followed by the capitalized + attribute name. Unless the attribute is read-only, an analogous + <computeroutput>Set</computeroutput> method exists. Let's apply + these rules to read the <xref linkend="IVirtualBox__revision" + xreflabel="IVirtualBox::revision" /> attribute.</para> + + <para>Using the <computeroutput>IVirtualBox</computeroutput> handle + <computeroutput>vbox</computeroutput> obtained above, calling its + <computeroutput>GetRevision</computeroutput> method looks like + this:</para> + + <screen>PRUint32 rev; + +rc = vbox->vtbl->GetRevision(vbox, &rev); +if (NS_SUCCEEDED(rc)) +{ + printf("Revision: %u\n", (unsigned)rev); +} +</screen> + + <para>All objects with their methods and attributes are documented + in <xref linkend="sdkref_classes" />.</para> + </sect3> + + <sect3 id="c-string-handling"> + <title>String handling</title> + + <para>When dealing with strings you have to be aware of a string's + encoding and ownership.</para> + + <para>Internally, XPCOM uses UTF-16 encoded strings. A set of + conversion functions is provided to convert other encodings to and + from UTF-16. The type of a UTF-16 character is + <computeroutput>PRUnichar</computeroutput>. Strings of UTF-16 + characters are arrays of that type. Most string handling functions + take pointers to that type. Prototypes for the following conversion + functions are declared in + <computeroutput>VBoxCAPI_v2_5.h</computeroutput>.</para> + + <sect4> + <title>Conversion of UTF-16 to and from UTF-8</title> + + <screen>int (*pfnUtf16ToUtf8)(const PRUnichar *pwszString, char **ppszString); +int (*pfnUtf8ToUtf16)(const char *pszString, PRUnichar **ppwszString); +</screen> + </sect4> + + <sect4> + <title>Ownership</title> + + <para>The ownership of a string determines who is responsible for + releasing resources associated with the string. Whenever XPCOM + creates a string, ownership is transferred to the caller. To avoid + resource leaks, the caller should release resources once the + string is no longer needed.</para> + </sect4> + </sect3> + + <sect3 id="c-uninitialization"> + <title>XPCOM uninitialization</title> + + <para>Uninitialization is performed by + <computeroutput>g_pVBoxFuncs->pfnComUninitialize().</computeroutput> + If your program can exit from more than one place, it is a good idea + to install this function as an exit handler with Standard C's + <computeroutput>atexit()</computeroutput> just after calling + <computeroutput>g_pVBoxFuncs->pfnComInitialize()</computeroutput> + , e.g. <screen>#include <stdlib.h> +#include <stdio.h> + +... + +/* + * Make sure g_pVBoxFuncs->pfnComUninitialize() is called at exit, no + * matter if we return from the initial call to main or call exit() + * somewhere else. Note that atexit registered functions are not + * called upon abnormal termination, i.e. when calling abort() or + * signal(). Separate provisions must be taken for these cases. + */ + +if (atexit(g_pVBoxFuncs->pfnComUninitialize()) != 0) { + fprintf(stderr, "failed to register g_pVBoxFuncs->pfnComUninitialize()\n"); + exit(EXIT_FAILURE); +} +</screen></para> + + <para>Another idea would be to write your own <computeroutput>void + myexit(int status)</computeroutput> function, calling + <computeroutput>g_pVBoxFuncs->pfnComUninitialize()</computeroutput> + followed by the real <computeroutput>exit()</computeroutput>, and + use it instead of <computeroutput>exit()</computeroutput> throughout + your program and at the end of + <computeroutput>main.</computeroutput></para> + + <para>If you expect the program to be terminated by a signal (e.g. + user types CTRL-C sending SIGINT) you might want to install a signal + handler setting a flag noting that a signal was sent and then + calling + <computeroutput>g_pVBoxFuncs->pfnComUninitialize()</computeroutput> + later on (usually <emphasis>not</emphasis> from the handler itself + .)</para> + + <para>That said, if a client program forgets to call + <computeroutput>g_pVBoxFuncs->pfnComUninitialize()</computeroutput> + before it terminates, there is a mechanism in place which will + eventually release references held by the client. You should not + rely on this, however.</para> + </sect3> + + <sect3 id="c-linking"> + <title>Compiling and linking</title> + + <para>A program using the C binding has to open the library during + runtime using the help of glue code provided and as shown in the + example <computeroutput>tstXPCOMCGlue.c</computeroutput>. + Compilation and linking can be achieved, e.g., with a makefile + fragment similar to</para> + + <screen># Where is the XPCOM include directory? +INCS_XPCOM = -I../../include +# Where is the glue code directory? +GLUE_DIR = .. +GLUE_INC = -I.. + +#Compile Glue Library +VBoxXPCOMCGlue.o: $(GLUE_DIR)/VBoxXPCOMCGlue.c + $(CC) $(CFLAGS) $(INCS_XPCOM) $(GLUE_INC) -o $@ -c $< + +# Compile. +program.o: program.c VBoxCAPI_v2_5.h + $(CC) $(CFLAGS) $(INCS_XPCOM) $(GLUE_INC) -o $@ -c $< + +# Link. +program: program.o VBoxXPCOMCGlue.o + $(CC) -o $@ $^ -ldl</screen> + </sect3> + </sect2> + </sect1> + </chapter> + + <chapter id="concepts"> + <title>Basic VirtualBox concepts; some examples</title> + + <para>The following explains some basic VirtualBox concepts such as the + VirtualBox object, sessions and how virtual machines are manipulated and + launched using the Main API. The coding examples use a pseudo-code style + closely related to the object-oriented web service (OOWS) for JAX-WS. + Depending on which environment you are using, you will need to adjust the + examples.</para> + + <sect1> + <title>Obtaining basic machine information. Reading attributes</title> + + <para>Any program using the Main API will first need access to the + global VirtualBox object (see <xref linkend="IVirtualBox" + xreflabel="IVirtualBox" />), from which all other functionality of the + API is derived. With the OOWS for JAX-WS, this is returned from the + <xref linkend="IWebsessionManager__logon" + xreflabel="IWebsessionManager::logon()" /> call.</para> + + <para>To enumerate virtual machines, one would look at the "machines" + array attribute in the VirtualBox object (see <xref + linkend="IVirtualBox__machines" xreflabel="IVirtualBox::machines" />). + This array contains all virtual machines currently registered with the + host, each of them being an instance of <xref linkend="IMachine" + xreflabel="IMachine" />. From each such instance, one can query + additional information, such as the UUID, the name, memory, operating + system and more by looking at the attributes; see the attributes list in + <xref linkend="IMachine" xreflabel="IMachine documentation" />.</para> + + <para>As mentioned in the preceding chapters, depending on your + programming environment, attributes are mapped to corresponding "get" + and (if the attribute is not read-only) "set" methods. So when the + documentation says that IMachine has a "<xref linkend="IMachine__name" + xreflabel="name" />" attribute, this means you need to code something + like the following to get the machine's name:<screen>IMachine machine = ...; +String name = machine.getName();</screen>Boolean attribute getters can + sometimes be called <computeroutput>isAttribute()</computeroutput> due + to JAX-WS naming conventions.</para> + </sect1> + + <sect1> + <title>Changing machine settings. Sessions</title> + + <para>As said in the previous section, to read a machine's attribute, + one invokes the corresponding "get" method. One would think that to + change settings of a machine, it would suffice to call the corresponding + "set" method -- for example, to set a VM's memory to 1024 MB, one would + call <computeroutput>setMemorySize(1024)</computeroutput>. Try that, and + you will get an error: "The machine is not mutable."</para> + + <para>So unfortunately, things are not that easy. VirtualBox is a + complicated environment in which multiple processes compete for possibly + the same resources, especially machine settings. As a result, machines + must be "locked" before they can either be modified or started. This is + to prevent multiple processes from making conflicting changes to a + machine: it should, for example, not be allowed to change the memory + size of a virtual machine while it is running. (You can't add more + memory to a real computer while it is running either, at least not to an + ordinary PC.) Also, two processes must not change settings at the same + time, or start a machine at the same time.</para> + + <para>These requirements are implemented in the Main API by way of + "sessions", in particular, the <xref linkend="ISession" + xreflabel="ISession" /> interface. Each process which talks to + VirtualBox needs its own instance of ISession. In the web service, you + cannot create such an object, but + <computeroutput>vboxwebsrv</computeroutput> creates one for you when you + log on, which you can obtain by calling <xref + linkend="IWebsessionManager__getSessionObject" + xreflabel="IWebsessionManager::getSessionObject()" />.</para> + + <para>This session object must then be used like a mutex semaphore in + common programming environments. Before you can change machine settings, + you must write-lock the machine by calling <xref + linkend="IMachine__lockMachine" xreflabel="IMachine::lockMachine()" /> + with your process's session object.</para> + + <para>After the machine has been locked, the <xref + linkend="ISession__machine" xreflabel="ISession::machine" /> attribute + contains a copy of the original IMachine object upon which the session + was opened, but this copy is "mutable": you can invoke "set" methods on + it.</para> + + <para>When done making the changes to the machine, you must call <xref + linkend="IMachine__saveSettings" + xreflabel="IMachine::saveSettings()" />, which will copy the changes you + have made from your "mutable" machine back to the real machine and write + them out to the machine settings XML file. This will make your changes + permanent.</para> + + <para>Finally, it is important to always unlock the machine again, by + calling <xref linkend="ISession__unlockMachine" + xreflabel="ISession::unlockMachine()" />. Otherwise, when the calling + process end, the machine will receive the "aborted" state, which can + lead to loss of data.</para> + + <para>So, as an example, the sequence to change a machine's memory to + 1024 MB is something like this:<screen>IWebsessionManager mgr ...; +IVirtualBox vbox = mgr.logon(user, pass); +... +IMachine machine = ...; // read-only machine +ISession session = mgr.getSessionObject(); +machine.lockMachine(session, LockType.Write); // machine is now locked for writing +IMachine mutable = session.getMachine(); // obtain the mutable machine copy +mutable.setMemorySize(1024); +mutable.saveSettings(); // write settings to XML +session.unlockMachine();</screen></para> + </sect1> + + <sect1> + <title>Launching virtual machines</title> + + <para>To launch a virtual machine, you call <xref + linkend="IMachine__launchVMProcess" + xreflabel="IMachine::launchVMProcess()" />. In doing so, the caller + instructs the VirtualBox engine to start a new process with the virtual + machine in it, since to the host, each virtual machine looks like a + single process, even if it has hundreds of its own processes inside. + (This new VM process in turn obtains a write lock on the machine, as + described above, to prevent conflicting changes from other processes; + this is why opening another session will fail while the VM is + running.)</para> + + <para>Starting a machine looks something like this:<screen>IWebsessionManager mgr ...; +IVirtualBox vbox = mgr.logon(user, pass); +... +IMachine machine = ...; // read-only machine +ISession session = mgr.getSessionObject(); +IProgress prog = machine.launchVMProcess(session, + "gui", // session type + ""); // possibly environment setting +prog.waitForCompletion(10000); // give the process 10 secs +if (prog.getResultCode() != 0) // check success + System.out.println("Cannot launch VM!")</screen></para> + + <para>The caller's session object can then be used as a sort of remote + control to the VM process that was launched. It contains a "console" + object (see <xref linkend="ISession__console" + xreflabel="ISession::console" />) with which the VM can be paused, + stopped, snapshotted or other things.</para> + </sect1> + + <sect1> + <title>VirtualBox events</title> + + <para>In VirtualBox, "events" provide a uniform mechanism to register + for and consume specific events. A VirtualBox client can register an + "event listener" (represented by the <xref linkend="IEventListener" + xreflabel="IEventListener" /> interface), which will then get notified + by the server when an event (represented by the <xref linkend="IEvent" + xreflabel="IEvent" /> interface) happens.</para> + + <para>The IEvent interface is an abstract parent interface for all + events that can occur in VirtualBox. The actual events that the server + sends out are then of one of the specific subclasses, for example <xref + linkend="IMachineStateChangedEvent" + xreflabel="IMachineStateChangedEvent" /> or <xref + linkend="IMediumChangedEvent" xreflabel="IMediumChangedEvent" />.</para> + + <para>As an example, the VirtualBox GUI waits for machine events and can + thus update its display when the machine state changes or machine + settings are modified, even if this happens in another client. This is + how the GUI can automatically refresh its display even if you manipulate + a machine from another client, for example, from VBoxManage.</para> + + <para>To register an event listener to listen to events, use code like + this:<screen>EventSource es = console.getEventSource(); +IEventListener listener = es.createListener(); +VBoxEventType aTypes[] = (VBoxEventType.OnMachineStateChanged); + // list of event types to listen for +es.registerListener(listener, aTypes, false /* active */); + // register passive listener +IEvent ev = es.getEvent(listener, 1000); + // wait up to one second for event to happen +if (ev != null) +{ + // downcast to specific event interface (in this case we have only registered + // for one type, otherwise IEvent::type would tell us) + IMachineStateChangedEvent mcse = IMachineStateChangedEvent.queryInterface(ev); + ... // inspect and do something + es.eventProcessed(listener, ev); +} +... +es.unregisterListener(listener); </screen></para> + + <para>A graphical user interface would probably best start its own + thread to wait for events and then process these in a loop.</para> + + <para>The events mechanism was introduced with VirtualBox 3.3 and + replaces various callback interfaces which were called for each event in + the interface. The callback mechanism was not compatible with scripting + languages, local Java bindings and remote web services as they do not + support callbacks. The new mechanism with events and event listeners + works with all of these.</para> + + <para>To simplify developement of application using events, concept of + event aggregator was introduced. Essentially it's mechanism to aggregate + multiple event sources into single one, and then work with this single + aggregated event source instead of original sources. As an example, one + can evaluate demo recorder in VirtualBox Python shell, shipped with SDK + - it records mouse and keyboard events, represented as separate event + sources. Code is essentially like this:<screen> + listener = console.eventSource.createListener() + agg = console.eventSource.createAggregator([console.keyboard.eventSource, console.mouse.eventSource]) + agg.registerListener(listener, [ctx['global'].constants.VBoxEventType_Any], False) + registered = True + end = time.time() + dur + while time.time() < end: + ev = agg.getEvent(listener, 1000) + processEent(ev) + agg.unregisterListener(listener)</screen> Without using aggregators + consumer have to poll on both sources, or start multiple threads to + block on those sources.</para> + </sect1> + </chapter> + + <chapter id="vboxshell"> + <title>The VirtualBox shell</title> + + <para>VirtualBox comes with an extensible shell, which allows you to + control your virtual machines from the command line. It is also a + nontrivial example of how to use the VirtualBox APIs from Python, for all + three COM/XPCOM/WS styles of the API.</para> + + <para>You can easily extend this shell with your own commands. Create a + subdirectory named <computeroutput>.VirtualBox/shexts</computeroutput> + below your home directory and put a Python file implementing your shell + extension commands in this directory. This file must contain an array + named <computeroutput>commands</computeroutput> containing your command + definitions: <screen> + commands = { + 'cmd1': ['Command cmd1 help', cmd1], + 'cmd2': ['Command cmd2 help', cmd2] + } + </screen> For example, to create a command for creating hard drive + images, the following code can be used: <screen> + def createHdd(ctx,args): + # Show some meaningful error message on wrong input + if (len(args) < 3): + print "usage: createHdd sizeM location type" + return 0 + + # Get arguments + size = int(args[1]) + loc = args[2] + if len(args) > 3: + format = args[3] + else: + # And provide some meaningful defaults + format = "vdi" + + # Call VirtualBox API, using context's fields + hdd = ctx['vb'].createHardDisk(format, loc) + # Access constants using ctx['global'].constants + progress = hdd.createBaseStorage(size, ctx['global'].constants.HardDiskVariant_Standard) + # use standard progress bar mechanism + ctx['progressBar'](progress) + + + # Report errors + if not hdd.id: + print "cannot create disk (file %s exist?)" %(loc) + return 0 + + # Give user some feedback on success too + print "created HDD with id: %s" %(hdd.id) + + # 0 means continue execution, other values mean exit from the interpreter + return 0 + + commands = { + 'myCreateHDD': ['Create virtual HDD, createHdd size location type', createHdd] + } + </screen> Just store the above text in the file + <computeroutput>createHdd</computeroutput> (or any other meaningful name) + in <computeroutput>.VirtualBox/shexts/</computeroutput>. Start the + VirtualBox shell, or just issue the + <computeroutput>reloadExts</computeroutput> command, if the shell is + already running. Your new command will now be available.</para> + </chapter> + + <xi:include href="SDKRef_apiref.xml" xpointer="xpointer(/book/*)" + xmlns:xi="http://www.w3.org/2001/XInclude" /> + + <chapter id="hgcm"> + <title>Host-Guest Communication Manager</title> + + <para>The VirtualBox Host-Guest Communication Manager (HGCM) allows a + guest application or a guest driver to call a host shared library. The + following features of VirtualBox are implemented using HGCM: <itemizedlist> + <listitem> + <para>Shared Folders</para> + </listitem> + + <listitem> + <para>Shared Clipboard</para> + </listitem> + + <listitem> + <para>Guest configuration interface</para> + </listitem> + </itemizedlist></para> + + <para>The shared library contains a so called HGCM service. The guest HGCM + clients establish connections to the service to call it. When calling a + HGCM service the client supplies a function code and a number of + parameters for the function.</para> + + <sect1> + <title>Virtual hardware implementation</title> + + <para>HGCM uses the VMM virtual PCI device to exchange data between the + guest and the host. The guest always acts as an initiator of requests. A + request is constructed in the guest physical memory, which must be + locked by the guest. The physical address is passed to the VMM device + using a 32 bit <computeroutput>out edx, eax</computeroutput> + instruction. The physical memory must be allocated below 4GB by 64 bit + guests.</para> + + <para>The host parses the request header and data and queues the request + for a host HGCM service. The guest continues execution and usually waits + on a HGCM event semaphore.</para> + + <para>When the request has been processed by the HGCM service, the VMM + device sets the completion flag in the request header, sets the HGCM + event and raises an IRQ for the guest. The IRQ handler signals the HGCM + event semaphore and all HGCM callers check the completion flag in the + corresponding request header. If the flag is set, the request is + considered completed.</para> + </sect1> + + <sect1> + <title>Protocol specification</title> + + <para>The HGCM protocol definitions are contained in the + <computeroutput>VBox/VBoxGuest.h</computeroutput></para> + + <sect2> + <title>Request header</title> + + <para>HGCM request structures contains a generic header + (VMMDevHGCMRequestHeader): <table> + <title>HGCM Request Generic Header</title> + + <tgroup cols="2"> + <tbody> + <row> + <entry><emphasis role="bold">Name</emphasis></entry> + + <entry><emphasis role="bold">Description</emphasis></entry> + </row> + + <row> + <entry>size</entry> + + <entry>Size of the entire request.</entry> + </row> + + <row> + <entry>version</entry> + + <entry>Version of the header, must be set to + <computeroutput>0x10001</computeroutput>.</entry> + </row> + + <row> + <entry>type</entry> + + <entry>Type of the request.</entry> + </row> + + <row> + <entry>rc</entry> + + <entry>HGCM return code, which will be set by the VMM + device.</entry> + </row> + + <row> + <entry>reserved1</entry> + + <entry>A reserved field 1.</entry> + </row> + + <row> + <entry>reserved2</entry> + + <entry>A reserved field 2.</entry> + </row> + + <row> + <entry>flags</entry> + + <entry>HGCM flags, set by the VMM device.</entry> + </row> + + <row> + <entry>result</entry> + + <entry>The HGCM result code, set by the VMM device.</entry> + </row> + </tbody> + </tgroup> + </table> <note> + <itemizedlist> + <listitem> + <para>All fields are 32 bit.</para> + </listitem> + + <listitem> + <para>Fields from <computeroutput>size</computeroutput> to + <computeroutput>reserved2</computeroutput> are a standard VMM + device request header, which is used for other interfaces as + well.</para> + </listitem> + </itemizedlist> + </note></para> + + <para>The <emphasis role="bold">type</emphasis> field indicates the + type of the HGCM request: <table> + <title>Request Types</title> + + <tgroup cols="2"> + <tbody> + <row> + <entry><emphasis role="bold">Name (decimal + value)</emphasis></entry> + + <entry><emphasis role="bold">Description</emphasis></entry> + </row> + + <row> + <entry>VMMDevReq_HGCMConnect + (<computeroutput>60</computeroutput>)</entry> + + <entry>Connect to a HGCM service.</entry> + </row> + + <row> + <entry>VMMDevReq_HGCMDisconnect + (<computeroutput>61</computeroutput>)</entry> + + <entry>Disconnect from the service.</entry> + </row> + + <row> + <entry>VMMDevReq_HGCMCall32 + (<computeroutput>62</computeroutput>)</entry> + + <entry>Call a HGCM function using the 32 bit + interface.</entry> + </row> + + <row> + <entry>VMMDevReq_HGCMCall64 + (<computeroutput>63</computeroutput>)</entry> + + <entry>Call a HGCM function using the 64 bit + interface.</entry> + </row> + + <row> + <entry>VMMDevReq_HGCMCancel + (<computeroutput>64</computeroutput>)</entry> + + <entry>Cancel a HGCM request currently being processed by a + host HGCM service.</entry> + </row> + </tbody> + </tgroup> + </table></para> + + <para>The <emphasis role="bold">flags</emphasis> field may contain: + <table> + <title>Flags</title> + + <tgroup cols="2"> + <tbody> + <row> + <entry><emphasis role="bold">Name (hexadecimal + value)</emphasis></entry> + + <entry><emphasis role="bold">Description</emphasis></entry> + </row> + + <row> + <entry>VBOX_HGCM_REQ_DONE + (<computeroutput>0x00000001</computeroutput>)</entry> + + <entry>The request has been processed by the host + service.</entry> + </row> + + <row> + <entry>VBOX_HGCM_REQ_CANCELLED + (<computeroutput>0x00000002</computeroutput>)</entry> + + <entry>This request was cancelled.</entry> + </row> + </tbody> + </tgroup> + </table></para> + </sect2> + + <sect2> + <title>Connect</title> + + <para>The connection request must be issued by the guest HGCM client + before it can call the HGCM service (VMMDevHGCMConnect): <table> + <title>Connect request</title> + + <tgroup cols="2"> + <tbody> + <row> + <entry><emphasis role="bold">Name</emphasis></entry> + + <entry><emphasis role="bold">Description</emphasis></entry> + </row> + + <row> + <entry>header</entry> + + <entry>The generic HGCM request header with type equal to + VMMDevReq_HGCMConnect + (<computeroutput>60</computeroutput>).</entry> + </row> + + <row> + <entry>type</entry> + + <entry>The type of the service location information (32 + bit).</entry> + </row> + + <row> + <entry>location</entry> + + <entry>The service location information (128 bytes).</entry> + </row> + + <row> + <entry>clientId</entry> + + <entry>The client identifier assigned to the connecting + client by the HGCM subsystem (32 bit).</entry> + </row> + </tbody> + </tgroup> + </table> The <emphasis role="bold">type</emphasis> field tells the + HGCM how to look for the requested service: <table> + <title>Location Information Types</title> + + <tgroup cols="2"> + <tbody> + <row> + <entry><emphasis role="bold">Name (hexadecimal + value)</emphasis></entry> + + <entry><emphasis role="bold">Description</emphasis></entry> + </row> + + <row> + <entry>VMMDevHGCMLoc_LocalHost + (<computeroutput>0x1</computeroutput>)</entry> + + <entry>The requested service is a shared library located on + the host and the location information contains the library + name.</entry> + </row> + + <row> + <entry>VMMDevHGCMLoc_LocalHost_Existing + (<computeroutput>0x2</computeroutput>)</entry> + + <entry>The requested service is a preloaded one and the + location information contains the service name.</entry> + </row> + </tbody> + </tgroup> + </table> <note> + <para>Currently preloaded HGCM services are hard-coded in + VirtualBox: <itemizedlist> + <listitem> + <para>VBoxSharedFolders</para> + </listitem> + + <listitem> + <para>VBoxSharedClipboard</para> + </listitem> + + <listitem> + <para>VBoxGuestPropSvc</para> + </listitem> + + <listitem> + <para>VBoxSharedOpenGL</para> + </listitem> + </itemizedlist></para> + </note> There is no difference between both types of HGCM services, + only the location mechanism is different.</para> + + <para>The client identifier is returned by the host and must be used + in all subsequent requests by the client.</para> + </sect2> + + <sect2> + <title>Disconnect</title> + + <para>This request disconnects the client and makes the client + identifier invalid (VMMDevHGCMDisconnect): <table> + <title>Disconnect request</title> + + <tgroup cols="2"> + <tbody> + <row> + <entry><emphasis role="bold">Name</emphasis></entry> + + <entry><emphasis role="bold">Description</emphasis></entry> + </row> + + <row> + <entry>header</entry> + + <entry>The generic HGCM request header with type equal to + VMMDevReq_HGCMDisconnect + (<computeroutput>61</computeroutput>).</entry> + </row> + + <row> + <entry>clientId</entry> + + <entry>The client identifier previously returned by the + connect request (32 bit).</entry> + </row> + </tbody> + </tgroup> + </table></para> + </sect2> + + <sect2> + <title>Call32 and Call64</title> + + <para>Calls the HGCM service entry point (VMMDevHGCMCall) using 32 bit + or 64 bit addresses: <table> + <title>Call request</title> + + <tgroup cols="2"> + <tbody> + <row> + <entry><emphasis role="bold">Name</emphasis></entry> + + <entry><emphasis role="bold">Description</emphasis></entry> + </row> + + <row> + <entry>header</entry> + + <entry>The generic HGCM request header with type equal to + either VMMDevReq_HGCMCall32 + (<computeroutput>62</computeroutput>) or + VMMDevReq_HGCMCall64 + (<computeroutput>63</computeroutput>).</entry> + </row> + + <row> + <entry>clientId</entry> + + <entry>The client identifier previously returned by the + connect request (32 bit).</entry> + </row> + + <row> + <entry>function</entry> + + <entry>The function code to be processed by the service (32 + bit).</entry> + </row> + + <row> + <entry>cParms</entry> + + <entry>The number of following parameters (32 bit). This + value is 0 if the function requires no parameters.</entry> + </row> + + <row> + <entry>parms</entry> + + <entry>An array of parameter description structures + (HGCMFunctionParameter32 or + HGCMFunctionParameter64).</entry> + </row> + </tbody> + </tgroup> + </table></para> + + <para>The 32 bit parameter description (HGCMFunctionParameter32) + consists of 32 bit type field and 8 bytes of an opaque value, so 12 + bytes in total. The 64 bit variant (HGCMFunctionParameter64) consists + of the type and 12 bytes of a value, so 16 bytes in total.</para> + + <para><table> + <title>Parameter types</title> + + <tgroup cols="2"> + <tbody> + <row> + <entry><emphasis role="bold">Type</emphasis></entry> + + <entry><emphasis role="bold">Format of the + value</emphasis></entry> + </row> + + <row> + <entry>VMMDevHGCMParmType_32bit (1)</entry> + + <entry>A 32 bit value.</entry> + </row> + + <row> + <entry>VMMDevHGCMParmType_64bit (2)</entry> + + <entry>A 64 bit value.</entry> + </row> + + <row> + <entry>VMMDevHGCMParmType_PhysAddr (3)</entry> + + <entry>A 32 bit size followed by a 32 bit or 64 bit guest + physical address.</entry> + </row> + + <row> + <entry>VMMDevHGCMParmType_LinAddr (4)</entry> + + <entry>A 32 bit size followed by a 32 bit or 64 bit guest + linear address. The buffer is used both for guest to host + and for host to guest data.</entry> + </row> + + <row> + <entry>VMMDevHGCMParmType_LinAddr_In (5)</entry> + + <entry>Same as VMMDevHGCMParmType_LinAddr but the buffer is + used only for host to guest data.</entry> + </row> + + <row> + <entry>VMMDevHGCMParmType_LinAddr_Out (6)</entry> + + <entry>Same as VMMDevHGCMParmType_LinAddr but the buffer is + used only for guest to host data.</entry> + </row> + + <row> + <entry>VMMDevHGCMParmType_LinAddr_Locked (7)</entry> + + <entry>Same as VMMDevHGCMParmType_LinAddr but the buffer is + already locked by the guest.</entry> + </row> + + <row> + <entry>VMMDevHGCMParmType_LinAddr_Locked_In (1)</entry> + + <entry>Same as VMMDevHGCMParmType_LinAddr_In but the buffer + is already locked by the guest.</entry> + </row> + + <row> + <entry>VMMDevHGCMParmType_LinAddr_Locked_Out (1)</entry> + + <entry>Same as VMMDevHGCMParmType_LinAddr_Out but the buffer + is already locked by the guest.</entry> + </row> + </tbody> + </tgroup> + </table></para> + + <para>The</para> + </sect2> + + <sect2> + <title>Cancel</title> + + <para>This request cancels a call request (VMMDevHGCMCancel): <table> + <title>Cancel request</title> + + <tgroup cols="2"> + <tbody> + <row> + <entry><emphasis role="bold">Name</emphasis></entry> + + <entry><emphasis role="bold">Description</emphasis></entry> + </row> + + <row> + <entry>header</entry> + + <entry>The generic HGCM request header with type equal to + VMMDevReq_HGCMCancel + (<computeroutput>64</computeroutput>).</entry> + </row> + </tbody> + </tgroup> + </table></para> + </sect2> + </sect1> + + <sect1> + <title>Guest software interface</title> + + <para>The guest HGCM clients can call HGCM services from both drivers + and applications.</para> + + <sect2> + <title>The guest driver interface</title> + + <para>The driver interface is implemented in the VirtualBox guest + additions driver (VBoxGuest), which works with the VMM virtual device. + Drivers must use the VBox Guest Library (VBGL), which provides an API + for HGCM clients (<computeroutput>VBox/VBoxGuestLib.h</computeroutput> + and <computeroutput>VBox/VBoxGuest.h</computeroutput>).</para> + + <para><screen> +DECLVBGL(int) VbglHGCMConnect (VBGLHGCMHANDLE *pHandle, VBoxGuestHGCMConnectInfo *pData); + </screen> Connects to the service: <screen> + VBoxGuestHGCMConnectInfo data; + + memset (&data, sizeof (VBoxGuestHGCMConnectInfo)); + + data.result = VINF_SUCCESS; + data.Loc.type = VMMDevHGCMLoc_LocalHost_Existing; + strcpy (data.Loc.u.host.achName, "VBoxSharedFolders"); + + rc = VbglHGCMConnect (&handle, &data); + + if (RT_SUCCESS (rc)) + { + rc = data.result; + } + + if (RT_SUCCESS (rc)) + { + /* Get the assigned client identifier. */ + ulClientID = data.u32ClientID; + } + </screen></para> + + <para><screen> +DECLVBGL(int) VbglHGCMDisconnect (VBGLHGCMHANDLE handle, VBoxGuestHGCMDisconnectInfo *pData); + </screen> Disconnects from the service. <screen> + VBoxGuestHGCMDisconnectInfo data; + + RtlZeroMemory (&data, sizeof (VBoxGuestHGCMDisconnectInfo)); + + data.result = VINF_SUCCESS; + data.u32ClientID = ulClientID; + + rc = VbglHGCMDisconnect (handle, &data); + </screen></para> + + <para><screen> +DECLVBGL(int) VbglHGCMCall (VBGLHGCMHANDLE handle, VBoxGuestHGCMCallInfo *pData, uint32_t cbData); + </screen> Calls a function in the service. <screen> +typedef struct _VBoxSFRead +{ + VBoxGuestHGCMCallInfo callInfo; + + /** pointer, in: SHFLROOT + * Root handle of the mapping which name is queried. + */ + HGCMFunctionParameter root; + + /** value64, in: + * SHFLHANDLE of object to read from. + */ + HGCMFunctionParameter handle; + + /** value64, in: + * Offset to read from. + */ + HGCMFunctionParameter offset; + + /** value64, in/out: + * Bytes to read/How many were read. + */ + HGCMFunctionParameter cb; + + /** pointer, out: + * Buffer to place data to. + */ + HGCMFunctionParameter buffer; + +} VBoxSFRead; + +/** Number of parameters */ +#define SHFL_CPARMS_READ (5) + +... + + VBoxSFRead data; + + /* The call information. */ + data.callInfo.result = VINF_SUCCESS; /* Will be returned by HGCM. */ + data.callInfo.u32ClientID = ulClientID; /* Client identifier. */ + data.callInfo.u32Function = SHFL_FN_READ; /* The function code. */ + data.callInfo.cParms = SHFL_CPARMS_READ; /* Number of parameters. */ + + /* Initialize parameters. */ + data.root.type = VMMDevHGCMParmType_32bit; + data.root.u.value32 = pMap->root; + + data.handle.type = VMMDevHGCMParmType_64bit; + data.handle.u.value64 = hFile; + + data.offset.type = VMMDevHGCMParmType_64bit; + data.offset.u.value64 = offset; + + data.cb.type = VMMDevHGCMParmType_32bit; + data.cb.u.value32 = *pcbBuffer; + + data.buffer.type = VMMDevHGCMParmType_LinAddr_Out; + data.buffer.u.Pointer.size = *pcbBuffer; + data.buffer.u.Pointer.u.linearAddr = (uintptr_t)pBuffer; + + rc = VbglHGCMCall (handle, &data.callInfo, sizeof (data)); + + if (RT_SUCCESS (rc)) + { + rc = data.callInfo.result; + *pcbBuffer = data.cb.u.value32; /* This is returned by the HGCM service. */ + } + </screen></para> + </sect2> + + <sect2> + <title>Guest application interface</title> + + <para>Applications call the VirtualBox Guest Additions driver to + utilize the HGCM interface. There are IOCTL's which correspond to the + <computeroutput>Vbgl*</computeroutput> functions: <itemizedlist> + <listitem> + <para><computeroutput>VBOXGUEST_IOCTL_HGCM_CONNECT</computeroutput></para> + </listitem> + + <listitem> + <para><computeroutput>VBOXGUEST_IOCTL_HGCM_DISCONNECT</computeroutput></para> + </listitem> + + <listitem> + <para><computeroutput>VBOXGUEST_IOCTL_HGCM_CALL</computeroutput></para> + </listitem> + </itemizedlist></para> + + <para>These IOCTL's get the same input buffer as + <computeroutput>VbglHGCM*</computeroutput> functions and the output + buffer has the same format as the input buffer. The same address can + be used as the input and output buffers.</para> + + <para>For example see the guest part of shared clipboard, which runs + as an application and uses the HGCM interface.</para> + </sect2> + </sect1> + + <sect1> + <title>HGCM Service Implementation</title> + + <para>The HGCM service is a shared library with a specific set of entry + points. The library must export the + <computeroutput>VBoxHGCMSvcLoad</computeroutput> entry point: <screen> +extern "C" DECLCALLBACK(DECLEXPORT(int)) VBoxHGCMSvcLoad (VBOXHGCMSVCFNTABLE *ptable) + </screen></para> + + <para>The service must check the + <computeroutput>ptable->cbSize</computeroutput> and + <computeroutput>ptable->u32Version</computeroutput> fields of the + input structure and fill the remaining fields with function pointers of + entry points and the size of the required client buffer size.</para> + + <para>The HGCM service gets a dedicated thread, which calls service + entry points synchronously, that is the service will be called again + only when a previous call has returned. However, the guest calls can be + processed asynchronously. The service must call a completion callback + when the operation is actually completed. The callback can be issued + from another thread as well.</para> + + <para>Service entry points are listed in the + <computeroutput>VBox/hgcmsvc.h</computeroutput> in the + <computeroutput>VBOXHGCMSVCFNTABLE</computeroutput> structure. <table> + <title>Service entry points</title> + + <tgroup cols="2"> + <tbody> + <row> + <entry><emphasis role="bold">Entry</emphasis></entry> + + <entry><emphasis role="bold">Description</emphasis></entry> + </row> + + <row> + <entry>pfnUnload</entry> + + <entry>The service is being unloaded.</entry> + </row> + + <row> + <entry>pfnConnect</entry> + + <entry>A client <computeroutput>u32ClientID</computeroutput> + is connected to the service. The + <computeroutput>pvClient</computeroutput> parameter points to + an allocated memory buffer which can be used by the service to + store the client information.</entry> + </row> + + <row> + <entry>pfnDisconnect</entry> + + <entry>A client is being disconnected.</entry> + </row> + + <row> + <entry>pfnCall</entry> + + <entry>A guest client calls a service function. The + <computeroutput>callHandle</computeroutput> must be used in + the VBOXHGCMSVCHELPERS::pfnCallComplete callback when the call + has been processed.</entry> + </row> + + <row> + <entry>pfnHostCall</entry> + + <entry>Called by the VirtualBox host components to perform + functions which should be not accessible by the guest. Usually + this entry point is used by VirtualBox to configure the + service.</entry> + </row> + + <row> + <entry>pfnSaveState</entry> + + <entry>The VM state is being saved and the service must save + relevant information using the SSM API + (<computeroutput>VBox/ssm.h</computeroutput>).</entry> + </row> + + <row> + <entry>pfnLoadState</entry> + + <entry>The VM is being restored from the saved state and the + service must load the saved information and be able to + continue operations from the saved state.</entry> + </row> + </tbody> + </tgroup> + </table></para> + </sect1> + </chapter> + + <chapter id="rdpweb"> + <title>RDP Web Control</title> + + <para>The VirtualBox <emphasis>RDP Web Control</emphasis> (RDPWeb) + provides remote access to a running VM. RDPWeb is a RDP (Remote Desktop + Protocol) client based on Flash technology and can be used from a Web + browser with a Flash plugin.</para> + + <sect1> + <title>RDPWeb features</title> + + <para>RDPWeb is embedded into a Web page and can connect to VRDP server + in order to displays the VM screen and pass keyboard and mouse events to + the VM.</para> + </sect1> + + <sect1> + <title>RDPWeb reference</title> + + <para>RDPWeb consists of two required components:<itemizedlist> + <listitem> + <para>Flash movie + <computeroutput>RDPClientUI.swf</computeroutput></para> + </listitem> + + <listitem> + <para>JavaScript helpers + <computeroutput>webclient.js</computeroutput></para> + </listitem> + </itemizedlist></para> + + <para>The VirtualBox SDK contains sample HTML code + including:<itemizedlist> + <listitem> + <para>JavaScript library for embedding Flash content + <computeroutput>SWFObject.js</computeroutput></para> + </listitem> + + <listitem> + <para>Sample HTML page + <computeroutput>webclient3.html</computeroutput></para> + </listitem> + </itemizedlist></para> + + <sect2> + <title>RDPWeb functions</title> + + <para><computeroutput>RDPClientUI.swf</computeroutput> and + <computeroutput>webclient.js</computeroutput> work with each other. + JavaScript code is responsible for a proper SWF initialization, + delivering mouse events to the SWF and processing resize requests from + the SWF. On the other hand, the SWF contains a few JavaScript callable + methods, which are used both from + <computeroutput>webclient.js</computeroutput> and the user HTML + page.</para> + + <sect3> + <title>JavaScript functions</title> + + <para><computeroutput>webclient.js</computeroutput> contains helper + functions. In the following table ElementId refers to an HTML + element name or attribute, and Element to the HTML element itself. + HTML code<programlisting> + <div id="FlashRDP"> + </div> +</programlisting> would have ElementId equal to FlashRDP and Element equal to + the div element.</para> + + <para><itemizedlist> + <listitem> + <programlisting>RDPWebClient.embedSWF(SWFFileName, ElementId)</programlisting> + + <para>Uses SWFObject library to replace the HTML element with + the Flash movie.</para> + </listitem> + + <listitem> + <programlisting>RDPWebClient.isRDPWebControlById(ElementId)</programlisting> + + <para>Returns true if the given id refers to a RDPWeb Flash + element.</para> + </listitem> + + <listitem> + <programlisting>RDPWebClient.isRDPWebControlByElement(Element)</programlisting> + + <para>Returns true if the given element is a RDPWeb Flash + element.</para> + </listitem> + + <listitem> + <programlisting>RDPWebClient.getFlashById(ElementId)</programlisting> + + <para>Returns an element, which is referenced by the given id. + This function will try to resolve any element, event if it is + not a Flash movie.</para> + </listitem> + </itemizedlist></para> + </sect3> + + <sect3> + <title>Flash methods callable from JavaScript</title> + + <para><computeroutput>RDPWebClienUI.swf</computeroutput> methods can + be called directly from JavaScript code on a HTML page.</para> + + <itemizedlist> + <listitem> + <para>getProperty(Name)</para> + </listitem> + + <listitem> + <para>setProperty(Name)</para> + </listitem> + + <listitem> + <para>connect()</para> + </listitem> + + <listitem> + <para>disconnect()</para> + </listitem> + + <listitem> + <para>keyboardSendCAD()</para> + </listitem> + </itemizedlist> + </sect3> + + <sect3> + <title>Flash JavaScript callbacks</title> + + <para><computeroutput>RDPWebClienUI.swf</computeroutput> calls + JavaScript functions provided by the HTML page.</para> + </sect3> + </sect2> + + <sect2> + <title>Embedding RDPWeb in an HTML page</title> + + <para>It is necessary to include + <computeroutput>webclient.js</computeroutput> helper script. If + SWFObject library is used, the + <computeroutput>swfobject.js</computeroutput> must be also included + and RDPWeb flash content can be embedded to a Web page using dynamic + HTML. The HTML must include a "placeholder", which consists of 2 + <computeroutput>div</computeroutput> elements.</para> + </sect2> + </sect1> + + <sect1> + <title>RDPWeb change log</title> + + <sect2> + <title>Version 1.2.28</title> + + <itemizedlist> + <listitem> + <para><computeroutput>keyboardLayout</computeroutput>, + <computeroutput>keyboardLayouts</computeroutput>, + <computeroutput>UUID</computeroutput> properties.</para> + </listitem> + + <listitem> + <para>Support for German keyboard layout on the client.</para> + </listitem> + + <listitem> + <para>Rebranding to Oracle.</para> + </listitem> + </itemizedlist> + </sect2> + + <sect2> + <title>Version 1.1.26</title> + + <itemizedlist> + <listitem> + <para><computeroutput>webclient.js</computeroutput> is a part of + the distribution package.</para> + </listitem> + + <listitem> + <para><computeroutput>lastError</computeroutput> property.</para> + </listitem> + + <listitem> + <para><computeroutput>keyboardSendScancodes</computeroutput> and + <computeroutput>keyboardSendCAD</computeroutput> methods.</para> + </listitem> + </itemizedlist> + </sect2> + + <sect2> + <title>Version 1.0.24</title> + + <itemizedlist> + <listitem> + <para>Initial release.</para> + </listitem> + </itemizedlist> + </sect2> + </sect1> + </chapter> + + <chapter id="vbox-auth"> + <title>VirtualBox external authentication modules</title> + + <para>VirtualBox supports arbitrary external modules to perform + authentication. The module is used when the authentication method is set + to "external" for a particular VM VRDE access and the library was + specified with <computeroutput>VBoxManage setproperty + vrdeauthlibrary</computeroutput>. Web service also use the authentication + module which was specified with <computeroutput>VBoxManage setproperty + websrvauthlibrary</computeroutput>.</para> + + <para>This library will be loaded by the VM or web service process on + demand, i.e. when the first remote desktop connection is made by a client + or when a client that wants to use the web service logs on.</para> + + <para>External authentication is the most flexible as the external handler + can both choose to grant access to everyone (like the "null" + authentication method would) and delegate the request to the guest + authentication component. When delegating the request to the guest + component, the handler will still be called afterwards with the option to + override the result.</para> + + <para>An authentication library is required to implement exactly one entry + point:</para> + + <screen>#include "VBoxAuth.h" + +/** + * Authentication library entry point. + * + * Parameters: + * + * szCaller The name of the component which calls the library (UTF8). + * pUuid Pointer to the UUID of the accessed virtual machine. Can be NULL. + * guestJudgement Result of the guest authentication. + * szUser User name passed in by the client (UTF8). + * szPassword Password passed in by the client (UTF8). + * szDomain Domain passed in by the client (UTF8). + * fLogon Boolean flag. Indicates whether the entry point is called + * for a client logon or the client disconnect. + * clientId Server side unique identifier of the client. + * + * Return code: + * + * AuthResultAccessDenied Client access has been denied. + * AuthResultAccessGranted Client has the right to use the + * virtual machine. + * AuthResultDelegateToGuest Guest operating system must + * authenticate the client and the + * library must be called again with + * the result of the guest + * authentication. + * + * Note: When 'fLogon' is 0, only pszCaller, pUuid and clientId are valid and the return + * code is ignored. + */ +AuthResult AUTHCALL AuthEntry( + const char *szCaller, + PAUTHUUID pUuid, + AuthGuestJudgement guestJudgement, + const char *szUser, + const char *szPassword + const char *szDomain + int fLogon, + unsigned clientId) +{ + /* Process request against your authentication source of choice. */ + // if (authSucceeded(...)) + // return AuthResultAccessGranted; + return AuthResultAccessDenied; +}</screen> + + <para>A note regarding the UUID implementation of the + <computeroutput>pUuid</computeroutput> argument: VirtualBox uses a + consistent binary representation of UUIDs on all platforms. For this + reason the integer fields comprising the UUID are stored as little endian + values. If you want to pass such UUIDs to code which assumes that the + integer fields are big endian (often also called network byte order), you + need to adjust the contents of the UUID to e.g. achieve the same string + representation. The required changes are:<itemizedlist> + <listitem> + <para>reverse the order of byte 0, 1, 2 and 3</para> + </listitem> + + <listitem> + <para>reverse the order of byte 4 and 5</para> + </listitem> + + <listitem> + <para>reverse the order of byte 6 and 7.</para> + </listitem> + </itemizedlist>Using this conversion you will get identical results when + converting the binary UUID to the string representation.</para> + + <para>The <computeroutput>guestJudgement</computeroutput> argument + contains information about the guest authentication status. For the first + call, it is always set to + <computeroutput>AuthGuestNotAsked</computeroutput>. In case the + <computeroutput>AuthEntry</computeroutput> function returns + <computeroutput>AuthResultDelegateToGuest</computeroutput>, a guest + authentication will be attempted and another call to the + <computeroutput>AuthEntry</computeroutput> is made with its result. This + can be either granted / denied or no judgement (the guest component chose + for whatever reason to not make a decision). In case there is a problem + with the guest authentication module (e.g. the Additions are not installed + or not running or the guest did not respond within a timeout), the "not + reacted" status will be returned.</para> + </chapter> + + <chapter id="javaapi"> + <title>Using Java API</title> + + <sect1> + <title>Introduction</title> + + <para>VirtualBox can be controlled by a Java API, both locally + (COM/XPCOM) and from remote (SOAP) clients. As with the Python bindings, + a generic glue layer tries to hide all platform differences, allowing + for source and binary compatibility on different platforms.</para> + </sect1> + + <sect1> + <title>Requirements</title> + + <para>To use the Java bindings, there are certain requirements depending + on the platform. First of all, you need JDK 1.5 (Java 5) or later. Also + please make sure that the version of the VirtualBox API .jar file + exactly matches the version of VirtualBox you use. To avoid confusion, + the VirtualBox API provides versioning in the Java package name, e.g. + the package is named <computeroutput>org.virtualbox_3_2</computeroutput> + for VirtualBox version 3.2. <itemizedlist> + <listitem> + <para><emphasis role="bold">XPCOM:</emphasis> - for all platforms, + but Microsoft Windows. A Java bridge based on JavaXPCOM is shipped + with VirtualBox. The classpath must contain + <computeroutput>vboxjxpcom.jar</computeroutput> and the + <computeroutput>vbox.home</computeroutput> property must be set to + location where the VirtualBox binaries are. Please make sure that + the JVM bitness matches bitness of VirtualBox you use as the XPCOM + bridge relies on native libraries.</para> + + <para>Start your application like this: <programlisting> + java -cp vboxjxpcom.jar -Dvbox.home=/opt/virtualbox MyProgram + </programlisting></para> + </listitem> + + <listitem> + <para><emphasis role="bold">COM:</emphasis> - for Microsoft + Windows. We rely on <computeroutput>Jacob</computeroutput> - a + generic Java to COM bridge - which has to be installed seperately. + See <ulink + url="http://sourceforge.net/projects/jacob-project/">http://sourceforge.net/projects/jacob-project/</ulink> + for installation instructions. Also, the VirtualBox provided + <computeroutput>vboxjmscom.jar</computeroutput> must be in the + class path.</para> + + <para>Start your application like this: <programlisting> + java -cp vboxjmscom.jar;c:\jacob\jacob.jar -Djava.library.path=c:\jacob MyProgram + </programlisting></para> + </listitem> + + <listitem> + <para><emphasis role="bold">SOAP</emphasis> - all platforms. Java + 6 is required, as it comes with builtin support for SOAP via the + JAX-WS library. Also, the VirtualBox provided + <computeroutput>vbojws.jar</computeroutput> must be in the class + path. In the SOAP case it's possible to create several + VirtualBoxManager instances to communicate with multiple + VirtualBox hosts.</para> + + <para>Start your application like this: <programlisting> + java -cp vboxjws.jar MyProgram + </programlisting></para> + </listitem> + </itemizedlist></para> + + <para>Exception handling is also generalized by the generic glue layer, + so that all methods could throw + <computeroutput>VBoxException</computeroutput> containing human-readable + text message (see <computeroutput>getMessage()</computeroutput> method) + along with wrapped original exception (see + <computeroutput>getWrapped()</computeroutput> method).</para> + </sect1> + + <sect1> + <title>Example</title> + + <para>This example shows a simple use case of the Java API. Differences + for SOAP vs. local version are minimal, and limited to the connection + setup phase (see <computeroutput>ws</computeroutput> variable). In the + SOAP case it's possible to create several VirtualBoxManager instances to + communicate with multiple VirtualBox hosts. <programlisting> + import org.virtualbox_3_3.*; + .... + VirtualBoxManager mgr = VirtualBoxManager.createInstance(null); + boolean ws = false; // or true, if we need the SOAP version + if (ws) + { + String url = "http://myhost:18034"; + String user = "test"; + String passwd = "test"; + mgr.connect(url, user, passwd); + } + IVirtualBox vbox = mgr.getVBox(); + System.out.println("VirtualBox version: " + vbox.getVersion() + "\n"); + // get first VM name + String m = vbox.getMachines().get(0).getName(); + System.out.println("\nAttempting to start VM '" + m + "'"); + // start it + mgr.startVm(m, null, 7000); + + if (ws) + mgr.disconnect(); + + mgr.cleanup(); + </programlisting> For more a complete example, see + <computeroutput>TestVBox.java</computeroutput>, shipped with the + SDK.</para> + </sect1> + </chapter> + + <chapter> + <title>License information</title> + + <para>The sample code files shipped with the SDK are generally licensed + liberally to make it easy for anyone to use this code for their own + application code.</para> + + <para>The Java files under + <computeroutput>bindings/webservice/java/jax-ws/</computeroutput> (library + files for the object-oriented web service) are, by contrast, licensed + under the GNU Lesser General Public License (LGPL) V2.1.</para> + + <para>See + <computeroutput>sdk/bindings/webservice/java/jax-ws/src/COPYING.LIB</computeroutput> + for the full text of the LGPL 2.1.</para> + + <para>When in doubt, please refer to the individual source code files + shipped with this SDK.</para> + </chapter> + + <chapter> + <title>Main API change log</title> + + <para>Generally, VirtualBox will maintain API compatibility within a major + release; a major release occurs when the first or the second of the three + version components of VirtualBox change (that is, in the x.y.z scheme, a + major release is one where x or y change, but not when only z + changes).</para> + + <para>In other words, updates like those from 2.0.0 to 2.0.2 will not come + with API breakages.</para> + + <para>Migration between major releases most likely will lead to API + breakage, so please make sure you updated code accordingly. The OOWS Java + wrappers enforce that mechanism by putting VirtualBox classes into + version-specific packages such as + <computeroutput>org.virtualbox_2_2</computeroutput>. This approach allows + for connecting to multiple VirtualBox versions simultaneously from the + same Java application.</para> + + <para>The following sections list incompatible changes that the Main API + underwent since the original release of this SDK Reference with VirtualBox + 2.0. A change is deemed "incompatible" only if it breaks existing client + code (e.g. changes in method parameter lists, renamed or removed + interfaces and similar). In other words, the list does not contain new + interfaces, methods or attributes or other changes that do not affect + existing client code.</para> + + <sect1> + <title>Incompatible API changes with version 4.2</title> + + <itemizedlist> + <listitem> + <para>Guest control APIs for executing guest processes, working with + guest files or directories have been moved to the newly introduced + <xref linkend="IGuestSession" xreflabel="IGuestSession" /> interface which + can be created by calling <xref linkend="IGuest__createSession" + xreflabel="IGuest::createSession()" />.</para> + + <para>A guest session will act as a + guest user's impersonation so that the guest credentials only have to + be provided when creating a new guest session. There can be up to 32 + guest sessions at once per VM, each session serving up to 2048 guest + processes running or files opened.</para> + + <para>Instead of working with process or directory handles before + version 4.2, there now are the dedicated interfaces + <xref linkend="IGuestProcess" xreflabel="IGuestProcess" />, + <xref linkend="IGuestDirectory" xreflabel="IGuestDirectory" /> and + <xref linkend="IGuestFile" xreflabel="IGuestFile" />. To retrieve more + information of a file system object the new interface + <xref linkend="IGuestFsObjInfo" xreflabel="IGuestFsObjInfo" /> has been + introduced.</para> + + <para>Even though the guest control API was changed it is backwards + compatible so that it can be used with older installed Guest + Additions. However, to use upcoming features like process termination + or waiting for input / output new Guest Additions must be installed when + these features got implemented.</para> + + <para>The following limitations apply: + <itemizedlist> + <listitem><para>The <xref linkend="IGuestFile" xreflabel="IGuestFile" /> + interface is not fully implemented yet.</para> + </listitem> + <listitem><para>The symbolic link APIs + <xref linkend="IGuestSession__symlinkCreate" + xreflabel="IGuestSession::symlinkCreate()" />, + <xref linkend="IGuestSession__symlinkExists" + xreflabel="IGuestSession::symlinkExists()" />, + <xref linkend="IGuestSession__symlinkRead" + xreflabel="IGuestSession::symlinkRead()" />, + <xref linkend="IGuestSession__symlinkRemoveDirectory" + xreflabel="IGuestSession::symlinkRemoveDirectory()" /> and + <xref linkend="IGuestSession__symlinkRemoveFile" + xreflabel="IGuestSession::symlinkRemoveFile()" /> are not + implemented yet.</para> + </listitem> + <listitem><para>The directory APIs + <xref linkend="IGuestSession__directoryRemove" + xreflabel="IGuestSession::directoryRemove()" />, + <xref linkend="IGuestSession__directoryRemoveRecursive" + xreflabel="IGuestSession::directoryRemoveRecursive()" />, + <xref linkend="IGuestSession__directoryRename" + xreflabel="IGuestSession::directoryRename()" /> and + <xref linkend="IGuestSession__directorySetACL" + xreflabel="IGuestSession::directorySetACL()" /> are not + implemented yet.</para> + </listitem> + <listitem><para>The temporary file creation API + <xref linkend="IGuestSession__fileCreateTemp" + xreflabel="IGuestSession::fileCreateTemp()" /> is not + implemented yet.</para> + </listitem> + <listitem><para>Guest process termination via + <xref linkend="IProcess__terminate" + xreflabel="IProcess::terminate()" /> is not + implemented yet.</para> + </listitem> + <listitem><para>Waiting for guest process output via + <xref linkend="ProcessWaitForFlag__StdOut" xreflabel="ProcessWaitForFlag::StdOut" /> + and <xref linkend="ProcessWaitForFlag__StdErr" xreflabel="ProcessWaitForFlag::StdErr" /> + is not implemented yet.</para><para>To wait for process output, <xref linkend="IProcess__read" + xreflabel="IProcess::read()" /> with appropriate flags still can be used to periodically + check for new output data to arrive. Note that <xref linkend="ProcessCreateFlag__WaitForStdOut" + xreflabel="ProcessCreateFlag::WaitForStdOut" /> and / or + <xref linkend="ProcessCreateFlag__WaitForStdErr" xreflabel="ProcessCreateFlag::WaitForStdErr" /> + need to be specified when creating a guest process via <xref linkend="IGuestSession__processCreate" + xreflabel="IGuestSession::processCreate()" /> or <xref linkend="IGuestSession__processCreateEx" + xreflabel="IGuestSession::processCreateEx()" />.</para> + </listitem> + <listitem> + <para>ACL (Access Control List) handling in general is not implemented yet.</para> + </listitem> + </itemizedlist> + </para> + </listitem> + + <listitem> + <para>The <xref linkend="LockType" xreflabel="LockType" /> + enumeration now has an additional value <computeroutput>VM</computeroutput> + which tells <xref linkend="IMachine__lockMachine" + xreflabel="IMachine::lockMachine()" /> to create a full-blown + object structure for running a VM. This was the previous behavior + with <computeroutput>Write</computeroutput>, which now only creates + the minimal object structure to save time and resources (at the + moment the Console object is still created, but all sub-objects + such as Display, Keyboard, Mouse, Guest are not.</para> + </listitem> + + <listitem> + <para>Machines can be put in groups (actually an array of groups). + The primary group affects the default placement of files belonging + to a VM. <xref linkend="IVirtualBox__createMachine" + xreflabel="IVirtualBox::createMachine()"/> and + <xref linkend="IVirtualBox__composeMachineFilename" + xreflabel="IVirtualBox::composeMachineFilename()"/> have been + adjusted accordingly, the former taking an array of groups as an + additional parameter and the latter taking a group as an additional + parameter. The create option handling has been changed for those two + methods, too.</para> + </listitem> + + <listitem> + <para>The method IVirtualBox::findMedium() has been removed, since + it provides a subset of the functionality of <xref linkend="IVirtualBox__openMedium" + xreflabel="IVirtualBox::openMedium()" />.</para> + </listitem> + + <listitem> + <para>The use of acronyms in API enumeration, interface, attribute + and method names has been made much more consistent, previously they + sometimes were lowercase and sometimes mixed case. They are now + consistently all caps:<table> + <title>Renamed identifiers in VirtualBox 4.2</title> + + <tgroup cols="2" style="verywide"> + <tbody> + <row> + <entry><emphasis role="bold">Old name</emphasis></entry> + + <entry><emphasis role="bold">New name</emphasis></entry> + </row> + <row> + <entry>PointingHidType</entry> + <entry><xref linkend="PointingHIDType" xreflabel="PointingHIDType"/></entry> + </row> + <row> + <entry>KeyboardHidType</entry> + <entry><xref linkend="KeyboardHIDType" xreflabel="KeyboardHIDType"/></entry> + </row> + <row> + <entry>IPciAddress</entry> + <entry><xref linkend="IPCIAddress" xreflabel="IPCIAddress"/></entry> + </row> + <row> + <entry>IPciDeviceAttachment</entry> + <entry><xref linkend="IPCIDeviceAttachment" xreflabel="IPCIDeviceAttachment"/></entry> + </row> + <row> + <entry>IMachine::pointingHidType</entry> + <entry><xref linkend="IMachine__pointingHIDType" xreflabel="IMachine::pointingHIDType"/></entry> + </row> + <row> + <entry>IMachine::keyboardHidType</entry> + <entry><xref linkend="IMachine__keyboardHIDType" xreflabel="IMachine::keyboardHIDType"/></entry> + </row> + <row> + <entry>IMachine::hpetEnabled</entry> + <entry><xref linkend="IMachine__HPETEnabled" xreflabel="IMachine::HPETEnabled"/></entry> + </row> + <row> + <entry>IMachine::sessionPid</entry> + <entry><xref linkend="IMachine__sessionPID" xreflabel="IMachine::sessionPID"/></entry> + </row> + <row> + <entry>IMachine::ioCacheEnabled</entry> + <entry><xref linkend="IMachine__IOCacheEnabled" xreflabel="IMachine::IOCacheEnabled"/></entry> + </row> + <row> + <entry>IMachine::ioCacheSize</entry> + <entry><xref linkend="IMachine__IOCacheSize" xreflabel="IMachine::IOCacheSize"/></entry> + </row> + <row> + <entry>IMachine::pciDeviceAssignments</entry> + <entry><xref linkend="IMachine__PCIDeviceAssignments" xreflabel="IMachine::PCIDeviceAssignments"/></entry> + </row> + <row> + <entry>IMachine::attachHostPciDevice()</entry> + <entry><xref linkend="IMachine__attachHostPCIDevice" xreflabel="IMachine::attachHostPCIDevice"/></entry> + </row> + <row> + <entry>IMachine::detachHostPciDevice()</entry> + <entry><xref linkend="IMachine__detachHostPCIDevice" xreflabel="IMachine::detachHostPCIDevice()"/></entry> + </row> + <row> + <entry>IConsole::attachedPciDevices</entry> + <entry><xref linkend="IConsole__attachedPCIDevices" xreflabel="IConsole::attachedPCIDevices"/></entry> + </row> + <row> + <entry>IHostNetworkInterface::dhcpEnabled</entry> + <entry><xref linkend="IHostNetworkInterface__DHCPEnabled" xreflabel="IHostNetworkInterface::DHCPEnabled"/></entry> + </row> + <row> + <entry>IHostNetworkInterface::enableStaticIpConfig()</entry> + <entry><xref linkend="IHostNetworkInterface__enableStaticIPConfig" xreflabel="IHostNetworkInterface::enableStaticIPConfig()"/></entry> + </row> + <row> + <entry>IHostNetworkInterface::enableStaticIpConfigV6()</entry> + <entry><xref linkend="IHostNetworkInterface__enableStaticIPConfigV6" xreflabel="IHostNetworkInterface::enableStaticIPConfigV6()"/></entry> + </row> + <row> + <entry>IHostNetworkInterface::enableDynamicIpConfig()</entry> + <entry><xref linkend="IHostNetworkInterface__enableDynamicIPConfig" xreflabel="IHostNetworkInterface::enableDynamicIPConfig()"/></entry> + </row> + <row> + <entry>IHostNetworkInterface::dhcpRediscover()</entry> + <entry><xref linkend="IHostNetworkInterface__DHCPRediscover" xreflabel="IHostNetworkInterface::DHCPRediscover()"/></entry> + </row> + <row> + <entry>IHost::Acceleration3DAvailable</entry> + <entry><xref linkend="IHost__acceleration3DAvailable" xreflabel="IHost::acceleration3DAvailable"/></entry> + </row> + <row> + <entry>IGuestOSType::recommendedPae</entry> + <entry><xref linkend="IGuestOSType__recommendedPAE" xreflabel="IGuestOSType::recommendedPAE"/></entry> + </row> + <row> + <entry>IGuestOSType::recommendedDvdStorageController</entry> + <entry><xref linkend="IGuestOSType__recommendedDVDStorageController" xreflabel="IGuestOSType::recommendedDVDStorageController"/></entry> + </row> + <row> + <entry>IGuestOSType::recommendedDvdStorageBus</entry> + <entry><xref linkend="IGuestOSType__recommendedDVDStorageBus" xreflabel="IGuestOSType::recommendedDVDStorageBus"/></entry> + </row> + <row> + <entry>IGuestOSType::recommendedHdStorageController</entry> + <entry><xref linkend="IGuestOSType__recommendedHDStorageController" xreflabel="IGuestOSType::recommendedHDStorageController"/></entry> + </row> + <row> + <entry>IGuestOSType::recommendedHdStorageBus</entry> + <entry><xref linkend="IGuestOSType__recommendedHDStorageBus" xreflabel="IGuestOSType::recommendedHDStorageBus"/></entry> + </row> + <row> + <entry>IGuestOSType::recommendedUsbHid</entry> + <entry><xref linkend="IGuestOSType__recommendedUSBHID" xreflabel="IGuestOSType::recommendedUSBHID"/></entry> + </row> + <row> + <entry>IGuestOSType::recommendedHpet</entry> + <entry><xref linkend="IGuestOSType__recommendedHPET" xreflabel="IGuestOSType::recommendedHPET"/></entry> + </row> + <row> + <entry>IGuestOSType::recommendedUsbTablet</entry> + <entry><xref linkend="IGuestOSType__recommendedUSBTablet" xreflabel="IGuestOSType::recommendedUSBTablet"/></entry> + </row> + <row> + <entry>IGuestOSType::recommendedRtcUseUtc</entry> + <entry><xref linkend="IGuestOSType__recommendedRTCUseUTC" xreflabel="IGuestOSType::recommendedRTCUseUTC"/></entry> + </row> + <row> + <entry>IGuestOSType::recommendedUsb</entry> + <entry><xref linkend="IGuestOSType__recommendedUSB" xreflabel="IGuestOSType::recommendedUSB"/></entry> + </row> + <row> + <entry>INetworkAdapter::natDriver</entry> + <entry><xref linkend="INetworkAdapter__NATEngine" xreflabel="INetworkAdapter::NATEngine"/></entry> + </row> + <row> + <entry>IUSBController::enabledEhci</entry> + <entry><xref linkend="IUSBController__enabledEHCI" xreflabel="IUSBController::enabledEHCI"/></entry> + </row> + <row> + <entry>INATEngine::tftpPrefix</entry> + <entry><xref linkend="INATEngine__TFTPPrefix" xreflabel="INATEngine::TFTPPrefix"/></entry> + </row> + <row> + <entry>INATEngine::tftpBootFile</entry> + <entry><xref linkend="INATEngine__TFTPBootFile" xreflabel="INATEngine::TFTPBootFile"/></entry> + </row> + <row> + <entry>INATEngine::tftpNextServer</entry> + <entry><xref linkend="INATEngine__TFTPNextServer" xreflabel="INATEngine::TFTPNextServer"/></entry> + </row> + <row> + <entry>INATEngine::dnsPassDomain</entry> + <entry><xref linkend="INATEngine__DNSPassDomain" xreflabel="INATEngine::DNSPassDomain"/></entry> + </row> + <row> + <entry>INATEngine::dnsProxy</entry> + <entry><xref linkend="INATEngine__DNSProxy" xreflabel="INATEngine::DNSProxy"/></entry> + </row> + <row> + <entry>INATEngine::dnsUseHostResolver</entry> + <entry><xref linkend="INATEngine__DNSUseHostResolver" xreflabel="INATEngine::DNSUseHostResolver"/></entry> + </row> + <row> + <entry>VBoxEventType::OnHostPciDevicePlug</entry> + <entry><xref linkend="VBoxEventType__OnHostPCIDevicePlug" xreflabel="VBoxEventType::OnHostPCIDevicePlug"/></entry> + </row> + <row> + <entry>ICPUChangedEvent::cpu</entry> + <entry><xref linkend="ICPUChangedEvent__CPU" xreflabel="ICPUChangedEvent::CPU"/></entry> + </row> + <row> + <entry>INATRedirectEvent::hostIp</entry> + <entry><xref linkend="INATRedirectEvent__hostIP" xreflabel="INATRedirectEvent::hostIP"/></entry> + </row> + <row> + <entry>INATRedirectEvent::guestIp</entry> + <entry><xref linkend="INATRedirectEvent__guestIP" xreflabel="INATRedirectEvent::guestIP"/></entry> + </row> + <row> + <entry>IHostPciDevicePlugEvent</entry> + <entry><xref linkend="IHostPCIDevicePlugEvent" xreflabel="IHostPCIDevicePlugEvent"/></entry> + </row> + </tbody> + </tgroup></table></para> + </listitem> + </itemizedlist> + </sect1> + + + <sect1> + <title>Incompatible API changes with version 4.1</title> + + <itemizedlist> + <listitem> + <para>The method <xref linkend="IAppliance__importMachines" + xreflabel="IAppliance::importMachines()" /> has one more parameter + now, which allows to configure the import process in more detail. + </para> + </listitem> + + <listitem> + <para>The method <xref linkend="IVirtualBox__openMedium" + xreflabel="IVirtualBox::openMedium()" /> has one more parameter + now, which allows resolving duplicate medium UUIDs without the need + for external tools.</para> + </listitem> + + <listitem> + <para>The <xref linkend="INetworkAdapter" xreflabel="INetworkAdapter"/> + interface has been cleaned up. The various methods to activate an + attachment type have been replaced by the + <xref linkend="INetworkAdapter__attachmentType" xreflabel="INetworkAdapter::attachmentType"/> setter.</para> + <para>Additionally each attachment mode now has its own attribute, + which means that host only networks no longer share the settings with + bridged interfaces.</para> + <para>To allow introducing new network attachment implementations + without making API changes, the concept of a generic network + attachment driver has been introduced, which is configurable through + key/value properties.</para> + </listitem> + + <listitem> + <para>This version introduces the guest facilities concept. A guest + facility either represents a module or feature the guest is running or + offering, which is defined by <xref linkend="AdditionsFacilityType" + xreflabel="AdditionsFacilityType"/>. Each facility is member of a + <xref linkend="AdditionsFacilityClass" xreflabel="AdditionsFacilityClass"/> + and has a current status indicated by <xref linkend="AdditionsFacilityStatus" + xreflabel="AdditionsFacilityStatus"/>, together with a timestamp (in ms) of + the last status update.</para> + <para>To address the above concept, the following changes were made: + <itemizedlist> + <listitem> + <para> + In the <xref linkend="IGuest" xreflabel="IGuest"/> interface, the following were removed: + <itemizedlist> + <listitem> + <para>the <computeroutput>supportsSeamless</computeroutput> attribute;</para> + </listitem> + <listitem> + <para>the <computeroutput>supportsGraphics</computeroutput> attribute;</para> + </listitem> + </itemizedlist> + </para> + </listitem> + <listitem> + <para> + The function <xref linkend="IGuest__getFacilityStatus" xreflabel="IGuest::getFacilityStatus()"/> + was added. It quickly provides a facility's status without the need to get the facility + collection with <xref linkend="IGuest__facilities" xreflabel="IGuest::facilities"/>. + </para> + </listitem> + <listitem> + <para> + The attribute <xref linkend="IGuest__facilities" xreflabel="IGuest::facilities"/> + was added to provide an easy to access collection of all currently known guest + facilities, that is, it contains all facilies where at least one status update was + made since the guest was started. + </para> + </listitem> + <listitem> + <para> + The interface <xref linkend="IAdditionsFacility" xreflabel="IAdditionsFacility"/> + was added to represent a single facility returned by + <xref linkend="IGuest__facilities" xreflabel="IGuest::facilities"/>. + </para> + </listitem> + <listitem> + <para> + <xref linkend="AdditionsFacilityStatus" xreflabel="AdditionsFacilityStatus"/> + was added to represent a facility's overall status. + </para> + </listitem> + <listitem> + <para> + <xref linkend="AdditionsFacilityType" xreflabel="AdditionsFacilityType"/> and + <xref linkend="AdditionsFacilityClass" xreflabel="AdditionsFacilityClass"/> were + added to represent the facility's type and class. + </para> + </listitem> + </itemizedlist> + </para> + </listitem> + </itemizedlist> + </sect1> + + <sect1> + <title>Incompatible API changes with version 4.0</title> + + <itemizedlist> + <listitem> + <para>A new Java glue layer replacing the previous OOWS JAX-WS + bindings was introduced. The new library allows for uniform code + targeting both local (COM/XPCOM) and remote (SOAP) transports. Now, + instead of <computeroutput>IWebsessionManager</computeroutput>, the + new class <computeroutput>VirtualBoxManager</computeroutput> must be + used. See <xref linkend="javaapi" xreflabel="Java API chapter" /> + for details.</para> + </listitem> + + <listitem> + <para>The confusingly named and impractical session APIs were + changed. In existing client code, the following changes need to be + made:<itemizedlist> + <listitem> + <para>Replace any + <computeroutput>IVirtualBox::openSession(uuidMachine, + ...)</computeroutput> API call with the machine's <xref + linkend="IMachine__lockMachine" + xreflabel="IMachine::lockMachine()" /> call and a + <computeroutput>LockType.Write</computeroutput> argument. The + functionality is unchanged, but instead of "opening a direct + session on a machine" all documentation now refers to + "obtaining a write lock on a machine for the client + session".</para> + </listitem> + + <listitem> + <para>Similarly, replace any + <computeroutput>IVirtualBox::openExistingSession(uuidMachine, + ...)</computeroutput> call with the machine's <xref + linkend="IMachine__lockMachine" + xreflabel="IMachine::lockMachine()" /> call and a + <computeroutput>LockType.Shared</computeroutput> argument. + Whereas it was previously impossible to connect a client + session to a running VM process in a race-free manner, the new + API will atomically either write-lock the machine for the + current session or establish a remote link to an existing + session. Existing client code which tried calling both + <computeroutput>openSession()</computeroutput> and + <computeroutput>openExistingSession()</computeroutput> can now + use this one call instead.</para> + </listitem> + + <listitem> + <para>Third, replace any + <computeroutput>IVirtualBox::openRemoteSession(uuidMachine, + ...)</computeroutput> call with the machine's <xref + linkend="IMachine__launchVMProcess" + xreflabel="IMachine::launchVMProcess()" /> call. The + functionality is unchanged.</para> + </listitem> + + <listitem> + <para>The <xref linkend="SessionState" + xreflabel="SessionState" /> enum was adjusted accordingly: + "Open" is now "Locked", "Closed" is now "Unlocked", "Closing" + is now "Unlocking".</para> + </listitem> + </itemizedlist></para> + </listitem> + + <listitem> + <para>Virtual machines created with VirtualBox 4.0 or later no + longer register their media in the global media registry in the + <computeroutput>VirtualBox.xml</computeroutput> file. Instead, such + machines list all their media in their own machine XML files. As a + result, a number of media-related APIs had to be modified again. + <itemizedlist> + <listitem> + <para>Neither <xref linkend="IVirtualBox__createHardDisk" + xreflabel="IVirtualBox::createHardDisk()" /> nor <xref + linkend="IVirtualBox__openMedium" + xreflabel="IVirtualBox::openMedium()" /> register media + automatically any more.</para> + </listitem> + + <listitem> + <para><xref linkend="IMachine__attachDevice" + xreflabel="IMachine::attachDevice()" /> and <xref + linkend="IMachine__mountMedium" + xreflabel="IMachine::mountMedium()" /> now take an IMedium + object instead of a UUID as an argument. It is these two calls + which add media to a registry now (either a machine registry + for machines created with VirtualBox 4.0 or later or the + global registry otherwise). As a consequence, if a medium is + opened but never attached to a machine, it is no longer added + to any registry any more.</para> + </listitem> + + <listitem> + <para>To reduce code duplication, the APIs + IVirtualBox::findHardDisk(), getHardDisk(), findDVDImage(), + getDVDImage(), findFloppyImage() and getFloppyImage() have all + been merged into IVirtualBox::findMedium(), and + IVirtualBox::openHardDisk(), openDVDImage() and + openFloppyImage() have all been merged into <xref + linkend="IVirtualBox__openMedium" + xreflabel="IVirtualBox::openMedium()" />.</para> + </listitem> + + <listitem> + <para>The rare use case of changing the UUID and parent UUID + of a medium previously handled by + <computeroutput>openHardDisk()</computeroutput> is now in a + separate IMedium::setIDs method.</para> + </listitem> + + <listitem> + <para><computeroutput>ISystemProperties::get/setDefaultHardDiskFolder()</computeroutput> + have been removed since disk images are now by default placed + in each machine's folder.</para> + </listitem> + + <listitem> + <para>The <xref linkend="ISystemProperties__infoVDSize" + xreflabel="ISystemProperties::infoVDSize" /> attribute + replaces the <computeroutput>getMaxVDISize()</computeroutput> + API call; this now uses bytes instead of megabytes.</para> + </listitem> + </itemizedlist></para> + </listitem> + + <listitem> + <para>Machine management APIs were enhanced as follows:<itemizedlist> + <listitem> + <para><xref linkend="IVirtualBox__createMachine" + xreflabel="IVirtualBox::createMachine()" /> is no longer + restricted to creating machines in the default "Machines" + folder, but can now create machines at arbitrary locations. + For this to work, the parameter list had to be changed.</para> + </listitem> + + <listitem> + <para>The long-deprecated + <computeroutput>IVirtualBox::createLegacyMachine()</computeroutput> + API has been removed.</para> + </listitem> + + <listitem> + <para>To reduce code duplication and for consistency with the + aforementioned media APIs, + <computeroutput>IVirtualBox::getMachine()</computeroutput> has + been merged with <xref linkend="IVirtualBox__findMachine" + xreflabel="IVirtualBox::findMachine()" />, and + <computeroutput>IMachine::getSnapshot()</computeroutput> has + been merged with <xref linkend="IMachine__findSnapshot" + xreflabel="IMachine::findSnapshot()" />.</para> + </listitem> + + <listitem> + <para><computeroutput>IVirtualBox::unregisterMachine()</computeroutput> + was replaced with <xref linkend="IMachine__unregister" + xreflabel="IMachine::unregister()" /> with additional + functionality for cleaning up machine files.</para> + </listitem> + + <listitem> + <para><computeroutput>IConsole::forgetSavedState</computeroutput> + has been renamed to <xref + linkend="IConsole__discardSavedState" + xreflabel="IConsole::discardSavedState()" />.</para> + </listitem> + </itemizedlist></para> + </listitem> + + <listitem> + <para>All event callbacks APIs were replaced with a new, generic + event mechanism that can be used both locally (COM, XPCOM) and + remotely (web services). Also, the new mechanism is usable from + scripting languages and a local Java. See <xref linkend="IEvent" + xreflabel="events" /> for details. The new concept will require + changes to all clients that used event callbacks.</para> + </listitem> + + <listitem> + <para><computeroutput>additionsActive()</computeroutput> was + replaced with <xref linkend="IGuest__additionsRunLevel" + xreflabel="additionsRunLevel()" /> and <xref + linkend="IGuest__getAdditionsStatus" + xreflabel="getAdditionsStatus()" /> in order to support a more + detailed status of the current Guest Additions loading/readiness + state. <xref linkend="IGuest__additionsVersion" + xreflabel="IGuest::additionsVersion()" /> no longer returns the + Guest Additions interface version but the installed Guest Additions + version and revision in form of + <computeroutput>3.3.0r12345</computeroutput>.</para> + </listitem> + + <listitem> + <para>To address shared folders auto-mounting support, the following + APIs were extended to require an additional + <computeroutput>automount</computeroutput> parameter: <itemizedlist> + <listitem> + <para><xref linkend="IVirtualBox__createSharedFolder" + xreflabel="IVirtualBox::createSharedFolder()" /></para> + </listitem> + + <listitem> + <para><xref linkend="IMachine__createSharedFolder" + xreflabel="IMachine::createSharedFolder()" /></para> + </listitem> + + <listitem> + <para><xref linkend="IConsole__createSharedFolder" + xreflabel="IConsole::createSharedFolder()" /></para> + </listitem> + </itemizedlist> Also, a new property named + <computeroutput>autoMount</computeroutput> was added to the <xref + linkend="ISharedFolder" xreflabel="ISharedFolder" /> + interface.</para> + </listitem> + + <listitem> + <para>The appliance (OVF) APIs were enhanced as + follows:<itemizedlist> + <listitem> + <para><xref linkend="IMachine__export" + xreflabel="IMachine::export()" /> received an extra parameter + <computeroutput>location</computeroutput>, which is used to + decide for the disk naming.</para> + </listitem> + + <listitem> + <para><xref linkend="IAppliance__write" + xreflabel="IAppliance::write()" /> received an extra parameter + <computeroutput>manifest</computeroutput>, which can suppress + creating the manifest file on export.</para> + </listitem> + + <listitem> + <para><xref linkend="IVFSExplorer__entryList" + xreflabel="IVFSExplorer::entryList()" /> received two extra + parameters <computeroutput>sizes</computeroutput> and + <computeroutput>modes</computeroutput>, which contains the + sizes (in bytes) and the file access modes (in octal form) of + the returned files.</para> + </listitem> + </itemizedlist></para> + </listitem> + + <listitem> + <para>Support for remote desktop access to virtual machines has been + cleaned up to allow third party implementations of the remote + desktop server. This is called the VirtualBox Remote Desktop + Extension (VRDE) and can be added to VirtualBox by installing the + corresponding extension package; see the VirtualBox User Manual for + details.</para> + + <para>The following API changes were made to support the VRDE + interface: <itemizedlist> + <listitem> + <para><computeroutput>IVRDPServer</computeroutput> has been + renamed to <xref linkend="IVRDEServer" + xreflabel="IVRDEServer" />.</para> + </listitem> + + <listitem> + <para><computeroutput>IRemoteDisplayInfo</computeroutput> has + been renamed to <xref linkend="IVRDEServerInfo" + xreflabel="IVRDEServerInfo" />.</para> + </listitem> + + <listitem> + <para><xref linkend="IMachine__VRDEServer" + xreflabel="IMachine::VRDEServer" /> replaces + <computeroutput>VRDPServer.</computeroutput></para> + </listitem> + + <listitem> + <para><xref linkend="IConsole__VRDEServerInfo" + xreflabel="IConsole::VRDEServerInfo" /> replaces + <computeroutput>RemoteDisplayInfo</computeroutput>.</para> + </listitem> + + <listitem> + <para><xref linkend="ISystemProperties__VRDEAuthLibrary" + xreflabel="ISystemProperties::VRDEAuthLibrary" /> replaces + <computeroutput>RemoteDisplayAuthLibrary</computeroutput>.</para> + </listitem> + + <listitem> + <para>The following methods have been implemented in + <computeroutput>IVRDEServer</computeroutput> to support + generic VRDE properties: <itemizedlist> + <listitem> + <para><xref linkend="IVRDEServer__setVRDEProperty" + xreflabel="IVRDEServer::setVRDEProperty" /></para> + </listitem> + + <listitem> + <para><xref linkend="IVRDEServer__getVRDEProperty" + xreflabel="IVRDEServer::getVRDEProperty" /></para> + </listitem> + + <listitem> + <para><xref linkend="IVRDEServer__VRDEProperties" + xreflabel="IVRDEServer::VRDEProperties" /></para> + </listitem> + </itemizedlist></para> + + <para>A few implementation-specific attributes of the old + <computeroutput>IVRDPServer</computeroutput> interface have + been removed and replaced with properties: <itemizedlist> + <listitem> + <para><computeroutput>IVRDPServer::Ports</computeroutput> + has been replaced with the + <computeroutput>"TCP/Ports"</computeroutput> property. + The property value is a string, which contains a + comma-separated list of ports or ranges of ports. Use a + dash between two port numbers to specify a range. + Example: + <computeroutput>"5000,5010-5012"</computeroutput></para> + </listitem> + + <listitem> + <para><computeroutput>IVRDPServer::NetAddress</computeroutput> + has been replaced with the + <computeroutput>"TCP/Address"</computeroutput> property. + The property value is an IP address string. Example: + <computeroutput>"127.0.0.1"</computeroutput></para> + </listitem> + + <listitem> + <para><computeroutput>IVRDPServer::VideoChannel</computeroutput> + has been replaced with the + <computeroutput>"VideoChannel/Enabled"</computeroutput> + property. The property value is either + <computeroutput>"true"</computeroutput> or + <computeroutput>"false"</computeroutput></para> + </listitem> + + <listitem> + <para><computeroutput>IVRDPServer::VideoChannelQuality</computeroutput> + has been replaced with the + <computeroutput>"VideoChannel/Quality"</computeroutput> + property. The property value is a string which contain a + decimal number in range 10..100. Invalid values are + ignored and the quality is set to the default value 75. + Example: <computeroutput>"50"</computeroutput></para> + </listitem> + </itemizedlist></para> + </listitem> + </itemizedlist></para> + </listitem> + + <listitem> + <para>The VirtualBox external authentication module interface has + been updated and made more generic. Because of that, + <computeroutput>VRDPAuthType</computeroutput> enumeration has been + renamed to <xref linkend="AuthType" xreflabel="AuthType" />.</para> + </listitem> + </itemizedlist> + </sect1> + + <sect1> + <title>Incompatible API changes with version 3.2</title> + + <itemizedlist> + <listitem> + <para>The following interfaces were renamed for consistency: + <itemizedlist> + <listitem> + <para>IMachine::getCpuProperty() is now <xref + linkend="IMachine__getCPUProperty" + xreflabel="IMachine::getCPUProperty()" />;</para> + </listitem> + + <listitem> + <para>IMachine::setCpuProperty() is now <xref + linkend="IMachine__setCPUProperty" + xreflabel="IMachine::setCPUProperty()" />;</para> + </listitem> + + <listitem> + <para>IMachine::getCpuIdLeaf() is now <xref + linkend="IMachine__getCPUIDLeaf" + xreflabel="IMachine::getCPUIDLeaf()" />;</para> + </listitem> + + <listitem> + <para>IMachine::setCpuIdLeaf() is now <xref + linkend="IMachine__setCPUIDLeaf" + xreflabel="IMachine::setCPUIDLeaf()" />;</para> + </listitem> + + <listitem> + <para>IMachine::removeCpuIdLeaf() is now <xref + linkend="IMachine__removeCPUIDLeaf" + xreflabel="IMachine::removeCPUIDLeaf()" />;</para> + </listitem> + + <listitem> + <para>IMachine::removeAllCpuIdLeafs() is now <xref + linkend="IMachine__removeAllCPUIDLeaves" + xreflabel="IMachine::removeAllCPUIDLeaves()" />;</para> + </listitem> + + <listitem> + <para>the CpuPropertyType enum is now <xref + linkend="CPUPropertyType" + xreflabel="CPUPropertyType" />.</para> + </listitem> + + <listitem> + <para>IVirtualBoxCallback::onSnapshotDiscarded() is now + IVirtualBoxCallback::onSnapshotDeleted.</para> + </listitem> + </itemizedlist></para> + </listitem> + + <listitem> + <para>When creating a VM configuration with <xref + linkend="IVirtualBox__createMachine" + xreflabel="IVirtualBox::createMachine" />) it is now possible to + ignore existing configuration files which would previously have + caused a failure. For this the + <computeroutput>override</computeroutput> parameter was + added.</para> + </listitem> + + <listitem> + <para>Deleting snapshots via <xref + linkend="IConsole__deleteSnapshot" + xreflabel="IConsole::deleteSnapshot()" /> is now possible while the + associated VM is running in almost all cases. The API is unchanged, + but client code that verifies machine states to determine whether + snapshots can be deleted may need to be adjusted.</para> + </listitem> + + <listitem> + <para>The IoBackendType enumeration was replaced with a boolean flag + (see <xref linkend="IStorageController__useHostIOCache" + xreflabel="IStorageController::useHostIOCache" />).</para> + </listitem> + + <listitem> + <para>To address multi-monitor support, the following APIs were + extended to require an additional + <computeroutput>screenId</computeroutput> parameter: <itemizedlist> + <listitem> + <para><xref linkend="IMachine__querySavedThumbnailSize" + xreflabel="IMachine::querySavedThumbnailSize()" /></para> + </listitem> + + <listitem> + <para><xref linkend="IMachine__readSavedThumbnailToArray" + xreflabel="IMachine::readSavedThumbnailToArray()" /></para> + </listitem> + + <listitem> + <para><xref linkend="IMachine__querySavedScreenshotPNGSize" + xreflabel="IMachine::querySavedScreenshotPNGSize()" /></para> + </listitem> + + <listitem> + <para><xref linkend="IMachine__readSavedScreenshotPNGToArray" + xreflabel="IMachine::readSavedScreenshotPNGToArray()" /></para> + </listitem> + </itemizedlist></para> + </listitem> + + <listitem> + <para>The <computeroutput>shape</computeroutput> parameter of + IConsoleCallback::onMousePointerShapeChange was changed from a + implementation-specific pointer to a safearray, enabling scripting + languages to process pointer shapes.</para> + </listitem> + </itemizedlist> + </sect1> + + <sect1> + <title>Incompatible API changes with version 3.1</title> + + <itemizedlist> + <listitem> + <para>Due to the new flexibility in medium attachments that was + introduced with version 3.1 (in particular, full flexibility with + attaching CD/DVD drives to arbitrary controllers), we seized the + opportunity to rework all interfaces dealing with storage media to + make the API more flexible as well as logical. The <xref + linkend="IStorageController" xreflabel="IStorageController" />, + <xref linkend="IMedium" xreflabel="IMedium" />, <xref + linkend="IMediumAttachment" xreflabel="IMediumAttachment" /> and, + <xref linkend="IMachine" xreflabel="IMachine" /> interfaces were + affected the most. Existing code using them to configure storage and + media needs to be carefully checked.</para> + + <para>All media (hard disks, floppies and CDs/DVDs) are now + uniformly handled through the <xref linkend="IMedium" + xreflabel="IMedium" /> interface. The device-specific interfaces + (<code>IHardDisk</code>, <code>IDVDImage</code>, + <code>IHostDVDDrive</code>, <code>IFloppyImage</code> and + <code>IHostFloppyDrive</code>) have been merged into IMedium; CD/DVD + and floppy media no longer need special treatment. The device type + of a medium determines in which context it can be used. Some + functionality was moved to the other storage-related + interfaces.</para> + + <para><code>IMachine::attachHardDisk</code> and similar methods have + been renamed and generalized to deal with any type of drive and + medium. <xref linkend="IMachine__attachDevice" + xreflabel="IMachine::attachDevice()" /> is the API method for adding + any drive to a storage controller. The floppy and DVD/CD drives are + no longer handled specially, and that means you can have more than + one of them. As before, drives can only be changed while the VM is + powered off. Mounting (or unmounting) removable media at runtime is + possible with <xref linkend="IMachine__mountMedium" + xreflabel="IMachine::mountMedium()" />.</para> + + <para>Newly created virtual machines have no storage controllers + associated with them. Even the IDE Controller needs to be created + explicitly. The floppy controller is now visible as a separate + controller, with a new storage bus type. For each storage bus type + you can query the device types which can be attached, so that it is + not necessary to hardcode any attachment rules.</para> + + <para>This required matching changes e.g. in the callback interfaces + (the medium specific change notification was replaced by a generic + medium change notification) and removing associated enums (e.g. + <code>DriveState</code>). In many places the incorrect use of the + plural form "media" was replaced by "medium", to improve + consistency.</para> + </listitem> + + <listitem> + <para>Reading the <xref linkend="IMedium__state" + xreflabel="IMedium::state" xrefstyle="" /> attribute no longer + automatically performs an accessibility check; a new method <xref + linkend="IMedium__refreshState" + xreflabel="IMedium::refreshState()" /> does this. The attribute only + returns the state any more.</para> + </listitem> + + <listitem> + <para>There were substantial changes related to snapshots, triggered + by the "branched snapshots" functionality introduced with version + 3.1. IConsole::discardSnapshot was renamed to <xref + linkend="IConsole__deleteSnapshot" + xreflabel="IConsole::deleteSnapshot()" />. + IConsole::discardCurrentState and + IConsole::discardCurrentSnapshotAndState were removed; corresponding + new functionality is in <xref linkend="IConsole__restoreSnapshot" + xreflabel="IConsole::restoreSnapshot()" />. Also, when <xref + linkend="IConsole__takeSnapshot" + xreflabel="IConsole::takeSnapshot()" /> is called on a running + virtual machine, a live snapshot will be created. The old behavior + was to temporarily pause the virtual machine while creating an + online snapshot.</para> + </listitem> + + <listitem> + <para>The <computeroutput>IVRDPServer</computeroutput>, + <computeroutput>IRemoteDisplayInfo"</computeroutput> and + <computeroutput>IConsoleCallback</computeroutput> interfaces were + changed to reflect VRDP server ability to bind to one of available + ports from a list of ports.</para> + + <para>The <computeroutput>IVRDPServer::port</computeroutput> + attribute has been replaced with + <computeroutput>IVRDPServer::ports</computeroutput>, which is a + comma-separated list of ports or ranges of ports.</para> + + <para>An <computeroutput>IRemoteDisplayInfo::port"</computeroutput> + attribute has been added for querying the actual port VRDP server + listens on.</para> + + <para>An IConsoleCallback::onRemoteDisplayInfoChange() notification + callback has been added.</para> + </listitem> + + <listitem> + <para>The parameter lists for the following functions were + modified:<itemizedlist> + <listitem> + <para><xref linkend="IHost__removeHostOnlyNetworkInterface" + xreflabel="IHost::removeHostOnlyNetworkInterface()" /></para> + </listitem> + + <listitem> + <para><xref linkend="IHost__removeUSBDeviceFilter" + xreflabel="IHost::removeUSBDeviceFilter()" /></para> + </listitem> + </itemizedlist></para> + </listitem> + + <listitem> + <para>In the OOWS bindings for JAX-WS, the behavior of structures + changed: for one, we implemented natural structures field access so + you can just call a "get" method to obtain a field. Secondly, + setters in structures were disabled as they have no expected effect + and were at best misleading.</para> + </listitem> + </itemizedlist> + </sect1> + + <sect1> + <title>Incompatible API changes with version 3.0</title> + + <itemizedlist> + <listitem> + <para>In the object-oriented web service bindings for JAX-WS, proper + inheritance has been introduced for some classes, so explicit + casting is no longer needed to call methods from a parent class. In + particular, IHardDisk and other classes now properly derive from + <xref linkend="IMedium" xreflabel="IMedium" />.</para> + </listitem> + + <listitem> + <para>All object identifiers (machines, snapshots, disks, etc) + switched from GUIDs to strings (now still having string + representation of GUIDs inside). As a result, no particular internal + structure can be assumed for object identifiers; instead, they + should be treated as opaque unique handles. This change mostly + affects Java and C++ programs; for other languages, GUIDs are + transparently converted to strings.</para> + </listitem> + + <listitem> + <para>The uses of NULL strings have been changed greatly. All out + parameters now use empty strings to signal a null value. For in + parameters both the old NULL and empty string is allowed. This + change was necessary to support more client bindings, especially + using the web service API. Many of them either have no special NULL + value or have trouble dealing with it correctly in the respective + library code.</para> + </listitem> + + <listitem> + <para>Accidentally, the <code>TSBool</code> interface still appeared + in 3.0.0, and was removed in 3.0.2. This is an SDK bug, do not use + the SDK for VirtualBox 3.0.0 for developing clients.</para> + </listitem> + + <listitem> + <para>The type of <xref linkend="IVirtualBoxErrorInfo__resultCode" + xreflabel="IVirtualBoxErrorInfo::resultCode" /> changed from + <computeroutput>result</computeroutput> to + <computeroutput>long</computeroutput>.</para> + </listitem> + + <listitem> + <para>The parameter list of IVirtualBox::openHardDisk was + changed.</para> + </listitem> + + <listitem> + <para>The method IConsole::discardSavedState was renamed to + IConsole::forgetSavedState, and a parameter was added.</para> + </listitem> + + <listitem> + <para>The method IConsole::powerDownAsync was renamed to <xref + linkend="IConsole__powerDown" xreflabel="IConsole::powerDown" />, + and the previous method with that name was deleted. So effectively a + parameter was added.</para> + </listitem> + + <listitem> + <para>In the <xref linkend="IFramebuffer" + xreflabel="IFramebuffer" /> interface, the following were + removed:<itemizedlist> + <listitem> + <para>the <computeroutput>operationSupported</computeroutput> + attribute;</para> + + <para>(as a result, the + <computeroutput>FramebufferAccelerationOperation</computeroutput> + enum was no longer needed and removed as well);</para> + </listitem> + + <listitem> + <para>the <computeroutput>solidFill()</computeroutput> + method;</para> + </listitem> + + <listitem> + <para>the <computeroutput>copyScreenBits()</computeroutput> + method.</para> + </listitem> + </itemizedlist></para> + </listitem> + + <listitem> + <para>In the <xref linkend="IDisplay" xreflabel="IDisplay" /> + interface, the following were removed:<itemizedlist> + <listitem> + <para>the + <computeroutput>setupInternalFramebuffer()</computeroutput> + method;</para> + </listitem> + + <listitem> + <para>the <computeroutput>lockFramebuffer()</computeroutput> + method;</para> + </listitem> + + <listitem> + <para>the <computeroutput>unlockFramebuffer()</computeroutput> + method;</para> + </listitem> + + <listitem> + <para>the + <computeroutput>registerExternalFramebuffer()</computeroutput> + method.</para> + </listitem> + </itemizedlist></para> + </listitem> + </itemizedlist> + </sect1> + + <sect1> + <title>Incompatible API changes with version 2.2</title> + + <itemizedlist> + <listitem> + <para>Added explicit version number into JAX-WS Java package names, + such as <computeroutput>org.virtualbox_2_2</computeroutput>, + allowing connect to multiple VirtualBox clients from single Java + application.</para> + </listitem> + + <listitem> + <para>The interfaces having a "2" suffix attached to them with + version 2.1 were renamed again to have that suffix removed. This + time around, this change involves only the name, there are no + functional differences.</para> + + <para>As a result, IDVDImage2 is now IDVDImage; IHardDisk2 is now + IHardDisk; IHardDisk2Attachment is now IHardDiskAttachment.</para> + + <para>Consequentially, all related methods and attributes that had a + "2" suffix have been renamed; for example, IMachine::attachHardDisk2 + now becomes IMachine::attachHardDisk().</para> + </listitem> + + <listitem> + <para>IVirtualBox::openHardDisk has an extra parameter for opening a + disk read/write or read-only.</para> + </listitem> + + <listitem> + <para>The remaining collections were replaced by more performant + safe-arrays. This affects the following collections:</para> + + <itemizedlist> + <listitem> + <para>IGuestOSTypeCollection</para> + </listitem> + + <listitem> + <para>IHostDVDDriveCollection</para> + </listitem> + + <listitem> + <para>IHostFloppyDriveCollection</para> + </listitem> + + <listitem> + <para>IHostUSBDeviceCollection</para> + </listitem> + + <listitem> + <para>IHostUSBDeviceFilterCollection</para> + </listitem> + + <listitem> + <para>IProgressCollection</para> + </listitem> + + <listitem> + <para>ISharedFolderCollection</para> + </listitem> + + <listitem> + <para>ISnapshotCollection</para> + </listitem> + + <listitem> + <para>IUSBDeviceCollection</para> + </listitem> + + <listitem> + <para>IUSBDeviceFilterCollection</para> + </listitem> + </itemizedlist> + </listitem> + + <listitem> + <para>Since "Host Interface Networking" was renamed to "bridged + networking" and host-only networking was introduced, all associated + interfaces needed renaming as well. In detail:</para> + + <itemizedlist> + <listitem> + <para>The HostNetworkInterfaceType enum has been renamed to + <xref linkend="HostNetworkInterfaceMediumType" + xreflabel="HostNetworkInterfaceMediumType" /></para> + </listitem> + + <listitem> + <para>The IHostNetworkInterface::type attribute has been renamed + to <xref linkend="IHostNetworkInterface__mediumType" + xreflabel="IHostNetworkInterface::mediumType" /></para> + </listitem> + + <listitem> + <para>INetworkAdapter::attachToHostInterface() has been renamed + to INetworkAdapter::attachToBridgedInterface</para> + </listitem> + + <listitem> + <para>In the IHost interface, createHostNetworkInterface() has + been renamed to <xref + linkend="IHost__createHostOnlyNetworkInterface" + xreflabel="createHostOnlyNetworkInterface()" /></para> + </listitem> + + <listitem> + <para>Similarly, removeHostNetworkInterface() has been renamed + to <xref linkend="IHost__removeHostOnlyNetworkInterface" + xreflabel="removeHostOnlyNetworkInterface()" /></para> + </listitem> + </itemizedlist> + </listitem> + </itemizedlist> + </sect1> + + <sect1> + <title>Incompatible API changes with version 2.1</title> + + <itemizedlist> + <listitem> + <para>With VirtualBox 2.1, error codes were added to many error + infos that give the caller a machine-readable (numeric) feedback in + addition to the error string that has always been available. This is + an ongoing process, and future versions of this SDK reference will + document the error codes for each method call.</para> + </listitem> + + <listitem> + <para>The hard disk and other media interfaces were completely + redesigned. This was necessary to account for the support of VMDK, + VHD and other image types; since backwards compatibility had to be + broken anyway, we seized the moment to redesign the interfaces in a + more logical way.</para> + + <itemizedlist> + <listitem> + <para>Previously, the old IHardDisk interface had several + derivatives called IVirtualDiskImage, IVMDKImage, IVHDImage, + IISCSIHardDisk and ICustomHardDisk for the various disk formats + supported by VirtualBox. The new IHardDisk2 interface that comes + with version 2.1 now supports all hard disk image formats + itself.</para> + </listitem> + + <listitem> + <para>IHardDiskFormat is a new interface to describe the + available back-ends for hard disk images (e.g. VDI, VMDK, VHD or + iSCSI). The IHardDisk2::format attribute can be used to find out + the back-end that is in use for a particular hard disk image. + ISystemProperties::hardDiskFormats[] contains a list of all + back-ends supported by the system. <xref + linkend="ISystemProperties__defaultHardDiskFormat" + xreflabel="ISystemProperties::defaultHardDiskFormat" /> contains + the default system format.</para> + </listitem> + + <listitem> + <para>In addition, the new <xref linkend="IMedium" + xreflabel="IMedium" /> interface is a generic interface for hard + disk, DVD and floppy images that contains the attributes and + methods shared between them. It can be considered a parent class + of the more specific interfaces for those images, which are now + IHardDisk2, IDVDImage2 and IFloppyImage2.</para> + + <para>In each case, the "2" versions of these interfaces replace + the earlier versions that did not have the "2" suffix. + Previously, the IDVDImage and IFloppyImage interfaces were + entirely unrelated to IHardDisk.</para> + </listitem> + + <listitem> + <para>As a result, all parts of the API that previously + referenced IHardDisk, IDVDImage or IFloppyImage or any of the + old subclasses are gone and will have replacements that use + IHardDisk2, IDVDImage2 and IFloppyImage2; see, for example, + IMachine::attachHardDisk2.</para> + </listitem> + + <listitem> + <para>In particular, the IVirtualBox::hardDisks2 array replaces + the earlier IVirtualBox::hardDisks collection.</para> + </listitem> + </itemizedlist> + </listitem> + + <listitem> + <para><xref linkend="IGuestOSType" xreflabel="IGuestOSType" /> was + extended to group operating systems into families and for 64-bit + support.</para> + </listitem> + + <listitem> + <para>The <xref linkend="IHostNetworkInterface" + xreflabel="IHostNetworkInterface" /> interface was completely + rewritten to account for the changes in how Host Interface + Networking is now implemented in VirtualBox 2.1.</para> + </listitem> + + <listitem> + <para>The IVirtualBox::machines2[] array replaces the former + IVirtualBox::machines collection.</para> + </listitem> + + <listitem> + <para>Added <xref linkend="IHost__getProcessorFeature" + xreflabel="IHost::getProcessorFeature()" /> and <xref + linkend="ProcessorFeature" xreflabel="ProcessorFeature" /> + enumeration.</para> + </listitem> + + <listitem> + <para>The parameter list for <xref + linkend="IVirtualBox__createMachine" + xreflabel="IVirtualBox::createMachine()" /> was modified.</para> + </listitem> + + <listitem> + <para>Added IMachine::pushGuestProperty.</para> + </listitem> + + <listitem> + <para>New attributes in IMachine: <xref + linkend="IMachine__accelerate3DEnabled" + xreflabel="accelerate3DEnabled" />, HWVirtExVPIDEnabled, <xref + linkend="IMachine__guestPropertyNotificationPatterns" + xreflabel="guestPropertyNotificationPatterns" />, <xref + linkend="IMachine__CPUCount" xreflabel="CPUCount" />.</para> + </listitem> + + <listitem> + <para>Added <xref linkend="IConsole__powerUpPaused" + xreflabel="IConsole::powerUpPaused()" /> and <xref + linkend="IConsole__getGuestEnteredACPIMode" + xreflabel="IConsole::getGuestEnteredACPIMode()" />.</para> + </listitem> + + <listitem> + <para>Removed ResourceUsage enumeration.</para> + </listitem> + </itemizedlist> + </sect1> + </chapter> +</book> +<!-- vim: set shiftwidth=2 tabstop=2 expandtab: --> diff --git a/doc/manual/fr_FR/UserManual.xml b/doc/manual/fr_FR/UserManual.xml new file mode 100644 index 00000000..3b10a0dc --- /dev/null +++ b/doc/manual/fr_FR/UserManual.xml @@ -0,0 +1,83 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" + "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd"> +<book> + <bookinfo> + <title>@VBOX_PRODUCT@<superscript>®</superscript></title> + + <subtitle>Manuel de l'utilisateur</subtitle> + + <edition>Version + @VBOX_VERSION_STRING@</edition> + + <corpauthor>@VBOX_VENDOR@</corpauthor> + + <othercredit class="translator"> + <contrib>Traducteur</contrib> + <firstname>Jean-Philippe</firstname> + <surname>Mengual</surname> + </othercredit> + + <address>http://www.virtualbox.org</address> + + <copyright> + <year>2004-@VBOX_C_YEAR@</year> + + <holder>@VBOX_VENDOR@</holder> + </copyright> + </bookinfo> + + <xi:include href="user_Introduction.xml" xpointer="element(/1)" + xmlns:xi="http://www.w3.org/2001/XInclude" /> + + <xi:include href="user_Installation.xml" xpointer="element(/1)" + xmlns:xi="http://www.w3.org/2001/XInclude" /> + + <xi:include href="user_BasicConcepts.xml" xpointer="element(/1)" + xmlns:xi="http://www.w3.org/2001/XInclude" /> + + <xi:include href="user_GuestAdditions.xml" xpointer="element(/1)" + xmlns:xi="http://www.w3.org/2001/XInclude" /> + + <xi:include href="user_Storage.xml" xpointer="element(/1)" + xmlns:xi="http://www.w3.org/2001/XInclude" /> + + <xi:include href="user_Networking.xml" xpointer="element(/1)" + xmlns:xi="http://www.w3.org/2001/XInclude" /> + + <xi:include href="user_Frontends.xml" xpointer="element(/1)" + xmlns:xi="http://www.w3.org/2001/XInclude" /> + + <xi:include href="user_VBoxManage.xml" xpointer="element(/1)" + xmlns:xi="http://www.w3.org/2001/XInclude" /> + + <xi:include href="user_AdvancedTopics.xml" xpointer="element(/1)" + xmlns:xi="http://www.w3.org/2001/XInclude" /> + + <xi:include href="user_Technical.xml" xpointer="element(/1)" + xmlns:xi="http://www.w3.org/2001/XInclude" /> + + <xi:include href="user_VirtualBoxAPI.xml" xpointer="element(/1)" + xmlns:xi="http://www.w3.org/2001/XInclude" /> + + <xi:include href="user_Troubleshooting.xml" xpointer="element(/1)" + xmlns:xi="http://www.w3.org/2001/XInclude" /> + + <xi:include href="user_Security.xml" xpointer="element(/1)" + xmlns:xi="http://www.w3.org/2001/XInclude" /> + + <xi:include href="user_KnownIssues.xml" xpointer="element(/1)" + xmlns:xi="http://www.w3.org/2001/XInclude" /> + + <xi:include href="user_ChangeLog.xml" xpointer="element(/1)" + xmlns:xi="http://www.w3.org/2001/XInclude" /> + + <xi:include href="user_ThirdParty.xml" xpointer="element(/1)" + xmlns:xi="http://www.w3.org/2001/XInclude" /> + + <xi:include href="user_PrivacyPolicy.xml" xpointer="element(/1)" + xmlns:xi="http://www.w3.org/2001/XInclude" /> + + <xi:include href="user_Glossary.xml" xpointer="element(/1)" + xmlns:xi="http://www.w3.org/2001/XInclude" /> +</book> diff --git a/doc/manual/fr_FR/images/clone-vm.png b/doc/manual/fr_FR/images/clone-vm.png Binary files differnew file mode 100644 index 00000000..5b0b8274 --- /dev/null +++ b/doc/manual/fr_FR/images/clone-vm.png diff --git a/doc/manual/fr_FR/images/create-vdi-1.png b/doc/manual/fr_FR/images/create-vdi-1.png Binary files differnew file mode 100644 index 00000000..75f77000 --- /dev/null +++ b/doc/manual/fr_FR/images/create-vdi-1.png diff --git a/doc/manual/fr_FR/images/create-vm-1.png b/doc/manual/fr_FR/images/create-vm-1.png Binary files differnew file mode 100644 index 00000000..42c98288 --- /dev/null +++ b/doc/manual/fr_FR/images/create-vm-1.png diff --git a/doc/manual/fr_FR/images/create-vm-2.png b/doc/manual/fr_FR/images/create-vm-2.png Binary files differnew file mode 100644 index 00000000..948ba90d --- /dev/null +++ b/doc/manual/fr_FR/images/create-vm-2.png diff --git a/doc/manual/fr_FR/images/dnd-modes.png b/doc/manual/fr_FR/images/dnd-modes.png Binary files differnew file mode 100644 index 00000000..ad5f62e3 --- /dev/null +++ b/doc/manual/fr_FR/images/dnd-modes.png diff --git a/doc/manual/fr_FR/images/ovf-import.png b/doc/manual/fr_FR/images/ovf-import.png Binary files differnew file mode 100644 index 00000000..f6671e67 --- /dev/null +++ b/doc/manual/fr_FR/images/ovf-import.png diff --git a/doc/manual/fr_FR/images/seamless.png b/doc/manual/fr_FR/images/seamless.png Binary files differnew file mode 100644 index 00000000..502aebd2 --- /dev/null +++ b/doc/manual/fr_FR/images/seamless.png diff --git a/doc/manual/fr_FR/images/snapshots-1.png b/doc/manual/fr_FR/images/snapshots-1.png Binary files differnew file mode 100644 index 00000000..fd8198d7 --- /dev/null +++ b/doc/manual/fr_FR/images/snapshots-1.png diff --git a/doc/manual/fr_FR/images/vbox-components.png b/doc/manual/fr_FR/images/vbox-components.png Binary files differnew file mode 100644 index 00000000..45ad6e50 --- /dev/null +++ b/doc/manual/fr_FR/images/vbox-components.png diff --git a/doc/manual/fr_FR/images/vbox-sdl.png b/doc/manual/fr_FR/images/vbox-sdl.png Binary files differnew file mode 100644 index 00000000..2c5b9fb3 --- /dev/null +++ b/doc/manual/fr_FR/images/vbox-sdl.png diff --git a/doc/manual/fr_FR/images/vboxlogo.png b/doc/manual/fr_FR/images/vboxlogo.png Binary files differnew file mode 100644 index 00000000..1fcdd79c --- /dev/null +++ b/doc/manual/fr_FR/images/vboxlogo.png diff --git a/doc/manual/fr_FR/images/virtual-disk-manager.png b/doc/manual/fr_FR/images/virtual-disk-manager.png Binary files differnew file mode 100644 index 00000000..8557bacb --- /dev/null +++ b/doc/manual/fr_FR/images/virtual-disk-manager.png diff --git a/doc/manual/fr_FR/images/virtual-disk-manager2.png b/doc/manual/fr_FR/images/virtual-disk-manager2.png Binary files differnew file mode 100644 index 00000000..ed34f60c --- /dev/null +++ b/doc/manual/fr_FR/images/virtual-disk-manager2.png diff --git a/doc/manual/fr_FR/images/virtualbox-main-empty.png b/doc/manual/fr_FR/images/virtualbox-main-empty.png Binary files differnew file mode 100644 index 00000000..d4ce6515 --- /dev/null +++ b/doc/manual/fr_FR/images/virtualbox-main-empty.png diff --git a/doc/manual/fr_FR/images/virtualbox-main.png b/doc/manual/fr_FR/images/virtualbox-main.png Binary files differnew file mode 100644 index 00000000..de0dacba --- /dev/null +++ b/doc/manual/fr_FR/images/virtualbox-main.png diff --git a/doc/manual/fr_FR/images/vm-close.png b/doc/manual/fr_FR/images/vm-close.png Binary files differnew file mode 100644 index 00000000..166f7033 --- /dev/null +++ b/doc/manual/fr_FR/images/vm-close.png diff --git a/doc/manual/fr_FR/images/vm-groups.png b/doc/manual/fr_FR/images/vm-groups.png Binary files differnew file mode 100644 index 00000000..53983429 --- /dev/null +++ b/doc/manual/fr_FR/images/vm-groups.png diff --git a/doc/manual/fr_FR/images/vm-hostkey.png b/doc/manual/fr_FR/images/vm-hostkey.png Binary files differnew file mode 100644 index 00000000..44e78753 --- /dev/null +++ b/doc/manual/fr_FR/images/vm-hostkey.png diff --git a/doc/manual/fr_FR/images/vm-settings-harddisk.png b/doc/manual/fr_FR/images/vm-settings-harddisk.png Binary files differnew file mode 100644 index 00000000..0b4290f0 --- /dev/null +++ b/doc/manual/fr_FR/images/vm-settings-harddisk.png diff --git a/doc/manual/fr_FR/images/vm-vista-running.png b/doc/manual/fr_FR/images/vm-vista-running.png Binary files differnew file mode 100644 index 00000000..bf31290e --- /dev/null +++ b/doc/manual/fr_FR/images/vm-vista-running.png diff --git a/doc/manual/fr_FR/user_AdvancedTopics.xml b/doc/manual/fr_FR/user_AdvancedTopics.xml new file mode 100644 index 00000000..a4293c3f --- /dev/null +++ b/doc/manual/fr_FR/user_AdvancedTopics.xml @@ -0,0 +1,3296 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" +"http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd"> +<chapter id="AdvancedTopics"> + <title>Sujets avancés</title> + + <sect1 id="vboxsdl"> + <title>VBoxSDL, l'afficheur simplifié de VM</title> + + <sect2> + <title>Introduction</title> + + <para>VBoxSDL est une interface graphique (GUI) simple qui élimine le + support du clicodrome fourni par VirtualBox, notre principale GUI. + VBoxSDL est utilisé actuellement d'abord pour déboguer VirtualBox, donc + il n'est pas officiellement supporté. Vous pouvez quand même le trouver + utile pour des environnements où les machines virtuelles ne sont pas + nécessairement contrôlées par la personne qui utilise la machine virtuelle.<note> + <para>VBoxSDL n'est pas disponible sur la plateforme hôte Mac OS X.</para> + </note></para> + + <para>Comme pous pouvez le voir sur l'impression d'écran suivante, VBoxSDL + ne fournit vraiment qu'une fenêtre simple ne contenant que la machine + virtuelle "pure", sans menus ni contrôleurs sur lesquels cliquer et sans + indicateurs supplémentaires sur l'activité de la VM :</para> + + <para><mediaobject> + <imageobject> + <imagedata align="center" fileref="images/vbox-sdl.png" + width="10cm" /> + </imageobject> + </mediaobject></para> + + <para>Pour démarrer une machine virtuelle avec VBoxSDL au lieu de l'interface + graphique de VirtualBox, tapez ce qui suit sur une ligne de + commandes :<screen>VBoxSDL --startvm <vm></screen></para> + + <para>où <computeroutput><vm></computeroutput> est, comme d'habitude + dans les paramètres en ligne de commande de VirtualBox, le nom ou l'UUID + d'une machine virtuelle existante.</para> + </sect2> + + <sect2> + <title>Étiquetage sécurisé avec VBoxSDL</title> + + <para>Quand vous lancez des systèmes d'exploitation invités en mode plein + écran, le système d'exploitation invité a en général le contrôle de tout + l'écran. Cela pourrait représenter un risque de sécurité car le système + d'exploitation invité pourrait, pour l'utilisateur, lui faire croire qu'il + est vraiment dans un autre système (qui pourrait avoir un haut niveau de sécurité), + ou lui faire assimiler des messages à l'écran comme provenant du système + d'exploitation hôte.</para> + + <para>Afin de protéger l'utilisateur contre les risques de sécurité précités, + on a développpé la fonction d'étiquetage de sécurité. L'étiquetage de sécurité + n'est actuellement disponible que pour VBoxSDL. S'il est activé, + une partie de la zone d'affichage est réservée à une étiquette où est affiché + un message défini par l'utilisateur. La hauteur de l'étiquette est définie à + 20 pixels dans VBoxSDL. La couleur de la police et de l'arrière-plan de + l'étiquette peuvent éventuellement être définies en valeurs de couleurs + RGB hexadécimales. On utilise la syntaxe suivante pour activer l'étiquettage + de sécurité :</para> + + <screen>VBoxSDL --startvm "nom VM" + --securelabel --seclabelfnt ~/fonts/arial.ttf + --seclabelsiz 14 --seclabelfgcol 00FF00 --seclabelbgcol 00FFFF</screen> + + <para>Outre l'activation de l'étiquette de sécurité, il faut fournir une + police TrueType Pour utiliser uoe autre taille de police que 12 points, + utilisez le paramètre <computeroutput>--seclabelsiz</computeroutput>.</para> + + <para>Vous pouvez définir le texte de l'étiquette avec <screen>VBoxManage setextradata "nom VM" "VBoxSDL/SecureLabel" "L étiquette"</screen> + Une modification de cette étiquette prendra effet immédiatement.</para> + + <para>En général, les résolutions du plein écran sont limitées à + certaines géométries "standards" telles que 1024 x 768. Une augmentation + de vingt lignes n'est en général pas faisable, donc dans la plupart des + cas, VBoxSDL choisira la résolution suivante la plus élevée comme 1280 x 1024 + et l'écran de l'invité ne couvrira pas toute la zone d'affichage. Si VBoxSDL + ne peut pas choisir de résolution plus élevée, l'étiquette de sécurité sera + dessinée en haut de la zone de l'écran de l'invité. Pour surmonter le + problème selon lequel le bas de l'écran de l'invité est caché, VBoxSDL + peut fournir des modes graphiques personnalisés à l'invité, réduits par + la hauteur de l'étiquette. Pour les invités Windows et les + Solaris et Linux récents, les suppléments invité de VirtualBox fournissent + automatiquement les modes graphiques réduits. De plus, le BIOS VESA a été + ajusté pour dupliquer sa table en mode standard avec des résolutions + ajustées. Les IDs du mode ajusté se calculent en utilisant la formule + suivante :</para> + + <screen>reduced_modeid = modeid + 0x30</screen> + + <para>Par exemple, pour démarrer Linux avec 1024 x 748 x 16, le mode + standard 0x117 (1024 x 768 x 16) est utilisé de base. Le paramètre du + noyau Linux du mode graphique se calcule alors en faisant :</para> + + <screen>vga = 0x200 | 0x117 + 0x30 +vga = 839</screen> + + <para>On duplique les modes standards au lieu de ne fournir que les modes + ajustés car la plupart des systèmes d'exploitation invités ont besoin des + modes VESA standards figés et ils refusent de démarrer avec d'autres modes.</para> + + <para>Quand vous utilisez le pilote VESA de X.org, il faut calculer les + modes personnalisés et les ajouter à la main à la configuration (en général, + dans <literal>/etc/X11/xorg.conf</literal>. Vous pouvez trouver un outil à + la main pour déterminer les entrées des modes sur <literal><ulink + url="http://www.tkk.fi/Misc/Electronics/faq/vga2rgb/calc.html">http://www.tkk.fi/Misc/Electronics/faq/vga2rgb/calc.html</ulink></literal>.)</para> + </sect2> + + <sect2> + <title>Libérer les modificateurs avec VBoxSDL sur Linux</title> + + <para>Quand vous basculez d'un terminal virtuel (VT) X à un autre en utilisant + Ctrl-Alt-Fx pendant que la fenêtre VBoxSDL contient le focus d'entrée, + l'invité recevra les événements d'appui sur Ctrl et Alt sans recevoir les événements + de relâchement correspondant de la touche. C'est une limite liée à + l'architecture de Linux. Pour réinitialiser les touches modificatrices, + il est possible d'envoyer + <computeroutput>SIGUSR1</computeroutput> au fil principal de VBoxSDL (première + entrée de la liste <computeroutput>ps</computeroutput>). Par exemple, quand + vous basculez vers un autre VT et quand vous enregistrez la machine virtuelle + à partir de ce terminal, la séquence suivante peut être utilisée pour + s'assurer que la VM n'est pas sauvegardée avec des modificateurs bloqué :</para> + + <para><screen>kill -usr1 <pid> +VBoxManage controlvm "Windows 2000" savestate</screen></para> + </sect2> + </sect1> + + <sect1 id="autologon"> + <title>Identifications automatiques dans l'invité</title> + + <para>VirtualBox fournit des modules invité supplémentaires pour Windows, Linux + et Solaris pour activer l'identification automatique dans l'invité.</para> + + <para>Quand on lance un système d'exploitation dans une machine virtuelle, + il pourrait être souhaitable d'effectuer des identifications automatiques et + coordonnées en utilisant des autorisations issues d'un système d'identification + maître. (Avec les "autorisations", on se réfère aux informations d'identification + qui consistent en nom d'utilisateur, mot de passe et nom de domaine, + où chaque valeur pourrait être vide.)</para> + + <sect2 id="autologon_win"> + <title>Identification automatique dans un invité Windows</title> + + <para>Depuis Windows NT, Windows fourni un sous-système d'identification + modulaire ("Winlogon") qu'on peut utiliser et étendre par ce qu'on appelle + des modules GINA (Graphical Identification and Authentication). + Avec Windows Vista et Windows 7, les modules GINA ont été remplacés par un + nouveau mécanisme appelé "fournisseurs d'autorisations". Les suppléments + invité de VirtualBox pour Windows sont fournis à la fois avec un module + GINA et un fournisseur d'autorisations, ils permettent donc à n'importe quel + invité Windows d'effectuer des identifications automatiques.</para> + + <para>Pour activer le module GINA ou fournisseur d'autorisations des + suppléments invité de VirtualBox, installez les suppléments invité en + utilisant le paramètre <computeroutput>/with_autologon</computeroutput> en + ligne de commande. Toutes les étapes manuelles suivantes exigés pour installer + ces modules se feront via l'installeur.</para> + + <para>Pour installer à la main le module GINA de VirtualBox, extrayez les + suppléments invité (voir <xref linkend="windows-guest-file-extraction" />) + et copiez le fichier <computeroutput>VBoxGINA.dll</computeroutput> dans le + répertoire Windows <computeroutput>SYSTEM32</computeroutput>. Puis, dans + le registre, créez la clé suivante : <screen>HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\GinaDLL</screen> + avec la valeur <computeroutput>VBoxGINA.dll</computeroutput>.</para> + + <note> + <para>Le module GINA de VirtualBox est implémenté sur le module GINA + standard de Windows (<computeroutput>MSGINA.DLL</computeroutput>). En + conséquence, il ne fonctionnera vraisemblablement pas avec des modules + GINA tiers.</para> + </note> + + <para>Pour installer à la main le module fournisseur d'autorisation de + VirtualBox, extrayez les suppléments invité (voir <xref + linkend="windows-guest-file-extraction" />) et copiez le fichier + <computeroutput>VBoxCredProv.dll</computeroutput> dans le répertoire Windows + <computeroutput>SYSTEM32</computeroutput>. Puis, dans le registre, créez + les clés suivantes :<screen>HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\ + Authentication\Credential Providers\{275D3BCC-22BB-4948-A7F6-3A3054EBA92B} + +HKEY_CLASSES_ROOT\CLSID\{275D3BCC-22BB-4948-A7F6-3A3054EBA92B} + +HKEY_CLASSES_ROOT\CLSID\{275D3BCC-22BB-4948-A7F6-3A3054EBA92B}\InprocServer32</screen></para> + + <para>avec pour valeurs celles par défault (la clé nommée + <computeroutput>(Default)</computeroutput> dans chaque clé) définies sur + <computeroutput>VBoxCredProv</computeroutput>. Après quoi, il faut créer + une nouvelle chaîne nommée <screen>HKEY_CLASSES_ROOT\CLSID\{275D3BCC-22BB-4948-A7F6-3A3054EBA92B}\InprocServer32\ThreadingModel</screen> + avec une valeur de <computeroutput>Apartment</computeroutput>.</para> + + <para>Pour définir les autorisations, utilisez la commande suivante sur + une VM <emphasis>en fonction</emphasis> :</para> + + <screen>VBoxManage controlvm "Windows XP" setcredentials "John Doe" "secretpassword" "DOMTEST"</screen> + + <para>Pendant que la VM est en fonction, vous pouvez interroger les autorisations + accordées par les modules d'identification de VirtualBox (GINA ou + fournisseur d'autorisation) en utilisant le pérphérique des suppléments + invité de VirtualBox. Quand Windows est en mode "déconnecté", les modules + d'identification interrogeront constament les autorisations et si elles + existent, il tentera une identification. Après avoir récupéré les autorisations, + les modules d'identification les écraseront pour que la commande ci-dessus + doive se répéter pour les identifications consécutives.</para> + + <para>Pour des raisons de sécurité, les autorisations ne sont pas stockées + de façon permanente et vous les perdrez quand vous redémarrerez la VM. + En outre, les autorisations sont en "écriture seule", c'est-à-dire qu'il n'y + a aucun moyen de récupérer les autorisations côté hôte. Vous pouvez + réinitialiser les autorisations côté hôte en définissant des valeurs vides.</para> + + <para>Selon la variante particulière de votre invité Windows, les restrictions + suivantes s'appliquent : <orderedlist> + <listitem> + <para>Pour les <emphasis role="bold">invités Windows XP,</emphasis> + le sous-système d'identification doit être configuré pour utiliser + la boîte de dialogue classique d'identification car le module GINA + de VirtualBox ne supporte pas la boîte de dialogue de bienvenue à + la XP.</para> + </listitem> + + <listitem> + <para>Pour les <emphasis role="bold">invités Windows Vista, Windows 7 + et Windows 8,</emphasis> + le sous-système d'identification ne supporte pas ce qu'on appelle la + Secure Attention Sequence (<computeroutput>CTRL+ALT+DEL</computeroutput>). + Il s'en suit que les paramètres des règles du groupe de l'invité + doivent être modifiés pour ne pas utiliser la Secure Attention Sequence. + De plus, le nom d'utilisateur donné n'est comparé qu'au vrai nom d'utilisateur, + pas au nom convivial d'utilisateur. Cela veut dire que quand vous + renommez un utilisateur, vous devez aussi fournir le nom d'utilisateur + originel (en interne, Windows ne renomme jamais les comptes + utilisateurs).</para> + </listitem> + + <listitem> + <para>La gestion de l'identification automatique du Windows Remote Desktop + Service (connu jadis sous le nom Terminal Services) est désactivée + par défaut. Pour l'activer, créez la clé de registre + <screen>HKEY_LOCAL_MACHINE\SOFTWARE\Oracle\VirtualBox Guest Additions\AutoLogon</screen> + avec une valeur <computeroutput>DWORD</computeroutput> de + <computeroutput>1</computeroutput>.</para> + </listitem> + </orderedlist></para> + + <para>La commande suivante oblige VirtualBox à garder les autorisations + après leur lecture par l'invité et au redémarrage de la VM : + <screen>VBoxManage setextradata "Windows XP" VBoxInternal/Devices/VMMDev/0/Config/KeepCredentials 1</screen>Remarquez + que c'est un risque de sécurité potentiel car une application malveillante + en fonction sur l'invité pourrait solliciter ces informations en utilisant + la bonne interface.</para> + </sect2> + + <sect2 id="autologon_unix"> + <title>Identifications automatisées à un invité Linux/Unix</title> + + <para>À partir de la version 3.2, VirtualBox fournit un module PAM personnalisé + (Pluggable Authentication Module) qu'on peut utiliser pour effectuer des + identifications automatiques dans l'invité sur des plateformes qui supportent + cet environnement. Virtuellement, toutes les distributions Linux/Unix modernes + s'appuient sur PAM.</para> + + <para>Pour des identifications automatiques sur des distributions Ubuntu + (ou dérivées d'Ubuntu), qui utilisent le gestionnaire d'affichage + LightDM, merci de voir <xref linkend="autologon_unix_lightdm" />.</para> + + <para>Pour des identifications automatiques sur des distributions Ubuntu + (ou dérivées d'Ubuntu), qui utilisent le gestionnaire d'affichage + LightDM, merci de voir <xref linkend="autologon_unix_lightdm" />.</para> + + <para>Le module <computeroutput>pam_vbox.so</computeroutput> lui-même + <emphasis role="bold">ne fait pas</emphasis> de vérification effective des + autorisations passées à l'OS invité ; il s'appuie plutôt sur d'autres + modules tels que <computeroutput>pam_unix.so</computeroutput> ou + <computeroutput>pam_unix2.so</computeroutput> dans la pile PAM pour faire + la validation effective en utilisant les autorisations récupérées par + <computeroutput>pam_vbox.so</computeroutput>. Dès lors, il faut que + <computeroutput>pam_vbox.so</computeroutput> soit en haut de la liste d'authentification + du service PAM.</para> + + <note> + <para><computeroutput>pam_vbox.so</computeroutput> ne supporte que la primitive + <computeroutput>auth</computeroutput>. D'autres primitives telles + que <computeroutput>account</computeroutput>, + <computeroutput>session</computeroutput> ou + <computeroutput>password</computeroutput> ne sont pas supportées.</para> + </note> + + <para>Le module <computeroutput>pam_vbox.so</computeroutput> est inclu + dans les suppléments invité mais il n'est pas installé et/ou activé par défaut + sur l'OS invité. Afin de l'installer, il faut le copier de + <computeroutput>/opt/VBoxGuestAdditions-<version>/lib/VBoxGuestAdditions/</computeroutput> + dans le répertoire des modules de sécurité, en général + <computeroutput>/lib/security/</computeroutput> sur les invités Linux 32 + bit ou <computeroutput>/lib64/security/</computeroutput> sur ceux 64 bits. + Merci de vous reporter à la documentation de votre OS invité pour le bon + répertoire du module PAM.</para> + + <para>Par exemple, pour utiliser <computeroutput>pam_vbox.so</computeroutput> + avec un OS invité Linux Ubuntu et GDM (GNOME Desktop Manager) pour identifier + les utilisateurs automatiquement avec les droits passés par l'hôte, l'OS + invité doit être configuré comme ce qui suit :</para> + + <orderedlist> + <listitem> + <para>Le module <computeroutput>pam_vbox.so</computeroutput> doit être + copié dans le répertoire des modules de sécurité, dans ce cas, c'est + <computeroutput>/lib/security</computeroutput>.</para> + </listitem> + + <listitem> + <para>Éditez le fichier de configuration de PAM avec GDM qui se trouve + dans <computeroutput>/etc/pam.d/gdm</computeroutput>, en ajoutant la + ligne <computeroutput>auth requisite pam_vbox.so</computeroutput> au + début. En outre, dans la plupart des distributions Linux, il existe + un fichier appelé <computeroutput>/etc/pam.d/common-auth</computeroutput>. + Ce fichier est inclu dans de nombreux services (comme le fichier GDM + indiqué ci-dessus). Vous devez y ajouter la ligne <computeroutput>auth + requisite pam_vbox.so</computeroutput>.</para> + </listitem> + + <listitem> + <para>Si vous voulez une authentification via la base de données + shadow en utilisant <computeroutput>pam_unix.so</computeroutput> ou + <computeroutput>pam_unix2.so</computeroutput>, l'argument + <computeroutput>try_first_pass</computeroutput> de + <computeroutput>pam_unix.so</computeroutput> ou + <computeroutput>use_first_pass</computeroutput> pour + <computeroutput>pam_unix2.so</computeroutput> est nécessaire pour + passer les autorisations du module VirtualBox au module d'authentification + de la base de données shadow. Pour Ubuntu, il faut ajouter cela à + <computeroutput>/etc/pam.d/common-auth</computeroutput>, à la fin + de la ligne référençant <computeroutput>pam_unix.so</computeroutput>. + Cet argument dit au module PAM d'utiliser les autorisations déjà + présentes dans la pile, à savoir celles fournies par + le module PAM de VirtualBox.</para> + </listitem> + </orderedlist> + + <para><warning> + <para>Une pile PAM mal configurée peut vraiment vous empêcher de vous connecter + à votre système invité !</para> + </warning></para> + + <para>Pour faciliter le déploiement, vous pouvez passer l'argument + <computeroutput>debug</computeroutput> juste après la ligne + <computeroutput>pam_vbox.so</computeroutput>. La sortie du journal de + débogage sera enregistrée en utilisant syslog.</para> + + <para><note> + <para>Par défaut, pam_vbox n'attendra pas les autorisations venant de + l'hôte, en d'autres termes : quand une invite de connexion s'affiche + (ppar exemple via GDM/KDM ou la console texte) et quand pam_vbox n'a + pas encore les autorisations, il n'attend pas qu'elles viennent. Le module + suivant de la pile PAM (selon la configuration de PAM) aura l'opportunité + d'authentifier.</para> + </note></para> + + <para>À partir de VirtualBox 4.1.4 pam_vbox supporte plusieurs paramètres + de propriétés d'invité résidant tous dans + <computeroutput>/VirtualBox/GuestAdd/PAM/</computeroutput>. Ces paramètres + permettent à pam_vbox d'attendre que les autorisations soient fournies par + l'hôte et, éventuellement, il peut afficher un message tout en les attendant. + Les propriétés d'invité suivantes peuvent être définies :</para> + + <orderedlist> + <listitem> + <para><computeroutput>CredsWait</computeroutput> : Indiquez + "1" si pam_vbox devrait commencer à attendre jusqu'à ce que les autorisations + viennent de l'hôte. En attendant, aucune autre méthode d'authentification + comme la connexion à la main ne sera disponible. Si cette propriété est + vide ou effacée, les autorisations ne seront pas attendues et pam_vbox + agira comme avant (voir paragraphe ci-dessus). Cette propriété doit être + définie en lecture seule pour l'invité + (<computeroutput>RDONLYGUEST</computeroutput>).</para> + </listitem> + + <listitem> + <para><computeroutput>CredsWaitAbort</computeroutput> : Annule + l'attente des autorisations si une valeur est définie. Elle peut être + définie à partir de l'hôte et de l'invité.</para> + </listitem> + + <listitem> + <para><computeroutput>CredsWaitTimeout</computeroutput> : Timeout (en + secondes) pendant lequel il faut laisser pam_vbox attendre les autorisations. + Si aucune autorisation ne vient dans ce délai, l'authentification de + pam_vbox sera définie comme échouée et le prochain module PAM de la + chaîne sera appelé. Si vous ne spécifiez pas cette propriété, ou que + vous la réglez sur "0" ou sur une valeur invalide, on utilisera un timeout + infini. Cette propriété doit être paramétrée en lecture seule pour l'invité + (<computeroutput>RDONLYGUEST</computeroutput>).</para> + </listitem> + </orderedlist> + + <para>Pour personnaliser davantage pam_vbox, il existe les propriétés + invité suivantes :</para> + + <orderedlist> + <listitem> + <para><computeroutput>CredsMsgWaiting</computeroutput> : message + personnalisé affiché pendant que pam_vbox attend les autorisations + de l'hôte. Cette propriété doit être réglée en lecture seule pour l'invité + (<computeroutput>RDONLYGUEST</computeroutput>).</para> + </listitem> + + <listitem> + <para><computeroutput>CredsMsgWaitTimeout</computeroutput> : + message personnalisé affiché pendant l'attente de la fin du timeout des + autorisations de pam_vbox, par exemple si elles ne sont pas arrivées + à temps. Cette propriété doit être réglée en lecture seule pour l'invité + (<computeroutput>RDONLYGUEST</computeroutput>).</para> + </listitem> + </orderedlist> + + <para><note> + <para>Si une propriété pam_vbox est définie avec de mauvais drapeaux + (<computeroutput>RDONLYGUEST</computeroutput>), cette propriété sera + ignorée et - selon la propriété - une valeur par défaut sera utilisée. + Il peut s'en suivre que pam_vbox n'attendra pas les autorisations. + Consultez le fichier syslog adéquat pour plus d'informations et utilisez + l'option <computeroutput>debug</computeroutput>.</para> + </note></para> + + <sect3 id="autologon_unix_lightdm"> + <title>VirtualBox Greeter pour Ubuntu / LightDM</title> + + <para>À partir de la version 4.2.12, VirtualBox est fourni avec son + propre module greeter, qui s'appelle vbox-greeter et qu'on peut utiliser + avec LightDM 1.0.1 ou supérieur. LightDM est le gestionnaire d'affichage + par défaut depuis Ubuntu 10.11 et on peut donc l'utiliser également + pour des identifications automatiques sur l'invité.</para> + + <para>vbox-greeter n'a pas besoin du module pam_vbox décrit ci-dessus + pour fonctionner -- il est fourni avec son propre mécanisme d'authentification + fourni par LightDM. Cependant, pour offrir le maximum de flexibilité, + vous pouvez utiliser les deux modules ensemble sur le même invité.</para> + + <para>Comme pour le module pam_vbox, vbox-greeter est fourni avec + les suppléments invité mais il n'est pas installé et/ou activé par défaut + sur l'OS invité. Pour installer vbox-greeter automatiquement pendant + l'installation des suppléments invité, utilisez le paramètre + <computeroutput>--with-autologon</computeroutput> au lancement du fichier + VBoxLinuxAdditions.run :<screen> + # ./VBoxLinuxAdditions.run -- --with-autologon</screen></para> + + <para>Pour une installation manuelle ou différée, le fichier + <computeroutput>vbox-greeter.desktop</computeroutput> doit être copié + de <computeroutput>/opt/VBoxGuestAdditions-<version>/shared/VBoxGuestAdditions/</computeroutput> + dans le répertoire <computeroutput>xgreeters</computeroutput>, + généralement <computeroutput>/usr/share/xgreeters/</computeroutput>. + Merci de vous reporter à la documentation de votre OS invité pour le + bon répertoire de LightDM greeter.</para> + + <para>Le module vbox-greeter lui-même a été installé par l'installeur + des suppléments invité de VirtualBox et il se trouve dans + <computeroutput>/usr/sbin/</computeroutput>. Pour activer vbox-greeter + en tant que module greeter standard, le fichier + <computeroutput>/etc/lightdm/lightdm.conf</computeroutput> doit être + modifié :</para> + + <para><screen> + [SeatDefaults] + greeter-session=vbox-greeter</screen></para> + + <note><para>Il faut complètement relancer le serveur LightDM afin que + vbox-greeter soit utilisé comme greeter par défaut. En tant qu'administrateur, + exécutez un + <computeroutput>service lightdm --full-restart</computeroutput> sur + Ubuntu, ou redémarrez tout simplement l'invité.</para></note> + + <note><para>vbox-greeter est indépendant de la session graphique choisie + par l'utilisateur (comme Gnome, KDE, Unity etc). Néanmoins, il exige + FLTK 1.3 pour afficher sa propre interface utilisateur.</para></note> + + <para>De noubreuses propriétés invité peuvent être utilisées pour + personnaliser davantage l'identification de l'utilisateur. Pour identifier + automatiquement les utilisateurs, s'appliquent les mêmes propriétés + qu'avec pam_vbox, voir <xref linkend="autologon_unix" />.</para> + + <para>Outre les propriétés invité indiquées ci-dessus, vbox-greter + permet davantage de personnalisation de son interface + utilisateur. Ces propriétés invité spéciales se trouvent toutes dans + <computeroutput>/VirtualBox/GuestAdd/Greeter/</computeroutput> :</para> + + <orderedlist> + <listitem> + <para><computeroutput>HideRestart</computeroutput> : Indiquez + "1" si vbox-greeter doit masquer le bouton de redémarrage de l'invité. + Vous devez définir cette propriété en lecture seule pour l'invité + (<computeroutput>RDONLYGUEST</computeroutput>).</para> + </listitem> + + <listitem> + <para><computeroutput>HideShutdown</computeroutput> : Indiquez + à "1" si vbox-greeter doit masquer le bouton d'extinction de + l'invité. Vous devez définir cette propriété en lecture seule pour l'invité + (<computeroutput>RDONLYGUEST</computeroutput>).</para> + </listitem> + + <listitem> + <para><computeroutput>BannerPath</computeroutput> : Chemin vers + un fichier .PNG à utiliser comme bannière en haut. La taille de + l'image doit être de 460 x 90 pixels, quelle que soit la profondeur + de bit. Vous devez définir cette propriété en lecture seule pour l'invité + (<computeroutput>RDONLYGUEST</computeroutput>).</para> + </listitem> + + <listitem> + <para><computeroutput>UseTheming</computeroutput> : Indiquez + "1" pour activer les options de thème suivantes. + Vous devez définir cette propriété en lecture seule pour l'invité + (<computeroutput>RDONLYGUEST</computeroutput>).</para> + </listitem> + + <listitem> + <para><computeroutput>Theme/BackgroundColor</computeroutput> : + Couleur RRGGBB hexadécimale du fond. Vous devez définir cette + propriété en lecture seule pour l'invité + (<computeroutput>RDONLYGUEST</computeroutput>).</para> + </listitem> + + <listitem> + <para><computeroutput>Theme/LogonDialog/HeaderColor</computeroutput> : + Couleur d'avant RRGGBB hexadécimale pour le texte d'en-tête. + Vous devez définir cette propriété en lecture seule pour l'invité + (<computeroutput>RDONLYGUEST</computeroutput>).</para> + </listitem> + + <listitem> + <para><computeroutput>Theme/LogonDialog/BackgroundColor</computeroutput>: + Couleur en RRGGBB hexadécimale du fond de la boîte de dialogue + d'identification. + Vous devez définir cette propriété en lecture seule pour l'invité + (<computeroutput>RDONLYGUEST</computeroutput>).</para> + </listitem> + + <listitem> + <para><computeroutput>Theme/LogonDialog/ButtonColor</computeroutput> : + Couleur de fond RRGGBB hexadécimale du bouton de la boîte de dialogue + d'identification. Vous devez définir cette propriété en lecture + seule pour l'invité + (<computeroutput>RDONLYGUEST</computeroutput>).</para> + </listitem> + </orderedlist> + + <note><para>Les mêmes restrictions des propriétés invité ci-dessus + s'appliquent comme celles indiquées dans la section + pam_vbox.</para></note> + </sect3> + + </sect2> + </sect1> + + <sect1> + <title>Configuration avancées pour les invités Windows</title> + + <sect2 id="sysprep"> + <title>Préparation automatique du système Windows</title> + + <para>À partir de Windows NT 4.0, Microsoft offre un outil "préparation système" + (en bref : Sysprep) pour préparer un système Windows à être déployé ou + redistribué. Si Windows 2000 et XP sont inclus avec Sysprep sur leur média + d'installation, l'outil est également disponible en téléchargement sur le + site Internet de Microsoft. Dans une installation standard de Windows Vista + et 7, Sysprep est déjà inclu. Sysprep consiste principalement dans un + exécutable qui s'appelle <computeroutput>sysprep.exe</computeroutput> qui + est appelé par l'utilisateur pour passer l'installation Windows en mode + préparation.</para> + + <para>À partir VirtualBox 3.2.2, les suppléments invité offrent un moyen de + lancer une préparation du système sur le système d'exploitation invité de + manière automatisée et contrôlée depuis le système hôte. Pour faire cela, + voir <xref linkend="guestadd-guestcontrol" /> pour utiliser la fonction + avec l'identifiant spécial <computeroutput>sysprep</computeroutput> pour que + le programme s'exécute avec le nom d'utilisateur + <computeroutput>sysprep</computeroutput> et le mot de passe + <computeroutput>sysprep</computeroutput> des autorisations. Sysprep se lance + avec les droits système requis.</para> + + <note> + <para>La spécification de l'emplacement de "sysprep.exe" <emphasis + role="bold">n'est pas possible</emphasis> -- les chemins suivants seront + plutôt utilisés (basés sur le système d'exploitation) : <itemizedlist> + <listitem> + <para><computeroutput>C:\sysprep\sysprep.exe</computeroutput> + pour Windows NT 4.0, 2000 et XP</para> + </listitem> + + <listitem> + <para><computeroutput>%WINDIR%\System32\Sysprep\sysprep.exe</computeroutput> + pour Windows Vista, 2008 Server et 7</para> + </listitem> + </itemizedlist> Les suppléments invité utiliseront automatiquement le + chemin adapté pour exécuter l'outil de préparation système.</para> + </note> + </sect2> + </sect1> + + <sect1> + <title>Configuration avancée pour les invités Linux et Solaris</title> + + <sect2> + <title>Paramétrage manuel des services sélectionnés sur l'invité Linux</title> + + <para>Les suppléments invité de VirtualBox contiennent plusieurs pilotes. + Si, pour une raison quelconque, vous ne souhaitez pas les installer, vous + pouvez installer les suppléments invité en utilisant la commande suivante :</para> + + <screen> sh ./VBoxLinuxAdditions.run no_setup</screen> + + <para>Après quoi, vous devrez au moins compiler les modules noyau en lançant + la commande <screen> /usr/lib/VBoxGuestAdditions/vboxadd setup</screen> + en tant que root (vous devrez remplacer <emphasis>lib</emphasis> par + <emphasis>lib64</emphasis> sur certains invités 64 bits), et sur les + anciens invités sans service udev, vous devrez ajouter le service + <emphasis>vboxadd</emphasis> au niveau d'exécution par défaut pour vous + assurer que les modules sont chargés.</para> + + <para>Pour régler le service de synchronisation du temps, lancez la commande + <screen> /usr/lib/VBoxGuestAdditions/vboxadd-service setup</screen> et + ajoutez le service vboxadd-service au niveau d'exécution par défaut. + Pour paramétrer la partie X11 et OpenGL des suppléments invité, lancez + la commande <screen> /usr/lib/VBoxGuestAdditions/vboxadd-x11 setup</screen> + (vous n'avez pas besoin d'activer un service).</para> + + <para>Pour recompiler les modules noyau invité, utilisez cette commande : + <screen> /usr/lib/VBoxGuestAdditions/vboxadd setup</screen> + Après la compilation, vous devriez redémarrer votre invité pour vous assurer + que les nouveaux modules sont bien utilisés.</para> + </sect2> + + <sect2 id="guestxorgsetup"> + <title>Paramétrage approfondi des pilotes graphique et souris de l'invité</title> + + <para>Cette section suppose que vous êtes familier de la configuration de + votre serveur X.Org en utilisant xorg.conf et éventuellement des mécanismes + récents en utilisant hal ou udev et xorg.conf.d. Sinon, vous pouvez apprendre + à les utiliser en étudiant la documentation fournie avec X.Org.</para> + + <para>Les suppléments invité de VirtualBox sont fournis avec les pilotes + pour les versions X.Org <itemizedlist> + <listitem> + <para>X11R6.8/X11R6.9 et XFree86 version 4.3 (vboxvideo_drv_68.o et vboxmouse_drv_68.o)</para> + </listitem> + + <listitem> + <para>X11R7.0 (vboxvideo_drv_70.so and vboxmouse_drv_70.so)</para> + </listitem> + + <listitem> + <para>X11R7.1 (vboxvideo_drv_71.so and vboxmouse_drv_71.so)</para> + </listitem> + + <listitem> + <para>Serveur X.Org versions 1.3 et later (vboxvideo_drv_13.so et vboxmouse_drv_13.so et + ainsi de suite).</para> + </listitem> + </itemizedlist> Par défaut, vous pouvez trouver ces pilotes dans le + répertoire</para> + + <para><computeroutput>/opt/VBoxGuestAdditions-<version>/lib/VBoxGuestAdditions</computeroutput></para> + + <para>et les bonnes versions du serveur X sont liées de façon symbolique + aux répertoires du pilote de X.Org.</para> + + <para>Pour que l'intégration graphique fonctionne correctement, le serveur + X doit charger le pilote vboxvideo (beaucoup de versions récentes du serveur + X le cherchent automatiquement si elles voient qu'elles sont sur VirtualBox) + et pour une expérience utilisateur optimale, les pilotes du noyau invité + doivent être chargés et l'outil des suppléments invité VBoxClient doit être + en fonction en tant que client dans la session X. Pour que l'intégration de + la souris fonctionne correctement, les pilotes du noyau invité doivent + être chargés et, au surplus, dans les serveurs X de X.Org X11R6.8 + à X11R7.1 et dans XFree86 version 4.3, le bon pilote vboxmouse doit être + chargé et associé à /dev/mouse ou /dev/psaux ; dans le serveur X.Org + 1.3 ou supérieur, un pilote de souris PS/2 doit être chargé et le bon + pilote vboxmouse doit être associé à /dev/vboxguest.</para> + + <para>Le pilote graphique invité de VirtualBox peut utiliser n'importe quelle + configuration graphique pour laquelle la résolution rentre dans la mémoire + graphique affectée à la machine virtuelle (moins une petite quantité utilisée + par le pilote invité) comme décrit au <xref + linkend="settings-display" />. Le pilote offrira une gamme de nœuds + standards allant au moins jusqu'à la résolution invité par défaut pour tous + les écrans invités. Dans le serveur X.Org et supérieur, le mode par défaut + peut être modifié en définissant la propriété de sortie VBOX_MODE sur + "<width>x<height>" pour tout écran invité. Quand VBoxClient et + les pilotes du noyau sont actifs, cela se fait automatiquement quand l'hôte + demande une modification du mode. Le pilote des anciennes versions ne peut + recevoir de nouveaux modes qu'en demandant à l'hôte les requêtes à intervalles + réguliers.</para> + + <para>Avec les serveurs X pre-1.3, vous pouvez également ajouter vos propres + modes dans le fichier de configuration du serveur X. Vous devez simplement + les ajouter à la liste des "Modes" de la sous-section "Display" de la + section "Screen". Par exemple, la section affichée ici a un mode de + résolution personnalisé de 2048x800 :</para> + + <screen>Section "Screen" + Identifier "Default Screen" + Device "VirtualBox graphics card" + Monitor "Generic Monitor" + DefaultDepth 24 + SubSection "Display" + Depth 24 + Modes "2048x800" "800x600" "640x480" + EndSubSection +EndSection</screen> + </sect2> + </sect1> + + <sect1 id="cpuhotplug"> + <title>Montage de processeur à chaud</title> + + <para>Quand des machines virtuelles fonctionnent sur des systèmes + d'exploitation serveurs modernes, VirtualBox supporte le montage à chaud de + processeur.<footnote> + <para>Le support du montage de processeur à chaud a été introduit avec VirtualBox + 3.2.</para> + </footnote> Alors que, sur un ordinateur physique, cela voudrait dire qu'un + processeur peut être ajouté ou supprimé pendant que la machine fonctionne, + VirtualBox supporte l'ajout et le retrait de processeurs virtuels pendant que la + machine virtuelle est en fonction.</para> + + <para>Le montage à chaud de processeur ne fonctionne qu'avec les systèmes + d'exploitation invités qui le supportent. Jusque-là, il ne s'applique qu'à + Linux et Windows Server 2008 x64 édition Data Center. Windows ne supporte que + l'ajout à chaud alors que Linux supporte l'ajout et le retrait à chaud. Mais + pour utiliser cette fonction avec plus de 8 processeurs, il faut un invité + Linux 64 bits.</para> + + <para>Pour l'instant, le branchement à chaud d'un processeur exige d'utiliser + l'interface en ligne de commandes VBoxManage. Tout d'abord, il faut activer + le branchement à chaud pour une machine virtuelle :<screen>VBoxManage modifyvm "nom VM" --cpuhotplug on</screen></para> + + <para>Ensuite, l'option --cpus spécifie le nombre maximum de processeurs + que peut avoir la machine virtuelle :<screen>VBoxManage modifyvm "nom VM" --cpus 8</screen>Quand + la VM est désactivée, vous pouvez ajouter et supprimer des processeurs virtuels + avec les sous-commandes modifyvm --plugcpu et --unplugcpu, qui prend le nombre + de processeurs virtuels en paramètre, comme ceci :<screen>VBoxManage modifyvm "nom VM" --plugcpu 3 +VBoxManage modifyvm "nom VM" --unplugcpu 3</screen>Remarquez que le processeur 0 +ne peut jamais être supprimé.</para> + + <para>Pendant que la VM est en fonction, les processeurs peuvent être ajoutés + avec les commandes <computeroutput>controlvm plugcpu/unplugcpu</computeroutput> :<screen>VBoxManage controlvm "nom VM" plugcpu 3 +VBoxManage controlvm "nom VM" unplugcpu 3</screen></para> + + <para>Voir <xref linkend="vboxmanage-modifyvm" /> et <xref + linkend="vboxmanage-controlvm" /> pour des détails.</para> + + <para>Avec des invités Linux, ce qui suit s'applique : Pour empêcher + d'éjecter alors que le processeur est utilisé, il doit être éjecté de l'invité + au préalable. Les suppléments invité pour Linux contiennent un service qui + reçoit les événements de retrait à chaud et ils éjectent le processeur. + De plus, après qu'un processeur ait été ajouté à la VM, il n'est pas utilisé + automatiquement par Linux. Le service des suppléments invité pour Linux s'en + chargera s'il est installé. Sinon, vous pouvez démarrer un processeur avec + la commande suivante :<screen>echo 1 > /sys/devices/system/cpu/cpu<id>/online</screen></para> + </sect1> + + <sect1 id="pcipassthrough"> + <title>PCI passthrough</title> + + <para>Sur des hôtes Linux, avec un noyau assez récent (au moins la + version <computeroutput>2.6.31</computeroutput>), le passthrough de + périphériques PCI expérimental est disponible.<footnote> + <para>Le support expérimental pour le passthrough PCI a été introduit avec + VirtualBox 4.1.</para> + </footnote></para> + + <note> + <para>Le module PCI passthrough est inclu comme un paquet d'extension de + VirtualBox, qui doit être installé séparément. Voir <xref + linkend="intro-installing" /> pour plus d'informations.</para> + </note> + + <para>Cette fonction vous permettra essentiellement d'utiliser directement + les périphériques PCI physiques de l'hôte sur l'invité même si l'hôte n'a pas + de pilote pour ce périphérique particulier. Tant les cartes PCI normales que + certaines cartes PCI express sont supportées. L'AGP et certaines cartes PCI + Express ne sont pas supportées pour l'instant si elles s'appuient sur la + programmation d'unités GART (Graphics Address Remapping Table) pour la gestion + des textures vu qu'il fait plutôt des opérations non triviales avec l'association + de pages qui s'interfacent avec IOMMU. Il se peut que cette limite soit + surmontée dans les prochaines versions.</para> + + <para>Pour être totalement opérationnel, le support PCI passthrough de + VirtualBox dépend d'une unité matérielle IOMMU qui n'est pas encore trop + largement disponible. Si le périphérique utilise le bus mastering (à savoir + qu'il fait sa propre DMA sur la mémoire de l'OS), une IOMMU est requise, + sinon de telles transactions DMA peuvent écrire sur la mauvaise adresse physique + de la mémoire car le moteur DMA du périphérique est programmé pour utiliser + un protocole spécifique au périphérique pour faire des transactions avec la + mémoire. Les fonctions IOMMU telle que la translation des unités de correspondance de + mémoire physique accèdent aux requêtes du périphérique en utilisant la connaissance + de l'adresse physique de la mémoire de l'invité via les règles de traduction + d'adresse physique de l'hôte.</para> + + <para>La solution d'Intel pour IOMMU est vendue sous le nom "Intel Virtualization + Technology for Directed I/O" (VT-d), et celle d'AMD s'appelle AMD-Vi. Merci + donc de vérifier si le modèle de votre carte mère comporte la technologie + adaptée. Même si votre matériel n'a pas d'IOMMU, certaines cartes PCI peuvent + fonctionner (comme des adaptateurs série PCI), mais l'invité affichera un + avertissement au démarrage et l'exécution de la VM s'achèvera si le pilote + invité essaie d'activer le bus mastering de la carte.</para> + + <para>Très couramment, le BIOS ou + l'OS hôte désactive par défaut l'IOMMU. Donc avant d'essayer de l'utiliser, + merci de vous assurer que + <orderedlist> + <listitem> + <para>Votre carte mère a une unité IOMMU.</para> + </listitem> + + <listitem> + <para>Votre processeur supporte l'IOMMU.</para> + </listitem> + + <listitem> + <para>L'IOMMU est activé dans le BIOS.</para> + </listitem> + + <listitem> + <para>La VM doit fonctionner avec VT-x/AMD-V et la pagination imbriquée + doit être activée.</para> + </listitem> + + <listitem> + <para>Votre noyau Linux a été compilé avec le support IOMMU (y compris + la réassociation du DMA, voir l'option de compilation + <computeroutput>CONFIG_DMAR</computeroutput>). Le pilote PCI stub + (<computeroutput>CONFIG_PCI_STUB</computeroutput>) est requis aussi.</para> + </listitem> + + <listitem> + <para>Votre noyau Linux reconnaît et utilise l'unité IOMMU (l'option + (de démarrage <computeroutput>intel_iommu=on</computeroutput> pourrait + être nécessaire). Cherchez DMAR et PCI-DMA dans le journal du démarrage.</para> + </listitem> + </orderedlist></para> + + <para>Une fois que vous êtes sûre que le noyau hôte supporte l'IOMMU, la + prochaine étape est de sélectionner la carte PCI et de l'attacher à l'invité. + Pour visualiser la liste des périphériques PCI disponibles, utilisez + la commande <computeroutput>lspci</computeroutput>. La sortie ressemblera à + ceci :</para> + + <screen>01:00.0 VGA compatible controller: ATI Technologies Inc Cedar PRO [Radeon HD 5450] +01:00.1 Audio device: ATI Technologies Inc Manhattan HDMI Audio [Mobility Radeon HD 5000 Series] +02:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit + Ethernet controller (rev 03) +03:00.0 SATA controller: JMicron Technology Corp. JMB362/JMB363 Serial ATA Controller (rev 03) +03:00.1 IDE interface: JMicron Technology Corp. JMB362/JMB363 Serial ATA Controller (rev 03) +06:00.0 VGA compatible controller: nVidia Corporation G86 [GeForce 8500 GT] (rev a1)</screen> + + <para>La première colonne est une adresse PCI (au format + <computeroutput>bus:device.function</computeroutput>). Cette adresse pourrait + être utilisée pour identifier les périphériques pour aller plus loin. Par + exemple, pour attacher un contrôleur réseau PCI du système listé ci-dessus, + au second bus PCI de l'invité, en périphérique 5, la fonction 0, utilisez + la commande suivante : + <screen>VBoxManage modifyvm "nom VM" --pciattach 02:00.0@01:05.0</screen> + Pour détacher ce même périphérique, utilisez <screen>VBoxManage modifyvm "nom VM" --pcidetach 02:00.0</screen> + Merci de remarquer que l'hôte et l'invité pourraient librement affecter une + autre adresse PCI à la carte attachée à l'exécution, donc ces adresses ne + s'appliquent qu'à l'adresse de la carte au moment d'être attaché (hôte), et + lors de l'initialisation du PCI de BIOS (invité).</para> + + <para>Si la machine virtuelle a un périphérique PCI attaché, certaines + limitations s'appliquent : <orderedlist> + <listitem> + <para>Seules les cartes PCI aux interruptions non partagées (telles que + l'utilisation de MSI sur l'hôte) sont supportées pour le moment.</para> + </listitem> + + <listitem> + <para>On ne peut pas sauvegarder/restaurer de façon fiable l'état de l'invité + (car l'état interne de la carte PCI ne pourrait pas être récupéré).</para> + </listitem> + + <listitem> + <para>La téléportation (migration en direct) ne fonctionne pas (pour la même + raison).</para> + </listitem> + + <listitem> + <para>Aucune couche d'affectation de mémoire physique. L'hôte préaffectera + toute la RAM nécessaire au démarrage de la VM (vu que nous ne pouvons + pas relier les accès physiques au matériel à la mémoire physique).</para> + </listitem> + </orderedlist></para> + </sect1> + + <sect1> + <title>Webcam passthrough</title> + + <sect2 id="webcam-passthrough"> + <title>Utilisation d'une webcam hôte dans l'invité</title> + + <para>VirtualBox 4.3 inclut une fonction expérimentale permettant à un + invité d'utiliser une webcam hôte. Ceci complète le support général du + passthrough USB qui était la façon dont on utilisait généralement les webcams + dans les anciennes versions. Le support de webcam passthrough peut gérer + théoriquement des sources graphiques non USB, mais cela n'a pas été testé du + tout.</para> + + <note> + <para>Le module webcam passthrough fait partie du pack d'extension Oracle VM VirtualBox + que vous devez installer séparément. Voir <xref + linkend="intro-installing" /> pour plus d'informations.</para> + </note> + + <para>Vous pouvez connecter la webcam de l'hôte à la VM en utilisant le + menu "Périphériques" dans la barre de menus de la VM. Le menu "Webcams" + contient une liste des périphériques d'entrée vidéo disponibles sur l'hôte. + Un clic sur le nom d'une webcam connecte ou déconnecte le périphérique + de l'hôte correspondant.</para> + + <para>Il faut utiliser l'outil en ligne de commandes VBoxManage pour + activer le passthrough webcam. Merci de voir les + sections ci-dessous spécifiques aux hôtes pour des détails complémentaires. + Les commandes suivantes sont disponibles : + <itemizedlist> + <listitem><para>Obtenir une liste des webcams hôtes (ou d'autres + périphériques d'entrée vidéos): + <screen>VBoxManage list webcams</screen> + Le format de sortie est : + <screen>alias "nom lisible par l'utilisateur"chemin sur l'hôte ou identifiant</screen> + L'alias est utilisable en tant que raccourci dans d'autres commandes. + L'alias '.0' signifie le périphérique d'entrée vidéo par défaut sur + l'hôte, '.1', '.2', etc renvoient au premier, au deuxième, etc. + périphérique d'entrée vidéo. L'ordre des périphériques dépend de + l'hôte. + </para></listitem> + <listitem><para>Connecter une webcam à une VM en fonction : + <screen>VBoxManage controlvm "nom VM" webcam attach [chemin_hôte_|alias [paramètres]]</screen> + Ceci connectera une webcam à l'invité. Le paramètre + <computeroutput>settings</computeroutput> est une chaîne + <computeroutput>Paramètre1=Valeur1;Paramètre2=Valeur2</computeroutput>, qui + permet de configurer la webcam émulée. Les paramètres suivants + sont supportés :</para> + <itemizedlist> + <listitem> + <para><computeroutput>MaxFramerate</computeroutput> La vitesse maximale + d'envoi des plans graphiques à l'invité. Une vitesse élevée + demande beaucoup de puissance de processeur. Donc, parfois, il + vaut mieux mettre une limite plus basse. Par défaut, il n'y a + aucune limite et l'invité peut utiliser tous les ratios graphiques + supportés par la webcam de l'hôte.</para> + </listitem> + <listitem> + <para><computeroutput>MaxPayloadTransferSize</computeroutput> Combien d'octets + à la fois peut envoyer la webcam à l'invité. La valeur par défaut + est de 3060 octets, ce qu'utilisent certaines + webcams. Des valeurs supérieures réduisent légèrement la charge du + processeur si l'invité peut utiliser des tampons plus gros. Cependant, + il se pourrait qu'un <computeroutput>MaxPayloadTransferSize</computeroutput> + ne soit pas supporté par certains invités.</para> + </listitem> + </itemizedlist> + </listitem> + <listitem><para>Déconnecter une webcam d'une VM en fonction : + <screen>VBoxManage controlvm "nom VM" webcam detach [chemin_hôte|alias]</screen> + </para></listitem> + <listitem><para>Lister les webcams connectées à une VM en fonction : + <screen>VBoxManage controlvm "nom VM" webcam list</screen> + La sortie comprend le chemin ou l'alias utilisés dans la commande + 'webcam attach' pour chaque webcam connectée + </para></listitem> + </itemizedlist> + </para> + </sect2> + + <sect2> + <title>Hôtes Windows</title> + + <para>Quand on déconnecte la webcam de l'hôte, la webcam émulée est + automatiquement déconnectée de l'invité.</para> + </sect2> + + <sect2> + <title>Hôtes Mac OS X</title> + + <para>OS X version 10.7 ou supérieur est requis.</para> + + <para>Quand on déconnecte la webcam de l'hôte, la webcam émulée + reste connectée à l'invité et vous devez la déconnecter à la main en + utilisant la commande <computeroutput>VBoxManage controlvm "nom VM" webcam detach ...</computeroutput>.</para> + </sect2> + + <sect2> + <title>Hôtes Linux et Solaris</title> + + <para>Quand on déconnecte la webcam de l'hôte, la webcam émulée n'est automatiquement + déconnectée de l'invité que si la webcam est en train de transmettre + de l'image. Si la webcam est inactive, vous devrez la déconnecter à la + main en utilisant la commande + <computeroutput>VBoxManage controlvm "nom VM" webcam detach ...</computeroutput>.</para> + + <para>Les aliases <computeroutput>.0</computeroutput> et + <computeroutput>.1</computeroutput> sont associés à <computeroutput>/dev/video0</computeroutput> + l'alias <computeroutput>.2</computeroutput> est associé à + <computeroutput>/dev/video1</computeroutput> et ainsi de suite.</para> + </sect2> + </sect1> + + <sect1> + <title>Configuration d'affichage avancée</title> + + <sect2> + <title>Résolutions VESA personnalisées</title> + + <para>Outre les résolutions VESA standards, le BIOS VESA de VirtualBox + vous permet d'ajouter jusqu'à 16 modes graphiques personnalisés qui seront + signalés au système d'exploitation invité. Quand on utilise des invités + Windows avec les suppléments invité de VirtualBox, un pilote graphique + personnalisé sera utilisé à la place de la solution VESA de repli, donc + ces informations ne s'appliquent pas.</para> + + <para>Vous pouvez configurer des modes graphiques supplémentaires pour + chaque VM en utilisant la fonction de données supplémentaires. La clé des + données supplémentaires s'appelle + <literal>CustomVideoMode<x></literal> avec <literal>x</literal> étant + un numéro de 1 à 16. Merci de remarquer que les modes seront lus de 1 au + numéro suivant non défini ou jusqu'à 16. L'exemple suivant ajoute un mode + graphique correspondant à la résolution d'affichage native de nombreux + ordinateurs notebook :</para> + + <screen>VBoxManage setextradata "nom VM" "CustomVideoMode1" "1400x1050x16"</screen> + + <para>Les IDs du mode VESA pour les modes graphiques personnalisés commencent + à <literal>0x160</literal>. Afin d'utiliser le mode graphique personnalisé + ci-dessus, vous devez donner à Linux la ligne de commande suivante :</para> + + <screen>vga = 0x200 | 0x160 +vga = 864</screen> + + <para>Pour les systèmes d'exploitation ayant les suppléments invité, + vous pouvez définir un mode graphique personnalisé en utilisant la fonction + d'astuce du mode graphique.</para> + </sect2> + + <sect2> + <title>Configuration de la résolution maximum des invités quand on utilise + l'interface graphique</title> + + <para>Quand on démarre des systèmes invités ayant les suppléments invité + installés en utilisant l'interface graphique (l'application normale de + VirtualBox), ils ne seront pas autorisés à utiliser des résolutions d'écran + supérieures à la taille de l'écran de l'hôte sauf si l'utilisateur les + redimensionne à la main en utilisant la fenêtre, en basculant en mode plein + écran ou transparent ou en envoyant une astuce de mode graphique utilisant + VBoxManage. Ce comportement est celui que la plupart des utilisateurs voudront + mais si vous avez d'autres besoins, il est possible de le modifier en + exécutant une des commandes suivantes sur la ligne de commandes :</para> + + <screen>VBoxManage setextradata global GUI/MaxGuestResolution any</screen> + + <para>supprimera toutes les limites des résolutions de l'invité.</para> + + <screen>VBoxManage setextradata global GUI/MaxGuestResolution >width,height<</screen> + + <para>spécifie à la main une résolution maximum.</para> + + <screen>VBoxManage setextradata global GUI/MaxGuestResolution auto</screen> + + <para>restaure les paramètres par défaut. Remarquez que ces paramètres + s'appliquent globalement à tous les systèmes invités, pas seulement à une + seule machine.</para> + </sect2> + </sect1> + + <sect1> + <title>Configuration avancée du stockage</title> + + <sect2 id="rawdisk"> + <title>Utiliser un disque dur brut de l'hôte à partir de l'invité</title> + + <para>À partir de la version 1.4, plutôt que d'utiliser des images de disques + virtuels (comme décrit en détail au <xref linkend="storage" />), + VirtualBox peut aussi présenter aux machines virtuelles soit des disques + durs entiers, soit des partitions sélectionnées, comme des disques virtuels.</para> + + <para>Avec VirtualBox, ce type d'accès s'appelle "l'accès au disque dur brut" ; + il permet à un système d'exploitation invité d'accéder à son disque dur + virtuel sans passer par le système de fichiers de l'OS hôte. La + différence de performance finale entre les fichiers images et les disques + bruts varie beaucoup selon l'overhead du système de fichiers hôte et le + dynamisme de la croissance des images, et enfin des stratégies de mise en + cache de l'OS hôte. La mise en cache concerne aussi indirectement d'autres + aspects tels que le comportement en cas d'échec, à savoir si le disque dur + contient toutes les données écrites avant un OS hôte ne plante. Consultez + la documentation de votre OS hôte pour les détails à ce sujet.</para> + + <para><warning> + <para>L'accès au disque dur brut est réservé aux utilisateurs experts. + Une utilisation incorrecte ou d'une configuration obsolète peut provoquer + une <emphasis role="bold">perte totale des données</emphasis> du disque + physique. Surtout, <emphasis>n'essayez pas</emphasis> de démarrer la + partition avec le système d'exploitation hôte actuellement en fonction + dans un invité. Cela entraînera une grave corruption de données.</para> + </warning></para> + + <para>L'accès au disque dur brut -- tant entiers qu'aux partitions individuelles -- + est implémenté comme support du format image VMDK. Il s'en suit que vous + devrez créer un fichier image VMDK qui définit l'endroit où les données + seront stockées. Après avoir créé une image VMDK spéciale, vous pouvez + l'utiliser comme un disque virtuel normal. Par exemple, vous pouvez + utiliser le gestionnaire VirtualBox (<xref linkend="vdis" />) ou + <computeroutput>VBoxManage</computeroutput> pour affecter l'image à une machine + virtuelle.</para> + + <sect3> + <title>L'accès à un disque dur physique</title> + + <para>Si cette variante est la plus simple à paramétrer, vous devez avoir à + l'esprit que cela donnera au système d'exploitation invité un accès total + et direct à <emphasis>tout un disque dur</emphasis>. Si votre système + d'exploitation <emphasis>hôte</emphasis> démarre aussi sur ce disque, + merci de faire particulièrement attention à ne pas accéder à la partition + avec l'invité. Côté positif, le disque physique peut être repartitionné + de façon arbitraire sans devoir recréer le fichier image qui donne accès + au disque brut.</para> + + <para>Pour créer une image qui représente un disque dur physique entier + (qui ne contiendra pas de vraies données physiques vu qu'elles seront + stockées sur le disque physique), sur un hôte Linux, utilisez la + commande<screen>VBoxManage internalcommands createrawvmdk -filename /chemin/vers/fichier.vmdk + -rawdisk /dev/sda</screen>Ceci crée l'image + <code>/chemin/vers/fichier.vmdk</code> (il doit être absolu), et toutes + les données seront lues et écrites à partir de <code>/dev/sda</code>.</para> + + <para>Sur un hôte Windows, plutôt que de spécifier le périphérique comme + ci-dessus, utilisez par exemple <code>\\.\PhysicalDrive0</code>. Sur un + hôte Mac OS X, utilisez plutôt, par exemple, <code>/dev/disk1</code>. + Remarquez que sur OS X, vous ne pouvez avoir d'accès à tout un disque + que si aucun volume n'est monté à partir de là.</para> + + <para>La création de l'image exige un accès en lecture/écriture au + périphérique donné. L'accès en lecture/écriture sera aussi nécessaire + plus tard lors de l'utilisation de l'image d'une machine virtuelle. Sur + certaines plateformes hôtes (comme Windows Vista et supérieur), l'accès + au disque brut peut être restreint et non autorisé par l'OS hôte dans + certaines situations.</para> + + <para>Comme avec les images de disque normales, ceci n'attache pas + automatiquement l'image nouvellement créée à une machine virtuelle. Ceci + peut se faire avec, par exemple, <screen>VBoxManage storageattach WindowsXP --storagectl "IDE Controller" + --port 0 --device 0 --type hdd --medium /path/to/file.vmdk</screen>Quand + cela se fait, la machine virtuelle démarrera depuis le disque physique + spécifié.</para> + </sect3> + + <sect3> + <title>Accès aux partitions individuelles d'un disque dur physique</title> + + <para>Ce "support de partition brut" est très semblable à l'accès au + "disque dur complet" décrit ci-dessus. Cependant, dans ce cas, toutes les + informations de partitionnement seront stockées dans l'image VMDK, donc + vous pouvez par exemple installer un autre chargeur d'amorçage dans le + disque dur virtuel sans toucher les informations de partitionnement de + l'hôte. Alors que l'invité pourra <emphasis>voir</emphasis> toutes + les partitions existantes sur le disque physique, l'accès sera filtré de + sorte que la lecture des partitions pour lesquelles aucun accès n'est + autorisé ne contiendra que des zéros et que toutes les écritures dessus + soient ignorées.</para> + + <para>Pour créer une image spéciale pour le support d'une partition brute + (qui contiendra une petite quantité de données, comme déjà indiqué), sur + un hôte Linux, utilisez la commande<screen>VBoxManage internalcommands createrawvmdk -filename /chemin/vers/fichier.vmdk + -rawdisk /dev/sda -partitions 1,5</screen></para> + + <para>Comme vous pouvez le voir, la commande est identique à celle pour + l'accès "au disque dur brut", sauf le paramètre supplémentaire + <computeroutput>-partitions</computeroutput>. Cet exemple créerait + l'image <code>/chemin/vers/fichier.vmdk</code> (qui, de nouveau, + doit être absolu), et les partitions 1 et 5 de <code>/dev/sda</code> deviendraient + accessibles à l'invité.</para> + + <para>VirtualBox utilise la même numérotation de partitions que l'hôte Linux. + Il s'en suit que les numéros donnés dans l'exemple ci-dessus se référeraient + respectivement à la première partition primaire et au premier lecteur + logique de la partition étendue.</para> + + <para>Sur un hôte Windows, au lieu de spécifier le périphérique comme + ci-dessus, utilisez par exemple <code>\\.\PhysicalDrive0</code>. Sur un + hôte Mac OS X, utilisez plutôt par exemple <code>/dev/disk1</code>. + Remarquez que sur OS X, vous ne pouvez utiliser que des partitions non + montées (éjectez d'abord les volumes concernés). Les numéros de partition + sont les mêmes sur les hôtes Linux, Windows et Mac OS X.</para> + + <para>Vous pouvez prendre les numéros dans la liste des partitions dans la + sortie de<screen>VBoxManage internalcommands listpartitions -rawdisk /dev/sda</screen>La + sortie liste les types et les tailles des partitions pour donner à + l'utilisateur assez d'informations pour identifier les partitions nécessaires + à l'invité.</para> + + <para>Les images donnant accès aux partitions individuelles sont spécifiques + à un paramétrage de disque particulier à un hôte. Vous ne pouvez pas + transposer ces images à un autre hôte ; et à chaque fois que le + partitionnement de l'hôte change, l'image <emphasis>doit être recréée</emphasis>.</para> + + <para>La création d'une image exige l'accès en écriture sur le périphérique + donné. L'accès en lecture/écriture sera également nécessaire plus tard + pour utiliser l'image à partir d'une machine virtuelle. Si ce n'est pas + faisable, il existe une variante spéciale de l'accès à une partition brute + (disponible aujourd'hui uniquement sur les hôtes Linux) qui évite de devoir + donner à l'utilisateur actuel l'accès à tout le disque. Pour faire une telle + image, utilisez<screen>VBoxManage internalcommands createrawvmdk -filename /chemin/vers/fichier.vmdk + -rawdisk /dev/sda -partitions 1,5 -relative</screen>Utilisée depuis une + machine virtuelle, l'image ne se réfèrera pas à tout le disque mais seulement + aux partitions individuelles (dans l'exemple + <code>/dev/sda1</code> et <code>/dev/sda5</code>). Par conséquent, l'accès + en lecture/écriture n'est requis que pour les partitions concernées, pas + pour tout le disque. Mais lors de la création, un accès en lecture seule + à tout le disque est nécessaire pour avoir les informations de + partitionnement.</para> + + <para>Dans certaines configurations, il peut être nécessaire de modifier + le code du MBR de l'image créée, par exemple pour remplacer le chargeur + de démarrage Linux utilisé sur l'hôte par un autre chargeur de démarrage. + Cela permet, par exemple, à l'invité, de démarrer directement sur Windows, + alors que l'hôte démarre sur Linux sur le "même" disque. Pour obtenir cela, + le paramètre <computeroutput>-mbr</computeroutput> vous est offert. Il + spécifie un nom de fichier à partir duquel il faut prendre le code du MBR. + La table des partitions n'est pas modifiée, donc on peut utiliser un fichier + MBR d'un système ayant un partitionnement totalement différent. Un exemple + est<screen>VBoxManage internalcommands createrawvmdk -filename /chemin/vers/fichier.vmdk + -rawdisk /dev/sda -partitions 1,5 -mbr winxp.mbr</screen>Le MBR modifié sera + stocké dans l'image, pas sur le disque hôte.</para> + + <para>L'image créée peut être attachée à un contrôleur de stockage dans + une configuration de VM, comme d'habitude.</para> + </sect3> + </sect2> + + <sect2 id="changevpd"> + <title>Configuration des vendor product data (VPD) du disque dur</title> + + <para>VirtualBox signale les données liées au fabricant du produit de + ses disques durs virtuels, consistant dans le numéro de série du disque dur, + le numro de révision du firmware et du modèle. Vous pouvez modifier ces + données en utilisant les commandes suivantes :</para> + + <screen>VBoxManage setextradata "nom VM" + "VBoxInternal/Devices/ahci/0/Config/Port0/SerialNumber" "serial" +VBoxManage setextradata "nom VM" + "VBoxInternal/Devices/ahci/0/Config/Port0/FirmwareRevision" "firmware" +VBoxManage setextradata "nom VM" + "VBoxInternal/Devices/ahci/0/Config/Port0/ModelNumber" "model"</screen> + + <para>Le numéro de série est une chaîne alphanumérique de 20 octets, la + Révision du firmware est une chaîne alphanumérique de 8 octets et le + numéro de modèle est une chaîne alphanumàrique de 40 octets. Au lieu de + "Port0" (qui renvoie au premier port), spécifiez le port SATA désiré du disque dur.</para> + + <para>Les commandes ci-dessus s'appliquent aux machines virtuelles ayant + un contrôleur AHCI (SATA). Les commandes pour les machines virtuelles ayant + un contrôleur IDE sont :</para> + + <screen>VBoxManage setextradata "nom VM" + "VBoxInternal/Devices/piix3ide/0/Config/PrimaryMaster/SerialNumber" "serial" +VBoxManage setextradata "nom VM" + "VBoxInternal/Devices/piix3ide/0/Config/PrimaryMaster/FirmwareRevision" "firmware" +VBoxManage setextradata "nom VM" + "VBoxInternal/Devices/piix3ide/0/Config/PrimaryMaster/ModelNumber" "model"</screen> + + <para>Pour les disques durs, il est aussi possible de marquer le lecteur + comme ayant un média non rotationnel avec :</para> + + <screen>VBoxManage setextradata "nom VM" + "VBoxInternal/Devices/ahci/0/Config/Port0/NonRotational" "1"</screen> + + <para>Trois paramètres supplémentaires sont nécessaires pour que les lecteurs + CD/DVD signalent les données produit du fabricant :</para> + + <screen>VBoxManage setextradata "nom VM" + "VBoxInternal/Devices/ahci/0/Config/Port0/ATAPIVendorId" "vendor" +VBoxManage setextradata "nom VM" + "VBoxInternal/Devices/ahci/0/Config/Port0/ATAPIProductId" "product" +VBoxManage setextradata "nom VM" + "VBoxInternal/Devices/ahci/0/Config/Port0/ATAPIRevision" "revision"</screen> + + <para>L'id du fabricant est une chaîne alphanumérique de 8 octets, l'id du + produit est une chaîne alphanumérique de 16 octets, la révision est une chaîne + alphanumérique de 4 octets. À la place de "Port0" (qui renvoie au premier + port), spécifiez le port du disque dur SATA désiré.</para> + </sect2> + + <sect2 id="iscsi-intnet"> + <title>Accès à des cibles iSCSI via le réseau interne</title> + + <para>En fonctionnalité expérimentale, VirtualBox permet d'accéder à une + cible iSCSI d'une machine virtuelle en fonction configurée pour utiliser + le mode réseau interne. Merci de voir le <xref linkend="storage-iscsi" /> ; + <xref linkend="network_internal" /> ; et <xref + linkend="vboxmanage-storageattach" /> pour avoir des informations supplémentaires.</para> + + <para>La pile IP d'accès au réseau interne doit être configurée dans la + machine virtuelle qui accède à la cible iSCSI. Vous devez choisir une + IP statique libre et une adresse MAC non utilisée par d'autres machines + virtuelles. Dans l'exemple ci-dessous, adaptez le nom de la machine virtuelle, + l'adresse MAC, la configuration IP et le nom du réseau interne ("MyIntNet") + selon vos besoins. Les huit commandes suivantes doivent être d'abord + lancées :<screen>VBoxManage setextradata "nom VM" VBoxInternal/Devices/IntNetIP/0/Trusted 1 +VBoxManage setextradata "nom VM" VBoxInternal/Devices/IntNetIP/0/Config/MAC 08:00:27:01:02:0f +VBoxManage setextradata "nom VM" VBoxInternal/Devices/IntNetIP/0/Config/IP 10.0.9.1 +VBoxManage setextradata "nom VM" VBoxInternal/Devices/IntNetIP/0/Config/Netmask 255.255.255.0 +VBoxManage setextradata "nom VM" VBoxInternal/Devices/IntNetIP/0/LUN#0/Driver IntNet +VBoxManage setextradata "nom VM" VBoxInternal/Devices/IntNetIP/0/LUN#0/Config/Network MyIntNet +VBoxManage setextradata "nom VM" VBoxInternal/Devices/IntNetIP/0/LUN#0/Config/TrunkType 2 +VBoxManage setextradata "nom VM" VBoxInternal/Devices/IntNetIP/0/LUN#0/Config/IsService 1</screen></para> + + <para>Enfin, le disque iSCSI doit être attachée avec l'option + <computeroutput>--intnet</computeroutput> pour dire à l'initiateur iSCSI + d'utiliser le réseau interne :<screen>VBoxManage storageattach ... --medium iscsi + --server 10.0.9.30 --target iqn.2008-12.com.sun:sampletarget --intnet</screen></para> + + <para>Par rapport à une configuration iSCSI "ordinaire", l'adresse IP de + la cible <emphasis>doit</emphasis> être spécifiée comme un adaptateur IP + numérique, vu qu'il n'y a pas de résolveur DNS pour le réseau interne.</para> + + <para>La machine virtuelle ayant la cible iSCSI devrait être démarrée avant + que la VM qui l'utilise ne soit allumée. Si vous démarrez une machine + virtuelle qui utilise un disque iSCSI sans que la cible iSCSI ne poit allumée, + elle peut mettre jusqu'à 200 secondes avant de détecter cette situation. + La VM ne pourra pas s'allumer.</para> + </sect2> + </sect1> + + + <sect1> + <title>Commandes de base pour utiliser les ports série</title> + + <para>À partir de la version 1.4, VirtualBox fournissait le support des + ports série virtuels qui, pour l'instant, était plutôt compliqué à paramétrer + avec la séquence des commandes + <computeroutput>VBoxManage setextradata</computeroutput>. Depuis la version 1.5, + cette façon de paramétrer les ports série n'est plus nécessaire et + <emphasis>obsolète.</emphasis> Pour paramétrer les ports série virtuels, utilisez + les méthodes décrites maintenant au <xref + linkend="serialports" />.<note> + <para>Pour être rétro-compatible, les anciennes commandes + <computeroutput>setextradata</computeroutput>, dont la description ci-dessous + est issue de l'ancienne version du manuel, <emphasis>restent valables</emphasis> + côté de la nouvelle façon de configurer les ports série. Il s'en suit + que si la première méthode de configuration des ports série ne marche + pas, assurez-vous que la VM en question ne contient pas d'anciennes + données de configuration actives telles que écrites ci-dssous.</para> + </note></para> + + <para>L'ancienne séquence de configuration d'un port série utilisait les 6 + commandes suivantes :</para> + + <screen>VBoxManage setextradata "nom VM" + "VBoxInternal/Devices/serial/0/Config/IRQ" 4 +VBoxManage setextradata "nom VM" + "VBoxInternal/Devices/serial/0/Config/IOBase" 0x3f8 +VBoxManage setextradata "nom VM" + "VBoxInternal/Devices/serial/0/LUN#0/Driver" Char +VBoxManage setextradata "nom VM" + "VBoxInternal/Devices/serial/0/LUN#0/AttachedDriver/Driver" NamedPipe +VBoxManage setextradata "nom VM" + "VBoxInternal/Devices/serial/0/LUN#0/AttachedDriver/Config/Location" "\\.\pipe\vboxCOM1" +VBoxManage setextradata "nom VM" + "VBoxInternal/Devices/serial/0/LUN#0/AttachedDriver/Config/IsServer" 1</screen> + + <para>Cela définit un port série dans l'invité avec les paramètres par défaut + de COM1 (IRQ 4, adresse E/S 0x3f8) et le paramètre + <computeroutput>Location</computeroutput> suppose que cette configuration est + utilisée sur un hôte Windows, car on utilise la syntaxe de tuyau (pipe) nommé + Windows. Gardez à l'esprit que sur les hôtes Windows, un tuyau nommé doit + toujours commencer par <computeroutput>\\.\pipe\</computeroutput>. Sur Linux, + s'appliquent les mêmes paramètres de configuration, sauf que vous pouvez choisir + le nom du chemin de <computeroutput>Location</computeroutput> plus librement. + Les sockets du domaine local se mettent n'importe où, pourvu que l'utilisateur + qui exécute VirtualBox ait le droit de créer un nouveau fichier dans le + répertoire. La dernière commande ci-dessus définit que VirtualBox agit comme + un serveur, c'est-à-dire qu'il crée lui-même le tuyau nommé au lieu de se + connecter à un autre qui existe déjà.</para> + </sect1> + + <sect1 id="changenat"> + <title>Régler le moteur NAT de VirtualBox</title> + + <sect2> + <title>Configurer l'adresse d'une interface réseau NAT</title> + + <para>En mode NAT, on affecte à l'interface réseau de l'invité une plage + IPv4 <computeroutput>10.0.x.0/24</computeroutput> par défaut, où + <computeroutput>x</computeroutput> correspond à l'instance d'une interface + NAT +2. Donc, <computeroutput>x</computeroutput> vaut 2 quand il n'y a + qu'une instance NAT d'active. Dans ce cas, l'invité se voit affecter l'adresse + <computeroutput>10.0.2.15</computeroutput>, la passerelle est définie sur + <computeroutput>10.0.2.2</computeroutput> et on peut trouver le serveur de + noms sur <computeroutput>10.0.2.3</computeroutput>.</para> + + <para>Si, pour une raison quelconque, vous devez modifier le réseau NAT, + ce qui se fait avec la commande suivante :</para> + + <screen>VBoxManage modifyvm "nom VM" --natnet1 "192.168/16"</screen> + + <para>Cette commande réserverait les adresses réseaux de + <computeroutput>192.168.0.0</computeroutput> à + <computeroutput>192.168.254.254</computeroutput> à la première instance + réseau NAT de "nom VM". On affecterait à l'invité l'IP + <computeroutput>192.168.0.15</computeroutput> et on pourrait trouver la + passerelle par défaut sur <computeroutput>192.168.0.2</computeroutput>.</para> + </sect2> + + <sect2 id="nat-adv-tftp"> + <title>Configurer le serveur d'amorçage (prochain serveur) d'une interface + réseau NAT</title> + + <para>Pour un amorçage réseau en mode NAT, VirtualBox utilise par défaut + le serveur TFTP inclu, qui se trouve à l'adresse 10.0.2.4. Ce comportement + par défaut devrait très bien fonctionner pour les scénari de démarrage + à distance courants. Cependant, il est possible de modifier l'IP du serveur + d'amorçage et l'emplacement de l'image de démarrage avec les commandes + suivantes : <screen>VBoxManage modifyvm "nom VM" --nattftpserver1 10.0.2.2 +VBoxManage modifyvm "nom VM" --nattftpfile1 /srv/tftp/boot/MyPXEBoot.pxe</screen></para> + </sect2> + + <sect2 id="nat-adv-settings"> + <title>Réglage des tampons TCP/IP pour NAT</title> + + <para>La performance de la pile NAT de VirtualBox est souvent déterminée + par son interaction avec la pile TCP/IP de l'hôte et la taille de plusieurs + tampons (<computeroutput>SO_RCVBUF</computeroutput> et + <computeroutput>SO_SNDBUF</computeroutput>). Pour certaines configurations, + les utilisateurs pourraient vouloir ajuster la taille des tampons pour une + meilleure performance. Vous pouvez faire cela en utilisant les commandes + suivantes (les valeurs s'expriment en kilo-octets peuvent varier de + 8 à 1024) : <screen>VBoxManage modifyvm "nom VM" --natsettings1 16000,128,128,0,0</screen> + Cet exemple illustre le réglage des paramètres NAT. Le premier paramètre + est le MTU, puis la taille du tampon d'envoi du socket et la taille du + tampon de réception du socket, la taille initiale de la fenêtre d'envoi + TCP, et enfin, la taille initiale de la fenêtre de réception TCP. Remarquez + que la spécification de zéro revient à se rabattre sur la valeur par défaut.</para> + + <para>Chacun de ces tampons a une taille par défaut de 64Ko et un MTU par + défaut de 1500.</para> + </sect2> + + <sect2> + <title>Associer des sockets à une interface spécifique</title> + + <para>Par défaut, le moteur NAT de VirtualBox dirigera les paquets TCP/IP + via l'interface par défaut affectée par la pile TCP/IP de l'hôte. (La + raison technique en est que le moteur NAT utilise des sockets pour la + communication.) Si, pour une raison quelconque, vous voulez changer ce + comportement, vous pouvez dire au moteur NAT d'associer à une interface en + particulier une adresse IP. Utilisez la commande suivante : + <screen>VBoxManage modifyvm "nom VM" --natbindip1 "10.45.0.2"</screen></para> + + <para>Après cela, le trafic sortant sera envoyé par interface ayant l'adresse + IP 10.45.0.2. Merci de vous assurer que cette interface est active et en + fonction avant cette affectation.</para> + </sect2> + + <sect2 id="nat-adv-dns"> + <title>Activer le proxy DNS en mode NAT</title> + + <para>Le moteur NAT offre par défaut les mêmes serveurs DNS à l'invité + que ceux configurés sur l'hôte. Dans certains scenari, il peut être souhaitable + de cacher les IPs du serveur DNS à l'invité, par exemple quand ces informations + peuvent changer sur l'hôte après l'expiration de l'allocation DHCP. Dans ce cas, + vous pouvez dire au moteur NAT d'agir comme un proxy DNS en utilisant la + commande suivante : <screen>VBoxManage modifyvm "nom VM" --natdnsproxy1 on</screen></para> + </sect2> + + <sect2 id="nat_host_resolver_proxy"> + <title>Utiliser le résolveur de l'hôte comme proxy DNS en mode NAT</title> + + <para>Pour résoudre les noms de réseau, le serveur DHCP du moteur NAT offre + une liste de serveurs DNS enregistrés de l'hôte. Si pour une raison quelconque, + vous devez cacher cette liste de serveurs DNS et utiliser les paramètres du + serveur DNS de l'hôte, forçant ainsi le moteur NAT de VirtualBox à + intercepter les requêtes DNS et à les rediriger sur le résolveur de l'hôte, + utilisez la commande suivante : + <screen>VBoxManage modifyvm "nom VM" --natdnshostresolver1 on</screen> + Remarquez que ce paramètre est identique au mode proxy DNS, cependant alors + que le mode proxy ne redirige que les requêtes DNS sur les serveurs appropriés, + le mode résolveur interprètera les requêtes DNS et utilisera l'.API DNS de + l'hôte pour prendre les informations et les retourner à l'invité.</para> + + <sect3 id="nat_host_resolver_name_intercepting"> + <title>Résolution de noms d'hôte définie par l'utilisateur</title> + <para>Dans certains cas, il pourrait être utile d'intercepter le mécanisme + de résolution de noms, en fournissant une adresse IP définie par l'utilisateur + pour une requête DNS en particulier. Le mécanisme d'interception permet + à l'utilisateur d'associer non seulement un hôte, mais aussi des + domaines et même des conventions de nommage plus complexes si nécessaire.</para> + <para> + La commande suivante définit la règle d'association d'un nom et + d'une IP spécifiée :</para> + <screen>VBoxManage setextradata "nom VM" \ + "VBoxInternal/Devices/{pcnet,e1000}/0/LUN#0/Config/HostResolverMappings/ \ + <nom unique de la règle d'interception>/HostIP" <IPv4> +VBoxManage setextradata "nom VM" \ + "VBoxInternal/Devices/{pcnet,e1000}/0/LUN#0/Config/HostResolverMappings/ \ + <nom unique de la règle d'interception>/HostName" <nom de hôte></screen> + <para>La commande suivante définit une règle pour associer un échantillon de + nom à une IP spécifiée :</para> + <screen>VBoxManage setextradata "nom VM" \ + "VBoxInternal/Devices/{pcnet,e1000}/0/LUN#0/Config/HostResolverMappings/ \ + <nom unique de la règle d'interception>/HostIP" <IPv4> +VBoxManage setextradata "nom VM" \ + "VBoxInternal/Devices/{pcnet,e1000}/0/LUN#0/Config/HostResolverMappings/ \ + <nom unique de la règle d'interception>/HostNamePattern" <échantillonhôte></screen> + <para>L'échantillon hôte peut inclure <computeroutput>"|", "?" et "*"</computeroutput>.</para> + <para>Cette exmeple montre la façon de demander au mécanisme du résolveur + de l'hôte de résoudre tout le domaine et probablement des mirroirs du site + www.blocked-site.info avec l'IP 127.0.0.1:</para> + <screen>VBoxManage setextradata "nom VM" \ + "VBoxInternal/Devices/e1000/0/LUN#0/Config/HostResolverMappings/ \ + all_blocked_site/HostIP" 127.0.0.1 +VBoxManage setextradata "nom VM" \ + "VBoxInternal/Devices/e1000/0/LUN#0/Config/HostResolverMappings/ \ + all_blocked_site/HostNamePattern" "*.blocked-site.*|*.fb.org"</screen> + <note><para>Le mécanisme de résolution de l'hôte devrait être activé + pour utiliser les règles d'association définies par l'utilisateur + (merci de voir <xref linkend="nat_host_resolver_proxy" /> pour plus + de détails).</para></note> + </sect3> + </sect2> + + <sect2 id="nat-adv-alias"> + <title>Configurer des aliases pour le moteur NAT</title> + + <para>Par défaut, le cœur de NAT utilise des alias et des ports + aléatoires quand il génère un alias pour la connexion. Cela fonctionne bien + pour la plupart des protocoles comme SSH, FTP et ainsi de suite. Mais + certains protocoles pourraient nécessiter un comportement plus transparent + ou dépendre du vrai numéro de port pour envoyer un paquet. Il est possible + de modifier le mode NAT avec l'interface VBoxManage avec les commandes + suivantes : <screen>VBoxManage modifyvm "nom VM" --nataliasmode1 proxyonly</screen> + et <screen>VBoxManage modifyvm "Linux Guest" --nataliasmode1 sameports</screen> + Le premier exemple désactive les alias et passe NAT en mode transparent, + le deuxième exemple renforce la préservation des numéros des ports. Ces + modes peuvent se combiner si nécessaire.</para> + </sect2> + </sect1> + + <sect1 id="changedmi"> + <title>Configurer les informations DMI du BIOS</title> + + <para>Vous pouvez changer les données DMI que VirtualBox fournit aux invités + pour une VM spécifique. Utilisez les commandes suivantes pour configurer les + informations DMI du BIOS. Si votre VM est configurée pour utiliser un firmware + EFI, vous devez remplacer <code>pcbios</code> par <code>efi</code> dans les + clés.</para> + + <glosslist> + <glossentry> + <glossterm>Informations DMI du BIOS</glossterm> + <glossdef> + <para>(type 0)</para> + <screen>VBoxManage setextradata "nom VM" + "VBoxInternal/Devices/pcbios/0/Config/DmiBIOSVendor" "fabricant BIOS" +VBoxManage setextradata "nom VM" + "VBoxInternal/Devices/pcbios/0/Config/DmiBIOSVersion" "Version BIOS" +VBoxManage setextradata "nom VM" + "VBoxInternal/Devices/pcbios/0/Config/DmiBIOSReleaseDate" "date publication BIOS" +VBoxManage setextradata "nom VM" + "VBoxInternal/Devices/pcbios/0/Config/DmiBIOSReleaseMajor" 1 +VBoxManage setextradata "nom VM" + "VBoxInternal/Devices/pcbios/0/Config/DmiBIOSReleaseMinor" 2 +VBoxManage setextradata "nom VM" + "VBoxInternal/Devices/pcbios/0/Config/DmiBIOSFirmwareMajor" 3 +VBoxManage setextradata "nom VM" + "VBoxInternal/Devices/pcbios/0/Config/DmiBIOSFirmwareMinor" 4</screen> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>Informations système DMI</glossterm> + <glossdef> + <para>(type 1)</para> + <screen>VBoxManage setextradata "nom VM" + "VBoxInternal/Devices/pcbios/0/Config/DmiSystemVendor" "Fabricant Système" +VBoxManage setextradata "nom VM" + "VBoxInternal/Devices/pcbios/0/Config/DmiSystemProduct" "Produit système" +VBoxManage setextradata "nom VM" + "VBoxInternal/Devices/pcbios/0/Config/DmiSystemVersion" "Version système" +VBoxManage setextradata "nom VM" + "VBoxInternal/Devices/pcbios/0/Config/DmiSystemSerial" "Numéro de série système" +VBoxManage setextradata "nom VM" + "VBoxInternal/Devices/pcbios/0/Config/DmiSystemSKU" "System SKU" +VBoxManage setextradata "nom VM" + "VBoxInternal/Devices/pcbios/0/Config/DmiSystemFamily" "Famille système" +VBoxManage setextradata "nom VM" + "VBoxInternal/Devices/pcbios/0/Config/DmiSystemUuid" + "9852bf98-b83c-49db-a8de-182c42c7226b"</screen> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>Informations carte mère DMI</glossterm> + <glossdef> + <para>(type 2)</para> + <screen>VBoxManage setextradata "nom VM" + "VBoxInternal/Devices/pcbios/0/Config/DmiBoardVendor" "Fabricant carte" +VBoxManage setextradata "nom VM" + "VBoxInternal/Devices/pcbios/0/Config/DmiBoardProduct" "Produit carte" +VBoxManage setextradata "nom VM" + "VBoxInternal/Devices/pcbios/0/Config/DmiBoardVersion" "Version carte mère" +VBoxManage setextradata "nom VM" + "VBoxInternal/Devices/pcbios/0/Config/DmiBoardSerial" "Série carte" +VBoxManage setextradata "nom VM" + "VBoxInternal/Devices/pcbios/0/Config/DmiBoardAssetTag" "Tag Board" +VBoxManage setextradata "nom VM" + "VBoxInternal/Devices/pcbios/0/Config/DmiBoardLocInChass" "Emplacement carte" +VBoxManage setextradata "nom VM" + "VBoxInternal/Devices/pcbios/0/Config/DmiBoardBoardType" 10</screen> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>Boîtier système DMI ou chassis</glossterm> + <glossdef> + <para>(type 3)</para> + <screen>VBoxManage setextradata "nom VM" + "VBoxInternal/Devices/pcbios/0/Config/DmiChassisVendor" "Fabricant Chassis" +VBoxManage setextradata "nom VM" + "VBoxInternal/Devices/pcbios/0/Config/DmiChassisType" 3 +VBoxManage setextradata "nom VM" + "VBoxInternal/Devices/pcbios/0/Config/DmiChassisVersion" "Version Chassis" +VBoxManage setextradata "nom VM" + "VBoxInternal/Devices/pcbios/0/Config/DmiChassisSerial" "Série Chassis" +VBoxManage setextradata "nom VM" + "VBoxInternal/Devices/pcbios/0/Config/DmiChassisAssetTag" "Tag Chassis"</screen> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>Informatiions DMI du processeur</glossterm> + <glossdef> + <para>(type 4)</para> + <screen>VBoxManage setextradata "nom VM" + "VBoxInternal/Devices/pcbios/0/Config/DmiProcManufacturer" "GenuineIntel" +VBoxManage setextradata "nom VM" + "VBoxInternal/Devices/pcbios/0/Config/DmiProcVersion" "Pentium(R) III"</screen> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>Chaînes OEM DMI</glossterm> + <glossdef> + <para>(type 11)</para> + <screen>VBoxManage setextradata "nom VM" + "VBoxInternal/Devices/pcbios/0/Config/DmiOEMVBoxVer" "vboxVer_1.2.3" +VBoxManage setextradata "nom VM" + "VBoxInternal/Devices/pcbios/0/Config/DmiOEMVBoxRev" "vboxRev_12345"</screen> + </glossdef> + </glossentry> + </glosslist> + + <para>Si une chaîne DMI n'est pas définie, la valeur par défaut de VirtualBox + est utilisée. Pour définir une chaîne vide, utilisez + <computeroutput>"<EMPTY>"</computeroutput>.</para> + + <para>Remarquez que dans la liste ci-dessus, tous les paramètres cités + (DmiBIOSVendor, DmiBIOSVersion mais pas DmiBIOSReleaseMajor) sont censés + être des chaînes. Si la chaîne est un nombre valide, le paramètre est traité + comme un nombre et la VM refusera probablement de démarrer avec une erreur + <computeroutput>VERR_CFGM_NOT_STRING</computeroutput>. Dans ce cas, utilisez + <computeroutput>"string:<valeur>"</computeroutput>, par exemple, + <screen>VBoxManage setextradata "nom VM" + "VBoxInternal/Devices/pcbios/0/Config/DmiSystemSerial" "string:1234"</screen></para> + + <para>La modification de ces informations peut s'avérer nécessaire pour + donner les informations DMI de l'hôte à l'invité afin d'empêcher Windows de + demander une nouvelle clé du produit. Sur les hôtes Linux, vous pouvez obtenir + les informations de BIOS DMI avec + <screen>dmidecode -t0</screen>et les informations du système DMI avec + <screen>dmidecode -t1</screen></para> + </sect1> + + <sect1 id="changeacpicust"> + <title>Configurer la table ACPI personnalisée</title> + + <para>VirtualBox peut être configuré pour présenter à l'invité une table ACPI + personnalisée. Utilisez la commande suivante pour la configurer :</para> + + <screen>VBoxManage setextradata "nom VM" + "VBoxInternal/Devices/acpi/0/Config/CustomTable" "/chemin/vers/table.bin"</screen> + + <para>La configuration d'une table ACPI personnalisée peut empêcher Windows + Vista et Windows 7 de demander une nouvelle clé du produit. Sur les hôtes + Linux, on peut lire une des tables de l'hôte dans + <filename>/sys/firmware/acpi/tables/</filename>.</para> + </sect1> + + <sect1> + <title>Régler les horloges et la synchronisation du temps</title> + + <sect2 id="changetscmode"> + <title>Configurer le time stamp counter (TSC) (horodateur) de l'invité pour refléter l'heure de l'exécution</title> + + <para>Par défaut, VirtualBox synchronise toutes les sources de l'heure dans + une source d'heure unique, l'heure monotonic de l'hôte. Cela reflète les + suppositions de nombreux systèmes d'exploitation invités qui s'attendent + à ce que toutes les sources d'heure reflètent l'heure de "la pendule". Dans + des circonstances spéciales, il peut être cependant utile de faire en + sorte que le TSC (time stamp counter) de l'invité reflète le temps effectif + passé à exécuter l'invité.</para> + + <para>Ce mode de gestion spécial du TSC peut s'activer individuellement + par VM et, pour de meilleurs résultats, il ne faut l'utiliser qu'en + association avec la virtualisation matérielle. Pour activer ce mode, + utilisez la commande suivante :</para> + + <screen>VBoxManage setextradata "nom VM" "VBoxInternal/TM/TSCTiedToExecution" 1</screen> + + <para>Pour inverser le mode de gestion TSC par défaut, utilisez :</para> + + <screen>VBoxManage setextradata "nom VM" "VBoxInternal/TM/TSCTiedToExecution"</screen> + + <para>Remarquez que si vous utilisez le mode de gestion TSC spécial avec + un système d'exploitation invité qui est très strict quant à la cohérence + des sources de l'heure, il se peut que vous receviez un message d'avertissement + ou d'erreur lié à l'incohérence de l'heure. Cela peut aussi rendre l'heure + non fiable avec certains systèmes d'exploitation invités en fonction de + leur utilisation du TSC.</para> + </sect2> + + <sect2 id="warpguest"> + <title>Accélérer ou ralentir l'horloge de l'invité</title> + + <para>Pour certains objectifs, il peut être utile d'accélérer ou de + ralentir l'horloge virtuelle de l'invité. Vous pouvez le faire comme + suit :</para> + + <screen>VBoxManage setextradata "nom VM" "VBoxInternal/TM/WarpDrivePercentage" 200</screen> + + <para>L'exemple ci-dessus doublera la vitesse de l'horloge de l'invité + alors que</para> + + <screen>VBoxManage setextradata "nom VM" "VBoxInternal/TM/WarpDrivePercentage" 50</screen> + + <para>ralentira l'horloge de l'invité. Remarquez que la modification du + rythme de l'horloge virtuelle peut perturber l'invité et même provoquer + un comportement anormal de l'invité. Par exemple, une vitesse plus élevée + signifie des timeouts plus courts pour les périphériques virtuels, + provoquant un délai de réponse légèrement accru du périphérique virtuel, à + l'origine d'une augmentation de la charge de l'hôte qui peut provoquer des + échecs de l'invité. Notez aussi que tous les mécanismes de synchronisation + du temps essaieront souvent de resynchroniser l'heure de l'invité sur + l'heure de référence (qui est celle de l'hôte si les suppléments invité + de VirtualBox sont actifs). Donc, toutes les synchronisation du temps + devraient être désactivés si vous modifiez la vitesse de l'horloge invité + comme indiqué ci-dessus (voir <xref linkend="changetimesync" />).</para> + </sect2> + + <sect2 id="changetimesync"> + <title>Régler les paramètres de synchronisation du temps des suppléments + invité</title> + + <para>Les suppléments invité de VirtualBox garantissent que l'heure du + système invité se synchronise avec l'heure de l'hôte. Plusieurs paramètres + peuvent être personnalisés. Vous pouvez définir les paramètres pour une VM + spécifique en utilisant la commande suivante :</para> + + <screen>VBoxManage guestproperty set "nom VM" "/VirtualBox/GuestAdd/VBoxService/PARAMETER" VALUE</screen> + + <para>où <computeroutput>PARAMETER</computeroutput> est un des suivants :</para> + + <para><glosslist> + <glossentry> + <glossterm><computeroutput>--timesync-interval</computeroutput></glossterm> + + <glossdef> + <para>Spécifie l'intervalle entre deux synchronisations de l'heure invité + par rapport à l'hôte. Par défaut, il est de 10000 ms (10 secondes).</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>--timesync-min-adjust</computeroutput></glossterm> + + <glossdef> + <para>Valeur absolue minimum du débit mesuré en millisecondes pour + faire les ajustements. Par défaut, c'est 1000 ms sur OS/2 et 100 + ms ailleurs.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>--timesync-latency-factor</computeroutput></glossterm> + + <glossdef> + <para>Le multiplicateur de latence de demande de temps pour calculer + le temps minimum ajusté dymamiquement. Il est par défaut de 8 fois, + ce qui veut dire en détails : mesurer le temps mis pour + déterminer l'heure de l'hôte (l'invité doit contacter le service + hôte de la VM, ce qui peut prendre du temps), multiplier cette + valeur par 8 et n'ajuster que si la différence d'heure entre l'hôte + et l'invité dépasse cette valeur. Sinon, ne pas ajuster l'heure.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>--timesync-max-latency</computeroutput></glossterm> + + <glossdef> + <para>La latence de demande de l'horloge max acceptée. Par défaut, + il s'agit de 250 ms.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>--timesync-set-threshold</computeroutput></glossterm> + + <glossdef> + <para>Début du débit absolu donné en millisecondes, où doit commencer + le réglage de l'heure, plutôt que d'essayer de l'ajuster tout + simplement. Il s'agit par défaut de 20 minutes.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>--timesync-set-start</computeroutput></glossterm> + + <glossdef> + <para>Définit l'heure à laquelle démarrer le service de synchro + du temps.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>--timesync-set-on-restore + 0|1</computeroutput></glossterm> + + <glossdef> + <para>Règle l'heure après que la VM a été restaurée d'un état + sauvegardé si vous mettez 1 en paramètre (par défaut). Désactivez-le + en mettant 0. Dans ce dernier cas, l'heure sera ajustée tout + simplement, ce qui peut mettre du temps.</para> + </glossdef> + </glossentry> + </glosslist></para> + + <para>Vous pouvez aussi spécifier tous ces paramètres comme options de la ligne de + commandes du service BoxService.</para> + </sect2> + + <sect2 id="disabletimesync"> + + <title>Désactiver la synchronisation des suppléments invité</title> + + <para>Une fois installés et démarrés, les suppléments invité de VirtualBox + essaieront de synchroniser l'heure de l'invité avec celle de l'hôte. Vous + pouvez l'empêcher en interdisant le service de l'invité de lire l'horloge + de l'hôte :</para> + + <screen>VBoxManage setextradata "nom VM" "VBoxInternal/Devices/VMMDev/0/Config/GetHostTimeDisabled" 1</screen> + + </sect2> + + </sect1> + + <sect1 id="vboxbowsolaris11"> + <title>Installer le pilote du réseau bridgé alternatif sur les invités + Solaris 11</title> + + <para>À partir de VirtualBox 4.1, VirtualBox inclut un nouveau pilote de + filtre réseau qui utilise la fonction Crossbow de Solaris 11. Par défaut, + ce nouveau pilote est installé pour les hôtes Solaris 11 (construction 159 + ci-dessus) qui le supportent.</para> + + <para>Pour obliger l'installation de l'ancien pilote de filtre réseau basé + sur STREAMS, exécutez en tant qu'administrateur la commande suivante avant + d'installer le paquet VirtualBox :</para> + + <screen>touch /etc/vboxinst_vboxflt</screen> + + <para>Pour obliger l'installation du pilote de filtre réseau basé sur Crossbow, + exécutez en tant qu'administrateur la commande suivante avant d'installer + le paquet VirtualBox :</para> + + <screen>touch /etc/vboxinst_vboxbow</screen> + + <para>Pour vérifier le pilote actuellement utilisé par VirtualBox, + exeécutez :</para> + + <screen>modinfo | grep vbox</screen> + + <para>Si la sortie contient "vboxbow", cela indique que VirtualBox utilise + le pilote de filtre réseau Crossbow, alors que le nom "vboxflt" indique que + l'ancien pilote de filtre réseau STREAMS est utilisé.</para> + </sect1> + + <sect1 id="vboxbowvnictemplates"> + <title>Échantillons de VNIC VirtualBox pour les VLANs sur les hôtes Solaris 11</title> + + <para>VirtualBox supporte des échantillons VNIC (Virtual Network Interface) + pour configurer des VMs via des VLANs.<footnote> + <para>Le support du réseau bridgé basé sur Crossbow a été introduit avec + VirtualBox 4.1 et il exige Solaris 11 construction 159 ou supérieur.</para> + </footnote> Un échantillon VNIC de VirtualBox est un VNIC dont le nom + commence par "vboxvnic_template" (sensible à la casse).</para> + + <para>Voici un exemple de la façon d'utiliser un échantillon VNIC pour + configurer un VLAN pour des VMs. Créez un échantillon VNIC de VirtualBox en + exécutant, en tant qu'administrateur :</para> + + <screen>dladm create-vnic -t -l nge0 -v 23 vboxvnic_template0</screen> + + <para>Cela créera un VNIC temporaire par l'interface "nge0" avec l'ID de VLAN + 23. Pour créer des échantillons VNIC résistant aux redémarrages de l'hôte, + sautez le paramètre <computeroutput>-t</computeroutput> dans la commande + ci-dessus. Vous pouvez vérifier l'état actuel des liens en utilisant :</para> + + <para><screen>$ dladm show-link +LINK CLASS MTU STATE BRIDGE OVER +nge0 phys 1500 up -- -- +nge1 phys 1500 down -- -- +vboxvnic_template0 vnic 1500 up -- nge0 + +$ dladm show-vnic +LINK OVER SPEED MACADDRESS MACADDRTYPE VID +vboxvnic_template0 nge0 1000 2:8:20:25:12:75 random 23</screen></para> + + <para>Une fois que l'échantillon VNIC est créé, toutes les VMs ayant besoin + de faire partie du VLAN 23 par l'interface physique "nge0" pourront utiliser + le même échantillon VNIC. Cela simplifie et rend plus efficace la gestion des + VMs sur des VLANs car les détails du VLAN ne sont pas stockés dans la + configuration de chaque VM mais récupérés dans le modèle VNIC qve vous pouvez + modifier n'importe quand en utilisant + <computeroutput>dladm</computeroutput>. Outre l'ID du VLAN, des patrons de + VNIC peuvent être créées avec des propriétés supplémentaires telles que les + limites de bande passante, le fanout du processeur, etc. Reportez-vous à + la documentation du réseau de votre Solaris pour savoir comment faire cela. + Ces propriétés supplémentaires, s'il y en a, s'appliquent aussi aux VMs qui + utilisent l'échantillon VNIC.</para> + </sect1> + + <sect1 id="addhostonlysolaris"> + <title>Configurer plusieurs interfaces réseaux host-only sur les hôtes + Solaris</title> + + <para>Par défaut, VirtualBox vous offre une interface réseau host-only + L'ajout de davantage d'interfaces réseaux host-only sur les hôtes Solaris + exige une configuration manuelle. Voici comment ajouter deux interfaces + réseaux host-only supplémentaires.</para> + + <para>Vous devez d'abord arrêter toutes les VMs en fonction et désactiver + toutes les interfaces "vboxnet". Exécutez les commandes suivantes en tant + qu'administrateur :</para> + + <screen>ifconfig vboxnet0 unplumb</screen> + + <para>Après vous être assuré que toutes les interfaces vboxnet sont + désactivées, supprimez le pilote en utilisant :</para> + + <para><screen>rem_drv vboxnet</screen>puis éditez le fichier + <computeroutput>/platform/i86pc/kernel/drv/vboxnet.conf</computeroutput> et + ajoutez une ligne pour les nouvelles interfaces :</para> + + <para><screen>name="vboxnet" parent="pseudo" instance=1; +name="vboxnet" parent="pseudo" instance=2;</screen>Ajoutez autant de lignes comme +celles-ci que nécessaire et assurez-vous que le nombre d'"instance" soit implémenté +de façon unique. Ensuite, rechargez le pilote vboxnet en utilisant :</para> + + <para><screen>add_drv vboxnet</screen>Maintenant, activez toutes les + interfaces en utilisant <computeroutput>ifconfig vboxnetX plumb</computeroutput> + (où X peut être 0, 1 ou 2 dans ce cas) et une fois activée, vous pouvez + alors configurer l'interface comme n'importe quelle interface réseau.</para> + + <para>Pour que les paramètres de vos nouvelles interfaces réseaux persistent + entre les redémarrages, vous devrez éditer les fichiers + <computeroutput>/etc/netmasks</computeroutput>, utilisez NWAM + <computeroutput>/etc/nwam/llp</computeroutput> et ajoutez les entrées adéquates + pour définir le masque réseau et l'IP statique de chacune de ces interfaces. + L'installeur de VirtualBox ne met à jour ces fichiers de configuration que + pour l'interface "vboxnet0" qu'il crée par défaut.</para> + </sect1> + + <sect1 id="solariscodedumper"> + <title>Configurer le CoreDumper sur les hôtes Solaris</title> + + <para>VirtualBox est capable de produire ses propres fichiers cœur pour + un débogage étendu si quelque chose ne va pas. Cela n'est actuellement + disponible que sur les hôtes Solaris.</para> + + <para>On peut activer le CoreDumper en utilisant la commande + suivante :</para> + + <para><screen>VBoxManage setextradata "nom VM" VBoxInternal2/CoreDumpEnabled 1</screen></para> + + <para>Vous pouvez spécifier le répertoire à utiliser pour y mettre les + fichiers cœur avec cette commande :</para> + + <para><screen>VBoxManage setextradata "nom VM" VBoxInternal2/CoreDumpDir <chemin-du-répertoire></screen>Assurez-vous + que le répertoire que vous spécifiez se trouve sur un volume ayant un espace + disque suffisant et où le processus VirtualBox a assez de droits pour écrire + des fichiers dans ce répertoire. Si vous sautez cette commande et si vous + ne spécifiez aucun répertoire où mettre les fichiers cœur, le répertoire + actuel de l'exécutable de VirtualBox sera utilisé (ce qui échouerait + vraisemblablement au moment de l'écriture des cœurs car ils sont + protégés par des droits administrateur). Il est recommandé que vous définissiez + explicitement un répertoire d'envoi des fichiers cœur.</para> + + <para>Vous devez spécifier le moment où les CoreDumper de VirtualBox devraient + être récupérés. Cela se fait en utilisant les commandes suivantes :</para> + + <para><screen>VBoxManage setextradata "nom VM" VBoxInternal2/CoreDumpReplaceSystemDump 1 +VBoxManage setextradata "nom VM" VBoxInternal2/CoreDumpLive 1</screen>Vous devrez +passer au moins une des deux commandes ci-dessus si vous avez activé les CoreDumper.</para> + + <para>Le réglage de <computeroutput>CoreDumpReplaceSystemDump</computeroutput> + prévoit que la VM outrepasse le mécanisme cœur de l'hôte et en cas + de plantage, seul le vidage VirtualBox produirait le fichier + cœur.</para> + + <para>Le réglage de <computeroutput>CoreDumpLive</computeroutput> demande + à la VM de produire des cœurs à chaque fois que le processus de la + VM reçoit un signal <computeroutput>SIGUSR2</computeroutput>. Après avoir + produit le fichier cœur, la VM ne sera pas interrompu et continuerà + fonctionner. Vous pouvez ainsi récupérer des cœurs du processus de + la VM en utilisant :</para> + + <para><screen>kill -s SIGUSR2 <VM-process-id></screen></para> + + <para>Les fichiers cœur produits par le CoreDumper de VirtualBox ont + la forme <computeroutput>core.vb.<ProcessName>.<ProcessID></computeroutput>, + par exemple <computeroutput>core.vb.VBoxHeadless.11321</computeroutput>.</para> + </sect1> + + <sect1 id="guitweaks"> + <title>Déverrouiller l'interface graphique du gestionnaire de VirtualBox</title> + + <sect2> + <title>Personnalisation du gestionnaire de VM</title> + + <para>Il existe plusieurs paramètres de personnalisation avancés pour + déverrouiller le gestionnaire de VirtualBox, c'est-à-dire pour supprimer + des fonctionnalités que l'utilisateur ne devrait pas voir.</para> + + <para><screen>VBoxManage setextradata global GUI/Customizations OPTION[,OPTION...]</screen></para> + + <para>où <computeroutput>OPTION</computeroutput> est un des mots-clés + suivants :<glosslist> + <glossentry> + <glossterm><computeroutput>noSelector</computeroutput></glossterm> + + <glossdef> + <para>N'autorise pas le démarrage du gestionnaire de VirtualBox. + Ceci affichera une fenêtre contenant un vrai message d'erreur.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>noMenuBar</computeroutput></glossterm> + + <glossdef> + <para>Les fenêtres de la VM ne contiendront pas de barre de menus.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>noStatusBar</computeroutput></glossterm> + + <glossdef> + <para>Les fenêtres de la VM ne contiendront pas de barre d'état.</para> + </glossdef> + </glossentry> + </glosslist></para> + + <para>Pour désactiver toutes les personnalisations du gestionnaire de + VM, faites <screen>VBoxManage setextradata global GUI/Customizations</screen></para> + </sect2> + <sect2> + <title>Personnalisation du sélecteur de VM</title> + <para>Les paramètres de données supplémentaires suivants sont disponibles, + par machine, pour modifier le comportement de la fenêtre du sélecteur de VM + selon certaines VMs :</para> + <screen>VBoxManage setextradata "VM name" PARAMETRE true</screen> + <para>où <computeroutput>PARAMETRE</computeroutput> peut être :</para> + <glosslist> + <glossentry> + <glossterm><computeroutput>GUI/HideDetails</computeroutput></glossterm> + <glossdef> + <para>N'affiehe pas la configuration de VM d'une VM en particulier. + Les fenêtre des détails sera tout simplement vide si on sélectionne + cette VM.</para> + </glossdef> + </glossentry> + <glossentry> + <glossterm><computeroutput>GUI/PreventReconfiguration</computeroutput></glossterm> + <glossdef> + <para>Ne permet pas à l'utilisateur d'ouvrir la boîte de dialogue + des paramètres d'une VM en particulier.</para> + </glossdef> + </glossentry> + <glossentry> + <glossterm><computeroutput>GUI/PreventSnapshotOperations</computeroutput></glossterm> + <glossdef> + <para>Empêche de prendre des instantanés d'une VM avec la GUI, pendant + son exécution ou quand on coupe la VM.</para> + </glossdef> + </glossentry> + <glossentry> + <glossterm><computeroutput>GUI/HideFromManager</computeroutput></glossterm> + <glossdef> + <para>Cache une VM en particulier dans la fenêtre du sélecteur de VM.</para> + </glossdef> + </glossentry> + <glossentry> + <glossterm><computeroutput>GUI/PreventApplicationUpdate</computeroutput></glossterm> + <glossdef> + <para>Désactive la vérification automatique des mises à jour et + cache l'élément de menu correspondant.</para> + </glossdef> + </glossentry> + </glosslist> + + <para>Merci de remarquer que ces paramètres n'empêchent pas l'utilisateur de + reconfigurer la VM avec <computeroutput>VBoxManage modifyvm</computeroutput>.</para> + </sect2> + + <sect2> + <title>Configurer les entrées du menu de sélection de VM</title> + + <para>Vous pouvez désactiver (c'est-à-dire inhiber) certaines entrées + de l'onglet des paramètres globaux dans le sélecteur de VM :</para> + <screen>VBoxManage setextradata global GUI/RestrictedGlobalSettingsPages OPTION[,OPTION...]</screen> + <para>où <computeroutput>OPTION</computeroutput> est un des mots-clés + suivants :</para><glosslist> + <glossentry> + <glossterm><computeroutput>General</computeroutput></glossterm> + <glossdef> + <para>N'affiche pas l'onglet <emphasis>Général</emphasis> des + paramètres.</para> + </glossdef> + </glossentry> + <glossentry> + <glossterm><computeroutput>Input</computeroutput></glossterm> + <glossdef> + <para>N'affiche pas l'onglet <emphasis>Entrée</emphasis> des + paramètres.</para> + </glossdef> + </glossentry> + <glossentry> + <glossterm><computeroutput>Update</computeroutput></glossterm> + <glossdef> + <para>N'affiche pas l'onglet <emphasis>Mise à jour</emphasis> des + paramètres.</para> + </glossdef> + </glossentry> + <glossentry> + <glossterm><computeroutput>Language</computeroutput></glossterm> + <glossdef> + <para>N'affiche pas l'onglet <emphasis>Langue</emphasis> des + paramètres.</para> + </glossdef> + </glossentry> + <glossentry> + <glossterm><computeroutput>Display</computeroutput></glossterm> + <glossdef> + <para>N'affiche pas l'onglet <emphasis>AAffichage</emphasis> des + paramètres.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>Network</computeroutput></glossterm> + <glossdef> + <para>N'affiche pas l'onglet <emphasis>Réseau</emphasis> des + paramètres.</para> + </glossdef> + </glossentry> + <glossentry> + <glossterm><computeroutput>Extensions</computeroutput></glossterm> + <glossdef> + <para>N'affiche pas l'onglet <emphasis>Extensions</emphasis> des + paramètres.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>Proxy</computeroutput></glossterm> + <glossdef> + <para>N'affiche pas l'onglet <emphasis>Proxy</emphasis> des + paramètres.</para> + </glossdef> + </glossentry> + </glosslist> + <para>C'est un paramètre global. Toutes les combinaisons de ce qui précède + est possible. Pour restaurer le comportement par défaut, utilisez</para> + <screen>VBoxManage setextradata global GUI/RestrictedGlobalSettingsPages</screen> + + </sect2> + + + + <sect2> + <title>Configurer les entrées du menu de la fenêtre d'une VM</title> + + <para>Vous pouvez désactiver (c'est-à-dire inhiber) certaines actions + du menu dans la fenêtre de la VM :</para> + <screen>VBoxManage setextradata "nom VM" GUI/RestrictedRuntimeMenus OPTION[,OPTION...]</screen> + + <para>où <computeroutput>OPTION</computeroutput> est l'un des mots-clés + suivants :</para><glosslist> + <glossentry> + <glossterm><computeroutput>All</computeroutput></glossterm> + <glossdef> + <para>N'affiche pas de menu dans la fenêtre de la VM.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>Machine</computeroutput></glossterm> + <glossdef> + <para>N'affiche pas le menu <emphasis>Machine</emphasis> dans la fenêtre + de la VM.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>View</computeroutput></glossterm> + <glossdef> + <para>N'affiche pas le menu <emphasis>Vue</emphasis> dans la fenêtre de la + VM.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>Devices</computeroutput></glossterm> + <glossdef> + <para>N'affiche pas le menu <emphasis>Périphéhiques</emphasis> dans la + fenêtre de la VM.</para> + </glossdef> + </glossentry> + <glossentry> + <glossterm><computeroutput>Help</computeroutput></glossterm> + <glossdef> + <para>N'affiche pas le menu <emphasis>Aide</emphasis> dans la fenêtre de + la VM.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>Debug</computeroutput></glossterm> + <glossdef> + <para>N'affiche pas le menu <emphasis>Débogage</emphasis> dans la fenêtre + de la VM. Le menu de débogage n'est visible que si on démarre la GUI avec + des paramètres spécial en ligne de commandes ou des paramètres de + variables d'environnement particulières.</para> + </glossdef> + </glossentry> + + </glosslist> + + <para>C'est un paramètre spécifique à chaque VM. Toute combinaison de ce + qui précède est possible. Pour restaurer le comportement par défaut, lancez :</para> + <screen>VBoxManage setextradata "VM name" GUI/RestrictedRuntimeMenus</screen> + + </sect2> + <sect2> + <title>Configurer les entrées de la barre d'état de la fenêtre de la VM</title> + + <para>Vous pouvez désactiver (c'est-à-dire inhiber) certains éléments + de la barre d'état :</para> + <screen>VBoxManage setextradata "nom VM" GUI/RestrictedStatusBarIndicators OPTION[,OPTION...]</screen> + + <para>où <computeroutput>OPTION</computeroutput> est un des mots-clés + suivants :</para><glosslist> + <glossentry> + <glossterm><computeroutput>HardDisks</computeroutput></glossterm> + <glossdef> + <para>N'affiche pas l'icône du disque dur dans la barre d'état de la + fenêtre de la VM. Par défaut, l'icône de disque dur ne s'affiche que + si la configuration de la VM contient un ou plusieurs disques durs.</para> + </glossdef> + </glossentry> + <glossentry> + <glossterm><computeroutput>OpticalDisks</computeroutput></glossterm> + <glossdef> + <para>N'affiche pas l'icône du CD dans la barre d'état de la fenêtre + de la VM. Par défaut, l'icône du CD ne s'affiche que si la configuration + de la VM contient un ou plusieurs lecteurs CD.</para> + </glossdef> + </glossentry> + <glossentry> + <glossterm><computeroutput>FloppyDisks</computeroutput></glossterm> + <glossdef> + <para>N'affiche pas l'icône du lecteur amovible dans la barre d'état + de la fenêtre de la VM. Par défaut, l'icône du lecteur amovible ne + s'affiche que si la configuration de la VM contient un ou plusieurs + lecteurs amovibles.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>Network</computeroutput></glossterm> + <glossdef> + <para>N'affiche pas l'icône du réseau dans la barre d'état de la + fenêtre de la VM. Par défaut, l'icône de réseau ne s'affiche que si la + configuration de la VM contient un ou plusieurs adaptateurs réseaux.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>USB</computeroutput></glossterm> + <glossdef> + <para>N'affiche pas l'icône de l'USB dans la barre d'état.</para> + </glossdef> + </glossentry> + <glossentry> + <glossterm><computeroutput>SharedFolders</computeroutput></glossterm> + <glossdef> + <para>N'affiche pas l'icône des dossiers dans la barre d'état.</para> + </glossdef> + </glossentry> + <glossentry> + <glossterm><computeroutput>VideoCapture</computeroutput></glossterm> + <glossdef> + <para>N'affiche pas l'icône de la capture vidéo dans la barre d'état.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>Features</computeroutput></glossterm> + <glossdef> + <para>N'affiche pas l'icône des fonctions du processeur dans la barre + d'état.</para> + </glossdef> + </glossentry> + <glossentry> + <glossterm><computeroutput>Mouse</computeroutput></glossterm> + <glossdef> + <para>N'affiche pas l'icône de la souris dans la barre d'état.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>Keyboard</computeroutput></glossterm> + <glossdef> + <para>N'affiche pas l'icône du clavier dans la barre d'état.</para> + </glossdef> + </glossentry> + + </glosslist> + + <para>C'est un paramètre individuel à chaque VM. Toutes les combinaisons de + ce qui précède est possible. Si vous spécifiez toutes les options, aucune + icône n'est affichée dans la barre d'état de la fenêtre de la VM. Pour + restaurer le comportement par défaut, utilisez</para> + <screen>VBoxManage setextradata "VM name" GUI/RestrictedStatusBarIndicators</screen> + </sect2> + + <sect2> + <title>Configurer les modes visuels de la fenêtre</title> + + <para>Vous pouvez désactiver (c'est-à-dire inhiber) certains modes visuels de la VM :</para> + <screen>VBoxManage setextradata "nom VM" GUI/RestrictedVisualStates OPTION[,OPTION...]</screen> + + <para>où <computeroutput>OPTION</computeroutput> est un des mots-clés + suivants :</para><glosslist> + <glossentry> + <glossterm><computeroutput>Fullscreen</computeroutput></glossterm> + <glossdef> + <para>Ne pas autoriser le passage de la VM en mode plein-écran.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>Seamless</computeroutput></glossterm> + <glossdef> + <para>Ne pas autoriser le passage de la VM en mode transparent.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>Scale</computeroutput></glossterm> + <glossdef> + <para>Ne pas autoriser le passage de la VM en mode échelonné.</para> + </glossdef> + </glossentry> + + </glosslist> + + <para>C'est un paramètre individuel à chaque VM. Vous pouvez combiner + n'importe comment ce qui précède. Pour restaurer le comportement par défaut, + utilisez</para> + + <screen>VBoxManage setextradata "nom VM" GUI/RestrictedVisualStates</screen> + + </sect2> + + + <sect2> + <title>Personnalisation de la touche hôte</title> + + <para>Pour désactiver toutes les combinaisons de touches de l'hôte, + ouvrez les préférences et modifiez la touche hôte sur <emphasis>Aucune</emphasis>. + Cela pourrait être utile lors de l'utilisation de VirtualBox en mode + kiosque.</para> + + <para>Pour redéfinir ou désactiver certaines actions de la touche hôte, + utilisez la commande suivante :</para> + + <screen>VBoxManage setextradata global GUI/Input/MachineShortcuts "FullscreenMode=F,...."</screen> + + <para>La liste suivante montre les actions possibles avec la touche + hôte ainsi que leur raccourci par défaut avec la touche hôte. Le paramétrage + d'une action sur <emphasis>Aucune</emphasis> désactivera cette action + de la touche hôte.</para> + <table> + <title>ignoreme</title> + <tgroup cols="3"> + <tbody> + <row> + <entry><emphasis role="bold">Action</emphasis></entry> + <entry><emphasis role="bold">Touche par défaut</emphasis></entry> + <entry><emphasis role="bold">Action</emphasis></entry> + </row> + <row> + <entry><computeroutput>TakeSnapshot</computeroutput></entry> + <entry>T</entry> + <entry>prend un instantané</entry> + </row> + <row> + <entry><computeroutput>TakeScreenshot</computeroutput></entry> + <entry>E</entry> + <entry>fait une impression d'écran</entry> + </row> + <row> + <entry><computeroutput>MouseIntegration</computeroutput></entry> + <entry>I</entry> + <entry>bascule l'intégration de la souris</entry> + </row> + <row> + <entry><computeroutput>TypeCAD</computeroutput></entry> + <entry>Del</entry> + <entry>envoie Ctrl+Alt+Supp</entry> + </row> + <row> + <entry><computeroutput>TypeCABS</computeroutput></entry> + <entry>Backspace</entry> + <entry>envoie Ctrl+Alt+Effacement</entry> + </row> + <row> + <entry><computeroutput>Pause</computeroutput></entry> + <entry>P</entry> + <entry>Met la VM en pause</entry> + </row> + <row> + <entry><computeroutput>Reset</computeroutput></entry> + <entry>R</entry> + <entry>réinitialisation (brutale) de l'invité</entry> + </row> + <row> + <entry><computeroutput>SaveState</computeroutput></entry> + <entry></entry> + <entry>enregistre l'état de la VM et ferme la VM</entry> + </row> + <row> + <entry><computeroutput>Shutdown</computeroutput></entry> + <entry>H</entry> + <entry>appuie sur le bouton ACPI (virtuel) d'alimentation</entry> + </row> + <row> + <entry><computeroutput>PowerOff</computeroutput></entry> + <entry></entry> + <entry>coupe la VM (sans sauvegarder son état !)</entry> + </row> + <row> + <entry><computeroutput>Close</computeroutput></entry> + <entry>Q</entry> + <entry>affiche la boîte de dialogue de fermeture de la VM</entry> + </row> + <row> + <entry><computeroutput>FullscreenMode</computeroutput></entry> + <entry>F</entry> + <entry>passe la VM en plein écran</entry> + </row> + <row> + <entry><computeroutput>SeamlessMode</computeroutput></entry> + <entry>L</entry> + <entry>passe la VM en mode transparent</entry> + </row> + <row> + <entry><computeroutput>ScaleMode</computeroutput></entry> + <entry>C</entry> + <entry>passe la VM en mode échelonné</entry> + </row> + <row> + <entry><computeroutput>GuestAutoResize</computeroutput></entry> + <entry>G</entry> + <entry>redimensionne automatiquement la fenêtre de l'invité</entry> + </row> + <row> + <entry><computeroutput>WindowAdjust</computeroutput></entry> + <entry>A</entry> + <entry>redimensionne immédiatement la fenêtre invité</entry> + </row> + <row> + <entry><computeroutput>PopupMenu</computeroutput></entry> + <entry>Home</entry> + <entry>affiche un menu en mode plein écran/transparent</entry> + </row> + <row> + <entry><computeroutput>SettingsDialog</computeroutput></entry> + <entry>S</entry> + <entry>ouvre la boîte de dialogue des paramètres de la VM</entry> + </row> + <row> + <entry><computeroutput>InformationDialog</computeroutput></entry> + <entry>N</entry> + <entry>affiche la fenêtre d'informations sur la VM</entry> + </row> + <row> + <entry><computeroutput>NetworkAdaptersDialog</computeroutput></entry> + <entry></entry> + <entry>affiche la boîte de dialogue des adaptateurs réseaux</entry> + </row> + <row> + <entry><computeroutput>SharedFoldersDialog</computeroutput></entry> + <entry></entry> + <entry>affiche la boîte de dialogue des dossiers partagés de la + VM</entry> + </row> + <row> + <entry><computeroutput>InstallGuestAdditions</computeroutput></entry> + <entry>D</entry> + <entry>mounte l'ISO contenant les suppléments invité</entry> + </row> + </tbody> + </tgroup> + </table> + + <para>Pour désactiver le mode plein-écran ainsi que le mode transparent, + utilisez la commande suivante : + <screen>VBoxManage setextradata global GUI/Input/MachineShortcuts "FullscreenMode=None,SeamlessMode=None"</screen> + </para> + + </sect2> + <sect2> + <title>Action quand la VM s'arrête</title> + + <para>Vous pouvez interdire (c'est-à-dire inhiber) certaines actions + quand la VM s'arrête. Pour interdire des actions spécifiques, + tapez :</para> + + <para><screen>VBoxManage setextradata "nom VM" GUI/RestrictedCloseActions OPTION[,OPTION...]</screen></para> + + <para>où <computeroutput>OPTION</computeroutput> est l'un des mots-clés + suivants :</para><glosslist> + <glossentry> + <glossterm><computeroutput>SaveState</computeroutput></glossterm> + + <glossdef> + <para>N'autorise pas l'utilisateur à sauvegarder l'état de la VM + quand elle s'arrête.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>Shutdown</computeroutput></glossterm> + + <glossdef> + <para>N'autorise pas l'utilisateur à éteindre la VM en envoyant + l'événement ACPI d'extinction à l'invité.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>PowerOff</computeroutput></glossterm> + + <glossdef> + <para>N'autorise pas l'utilisateur à couper la VM.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>PowerOffRestoringSnapshot</computeroutput></glossterm> + + <glossdef> + <para>N'autorise pas l'utilisateur à revenir au dernier instantané + lors de l'extinction de la VM.</para> + </glossdef> + </glossentry> + </glosslist> + + <para>Il s'agit d'un paramètre individuel à chaque VM. Toutes les combinaison de ce qui précède est possible. Si + vous spécifiez toutes les options, la VM ne pourra pas être éteinte.</para> + </sect2> + </sect1> + + <sect1 id="vboxwebsrv-daemon"> + <title>Démarrer le service Web de VirtualBox automatiquement</title> + + <para>Le service Web de VirtualBox + (<computeroutput>vboxwebsrv</computeroutput>) est utilisé pour contrôler + VirtualBox à distance. Il est documenté en détails dans le Software + Development Kit (SDK) de VirtualBox ; merci de voir <xref linkend="VirtualBoxAPI" />. + Comme la base client qui utilise cette interface grossit, nous avons ajouté + des scripts de démarrage pour les systèmes d'exploitation que nous supportons. + Les sections suivantes décrivent la manière de les utiliser. Le service + Web de VirtualBox ne démarre jamais automatiquement suite à une installation + standard.</para> + + <sect2 id="vboxwebsrv-linux"> + <title>Linux : démarrer le service web via <computeroutput>init</computeroutput></title> + + <para>Sur Linux, le service web peut être démarré automatiquement au + démarrge de l'hôte en ajoutant les paramètres adéquats au fichier + <computeroutput>/etc/default/virtualbox</computeroutput>. Un paramètre est + obligatoire, <computeroutput>VBOXWEB_USER</computeroutput>, qui doit être + défini sur l'utilisateur qui démarrera alors les VMs. Les paramètres + du tableau ci-dessous commencent tous par <computeroutput>VBOXWEB_</computeroutput> + (<computeroutput>VBOXWEB_HOST</computeroutput>, + <computeroutput>VBOXWEB_PORT</computeroutput> etc.) : + <table> + <title>ignored</title> + <tgroup cols="3"> + <tbody> + <row> + <entry><emphasis role="bold">Paramètre</emphasis></entry> + <entry><emphasis role="bold">Description</emphasis></entry> + <entry><emphasis role="bold">Par défaut</emphasis></entry> + </row> + <row> + <entry><computeroutput>USER</computeroutput></entry> + <entry>L'utilisateur sous lequel fonctionne le service web</entry> + <entry></entry> + </row> + <row> + <entry><computeroutput>HOST</computeroutput></entry> + <entry>L'hôte où on doit chercher le service web</entry> + <entry>localhost</entry> + </row> + <row> + <entry><computeroutput>PORT</computeroutput></entry> + <entry>Le port où on doit chercher le service web</entry> + <entry>18083</entry> + </row> + <row> + <entry><computeroutput>SSL_KEYFILE</computeroutput></entry> + <entry>Fichier de clé et du certificat du serveur, format PEM</entry> + <entry></entry> + </row> + <row> + <entry><computeroutput>SSL_PASSWORDFILE</computeroutput></entry> + <entry>Nom du fichier mot de passe de la clé du serveur</entry> + <entry></entry> + </row> + <row> + <entry><computeroutput>SSL_CACERT</computeroutput></entry> + <entry>Fichier de certificat CA, format PEM</entry> + <entry></entry> + </row> + <row> + <entry><computeroutput>SSL_CAPATH</computeroutput></entry> + <entry>Chemin du certificat CA</entry> + <entry></entry> + </row> + <row> + <entry><computeroutput>SSL_DHFILE</computeroutput></entry> + <entry>Nom du fichier DH ou longueur de la clé DH en octets</entry> + <entry></entry> + </row> + <row> + <entry><computeroutput>SSL_RANDFILE</computeroutput></entry> + <entry>Fichier contenant l'amorce du générateur de nombre aléatoire</entry> + <entry></entry> + </row> + <row> + <entry><computeroutput>TIMEOUT</computeroutput></entry> + <entry>Timout de la session en secondes ; 0 désactive le timeout</entry> + <entry>300</entry> + </row> + <row> + <entry><computeroutput>CHECK_INTERVAL</computeroutput></entry> + <entry>Fréquence des vérifications des timeouts en secondes</entry> + <entry>5</entry> + </row> + <row> + <entry><computeroutput>THREADS</computeroutput></entry> + <entry>Nombre maximum de sessions simultanées possibles</entry> + <entry>100</entry> + </row> + <row> + <entry><computeroutput>KEEPALIVE</computeroutput></entry> + <entry>Nombre maximum de requêtes avant de fermer un socket</entry> + <entry>100</entry> + </row> + <row> + <entry><computeroutput>ROTATE</computeroutput></entry> + <entry>Nombre de fichiers journaux ; 0 désactive la journalisation</entry> + <entry>10</entry> + </row> + <row> + <entry><computeroutput>LOGSIZE</computeroutput></entry> + <entry>Taille maximum d'un fichier journal en octets à récupérer</entry> + <entry>1Mo</entry> + </row> + <row> + <entry><computeroutput>LOGINTERVAL</computeroutput></entry> + <entry>Délai maximum en secondes pour ratraper l'enregistrement des journaux</entry> + <entry>1 day</entry> + </row> + </tbody> + </tgroup> + </table> + </para> + + <para>La définition du paramètre <computeroutput>SSL_KEYFILE</computeroutput> + active le support SSL/TLS. L'utilisation de chiffrement est fortement + recommandée, car sans cela, tout (même les mots de passe) sera transféré + en clair.</para> + </sect2> + + <sect2 id="vboxwebsrv-solaris"> + <title>Solaris: démarrer le service web par SMF</title> + + <para>Sur les hôtes Solaris, le démon du service Web de VirtualBox est + intégré à l'environnement SMF. Vous pouvez modifier les paramètres mais + vous n'êtes pas obligé si ceux par défaut ci-dessous correspondent déjà à + vos besoins :<screen>svccfg -s svc:/application/virtualbox/webservice:default setprop config/host=localhost +svccfg -s svc:/application/virtualbox/webservice:default setprop config/port=18083 +svccfg -s svc:/application/virtualbox/webservice:default setprop config/user=root</screen></para> + + <para>Le tableau de la section précédente montrant le nom des paramètres + et leurs réglages par défaut s'applique également à Solaris. Vous devez + passer le nom des paramètres en minuscules et ajouter le préfixe + <computeroutput>config/</computeroutput>, par exemple + <computeroutput>config/user</computeroutput> ou + <computeroutput>config/ssl_keyfile</computeroutput>. Si vous avez changé + quelque chose, n'oubliez pas de lancer la commande suivante pour que les + changements aient un effet immédiat :<screen>svcadm refresh svc:/application/virtualbox/webservice:default</screen></para> + + <para>Si vous oubliez la commande ci-dessus, les paramètres ci-dessus + seront utilisés au moment de l'activation du service. Vérifiez les + réglages actuels des propriétés avec :<screen>svcprop -p config svc:/application/virtualbox/webservice:default</screen></para> + + <para>Lorsque tout est bien configuré, vous pouvez démarrer le service + web de VirtualBox avec la commande suivante :<screen>svcadm enable svc:/application/virtualbox/webservice:default</screen></para> + + <para>Pour plus d'informations sur SMF, merci de vous reporter à la + documentation de Solaris.</para> + </sect2> + + <sect2 id="vboxwebsrv-osx"> + <title>Mac OS X : démarrer le service web par launchd</title> + + <para>Sur Mac OS X, on utilise launchd pour démarrer le service web de + VirtualBox. Vous pouvez trouver un fichier exemple de configuration dans + <computeroutput>$HOME/Library/LaunchAgents/org.virtualbox.vboxwebsrv.plist</computeroutput>. + Vous pouvez l'activer en changeant la clé + <computeroutput>Disabled</computeroutput> de + <computeroutput>true</computeroutput> en + <computeroutput>false</computeroutput>. Pour démarrer manuellement + le service, utilisez la commande suivante : <screen>launchctl load ~/Library/LaunchAgents/org.virtualbox.vboxwebsrv.plist</screen> + Pour des informations supplémentaires sur la façon dont vous pourriez + configurer les services de launchd, voir <literal><ulink + url="http://developer.apple.com/mac/library/documentation/MacOSX/Conceptual/BPSystemStartup/BPSystemStartup.html">http://developer.apple.com/mac/library/documentation/MacOSX/Conceptual/BPSystemStartup/BPSystemStartup.html</ulink></literal>.</para> + </sect2> + </sect1> + + <sect1 id="vboxwatchdog"> + <title>Surveillance VirtualBox (Watchdog)</title> + <para>À partir de VirtualBox 4.2, le service de ballon de mémoire, connu + jadis comme le <computeroutput>VBoxBalloonCtrl</computeroutput>, a été + renommé en VBoxWatchdog, ce qui intègre à présent plusieurs services de + l'hôte qui sont conçus pour fonctionner dans un environnement serveur.</para> + + <para>Il s'agit des services : <itemizedlist> + <listitem> + <para>Contrôle du ballon de mémoire, qui prend en charge automatiquement + un ballon de mémoire configuré pour une VM (voir <xref linkend="guestadd-balloon" /> + pour une présentation du jeu de ballon avec la méomire). Cela + est surtout utile pour les environnements serveurs où les VMs peuvent + solliciter de manière dynamique plus ou moins de mémoire pendant + leur fonctionnement.</para> + + <para>Le service vérifie régulièrement le ballon d'une + VM et sa RAM invitée disponible et il ajuste automatiquement + le ballon de mémoire en l'augmentant ou le réduisant selon + le cas. Cette gestion ne s'applique qu'aux VMs en fonction ayant + installé des suppléments invité récents.</para> + </listitem> + <listitem> + <para>La détection d'un isolement de l'hôte, qui offre un moyen de + détecter si l'hôte ne peut plus atteindre une instance en particulier + du serveur VirtualBox et qui prend les mesures appropriées telles que + l'extinction, la sauvegarde de l'état actuel, voire la coupure + de certaines VMs.</para> + </listitem> + </itemizedlist></para> + + <para> + Vous pouvez spécifier toutes les valeurs de configuration soit en ligne + de commande, soit par des données supplémentaires globales, tandis que + les valeurs en ligne de commandes ont toujours une priorité élevée si on + les définit. Certaines des valeurs de configuration peuvent être également + spécifiées sur une base individuelle par VM. Donc, l'ordre pour regarder + les paramètres est : ligne de comande, données supplémentaires pour + chaque VM (s'il y en a), données supplémentaires globales. + </para> + + <sect2 id="vboxwatchdog-ballonctrl"> + <title>Contrôle du jeu de ballon de mémoire</title> + <para>Le contrôle des ballons de mémoire augmente ou réduit le ballon + de mémoire des VMs à partir de la mémoire disponible sur les VMs et + de la taille maximale désirée d'un ballon.</para> + + <para>Pour régler le contrôle du jeu de ballons mémoires, il faut + paramétrer la taille que peut atteindre une VM. Vous pouvez le faire en + ligne de commande avec + <screen>--balloon-max <Taille en Mo></screen>, individuellement + pour chaque VM avec les données supplémentaires avec + <screen>VBoxManage setextradata <VM-Name> VBoxInternal2/Watchdog/BalloonCtrl/BalloonSizeMax <Taille en Mo></screen> + ou en utilisant une donnée supplémentaire globale avec + <screen>VBoxManage setextradata global VBoxInternal2/Watchdog/BalloonCtrl/BalloonSizeMax <Taille en Mo></screen> + <note><para>Si vous ne spécifiez pas de taille maximale du ballon avec au + moins un des paramètres ci-aessus, vous ne pourrez faire aucun jeu + de ballon.</para></note> + </para> + + <para>Vous pouvez régler la taille incrémentale d'un ballon, en Mo, + soit en ligne de commandes avec <screen>--balloon-inc <Taille en Mo></screen>, + soit en utilisant une donnée supplémentaire globale avec + <screen>VBoxManage setextradata global VBoxInternal2/Watchdog/BalloonCtrl/BalloonIncrementMB <Taille en Mo></screen> + La taille d'incrémentation par défaut est de 256 Mo si vous ne spécifiez + rien.</para> + + <para>La même chose marche pour une taille minimale incrémentée de ballon : + en ligne de commande avec + <screen>--balloon-dec <Taille en Mo></screen> ou en utilisant + une donnée supplémentaire globale avec + <screen>VBoxManage setextradata global VBoxInternal2/Watchdog/BalloonCtrl/BalloonDecrementMB <Taille en Mo></screen> + La taille minimale incrémentale d'un ballon par défaut est de 128 Mo si + vous n'indiquez rien.</para> + + <para>Pour définir la limite inférieure d'un ballon en Mo, c'est en + ligne de commande avec <screen>--balloon-lower-limit <Taille en Mo></screen> + ou par une donnée supplémentaire globale avec + <screen>VBoxManage setextradata global VBoxInternal2/Watchdog/BalloonCtrl/BalloonLowerLimitMB <Taille en Mo></screen>. + La limite inférieure par défaut est de 128 si vous n'indiquez rien.</para> + </sect2> + + <sect2 id="vboxwatchdog-hostisln"> + <title>Détection de l'isolement de l'hôte</title> + <para>Pour détecter si l'hôte va être isolé, c'est-à-dire qu'il ne va plus + pouvoir atteindre la session du serveur VirtualBox, l'hôte doit régler + une valeur dans une donnée supplémentaire pour une période de temps. + Si cette valeur n'est pas définie dans le délai du timeout, une fois ce + délai dépassé, ce qu'on appelle une réponse à l'isolement de l'hôte + sera envoyée aux VMs gérées. Vous pouvez contrôler les VMs gérées + en définissant des groupes de VM et en affectant des VMs à ces groupes. + Par défaut, aucun groupe n'est défini, ce qui veut dire que toutes les + VMs du serveur seront gérées lorsqu'aucune réponse hôte ne sera reçue + dans les 30 secondes.</para> + + <para>Pour définir en ligne de commandes les groupes gérés par la + détection de l'isolement de l'hôte : + <screen>--apimon-groups=<string[,stringN]></screen> ou utilisez + une donnée supplémentaire globale avec + <screen>VBoxManage setextradata global VBoxInternal2/Watchdog/APIMonitor/Groups <chaîne[,chaîneN]></screen> + </para> + + <para>Pour définir le timeout d'isolement de l'hôte en ligne de + commandes : + <screen>--apimon-isln-timeout=<ms></screen> ou utilisez une donnée + supplémentaire globale avec + <screen>VBoxManage setextradata global VBoxInternal2/Watchdog/APIMonitor/IsolationTimeoutMS <ms></screen> + </para> + + <para>Pour régler la réponse d'isolement finale en ligne de commandes : + <screen>--apimon-isln-response=<cmd></screen> ou en utilisant + une donnée supplémentaire globale avec + <screen>VBoxManage setextradata global VBoxInternal2/Watchdog/APIMonitor/IsolationResponse <cmd></screen> + Les commandes de réponse suivantes sont disponibles : + <itemizedlist> + <listitem> + <para><computeroutput>none</computeroutput>, qui ne fait rien.</para> + </listitem> + <listitem> + <para><computeroutput>pause</computeroutput>, qui met + en pause l'exécution d'une VM.</para> + </listitem> + <listitem> + <para><computeroutput>poweroff</computeroutput>, qui éteint + la VM en appuyant sur le bouton d'alimentation de la VM. La VM + n'aura aucune chance de sauvegarder des données ou de lancer + le processus d'extinction.</para> + </listitem> + <listitem> + <para><computeroutput>save</computeroutput>, qui enregistre + l'état actuel de la machine et qui coupe ensuite la VM. Si la + sauvegarde de l'état de la machine échoue, la VM sera mise en + pause.</para> + </listitem> + <listitem> + <para><computeroutput>shutdown</computeroutput>, qui éteint + la VM gentiment, en envoyant un événement + <computeroutput>ACPI</computeroutput> d'extinction au système + d'exploitation de la VM. L'OS a alors une chance de s'éteindre + proprement.</para> + </listitem> + </itemizedlist> + </para> + </sect2> + + <sect2 id="vboxwatchdog-moreinfo"> + <title>Plus d'informations</title> + <para>Pour des options et des paramètres plus avancés comme la vérification + de la verbosité de la journalisation, l'aide intégrée à la ligne de commande + est accessible avec + <computeroutput>--help</computeroutput>.</para> + </sect2> + + <sect2 id="vboxwatchdog-linux"> + <title>Linux : démarrer le service watchdog via <computeroutput>init</computeroutput></title> + + <para>Sur Linux, vous pouvez démarrer automatiquement le service watchdog + lors du démarrage de l'hôte en ajoutant les paramètres adéquats au fichier + <computeroutput>/etc/default/virtualbox</computeroutput>. Un paramètre est + obligatoire, <computeroutput>VBOXWATCHDOG_USER</computeroutput>, vous devez + le personnaliser avec l'utilisateur qui démarrera les VMs. Pour une rétro + compatibilité, vous pouvez spécifier également <computeroutput>VBOXBALLOONCTRL_USER</computeroutput> + Les paramètres du tableau suivant comment tous par <computeroutput>VBOXWATCHDOG_</computeroutput> + (<computeroutput>VBOXWATCHDOG_BALLOON_INTERVAL</computeroutput>, + <computeroutput>VBOXWATCHDOG_LOGSIZE</computeroutput> etc., et pour les + paramètres qui existaient précédemment, vous pouvez utiliser les paramètres + <computeroutput>VBOXBALLOONCTRL_INTERVAL</computeroutput> etc) : + <table> + <title>ignored</title> + <tgroup cols="3"> + <tbody> + <row> + <entry><emphasis role="bold">Paramètre</emphasis></entry> + <entry><emphasis role="bold">Description</emphasis></entry> + <entry><emphasis role="bold">Réglage par défaut</emphasis></entry> + </row> + <row> + <entry><computeroutput>USER</computeroutput></entry> + <entry>L'utilisateur sous lequel fonctionne le service watchdog</entry> + <entry></entry> + </row> + <row> + <entry><computeroutput>ROTATE</computeroutput></entry> + <entry>Nombre de fichiers journaux ; 0 désactive la gestion des journaux</entry> + <entry>10</entry> + </row> + <row> + <entry><computeroutput>LOGSIZE</computeroutput></entry> + <entry>Taille maximum du fichier journal, en octets, pour faire la gestion</entry> + <entry>1Mo</entry> + </row> + <row> + <entry><computeroutput>LOGINTERVAL</computeroutput></entry> + <entry>Intervalle de secondes maximum en secondes pour faire la + rotation des journaux</entry> + <entry>1 day</entry> + </row> + <row> + <entry><computeroutput>BALLOON_INTERVAL</computeroutput></entry> + <entry>Intervalle de la vérification de la taille du ballon (msec)</entry> + <entry>30000</entry> + </row> + <row> + <entry><computeroutput>BALLOON_INCREMENT</computeroutput></entry> + <entry>Incrémentation de la taille du ballon (Mo)</entry> + <entry>256</entry> + </row> + <row> + <entry><computeroutput>BALLOON_DECREMENT</computeroutput></entry> + <entry>Diminution de la taille du ballon (Mo)</entry> + <entry>128</entry> + </row> + <row> + <entry><computeroutput>BALLOON_LOWERLIMIT</computeroutput></entry> + <entry>Limite la plus basse de la taille du ballon (Mo)</entry> + <entry>64</entry> + </row> + <row> + <entry><computeroutput>BALLOON_SAFETYMARGIN</computeroutput></entry> + <entry>Mémoire libre nécessaire pour diminuer la taille du ballon (Mo)</entry> + <entry>1024</entry> + </row> + </tbody> + </tgroup> + </table> + </para> + </sect2> + + <sect2 id="vboxwatchdog-solaris"> + <title>Solaris : démarrer le service watchdog via SMF</title> + + <para>Sur les hôtes Solaris, le démon du service watchdog de VirtualBox + est intégré à l'environnement SMF. Vous pouvez modifier les paramètres, + mais ce n'est pas obligatoire si ceux par défaut correspondent déjà à vos + besoins :<screen>svccfg -s svc:/application/virtualbox/balloonctrl:default setprop config/balloon_interval=10000 +svccfg -s svc:/application/virtualbox/balloonctrl:default setprop config/balloon_safetymargin=134217728</screen></para> + + <para>Le tableau de la section précédente expliquant les noms des paramètres + et les réglages par défaut s'applique également à Solaris. Vous devez + passer les noms des paramètres en minuscules et ajouter un préfixe + <computeroutput>config/</computeroutput>, par exemple + <computeroutput>config/user</computeroutput> ou + <computeroutput>config/balloon_safetymargin</computeroutput>. Si vous + avez fait un changement, n'oubliez pas de lancer la commande suivante + pour donner aux changements un effet immédiat :<screen>svcadm refresh svc:/application/virtualbox/balloonctrl:default</screen></para> + + <para>Si vous oubliez la commande ci-dessus, les paramètres précédents + seront utilisés lors de l'activation du service. Vérifiez les paramètres + des propriétés actuels avec :<screen>svcprop -p config svc:/application/virtualbox/balloonctrl:default</screen></para> + + <para>Quand tout est configuré correctement, vous pouvez démarrer le service + watchdog de VirtualBox avec la commande suivante :<screen>svcadm enable svc:/application/virtualbox/balloonctrl:default</screen></para> + + <para>Pour plus d'informations sur SMF, merci de vous reporter à la + documentation de Solaris.</para> + </sect2> + + </sect1> + + <sect1 id="otherextpacks"> + <title>Autres packs d'extension</title> + + <para>À partir de VirtualBox 4.2.0, il existe un autre pack d'extension, + <code>VNC</code>, open source et qui remplace l'intégration précédente du + protocole d'accès à distance VNC. C'est du code expérimental et il ne sera + d'abord disponible que dans le paquet du code source de VirtualBox. Une + grande partie du code est issue de contributions d'utilisateurs et elle + n'est en aucun cas supportée par Oracle.</para> + + <para>La gestion du clavier est très sérieusement limitée et seul la couche + du clavier américain fonctionne. Les autres plans de clavier auront au + moins quelques touches, qui produiront de mauvais résultats (avec des + effets souvent très surprenants), et pour les plans ayant des différences + significatives avec le plan de clavier américain, ils sont très probablement + inutilisables.</para> + + <para>Il est possible d'installer à la fois le pack d'extension VirtualBox + d'Oracle VM et VNC, mais on ne peut activer qu'un module VRDE à la fois. + La commande suivante passe en module VRDE de VNC dans VNC : + <screen>VBoxManage setproperty vrdeextpack VNC</screen></para> + + <para>La configuration de l'accès à distance fonctionne de la même façon + que VRDP (voir <xref linkend="vrde" />), avec quelques limites : VNC + ne supporte pas la spécification de plusieurs numéros de ports et + l'authentification se fait différemment. VNC ne peut gérer que l'authentification + par mot de passe et il n'y a aucune possibilité d'utiliser le hachage de + mots de passe. Il ne reste pas d'autre choix que de donner un mot de passe + en clair dans la configuration de VNC, ce qu'on peut faire avec la + commande suivante :<screen>VBoxManage modifyvm "nom VM" --vrdeproperty VNCPassword=secret</screen></para> + + <para>L'utilisateur est responsable du secret de son mot de passe et vous + devriez le supprimer quand vous donnez la configuration d'une VM à quelqu'un + d'autre, quelle que soit la finalité. Certains serveurs VNC prétendent + qu'ils gardent le mot de passe "chiffré dans leur configuration. Ce n'est + pas du vrai chiffrement, ce ne sont que des mots de passe, ce qui est exactement aussi sécurisé que les mots de + passe en clair.</para> + + <para>La commande suivante revient à VRDP (s'il est installé) : + <screen>VBoxManage setproperty vrdeextpack "Oracle VM VirtualBox Extension Pack"</screen></para> + </sect1> + + <sect1 id="autostart"> + <title>Démarrer des machines virtuelles lors de l'amorçage du système</title> + + <para>À partir de VirtualBox 4.2.0, il est possible de démarrer des VMs + automatiquement à l'amorçage du système sur Linux, Solaris et Mac OS X, + pour tous les utilisateurs. </para> + + <sect2 id="autostart-linux"> + <title>Linux : démarrer le service autostart par <computeroutput>init</computeroutput></title> + + <para>Sur Linux, le service autostart s'active en définissant deux variables + de <computeroutput>/etc/default/virtualbox</computeroutput>. La première + est <computeroutput>VBOXAUTOSTART_DB</computeroutput>, qui contient un + chemin absolu vers le répertoire de la base de données existante. + Tous les utilisateurs devraient avoir un accès en écriture au répertoire + pour démarrer automatiquement des machines virtuelles. En outre, vous + devriez donner au répertoire le bit sticky. La deuxième variable est + <computeroutput>VBOXAUTOSTART_CONFIG</computeroutput>, qui fait pointer le + service vers le fichier de configuration d'autostart utilisé lors du + démarrage pour déterminer s'il faut autoriser des utilisateurs individuels + à démarrer une VM automatiquement et les délais de démarrage de la + configuration.Vous pouvez mettre le fichier de configuration dans + <computeroutput>/etc/vbox</computeroutput> et il contient plusieurs options. + Une s'appelle <computeroutput>default_policy</computeroutput> qui contrôle + si le service autostart autorise ou non les utilisateurs non dans la liste + d'exceptions à démarrer des VMs. La liste d'exceptions commence par + <computeroutput>exception_list</computeroutput> et elle contient une liste + de nom d'utilisateurs séparée par des virgules.De plus, vous pouvez + configurer un délai de démarrage propre à chaque utilisateur pour éviter + une surcharge de l'hôte. Une configuration modèle est présentée ci-dessous :</para> + + <para><screen> +# La politique par défaut est d'interdire le démarrage d'une VM, l'autre +# choix étant "allow". +default_policy = deny + +# Bob est autorisé à démarrer des machines virtuelles, mais chacune à intervalle +# de 10 secondes +bob = { + allow = true + startup_delay = 10 +} + +# Alice n'est pas autorisée à démarrer des machines virtuelles, utile pour +# exclure certains utilisateurs si la politique par défaut est allow. +alice = { + allow = false +} + </screen></para> + + <para>Tout utilisateur voulant activer autostart pour des machines en + particulier doit définir le chemin du répertoire de la base de données + autostart avec <screen>VBoxManage setproperty autostartdbpath <Autostart directory></screen> + </para> + </sect2> + + <sect2 id="autostart-solaris"> + <title>Solaris : démarrer le service autostart par SMF</title> + + <para>Sur les hôtes Solaris, Le démon autostart de VirtualBox est + intégré à l'environnement SMF. Pour l'activer, vous devez faire pointer le + service vers un fichier de configuration existant qui est au même format + que sur Linux (voir <xref linkend="autostart-linux" />) : + <screen>svccfg -s svc:/application/virtualbox/autostart:default setprop config/config=/etc/vbox/autostart.cfg</screen> + </para> + + <para>Quand tout est bien configuré, vous pouvez démarrer le service autostart + de VirtualBox avec la commande suivante :<screen>svcadm enable svc:/application/virtualbox/autostart:default</screen></para> + + <para>Pour plus d'informations sur SMF, merci de vous reporter à la + documentation de Solaris.</para> + </sect2> + + <sect2 id="autostart-osx"> + <title>Mac OS X : démarrer le service autostart par launchd</title> + + <para>Sur Mac OS X, on utilise launchd pour démarrer le service autostart + de VirtualBox. Vous pouvez trouver un fichier de configuration exemple + dans + <computeroutput>/Applications/VirtualBox.app/Contents/MacOS/org.virtualbox.vboxautostart.plist</computeroutput>. + Pour activer le service, copiez le fichier dans <computeroutput>/Library/LaunchDaemons</computeroutput> + et passez la clé <computeroutput>Disabled</computeroutput> de + <computeroutput>true</computeroutput> à + <computeroutput>false</computeroutput>. Par ailleurs, remplacez le + deuxième paramètre par un fichier de configuration existant et qui est + au même format que sur Linux (voir <xref linkend="autostart-linux" />). + Pour démarrer le service à la main, utilisez la commande suivante : + <screen>launchctl load /Library/LaunchDaemons/org.virtualbox.vboxautostart.plist</screen> + Pour avoir des informations supplémentaires sur la façon dont les + services launchd pourraient se configurer, voir <literal><ulink + url="http://developer.apple.com/mac/library/documentation/MacOSX/Conceptual/BPSystemStartup/BPSystemStartup.html">http://developer.apple.com/mac/library/documentation/MacOSX/Conceptual/BPSystemStartup/BPSystemStartup.html</ulink></literal>.</para> + </sect2> + </sect1> + + <sect1 id="vboxexpertstoragemgmt"> + <title>La gestion experte par VirtualBox du stockage</title> + + <para>Si le modèle d'instantané de VirtualBox ne suffit pas, il est possible + d'activer un mode spécial qui permet de configurer des connexions de supports + de stockage pendant que la VM est en pause. L'utilisateur doit être sûr que + les données du disque restent cohérentes pour l'invité car, tout comme avec + le montage à chaud, l'invité n'est pas informé des médias déconnectés + ou nouvellement connectés.</para> + + <para>Vous pouvez activer le mode de gestion experte du stockage pour chaque + VM en exécution :</para> + + <screen>VBoxManage setextradata "nom VM" "VBoxInternal2/SilentReconfigureWhilePaused" 1</screen> + + <para>Vous pouvez reconfigurer les connexions de supports de stockage pendant + que la VM est en pause en utilisant :</para> + <screen>VBoxManage storageattach ...</screen> + </sect1> + + <sect1 id="hostpowertweaks"> + <title>Prise en charge des événements de gestion de l'énergie de l'hôte</title> + + <para>Certains événements de la gestion d'énergie de l'hôte sont gérés par + VirtualBox. Le comportement dépend en fait de la plateforme :</para> + + <para> + <glosslist> + <glossentry> + <glossterm>Mise en veille prolongée de l'hôte</glossterm> + <glossdef> + <para> + Cet événement est généré quand l'hôte va se mettre en veille prolongée, + c'est-à-dire quand l'hôte sauvegarde son état sur un support + de stockage non volatile puis s'éteint. + </para> + <para> + Cet événement n'est actuellement géré que sur les hôtes Windows + et Mac OS X. Quand il est généré, VirtualBox mettra en pause toutes + les VMs en fonction. + </para> + </glossdef> + </glossentry> + <glossentry> + <glossterm>Réveil de l'hôte</glossterm> + <glossdef> + <para> + Cet événement est généré lorsque l'hôte sort d'une mise en veille + prolongée. + </para> + <para> + Cet événement n'est actuellement géré que sur les hôtes Windows + et Mac OS X. + Quand cet événement est généré, VirtualBox réveillera les VMs qui + ont été mises en pause. + </para> + </glossdef> + </glossentry> + <glossentry> + <glossterm>Batterie faible</glossterm> + <glossdef> + <para> + Le niveau de la batterie a atteint un seuil critique (en général + moins de 5 pour cent de sa charge). + </para> + <para> + Cet événement n'est actuellement géré que sur les hôtes Windows + et Mac OS X. + Quand cet événement est généré, VirtualBox sauvegardera l'état et + terminera toutes les VMs pour préparer une coupure potentielle de + l'hôte + </para> + <para>Ce comportement est configurable. En utilisant la commande + suivante, aucune VM n'est sauvegardé :</para> + <screen>VBoxManage setextradata global "VBoxInternal2/SavestateOnBatteryLow" 0</screen> + <para>Il s'agit d'un réglage global ou individuel aux VMs. La valeur + individuelle à une VM est prioritaire sur celle globale. La commande + suivante sauvegardera l'état de toutes les VMs, sauf celui de la VM + "foo" :</para> + <screen>VBoxManage setextradata global "VBoxInternal2/SavestateOnBatteryLow" 1 +VBoxManage setextradata "foo" "VBoxInternal2/SavestateOnBatteryLow" 0</screen> + <para>La première ligne n'est pas vraiment obligatoire puisque par + défaut, c'est une sauvegarde qui est effectuée.</para> + </glossdef> + </glossentry> + </glosslist> + </para> + + <sect2> + <title>Eléments pour gérer une Guru Meditation</title> + + <para>Une VM tombe en Guru Meditation si elle rencontre un problème non + corrigible par d'autres moyens que celui de terminer le processus. Par + défaut, on affiche une fenêtre de message demandant à l'utilisateur + d'ouvrir un rapport de bogue.</para> + <para>Vous pouvez configurer ce comportement :</para> + + <para><screen>VBoxManage setextradata "nom VM" GUI/GuruMeditationHandler MODE</screen></para> + + <para>où <computeroutput>MODE</computeroutput> est un des mots-clés + qui suit :</para><glosslist> + <glossentry> + <glossterm><computeroutput>Default</computeroutput></glossterm> + <glossdef> + <para>Une fenêtre de message s'affiche. Après la confirmeation de + l'utilisateur, la VM se termine.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>PowerOff</computeroutput></glossterm> + <glossdef> + <para>La VM se coupe immédiatement sans afficher de fenêtre message. + Le fichier journal de la VM affichera des informations sur ce + qu'il s'est passé.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>Ignore</computeroutput></glossterm> + <glossdef> + <para>On quitte la VM en mode dépannage. L'exécution s'arrête mais + aucune fenêtre de message ne s'affiche. Vous devez couper la VM + manuellement.</para> + </glossdef> + </glossentry> + </glosslist> + + <para>C'est un paramètre individuel à chaque VM.</para> + </sect2> + + </sect1> + +</chapter> diff --git a/doc/manual/fr_FR/user_BasicConcepts.xml b/doc/manual/fr_FR/user_BasicConcepts.xml new file mode 100644 index 00000000..cee18220 --- /dev/null +++ b/doc/manual/fr_FR/user_BasicConcepts.xml @@ -0,0 +1,1442 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" +"http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd"> +<chapter id="BasicConcepts"> + <title>Configurer des machines virtuelles</title> + + <para>Alors que le <xref linkend="Introduction" /> vous donnait une introduction + rapide à VirtualBox et sur la façon de faire marcher votre première machine + virtuelle, le chapitre qui suit décrit en détail la manière de configurer des + machines virtuelles.</para> + + <para>Vous disposez d'une latitude considérable dans la décision sur le matériel + qui sera donné à l'invité. Le matériel virtuel peut être utilisé pour + communiquer avec le système hôte ou avec d'autres invités. Par exemple, si vous + fournissez à VirtualBox l'image d'un CD-ROM dans un fichier ISO, VirtualBox + peut présenter cette image à un système invité comme s'il s'agissait d'un + CD-ROM physique. De la même façon, vous pouvez donner à un système invité + un accès au réseau par sa carte réseau virtuelle, si tel est votre choix, + donner au système hôte, à d'autres invités ou à des ordinateurs un accès + Internet au système hôte.</para> + + <sect1 id="guestossupport"> + <title>Systèmes d'exploitation invités supportés</title> + + <para>Comme VirtualBox est conçu pour offrir un environnement de virtualisation + générique pour les systèmes x86, il peut exécuter des systèmes d'exploitation + de tout type, même ceux non cités ici. Cependant, le principal est pour + nous d'optimiser VirtualBox pour les systèmes invités suivants :</para> + + <para><glosslist> + <glossentry> + <glossterm>Windows NT 4.0</glossterm> + + <glossdef> + <para>Toutes les versions, les éditions et les packs service sont + complètement supportés ; cependant, il y a des problèmes avec + les anciens packs service. Nous recommandons d'installer le pack + service 6a. Les suppléments invité sont disponibles avec des fonctionnalités + limitées.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>Windows 2000 / XP / Server 2003 / Vista / Server 2008 / + Windows 7 / Windows 8 / Server 2012</glossterm> + + <glossdef> + <para>Toutes les versions, les éditions et les packs service sont + complètement supportés (y compris les versions 64 bits, sous réserve + des conditions préalables listées ci-dessous). Les suppléments invité + sont disponibles.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>DOS / Windows 3.x / 95 / 98 / ME</glossterm> + + <glossdef> + <para>Un test restreint a été effectué. Utilisation non recommandée + au-delà des mécanismes d'installation primitive. Pas de suppléments + invité disponibles.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>Linux 2.4</glossterm> + + <glossdef> + <para>Support limité.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>Linux 2.6</glossterm> + + <glossdef> + <para>Toutes les versions/éditions sont complètement supportées (32 + bits et 64 bits). Les suppléments invité sont disponibles.</para> + + <para>Nous recommandons fortement d'utiliser un noyau Linux version + 2.6.13 ou supérieur pour une meilleure performance.<note> + <para>Certaines versions du noyau Linux ont des bogues les empêchant + de s'exécuter dans un environnement virtuelle ; merci de + voir <xref + linkend="ts_linux-buggy" /> pour des détails.</para> + </note></para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>Linux 3.x</glossterm> + + <glossdef> + <para>Toutes les versions/éditions sont complètement supportées (32 bits et 64 + bits). Les suppléments invité sont disponibles.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>Solaris 10 (u6 et supérieur), Solaris 11 (y compris Solaris + 11 Express)</glossterm> + + <glossdef> + <para>Complètement supporté (32 bits et 64 bits). Les suppléments + invité sont disponibles.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>FreeBSD</glossterm> + + <glossdef> + <para>Exige l'activation de la virtualisation matérielle. Support + limité. Les suppléments invité ne sont pas encore disponibles.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>OpenBSD</glossterm> + + <glossdef> + <para>Exige l'activation de la virtualisation matérielle. Les versions + 3.7 et supérieur sont supportées. Les suppléments invité ne sont pas + encore disponibles.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>OS/2 Warp 4.5</glossterm> + + <glossdef> + <para>Exige l'activation de la virtualisation matérielle. Nous ne + supportons officiellement que MCP2 ; les autres versions d'OS/2 + peuvent ou pas fonctionner. Les suppléments invité sont disponibles + avec des fonctionnalités limitées.<footnote> + <para>Voir <xref linkend="KnownIssues" />.</para> + </footnote></para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>Mac OS X</glossterm> + + <glossdef> + <para>VirtualBox 3.2 a ajouté un support expérimental des invités + Mac OS X, mais il est fourni avec des restrictions. Merci de voir + la section suivante et <xref linkend="KnownIssues" />.</para> + </glossdef> + </glossentry> + </glosslist></para> + + <sect2 id="intro-macosxguests"> + <title>Invités Mac OS X</title> + + <para>À partir de la version 3.2, VirtualBox a un support expérimental des + invités Mac OS X. Il vous permet d'installer et d'exécuter des + versions non modifiées de Mac OS X sur du matériel hôte supporté.</para> + + <para>Si les solutions concurrentes offrent des modifications des + DVDs d'installation de Mac OS X (chargeur d'amorçage différent, fichiers + remplacés), VirtualBox est le premier produit à offrir une architecture PC + moderne qu'attend OS X sans besoin de "bidouilles".</para> + + <para>Vous devriez garder en tête un certain nombre de <emphasis role="bold">problèmes + importants</emphasis> avant d'essayer d'installer un invité Mac OS X :<orderedlist> + <listitem> + <para>Mac OS X est un logiciel propriétaire sous licence et il contient + <emphasis role="bold">des restrictions juridiques et techniques</emphasis> + limitant son utilisation à certains matériels et scénarios + d'utilisations. Il est important que vous compreniez et que vous + respectiez ces restrictions.</para> + + <para>En particulier, pour la plupart des versions de Mac OS X, Apple + interdit de les installer sur du matériel non Apple.</para> + + <para>Ces restrictions juridiques sont également renforcées au niveau + technique. Mac OS X vérifie si il s'exécute sur du matériel Apple et + la plupart des DVDs fournis avec le matériel Apple vérifient même + le modèle exact. Ces restrictions <emphasis>ne sont pas</emphasis> + contournées par VirtualBox et s'appliquent toujours.</para> + </listitem> + + <listitem> + <para>Seuls des <emphasis role="bold">processeurs</emphasis> connus + et testés par Apple sont supportés. Il s'en suit que si votre processeur + Intel est plus récent que la construction de Mac OS X, ou si vous + avez un processeur non Intel, il plantera très probablement au moment + du démarrage avec une exception "Unsupported CPU". Il vaut mieux + généralement utiliser le DVD de Mac OS X fourni avec votre matériel + Apple.</para> + </listitem> + + <listitem> + <para>L'installeur de Mac OS X s'attend à ce que le disque dur soit + <emphasis role="bold">partitionné</emphasis>, donc quand il n'offre + pas de sélection, vous devez lancer l'Outil de disque du menu + "Outils" et partitionner le disque dur. Puis, fermez l'outil de disque + et poursuivez l'installation.</para> + </listitem> + + <listitem> + <para>En outre, comme le support de Mac OS X de VirtualBox est + actuellement encore expérimental, merci de vous reporter aussi à <xref linkend="KnownIssues" />.</para> + </listitem> + </orderedlist></para> + </sect2> + + <sect2 id="intro-64bitguests"> + <title>Invités 64 bits</title> + + <para>VirtualBox supporte les systèmes d'exploitation invités 64 bits, + même sur des systèmes d'exploitation hôtes 32 bits,<footnote> + <para>Le support des invités 64 bits a été ajouté avec VirtualBox 2.0 ; + le support des invités 64 bits sur des hôtes 32 bits a été ajouté avec + VirtualBox 2.1.</para> + </footnote> pourvu qu'existent les conditions suivantes :<orderedlist> + <listitem> + <para>Vous avez besoin d'un processeur 64 bits avec le support de la + virtualisation matérielle (voir <xref linkend="hwvirt" />).</para> + </listitem> + + <listitem> + <para>Vous devez activer la virtualisation matérielle pour la VM + particulière où vous voulez le support du 64 bits ; la virtualisation + logicielle n'est pas supportée pour les VMs 64 bits.</para> + </listitem> + + <listitem> + <para>Si vous voulez utiliser un invité 64 bits sur un système + d'exploitation hôte 32 bits, vous devez aussi sélectionner un système + d'exploitation 64 bits pour la VM en particulier. Comme le support + du 64 bits sur des hôtes 32 bits implique des dépassements + supplémentaires, VirtualBox n'active ce support qu'à la demande expresse.</para> + + <para>Sur des hôtes 64 bits (fournis en général avec le support de la + virtualisation matérielle), les systèmes d'exploitation invités + 64 bits sont toujours supportés, indépendamment des paramètres, donc + vous pouvez simplement installer un système d'exploitation + 64 bits dans l'invité.</para> + </listitem> + </orderedlist></para> + + <para><warning> + <para>Sur tous les hôtes, vous devriez activer le <emphasis role="bold">I/O + APIC</emphasis> pour les machines virtuelles que vous souhaitez utiliser + en mode 64 bits. C'est surtout vrai pour les VMs Windows 64 bits. Voir + <xref linkend="settings-general-advanced" />. En outre, pour les invités + Windows 64 bits, vous devriez vous assurer que la VM utilise le + <emphasis role="bold">périphérique réseau Intel</emphasis>, car il + n'y a pas de support pour le pilote 64 bits pour la carte AMD PCNet ; + voir <xref + linkend="nichardware" />.</para> + </warning></para> + + <para>Si vous utilisez l'assistant "Créer une VM" de l'interface graphique + de VirtualBox, (voir <xref linkend="gui-createvm" />), VirtualBox utilisera + automatiquement les bons paramètres pour chaque type de système d'exploitation + 64 bits choisi.</para> + </sect2> + </sect1> + + <sect1> + <title>Matériel émulé</title> + + <para>VirtualBox virtualise presque tout le matériel de l'hôte. Selon la + configuration de la VM, l'invité utilisera le matériel virtuel suivant :<itemizedlist> + <listitem> + <para><emphasis role="bold">Périphériques d'entrée.</emphasis> Par + défaut, VirtualBox émule un clavier et une souris PS/2 standards. Ces + périphériques sont supportés par presque tous les systèmes d'exploitation + passés et actuels.</para> + + <para>En outre, VirtualBox peut fournir des périphériques d'entrée + virtuels pour éviter de devoir capturer la souris et un clavier, comme + décrit au <xref + linkend="keyb_mouse_normal" />.</para> + </listitem> + + <listitem> + <para><emphasis role="bold">Graphisme.</emphasis> Le périphérique graphique + de VirtualBox (parfois cité comme périphérique VGA) n'est pas, contrairement + à presque tous les autres périphériques émulés, basé sur un équivalent + physique. C'est un périphérique de synthèse simple qui fournit une + compatibilité avec les VGA et plusieurs registres étendus standards + par la VESA BIOS Extensions (VBE).</para> + </listitem> + + <listitem> + <para><emphasis role="bold">Stockage.</emphasis> VirtualBox émule + actuellement l'interface ATA standard qu'on trouve dans les puces + PIIX3/PIIX4 Intel, l'interface SATA (AHCI) et deux adaptateurs SCSI + (LSI Logic et BusLogic) ; voir <xref linkend="harddiskcontrollers" /> + pour des détails. Bien qu'en fournir un d'entre eux suffirait pour + VirtualBox en lui-même, cette multitude d'adaptateurs de stockage est + requise pour des raisons de compatibilité avec d'autres hyperviseurs. + Windows est particulièrement pointilleux sur ces périphériques d'amorçage, + et la migration des VMs entre hyperviseurs est très difficile voire impossible + si les contrôleurs de stockage sont différents.</para> + </listitem> + + <listitem> + <para><emphasis role="bold">Réseau.</emphasis> Voir <xref + linkend="nichardware" />.</para> + </listitem> + + <listitem> + <para><emphasis role="bold">USB.</emphasis> VirtualBox émule deux contrôleurs + d'hôte USB, EHCI et OHCI. Deux contrôleurs hôtes sont nécessaires car + l'OHCI ne gère que les périphériques USB à faible ou grande vitesse + (USB 1.x et 2.0), alors que l'EHCI ne gère que les périphériques à + très haute vitesse (USB 2.0 seulement). Les contrôleurs USB émulés + ne communiquent pas directement avec les périphériques sur l'hôte, + mais plutôt avec une couche USB virtuelle qui rend abstrait le protocole USB et qui + permet d'utiliser des périphériques USB distants.</para> + </listitem> + + <listitem> + <para><emphasis role="bold">Audio.</emphasis> Voir <xref + linkend="settings-audio" />.</para> + </listitem> + </itemizedlist></para> + </sect1> + + <sect1 id="generalsettings"> + <title>Paramètres généraux</title> + + <para>Dans la fenêtre des paramètres, dans "Général", vous pouvez configurer + la plupart des aspects fondamentaux de la machine virtuelle, tels que la + mémoire ou du matériel essentiel. Il y a trois onglets, "Simple", "Avancé" et + "Description".</para> + + <sect2> + <title>Onglet "Simple"</title> + + <para>Sous l'onglet "Simple" de la catégorie Général + des paramètres, vous pouvez voir ces paramètres :</para> + + <glosslist> + <glossentry> + <glossterm>Nom</glossterm> + + <glossdef> + <para>Le nom sous lequel apparaît la VM dans la liste des VMs de la + fenêtre principale. Sous ce nom, VirtualBox enregistre aussi les + fichiers de configuration de la VM. En changeant le nom, VirtualBox + renomme aussi ces fichiers. Il s'en suit que vous ne pouvez utiliser + que des caractères autorisés par les noms de fichier de votre système + d'exploitation hôte.</para> + + <para>Remarquez qu'en interne, VirtualBox utilise des identifieants + unique (UUIDs) pour identifier les machines virtuelles. Vous pouvez + les afficher avec <computeroutput>VBoxManage</computeroutput>.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>Système d'exploitation / version</glossterm> + + <glossdef> + <para>Le type du système d'exploitation invité qui est (ou sera) + installé dans la VM. C'est le même paramètre que celui spécifié dans + l'assistant "Nouvelle machine virtuelle", comme décrit au <xref + linkend="gui-createvm" />.</para> + + <para>Si les paramètres par défaut d'une VM nouvellement créée sont + fonction du type de système d'exploitation sélectionné, la modification + ultérieure du type n'a aucun effet sur les paramètres de la VM ; + cette valeur est donc purement informative et décorative.</para> + </glossdef> + </glossentry> + </glosslist> + </sect2> + + <sect2 id="settings-general-advanced"> + <title>Onglet "Avancé"</title> + + <para><glosslist> + <glossentry> + <glossterm>Dossier d'instantané</glossterm> + + <glossdef> + <para>Par défaut, VirtualBox enregistre les données de l'instantané + avec vos autres données de configuration de VirtualBox ; voir <xref + linkend="vboxconfigdata" />. Avec ce paramètre, vous pouvez spécifier + un autre dossier pour chaque VM.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>Presse-papier partagé</glossterm> + + <glossdef> + <para>Vous pouvez sélectionner ici si le presse-papier du système + d'exploitation invité devrait être partagé avec celui de votre hôte. + Si vous sélectionnez "Bidirectionnel", VirtualBox s'assurera toujours + que les deux presse-papier contiennent les mêmes données. Si vous + sélectionnez "Hôte vers invité" ou "Invité vers hôte", VirtualBox + copiera les données du presse-papier dans une direction.</para> + + <para>Le partage du presse-papier nécessite que les suppléments + invité de VirtualBox soient installés. Il s'en suit que ce paramètre + n'a aucun effet sans cela ; voir <xref linkend="guestadditions" /> pour + les détails.</para> + + <para>Le presse-papier partagé est désactivé par défaut. Voir + <xref linkend="security_clipboard"/> pour une explication. On peut + changer ce paramètre n'importe quand en utilisant le menu "Presse-papier" + du menu "Périphériques" de la machine virtuelle.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>Drag'n'Drop</glossterm> + <glossdef> + <para>Ce paramètre permet d'activer le support du glisser/déplacer : sélectionnez + un objet (comme un fichier) sur le bureau de l'hôte ou de l'invité + et copiez-le ou ouvrez-le directement sur l'invité ou l'hôte. Plusieurs + modes de glisser/déplacer individuels à chaque VM vous permettent + de restreindre les accès dans tous les sens.</para> + + <para>Pour que le glisser/déplacer fonctionne, les suppléments + invité doivent être installés sur l'invité.</para> + + <para><note><para>Le glisser/déplacer est désactivé par défaut. + Vous pouvez changer ce réglage n'importe quand en utilisant + l'icône Glisser/déplacer du menu "Périphériques" de la machine + virtuelle.</para></note></para> + + <para>Voir <xref linkend="guestadd-dnd"/> pour plus d'informations. + <footnote><para>Le support expérimental du glisser/déplacer a été. + introduit avec VirtualBox 4.2.</para></footnote></para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>Média amovible : enregistrer les changements pendant + l'exécution</glossterm> + + <glossdef> + <para>Si ceci est coché, VirtualBox enregistrera l'état des médias + montés entre deux exécutions d'une + machine virtuelle.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>Mini barre d'outils</glossterm> + + <glossdef> + <para>En mode plein écran ou transparent, VirtualBox peut afficher + une petite barre d'outils contenant certains éléments disponibles + normalement dans la barre de menus de la machine virtuelle. Cette + barre d'outils se réduit à une ligne grise, sauf si vous déplacez + la souris dessus. Avec la barre d'outils, vous pouvez basculer entre + le mode plein écran et transparent, contrôler l'exécution de la + machine ou activer certains périphériques. Si vous ne voulez pas voir + la barre d'outils, désactivez ce paramètre.</para> + <para>Le deuxième paramètre permet d'afficher la barre d'outil en haut + de l'écran et non en bas.</para> + </glossdef> + </glossentry> + </glosslist></para> + </sect2> + + <sect2> + <title>Onglet "Description"</title> + + <para>Ici, vous pouvez taper une description pour votre machine virtuelle si + vous le voulez. Cela n'a aucun effet sur le fonctionnement de la machine, + mais vous pourriez trouver cet espace utile pour y noter des choses comme + la configuration d'une machine virtuelle et le logiciel + installé dedans.</para> + <para>Pour insérer un saut de ligne dans la zone de texte de la + description, appuyez sur <emphasis>Majuscule+Entrée</emphasis>.</para> + </sect2> + </sect1> + + <sect1 id="settings-system"> + <title>Paramètres système</title> + + <para>La catégorie "Système" regroupe divers paramètres liés au matériel de + base présenté à la machine virtuelle.<note> + <para>Le mécanisme d'activation de Microsoft Windows étant sensible aux + modifications matérielles, si vous modifiez les paramètres matériels pour + un invité Windows, certains de ces changements peuvent provoquer la + demande d'une nouvelle activation de Microsoft.</para> + </note></para> + + <sect2 id="settings-motherboard"> + <title>Onglet "Carte mère"</title> + + <para>Dans l'onglet "Carte mère", vous pouvez influencer le matériel + virtuel qui serait normalement sur la carte mère d'un vrai ordinateur.<glosslist> + <glossentry> + <glossterm>Mémoire de base</glossterm> + + <glossdef> + <para>Ceci définit la quantité de RAM affectée et donnée à la VM + quand elle est en fonction. La quantité de mémoire spécifiée + sera récupérée sur le système d'exploitation hôte, donc il faut + qu'elle soit disponible ou rendue disponible comme mémoire libre + sur l'hôte au moment du démarrage de la VM et elle ne sera pas + disponible pour l'hôte tant que la VM sera en fonction. C'est le + même paramètre que celui spécifié dans l'assistant "Nouvelle machine + virtuelle", comme décrit dans les grandes lignes du + <xref linkend="gui-createvm" />.</para> + + <para>En général, il est possible de modifier la taille de la mémoire + après avoir installé le système d'exploitation invité (pourvu que + vous ne réduisiez pas la mémoire à une quantité telle qu'un système + d'exploitation ne démarrerait plus).</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>Ordre d'amorçage</glossterm> + + <glossdef> + <para>Ce paramètre détermine l'ordre dans lequel le système d'exploitation + invité essaiera de s'amorcer sur les différents péripréhiques de + démarrage virtuels. Analogue à un paramètre du BIOS d'un vrai PC, + VirtualBox peut dire à un OS invité de démarrer sur une disquette, + un lecteur CD/DVD virtuel, le disque dur virtuel (chacun d'eux + étant défini par les autres paramètres de la VM), le réseau ou + aucun.</para> + + <para>Si vous sélectionnez "Réseau", la VM essaiera de démarrer sur + le mécanisme PXE du réseau virtuel. Il faut le configurer en détail + en ligne de commande Merci de voir <xref + linkend="vboxmanage-modifyvm" />.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>Chipset</glossterm> + + <glossdef> + <para>Vous pouvez sélectionner ici le chipset qui sera présenté + à la machine virtuelle. Avant VirtualBox 4.0, PIIX3 était ici la + seule option disponible. Pour les systèmes d'exploitation invités + modernes tels que Mac OS X, ce vieux chipset n'est plus bien + supporté. Du coup, VirtualBox 4.0 a introduit une émulation du + chipset ICH9, plus moderne, qui supporte le PCI express, trois bus + PCI, des ponts PCI-à-PCI et des Message Signaled Interrupts + (MSI). Cela permet aux systèmes d'exploitation modernes de gérer + davantage de périphériques PCI sans besoin d'un partage d'IRQ. + Remarquez que le support ICH9 est expérimental et non recommandé + pour les systèmes d'exploitation invités qui n'en ont pas besoin.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>Pointage de périphériques</glossterm> + + <glossdef> + <para>Le périphérique de pointage par défaut des invités anciens + est une souris PS/2 traditionnelle. Avec <emphasis>USB tablet</emphasis>, + VirtualBox indique à la machine virtuelle qu'une tablette USB est + connectée et il envoie les événements de souris à la machine + virtuelle via ce périphérique. Le troisième paramètre est un + <emphasis>USB Multi-Touch Tablet</emphasis> adapté aux invités + Windows récents.</para> + + <para>L'utilisation de la tablette USB virtuelle a l'avantage que les + mouvements sont envoyés avec une synchronisation absolue (et non + seulement les changements relatifs), ce qui permet à VirtualBox de + traduire les événements de souris dans la fenêtre de la VM en + événements de la tablette sans devoir "capturer" la souris dans l'invité, + comme décrit au +<xref + linkend="keyb_mouse_normal" />. Cela rend l'utilisation de la + VM moins pénible même si les suppléments invité ne sont pas + installés.<footnote> + <para>La tablette USB virtuelle a été ajoutée avec VirtualBox + 3.2. Selon le système d'exploitation choisi, elle est maintenant + activée par défaut pour les nouvelles machines virtuelles.</para> + </footnote></para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>Activer I/O APIC</glossterm> + + <glossdef> + <para>Advanced Programmable Interrupt Controllers (APICs) (contrôleurs + d'interruptions programmables avancés) sont des fonctionnalités + du matériel x86 récent ayant remplacé ces dernières années le + Programmable Interrupt Controllers (PICs). Avec un + I/O APIC, les systèmes d'exploitation peuvent utiliser plus de + 16 requêtes d'interruption (IRQs), évitant donc le partage d'IRQ + pour une meilleure fiabilité.<note> + <para>L'activation de I/O APIC est <emphasis>requis</emphasis> + pour les systèmes d'exploitation invités 64 bits, surtout Windows + Vista ; il est aussi nécessaire si vous voulez utiliser + plus d'un processeur virtuel dans une machine virtuelle.</para> + </note></para> + + <para>Cependant, le support des I/O APICs logiciel n'est pas fiable + avec les systèmes d'exploitation autres que Windows. De plus, + l'utilisation de I/O APIC augmente légèrement la charge de la + virtualisation et donc, cela ralentit un peu l'OS invité.<warning> + <para>Tous les systèmes d'exploitation Windows à partir de Windows + 2000 installent des noyaux différents en fonction de la + disponibilité de l'I/O APIC. Comme avec l'ACPI, l'I/O APIC + <emphasis>ne doit pas être désactivé après + l'installation</emphasis> d'un OS invité Windows. Son + activation après l'installation n'aura par contre aucun effet.</para> + </warning></para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>Activer l'EFI</glossterm> + + <glossdef> + <para>Ceci active la Extensible Firmware Interface (EFI), qui remplace + le BIOS de base et peut servir dans certains cas d'utilisation avancée. + Merci de vous reporter à <xref linkend="efi" /> pour les + détails.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>Horloge matérielle en temps UTC</glossterm> + + <glossdef> + <para>Si ceci est coché, VirtualBox indiquera à l'invité l'heure + du système au format UTC plutôt qu'en temps local (hôte). Cela + change la façon dont agit l'horloge en temps réel virtuelle (RTC) + et peut être utile pour des systèmes d'exploitation invité de type + Unix qui attendent généralement une horloge matérielle en UTC.</para> + </glossdef> + </glossentry> + + </glosslist></para> + + <para>De plus, vous pouvez désactiver <emphasis role="bold">Advanced + Configuration and Power Interface (ACPI)</emphasis> que VirtualBox présente + par défaut au système d'exploitation invité. L'ACPI est le standard industriel + actuel permettant au système d'exploitation de reconnaître le matériel, de + configurer les cartes mères et d'autres périphériques, et de gérer l'énergie. + Comme tous les PCs modernes contiennent cette fonctionnalité et Windows + et Linux le supportent depuis des années, il est activé par défaut dans + VirtualBox. On ne peut le désactiver qu'en ligne de commande ; voir <xref + linkend="vboxmanage-modifyvm" />.<warning> + <para>Tous les systèmes d'exploitation Windows à partir de Windows 2000 + installent des noyaux différents selon que l'ACPI est activé, donc l'ACPI + <emphasis>ne doit pas être désactivé</emphasis> après l'installation + d'un OS invité Windows. Son activation après l'installation n'aura + par contre aucun effet.</para> + </warning></para> + </sect2> + + <sect2 id="settings-processor"> + <title>Onglet "Processeur"</title> + + <para>Dans l'onglet "Processeur", vous pouvez définir le nombre de + <emphasis + role="bold">cœurs de processeur</emphasis> virtuels que devrait voir + le système d'exploitation invité. À partir de la version 3.0, VirtualBox + supporte le symmetrical multiprocessing (SMP) et peut présenter jusqu'à 32 + cœurs de processeur virtuels à chaque machine virtuelle.</para> + + <para>Vous ne devriez quand même pas configurer une machines virtuelles + pour utiliser plus de cœurs de processeur que vous n'en avez physiquement + (coeurs réels, pas d'hyperthreads).</para> + + <para>Dans cet onglet, vous pouvez aussi définir le <emphasis role="bold">"CPU execution cap"</emphasis>. + Ce paramètre limite la quantité de temps qu'un processeur hôte peut donner + pour émuler un processeur virtuel. Le réglage par défaut est de 100% + ce qui veut dire qu'il n'y a aucune limite. Un réglage à 50% implique + qu'un seul processeur peut utiliser jusqu'à 50% d'un seul processeur hôte. + Remarquez que la limitation du temps d'exécution des processeurs virtuels + peut provoquer des problèmes de timing dans l'invité.</para> + + <para>Par ailleurs, le paramètre <emphasis role="bold">"Activer PAE/NX"</emphasis> + détermine si les possibilités PAE et NX du processeur hôte seront proposées + à la machine virtuelle. PAE signifie "Physical Address + Extension". Normalement, s'il est activé et supporté par le système d'exploitation, + même un processeur x86 32 bits peut accéder à plus de 4 Go de RAM. Cela + est rendu possible par l'ajout de 4 bits aux adresses mémoire, de sorte qu'avec + 36 bits, on peut gérer jusqu'à 64 Go. Certains systèmes d'exploitation + (tels qu'Ubuntu Server)exigent le support PAE du processeur et ne peuvent + pas fonctionner dans une machine virtuelle sans cela.</para> + + <para>Sur des machines virtuelles qui exécutent des systèmes d'exploitation serveurs modernes, + VirtualBox supporte aussi le branchement à chaud du processeur. Pour des + détails là-dessus, merci de vous reporter à <xref linkend="cpuhotplug" />.</para> + </sect2> + + <sect2> + <title>Onglet "Accélération"</title> + + <para>Dans cet onglet, vous pouvez déterminer si VirtualBox devrait utiliser + les extensions de virtualisation matérielle que peut supporter votre hôte + et comment. C'est le cas avec la plupart des processeurs fabriqués après 2006.</para> + + <para>Vous pouvez sélectionner individuellement pour chaque machine virtuelle + si VirtualBox devrait utiliser la virtualisation logicielle ou matérielle.<footnote> + <para>Avant VirtualBox version 2.2, la virtualisation logicielle était + par défaut ; à partir de la version 2.2, VirtualBox activera la + virtualisation matérielle par défaut pour les nouvelles machines + virtuelles créées. (Les machines virtuelles existantes ne sont pas + automatiquement modifiées pour des raisons de + compatibilité, et vous pouvez bien sûr modifier le réglage par défaut + pour chaque machine virtuelle.)</para> + </footnote></para> + + <para>Dans la plupart des cas, les paramètres défaut conviendront ; + VirtualBox aura choisi des options par défaut en fonction du système + d'exploitation que vous avez sélectionné quand vous avez créé la machine + virtuelle. Toutefois, dans certaines situations, il se peut que vous vouliez + modifier ces réglages par défaut préconfigurés.</para> + + <para>Il se peut que les utilisateurs avancés s'intéressent aux détails + techniques sur la virtualisation logicielle Vs matérielle ; merci + de voir <xref + linkend="hwvirt" />.</para> + + <para>Si votre processeur hôte supporte les fonctions <emphasis role="bold">pagination + nested</emphasis> (AMD-V) ou <emphasis role="bold">EPT</emphasis> (Intel + VT-x), vous pouvez compter sur une augmentation significative des + performances en activant la pagination nested en plus de la virtualisation + matérielle. Pour des détails techniques, voir <xref linkend="imbriquéepaging" />.</para> + </sect2> + </sect1> + + <sect1 id="settings-display"> + <title>Paramètres d'affichage</title> + + <glosslist> + <glossentry> + <glossterm>Taille de la mémoire graphique</glossterm> + + <glossdef> + <para>Ceci définit la taille de la mémoire fournie par la carte + graphique virtuelle et disponible pour l'invité, en Mo. Comme avec la + mémoire globale, la quantité spécifiée sera affectée à partir de la + mémoire résidente de l'hôte. À partir de la quantité de mémoire graphique, + certaines résolutions et profondeur des couleurs peuvent être disponibles.</para> + + <para>L'interface graphique affichera un avertissement si la quantité + de mémoire graphique est trop petite pour pouvoir passer la VM + en mode plein écran. La valeur minimum dépend du nombre d'écrans virtuels, + de la résolution de l'écran et de la profondeur des couleurs sur l'affichage + hôte, ainsi que de l'activation de <emphasis>l'accélération 3D</emphasis> + et de <emphasis>l'accélération graphique 2D</emphasis>. Une ébauche + d'estimation est <emphasis>profondeur des couleurs</emphasis> / 8) x + <emphasis>nombre de pixels verticalement</emphasis> x + <emphasis>nombre de pixels horizontalement</emphasis> x + <emphasis>nombre d'écrans</emphasis> = <emphasis>nombre de bytes</emphasis>. + Comme indiqué ci-dessus, de la mémoire supplémentaire pourrait être nécessaire + pour définir les accélération´s d'affichage activées.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>Nombre d'écrans</glossterm> + + <glossdef> + <para>Avec ce paramètre, VirtualBox peut fournir plusieurs écrans + virtuels à une machine virtuelle. Si un système d'exploitation invité + (tel que Windows) supporte le rattachement à plusieurs écrans, VirtualBox + peut affirmer que plusieurs écrans virtuels sont présents.<footnote> + <para>Le support multi-écrans a été ajouté avec VirtualBox + 3.2.</para> + </footnote> Jusqu'à 8 écrans virtuels peuvent ainsi être supportés.</para> + + <para>La sortie de plusieurs écrans virtuels peut être affichée sur l'hôte + dans plusieurs fenêtres de VM placées côte à côte.</para> + + <para>Néanmoins, en mode plein écran ou transparent, ils utiliseront + les écrans physiques disponibles connectés à l'hôte. Il s'en suit que + pour que les modes plein écran et transparent fonctionnent avec plusieurs + écrans, vous aurez besoin d'au moins autant d'écrans physiques que + d'écrans virtuels configurés, sans quoi VirtualBox renverra une erreur. + Vous pouvez configurer la relation entre les écrans hôte et invité + en utilisant le menu Vue, en appuyant sur Touche hôte + Origine pendant + que vous êtes en mode plein écran ou transparent.</para> + + <para>Merci de voir aussi <xref linkend="KnownIssues" />.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>Activer l'accélération 3D</glossterm> + + <glossdef> + <para>Si vous avez installé les Suppléments invité sur une machine + virtuelle, vous pouvez ici sélectionner si l'invité devrait supporter + la vidéo accélérée 3D. Merci de vous reporter à <xref linkend="guestadd-3d" /> + pour des détails.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>Activer l'accélération graphique 2D</glossterm> + + <glossdef> + <para>Si vous avez installé les Suppléments invité sur une machine + virtuelle contenant Windows, vous pouvez ici sélectionner si l'invité + doit supporter la vidéo accélérée 2D. Merci de vous reporter à <xref + linkend="guestadd-2d" /> pour les détails.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>Affichage distant</glossterm> + + <glossdef> + <para>Dans l'onglet "Affichage distant", si vous avez installé l'extension + VirtualBox Remote Display Extension (VRDE), vous pouvez activer le serveur + VRDP construit dans VirtualBox. Cela vous permet de vous connecter à + la console de la machine virtuelle à distance avec n'importe quel + client RDP standard tel que <computeroutput>mstsc.exe</computeroutput> + fourni avec Microsoft Windows. Sur les systèmes Linux et Solaris, + vous pouvez utiliser le programme standard open-source + <computeroutput>rdesktop</computeroutput>. Ces fonctionnalités sont + décrites en détail au + <xref linkend="vrde" />.</para> + </glossdef> + </glossentry> + <glossentry> + <glossterm>Capture graphique</glossterm> + + <glossdef> + <para>Dans l'onglet "Capture graphique", vous pouvez activer la capture + graphique d'une VM. Remarquez que cette fonction peut être activée/désactivée aussi + pendant l'exécution de la VM.</para> + </glossdef> + </glossentry> + + </glosslist> + </sect1> + + <sect1 id="settings-storage"> + <title>Paramètres du stockage</title> + + <para>La catégorie "Stockage" des paramètres de la VM vous permet de connecter + des images et des lecteurs de disque dur, de CD/DVD et de disquette virtuelles + à votre machine virtuelle.</para> + + <para>Dans un vrai PC, ce qu'on appelle les "contrôleurs de stockage" connectent + des lecteurs de disque physiques au reste de l'ordinateur. De la même façon, + VirtualBox présente des contrôleurs de stockage virtuels à une machine virtuelle. + Sous chaque contrôleur, vous voyez les périphériques virtuels connectés + (disques durs, lecteur CD/DVD ou disquette).<note> + + <para>Cette section ne peut vous donner qu'une brève introduction aux + paramètres de stockage de VirtualBox. Comme VirtualBox vous donne + un choix énorme d'options dans cette zone, nous avons consacré tout un + chapitre de ce manuel de l'utilisateur à l'explication de tous les + détails : merci de voir <xref + linkend="storage" />.</para> + </note></para> + + <para>Si vous avez utilisé l'assistant "Créer une VM" pour créer une machine, + vous verrez normalement quelque chose comme suit :</para> + + <para><mediaobject> + <imageobject> + <imagedata align="center" fileref="images/vm-settings-harddisk.png" + width="10cm" /> + </imageobject> + </mediaobject></para> + + <para>Selon le type de système d'exploitation invité que vous avez sélectionné + quand vous avez créé la VM, la présentation classique des périphériques de stockage + dans une nouvelle VM est ainsi :<itemizedlist> + <listitem> + <para>Vous verrez un <emphasis role="bold">contrôleur IDE, + </emphasis> auquel on a connecté un lecteur CD/DVD virtuel (sur le + "deuxième port maître") du contrôleur IDE).</para> + </listitem> + + <listitem> + <para>Vous verrez aussi un <emphasis role="bold">contrôleur SATA + controller,</emphasis> qui est un type plus moderne de contrôleur de + stockage pour un transport de données du disque dur plus rapide, où + on a rattaché les disques durs virtuels. Au départ, vous aurez en + principe un disque comme celui-ci, mais comme vous pouvez le voir dans + l'impression d'écran ci-dessus, vous pouvez en avoir plusieurs, + chacun représenté par un fichier image de disque (fichiers + (VDI, dans ce cas).</para> + </listitem> + </itemizedlist></para> + + <para>Si vous avez créé votre VM avec une version antérieure de VirtualBox, + la présentation des stockages par défaut peut varier. Il se peut donc + que vous ayez qu'un contrôleur IDE auquel on a connecté le lecteur CD/DVD et + les disques durs. Cela pourrait aussi être le cas si vous avez sélectionné un + ancien type de système d'exploitation quand vous avez créé la VM. Comme les + anciens systèmes d'exploitation ne supportent pas + le SATA sans pilotes supplémentaires, VirtualBox veillera à ce qu'aucun + périphérique de ce type ne soit présent au départ. Merci de voir <xref + linkend="harddiskcontrollers" /> pour des informations supplémentaires.</para> + + <para>VirtualBox fournit aussi un <emphasis role="bold">contrôleur amovible + </emphasis> spécial : vous ne pouvez pas y ajouter d'autres périphériques + que des lecteurs amovibles. Les périphériques amovibles virtuels comme les + lecteurs CD/DVD virtuels peuvent être connectés soit à un lecteur amovible hôte + (si vous en avez un), soit associés à une image de disque qui doit alors être + au format RAW.</para> + + <para>Vous pouvez modifier librement ces connexions de médias. Par exemple, + si vous copier des fichiers depuis un autre disque dur virtuel que vous avez + créé, vous connecter ce disque comme deuxième disque dur, comme dans + l'impression d'écran ci-dessus. Vous pourriez aussi ajouter un deuxième + lecteur CD/DVD virtuel ou modifier l'endroit où ces éléments sont branchés. + Les options suivantes sont disponibles :<itemizedlist> + <listitem> + <para>Pour <emphasis role="bold">ajouter un autre disque dur virtuel + ou un lecteur CD/DVD ou de disquette,</emphasis> sélectionnez un + contrôleur de stockage auquel l'ajouter (IDE, SATA, SCSI, SAS, contrôleur + amovible), puis cliquez sur le bouton "ajouter un disque" sous + l'arborescence. Vous pouvez alors sélectionner soit "Ajouter un + périphérique CD/DVD" soit "Ajouter un disque dur". (Si vous avez cliqué + sur un contrôleur amovible, vous pouvez plutôt ajouter un lecteur amovible.) + Sinon, effectuez un clic droit sur le contrôleur de stockage et + sélectionnez-y un élément de menu.</para> + + <para>Sur la partie droite de la fenêtre, vous pouvez alors définir ce + qui suit :<orderedlist> + <listitem> + <para>Vous pouvez sélectionner à quel <emphasis + role="bold">slot de périphérique</emphasis> du contrôleur devrait + se connecter le disque virtuel. Les contrôleurs IDE ont quatre + slots qu'on appelle traditionnellement le "maître primaire", + "esclave primaire" , "maître secondaire" et "esclave secondaire". + Au contraire, les contrôleurs SATA et SCSI vous offrent jusqu'à + 30 slots pour connecter des prériphériques virtuels.</para> + </listitem> + + <listitem> + <para>Vous pouvez sélectionner le <emphasis role="bold">fichier image + </emphasis> à utiliser.<itemizedlist> + <listitem> + <para>Pour les disques durs virtuels, un ascenseur en liste + déroulante apparaît à droite, vous offrant la sélection + soit de <emphasis role="bold">fichier de disque dur virtuel + </emphasis> en utilisant une boîte de dialogue fichier standard + soit de + <emphasis role="bold">créer un nouveau disque dur</emphasis> + (fichier image), qui ouvrira l'assistant "Créer un nouveau + disque", décrite au <xref + linkend="gui-createvm" />.</para> + + <para>Pour des détails sur les types de fichiers images + supportés, merci de voir <xref + linkend="vdidetails" />.</para> + </listitem> + + <listitem> + <para>Pour les lecteurs CD/DVD virtuels, les fichiers + image seront en général au format standard ISO. La plupart + du temps, vous sélectionnerez cette option quand vous + installerez un système d'exploitation à partir d'une image + ISO que vous avez récupéré sur Internet. Par exemple, la + plupart des distributions Linux sont disponibles par ce biais.</para> + + <para>Pour les lecteurs CD/DVD virtuels, les options + suivantes sont disponibles :</para> + + <para><itemizedlist> + <listitem> + <para>Si vous sélectionnez <emphasis role="bold">"Lecteur + hôte"</emphasis> dans la liste, le périphérique physique + de l'ordinateur hôte sera connecté à la VM, pour que + le système d'exploitation invité puisse lire et écrire + sur votre périphérique physique. Cela sert, par exemple, + si vous voulez installer Windows depuis un vrai CD + d'installation. Dans ce cas, sélectionnez votre lecteur + hôte dans la liste déroulante affichée.</para> + + <para>Si vous voulez écrire (graver) des CDs ou des + DVDs en utilisant le lecteur hôte, vous devez également + activer l'option + <emphasis role="bold">"Mode direct (Passthrough)"</emphasis> ; + voir <xref linkend="storage-cds" />.</para> + </listitem> + + <listitem> + <para>Si vous sélectionnez <emphasis role="bold">" + Supprimer un disque du lecteur virtuel",</emphasis> VirtualBox + présentera un lecteur CD/DVD vide à l'invité dans + lequel on a inséré le média.</para> + </listitem> + </itemizedlist></para> + </listitem> + </itemizedlist></para> + </listitem> + </orderedlist></para> + </listitem> + + <listitem> + <para>Pour <emphasis role="bold">supprimer une connexion,</emphasis>, + sélectionnez-la et cliquez sur l'icône "Supprimer" tout en bas (ou + effectuez un clic droit dessus et sélectionnez l'élément du menu).</para> + </listitem> + </itemizedlist></para> + + <para>On peut changer de média amovible (de CD/DVDs et de disquettes) pendant + que l'invité fonctionne. Comme la boîte de dialogue "Paramètres" n'est pas + disponibles à ce moment-là, vous pouvez aussi accéder à ces paramètres à + partir du menu "Périphériques" de la fenêtre de votre machine virtuelle.</para> + </sect1> + + <sect1 id="settings-audio"> + <title>Paramètres de son</title> + + <para>La section "Son" de la fenêtre de paramètres d'une machine virtuelle + détermine si la VM verra une carte son connectée et si la sortie son se fait + en dur sur le système hôte.</para> + + <para>Si le son est activé pour un invité, vous pouvez choisir entre + l'émulation d'un contrôleur Intel AC'97, un contrôleur Intel HD Audio<footnote> + <para>Le support d'Intel HD Audio a été ajouté avec VirtualBox 4.0 car + Windows 7 (versions 32 bits et 64 bits) ainsi que Windows Vista 64 bits + ne supportent pas le contrôleur Intel AC'97.</para> + </footnote> ou une carte SoundBlaster 16. Dans tous les cas, vous pouvez + sélectionner le pilote son que VirtualBox utilisera sur l'hôte.</para> + + <para>Sur un hôte Linux, selon votre configuration hôte, vous pouvez aussi + choisir entre les sous-systèmes OSS, ALSA ou PulseAudio sur les + distributions Linux récentes (Fedora 8 et supérieur, Ubuntu 8.04 et supérieur), + le sous-système PulseAudio devrait être privilégié.</para> + </sect1> + + <sect1 id="settings-network"> + <title>Paramètres réseau</title> + + <para>La section "Réseau" de la fenêtre des paramètres d'une machine virtuelle + vous permet de configurer la façon dont VirtualBox présente des cartes réseaux + virtuelles à votre VM et comment elles agissent.</para> + + <para>Quand vous créez une machine virtuelle la première fois, VirtualBox + active par défaut une carte réseau virtuelle et sélectionne le mode "Network + Address Translation" (NAT) pour celle-ci. De cette manière, l'invité peut + se connecter au monde extérieur en utilisant le réseau de l'hôte et le monde + extérieur peut se connecter aux services de l'invité que vous choisissez de + rendre visibles à l'extérieure de la machine virtuelle.</para> + + <para>Ce comportement par défaut convient probablement à 95% des utilisateurs + de VirtualBox. Cependant, VirtualBox est extrêmemen flexible quant à la + manière de virtualiser le réseau. Il supporte de nombreuses cartes réseaux + par machine virtuelle, les quatre premières peuvent être configurées en + détail dans la fenêtre du gestionnaire. Des cartes réseaux supplémentaires + peuvent être configurées en ligne de commande avec + VBoxManage. </para> + + <para>Du fait de la large gamme d'options disponibles, nous avons consacré + un chapitre complet de ce manuel à la configuration réseau ; merci de + voir <xref linkend="networkingdetails" />.</para> + </sect1> + + <sect1 id="serialports"> + <title>Ports série</title> + + <para>VirtualBox supporte pleinement les ports série virtuels d'une machine + virtuelle d'une manière facile à utiliser.<footnote> + <para>Le support du port série a été ajouté avec VirtualBox 1.5.</para> + </footnote></para> + + <para>Jadis, les PC originels d'IBM, les ordinateurs personnels (Personal + Computers) étaient équipés d'un ou deux ports série (appelés aussi des ports + COM par DOS et Windows). Les ports série sont généralement utilisés avec des + modems et certaines souris se connectaient en port série avant que l'USB ne + ne devienne omnipotent. + </para> + + <para>Si les ports série ne sont plus aussi omniprésents qu'avant, il leur + reste encore des cas d'usage importants. Par exemple, on peut utiliser des + ports série pour paramétrer un réseau primitif par un câble null-modem, + au cas où Ethernet n'est pas disponible. De plus, les ports série sont + indispensables pour les programmeurs système ayant besoin de faire du débogage de noyau, + car les logiciels de débogage de noyaux interagissent avec les développeurs + par le port série. Avec les ports série virtuels, les programmeurs système + peuvent faire du débogage de noyau sur une machine virtuelle plutôt qu'un vrai + ordinateur où ils se connecteraient.</para> + + <para>Si un port série virtuel est activé, le système d'exploitation invité + voit un périphérique UART 16550A compatible standard. La réception et la + transmission de données est supportée. La manière dont le port série virtuel + est alors connecté à l'hôte peut se configurer et les détails dépendent de + votre système d'exploitation hôte. + </para> + + <para>Vous pouvez utiliser soit l'outil graphique, soit + <computeroutput>VBoxManage</computeroutput> en ligne de commande pour paramétrer + des ports série virtuels. Pour le dernier cas, merci de vous reporter à <xref + linkend="vboxmanage-modifyvm" /> ; dans cette section, cherchez les + options <computeroutput>--uart</computeroutput> et + <computeroutput>--uartmode</computeroutput>.</para> + + <para>Dans le premier cas, vous pouvez configurer jusqu'à deux ports série + virtuels par machine virtuelle. Pour chaque périphérique, vous devrez + déterminer<orderedlist> + <listitem> + <para>le type de port série que la machine virtuelle devrait voir en + sélectionnant un I/O base address and interrupt (IRQ). Pour ceux-ci, + nous vous recommandons d'utiliser les valeurs traditionnelles<footnote> + <para>Voir, par exemple, <ulink + url="http://en.wikipedia.org/wiki/COM_(hardware_interface)">http://en.wikipedia.org/wiki/COM_(hardware_interface)</ulink>.</para> + </footnote>, qui sont :</para> + + <para><orderedlist> + <listitem> + <para>COM1: I/O base 0x3F8, IRQ 4</para> + </listitem> + + <listitem> + <para>COM2: I/O base 0x2F8, IRQ 3</para> + </listitem> + + <listitem> + <para>COM3: I/O base 0x3E8, IRQ 4</para> + </listitem> + + <listitem> + <para>COM4: I/O base 0x2E8, IRQ 3</para> + </listitem> + </orderedlist></para> + </listitem> + + <listitem> + <para>Puis, vous devrez déterminer à quoi ce port série virtuel devrait + être connecté. Pour chaque port série virtuel, vous avez les options + suivantes :</para> + + <para><itemizedlist> + <listitem> + <para>Vous pouvez choisir que le port série virtuel soit + "déconnecté", ce qui signifie que l'invité verra le périphérique + mais il se comportera comme si aucun câble n'y avait été + connecté.</para> + </listitem> + + <listitem> + <para>Vous pouvez connecter le port série virtuel à un port série + existant sur votre hôte. (Sur un hôte Windows, cela sera un nom + comme <computeroutput>COM1</computeroutput> ; sur des hôtes + Linux ou Solaris, ce sera un nœud de périphérique comme + <computeroutput>/dev/ttyS0</computeroutput>). VirtualBox redirigera + alors simplement toutes les données reçues et envoyées sur le + port série virtuel vers le périphérique physique.</para> + </listitem> + + <listitem> + <para>Vous pouvez dire à VirtualBox de connecter le port série + virtuel à un tunnel logiciel sur l'hôte. Cela dépend de votre + système d'exploitation hôte :<itemizedlist> + <listitem> + <para>Sur un hôte Windows, les données seront envoyées et + reçues par un tunnel nommé. Le nom du tunnel doit être au + format + <computeroutput>\\.\pipe\<nom></computeroutput> + où <computeroutput><name></computeroutput> devrait + identifier la machine virtuelle mais vous êtes libre dans + votre choix.</para> + <para>Pour rediriger du trafic série, vous pouvez utiliser + un programme d'aide appelé VMware Serial Line Gateway, + disponible en téléchargement sur + <literal> <ulink + url="http://www.l4ka.org/91.php">http://www.l4ka.org/91.php</ulink> + </literal>. Cet outil fournit un mode serveur fixé + nommé tunnel sur + <computeroutput>\\.\pipe\vmwaredebug</computeroutput> + et il connecte les connexions TCP entrantes sur le port 567 + avec le tunnel nommé.</para> + </listitem> + + <listitem> + <para>Sur un hôte Mac, Linux ou Solaris, un socket local + est plutôt utilisé. Le nom de fichier du socket doit + être choisi de telle sorte que l'utilisateur de VirtualBox + ait assez de droits pour créer et écrire dessus. Le répertoire + <computeroutput>/tmp</computeroutput> est souvent un bon + candidat.</para> + <para>Sur Linux, plusieurs outils peuvent se connecter à + un socket de domaine local ou en créer un en mode serveur. + L'outil le plus flexible est + <computeroutput>socat</computeroutput> et il est disponible + dans beaucoup de distributions.</para> + </listitem> + </itemizedlist></para> + + <para>Dans ce cas, vous pouvez configurer si VirtualBox devrait + créer le tunnel nommé (ou, sur les hôtes non Windows, le socket + de domaine local) lui-même ou si VirtualBox devrait supposer que + le tunnel (ou le socket) existe déjà. Avec les options en ligne + de commande de + <computeroutput>VBoxManage</computeroutput>, ceci est désigné + respectivement comme le mode "serveur" ou "client".</para> + + <para>Pour une connexion directe entre deux machines virtuelles, + (ce qui correspond à un câble null-modem), configurez simplement + une VM pour créer un tunnel/socket et un autre pour s'y relier. + </para> + </listitem> + + <listitem> + <para>Vous pouvez envoyer la sortie du port série virtuel vers + un fichier. Cette option est très utile pour récupérer des sorties + de diagnostic sur un invité. Vous pouvez utiliser n'importe quel + fichier dans ce but, tant que l'utilisateur de VirtualBox a + assez de droits pour créer et écrire dans le fichier. + </para> + </listitem> + </itemizedlist></para> + </listitem> + </orderedlist>Vous pouvez configurer jusqu'à deux ports série par machine + virtuelle, mais vous pouvez choisir n'importe quel numéro de port hors + de ceux ci-dessus. Cependant, les ports série ne sont pas capables de partager + de manière fiable des interruptions ; si deux ports doivent être + utilisés en même temps, ils doivent utiliser différents niveaux d'interruption, + par exemple COM1 et COM2, mais pas COM1 et COM3. + </para> + </sect1> + + <sect1> + <title>Support USB</title> + + <sect2 id="settings-usb"> + <title>Paramètres USB</title> + + <para>La section "USB" de la fenêtre de paramètres d'une machine virtuelle + vous permet de configurer le support USB sophistiqué de VirtualBox.</para> + + <para>VirtualBox peut permettre à des machines virtuelles d'accéder aux + périphériques USB directement sur votre hôte. Pour cela, VirtualBox présente + au système d'exploitation invité un contrôleur USB virtuel. Dès que le + système invité démarre en utilisant un périphérique USB, il apparaîtra + comme indisponible sur l'hôte.<note> + <orderedlist> + <listitem> + <para>Faites attention avec les périphériques USB utilisés sur + l'hôte ! Par exemple, si vous permettez à votre invité de se + connecter à votre disque dur USB actuellement monté sur l'hôte, + lorsque l'invité est actif, il sera déconnecté de l'hôte sans + débranchement propre. Cela peut entraîner une perte de données.</para> + </listitem> + + <listitem> + <para>Les hôtes Solaris ont quelques limites connues avec le + support USB ; merci de voir <xref linkend="KnownIssues" />.</para> + </listitem> + </orderedlist> + </note></para> + + <para>Au-delà de permettre un accès de l'invité à vos périphériques USB + locaux, VirtualBox permet même à vos invités de se connecter à des périphériques + USB distants en utilisant le VirtualBox Remote Desktop Extension (VRDE). + Pour des détails sur cela, voir <xref linkend="usb-over-rdp" />.</para> + + <para>Dans la boîte de dialogue des paramètres, vous pouvez d'abord + configurer si l'USB est disponible dans l'invité et éventuellement activer + le contrôleur USB 2.0 (EHCI) pour l'invité. Si tel est le cas, vous pouvez + déterminer en détail les périphériques disponibles. Pour ce faire, vous + devez créer ce qu'on appelle des "filtres" en spécifiant certaines propriétés + du périphérique USB.<note> + <para>Le contrôleur EHCI est inclu dans une extension de VirtualBox + qu'il faut installer séparément. Voir <xref + linkend="intro-installing" /> pour plus d'informations.</para> + </note></para> + + <para>Un clic sur le bouton "+" à droite de la fenêtre "Filtres des périphériques + USB" crée un <emphasis role="bold">nouveau filtre.</emphasis> + Vous pouvez donner au filtre un nom (pour le retrouver plus tard) et + spécifier les critères du filtre. Plus vous spécifiez ce critères, plus les + périphériques seront sélectionnés avec précision. Par exemple, si vous ne + spécifiez qu'un ID de fabricant 046d, tous les périphériques fabriqués par + Logitech seront disponibles pour l'invité. Si vous complétez tous les champs, + le filtre ne s'appliquera plutôt qu'à un modèle de périphérique particulier + d'un fabricant particulier et pas aux autres périphériques du même type + ayant un autre numéro de série ou de révision.</para> + + <para>Dans le détail, les critères suivants sont disponibles:</para> + + <orderedlist> + <listitem> + <para><emphasis role="bold">ID du fabricant et du produit.</emphasis> + Avec l'USB, chaque fabricant de produits USB a un numéro d'identification + unique au monde, l'"ID fabricant". De la même façon, chaque ligne de + produits se voit affecté un numéro "ID de produit". Les deux numéros + sont écrits en général en hexadécimal (c'est-à-dire qu'ils se composent + des chiffres 0 à 9 et des lettres A à F), et deux-points sépare l'ID + du fabricant et du produit. Par exemple, + <computeroutput>046d:c016</computeroutput> signifie le fabricant + Logitech et le produit Souris optique à roulette M-UV69a".</para> + + <para>Sinon, vous pouvez aussi spécifier un nom de <emphasis + role="bold">"fabricant"</emphasis> et de <emphasis + role="bold">"Produit"</emphasis>.</para> + + <para>Pour lister tous les périphériques USB connectés à votre + machine hôte avec leurs IDs de fabricant et de produit respectifs, vous + pouvez utiliser la commande suivante (voir <xref linkend="vboxmanage" />): <screen>VBoxManage list usbhost</screen></para> + + <para>Sur Windows, vous pouvez aussi voir tous les périphériques USB + connectés à votre système dans le gestionnaire de périphériques. Sur + Linux, vous pouvez utiliser la commande + <computeroutput>lsusb</computeroutput>.</para> + </listitem> + + <listitem> + <para><emphasis role="bold">Numéro de série.</emphasis> Si l'ID du + fabricant et du produit sont déjà très spécifiques pour identifier des + périphériques USB, si vous avez deux périphériques identiques de la même + gamme et de la même ligne de produits, vous aurez aussi besoin de leur + numéro de série pour les filtrer + correctement.</para> + </listitem> + + <listitem> + <para><emphasis role="bold">Distant.</emphasis> Ce paramètre + spécifie si le périphérique est seulement en local, distant (par VRDP), + ou autrement.</para> + </listitem> + </orderedlist> + + <para>Sur un hôte Windows, vous devrez débrancher et reconnecter un périphérique + USB pour l'utiliser après avoir créé un filtre pour lui.</para> + + <para>Par exemple, vous pourriez créer un nouveau filtre USB et spécifier + un ID fabricant de 046d (Logitech, Inc), un index de fabricant à 1, et + "non distant". Tous les périphériques USB de l'hôte fabriqués par Logitech, + Inc ayant un numéro d'index 1 seront visibles pour le système invité.</para> + + <para>Plusieurs filtres peuvent sélectionner un périphérique unique -- par + exemple, un filtre qui sélectionne tous les périphériques Logitech et un + qui sélectionne une webcam en particulier.</para> + + <para>Vous pouvez <emphasis role="bold">désactiver</emphasis> des filtres + sans les supprimer en cliquant dans la case à cocher à côté du nom du filtre.</para> + </sect2> + + <sect2> + <title>Notes d'implémentation pour les hôtes Windows et Linux</title> + + <para>Sur les hôtes Windows, un pilote de périphérique en mode noyau fournit + un support proxy USB. Il implémente un moniteur USB, qui permet à VirtualBox + de capturer des périphériques quand ils sont branchés et un pilote de + périphérique USB qui amène les périphériques USB à une machine virtuelle + VirtualBox antérieures à 1.4.0, un redémarrage du systme n'est plus nécessaire + après l'installation du pilote. De plus, vous n'avez plus besoin de rebrancher + des périphériques pour que VirtualBox les gère.</para> + + <para>Sur les hôtes Linux récents, VirtualBox accède aux périphériques USB + par des fichiers spéicaux du système de fichiers. Quand VirtualBox est + installé, ils sont rendus disponibles pour tous les utilisateurs dans le + groupe système + <computeroutput>vboxusers</computeroutput>. Pour pouvoir accéder à l'USB + à partir de systèmes invités, assurez-vous d'être membre de ce groupe.</para> + + <para>Sur les anciens hôtes Linux, on accède aux périphériques USB en + utilisant le système de fichiers + <computeroutput>usbfs</computeroutput>. Donc, l'utilisateur qui exécute + VirtualBox a besoin des droits en lecture et écriture sur le système de + fichiers USB. La plupart des distributions fournissent un groupe (comme + <computeroutput>usbusers</computeroutput>) où doit être ajouté l'utilisateur + VirtualBox. En outre, VirtualBox ne peut pas faire un proxy avec les périphériques + USB de la machine virtuelle qui ne sont pas gérés par un pilote USB de + l'hôte Linux. L'entrée + <computeroutput>Driver=</computeroutput> de + <computeroutput>/proc/bus/usb/devices</computeroutput> vous montrera les + périphériques actuellement reconnus. Merci de vous reporter aussi à <xref + linkend="ts_usb-linux" /> pour des détails sur + <computeroutput>usbfs</computeroutput>.</para> + </sect2> + </sect1> + + <sect1> + <title>Dossiers partagés</title> + + <para>Les dossiers partagés vous permettent d'échanger facilement des données + entre une machine virtuelle et votre hôte. Cette fonctionnalité exige que + les suppléments invité de VirtualBox soient installés dans une machine + virtuelle et ceci est décrit en détail au + <xref linkend="sharedfolders" />.</para> + </sect1> + + <sect1 id="efi"> + <title>Autre firmware (EFI)</title> + + <para>À partir de la version 3.1, VirtualBox inclut un support expérimental + pour l'Extensible Firmware Interface (EFI), qui est un nouveau + standard industriel conçu pour remplacer éventuellement, à terme, le BIOS traditionnel + comme interface pour les ordinateurs faisant du bootstrapping et certains + services système.</para> + + <para>Par défaut, VirtualBox utilise le firmware BIOS pour les machines virtuelles. + Pour utiliser l'EFI pour une machine virtuelle donnée, vous pouvez activer l'EFI + dans la boîte de dialogue "Paramètres" de la machine (voir <xref linkend="settings-motherboard" />). + Sinon, utilisez l'interface en ligne de commande <computeroutput>VBoxManage</computeroutput> + comme ceci : <screen>VBoxManage modifyvm "nom VM" --firmware efi</screen> + Pour revenir à l'utilisation du BIOS, utilisez : <screen>VBoxManage modifyvm "nom VM" --firmware bios</screen>Un + utilisateur notable de l'EFI est Mac OS X d'Apple, mais les Linux + (tels que Fedora 11) et Windows récents (à partir de Vista) offrent des + versions spéciales qu'on peut démarrer en utilisant l'EFI.</para> + + <para>Une autre utilisation possible de l'EFI dans VirtualBox est le + développement et le test d'applications EFI, sans démarrer d'OS.</para> + + <para>Remarquez que le support EFI de VirtualBox est expérimental et il + sera amélioré au fur et à mesure des progrès d'EFI et de son extension. + Mac OS X et Linux sont connus pour très bien fonctionner, les invités + Windows sont actuellement incapables de démarrer avec l'implémentation EFI + de VirtualBox.</para> + + <sect2 id="efividmode"> + <title>Modes graphiques dans EFI</title> + + <para>EFI fournit deux interfaces graphiques distinctes : GOP (Graphics Output + Protocol) et UGA (Universal Graphics Adapter). Mac OS X utilise GOP, tandis + que Linux a tendance à utiliser UGA. VirtualBox fournit une option de + configuration pour contrôler la taille du framebuffer pour les deux interfaces.</para> + + <para>Pour contrôler GOP, utilisez la commande + <computeroutput>VBoxManage</computeroutput> suivante : <screen>VBoxManage setextradata "nom VM" VBoxInternal2/EfiGopMode N</screen> + Où N peut être 0,1,2,3,4,5, respectivement pour des résolutions d'écran + 640x480, 800x600, 1024x768, 1280x1024, 1440x900, 1920x1200.</para> + + <para>Pour modifier la résolution UGA, : <screen>VBoxManage setextradata "nom VM" VBoxInternal2/UgaHorizontalResolution 1440 +VBoxManage setextradata "nom VM" VBoxInternal2/UgaVerticalResolution 900</screen></para> + + <para>Le mode graphique pour GOP et UGA ne peut être modifié que quand la + VM est éteinte; il persiste jusqu'à ce qu'il soit modifié.</para> + </sect2> + <sect2 id="efibootargs"> + <title>Spécifier des arguments au démarrage</title> + + <para>Il n'est actuellement pas possible de manipuler les variables EFI + depuis un invité en fonction (par exemple définir la variable "boot-args" + en lançant l'outil <computeroutput>nvram</computeroutput> dans un invité + Mac OS X ne fonctionnera pas). Comme alternative, la donnée externe + "VBoxInternal2/EfiBootArgs" peut être passée à la VM pour définir la + variable "boot-args". Pour modifier la variable EFI "boot-args" : + <screen>VBoxManage setextradata "nom VM" VBoxInternal2/EfiBootArgs <valeur></screen> + </para> + </sect2> + </sect1> +</chapter> diff --git a/doc/manual/fr_FR/user_ChangeLog.xml b/doc/manual/fr_FR/user_ChangeLog.xml new file mode 100644 index 00000000..156d5a45 --- /dev/null +++ b/doc/manual/fr_FR/user_ChangeLog.xml @@ -0,0 +1,11947 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" + "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd"> +<chapter id="ChangeLog"> + <title>Historique des changements</title> + + <para>Cette section résume les changements entre les versions de VirtualBox. + Remarquez que cet historique n'est pas exhaustif ; tous les changements + ne sont pas listés.</para> + + <para>Les numéros de version de VirtualBox consistent en trois nombres séparés + par des points où le premier et le second numéro représentent la version + majeure et le 3ème nombre la version mineure. Les numéros des versions mineures + des versions officielles sont toujours là. Un numéro de version mineure ad + hoc représente une construction de développement ou de test. En outre, chaque + construction contient un numéro de révision.</para> + + + <sect1> + <title>Version 4.4.0 (yyyy-mm-dd)</title> + + <para>C'est une mise à jour majeure. Les nouvelles fonctions importantes + suivantes ont été ajoutées :</para> + + <itemizedlist> + + <listitem> + <para>GUI : support du branchement à chaud des disques SATA</para> + </listitem> + + </itemizedlist> + + <para>En outre, les éléments suivants ont été corrigés et/ou ajoutés :</para> + + <itemizedlist> + + <listitem> + <para>VBoxManage : lors de l'export d'un applicatif, support de la + suppression des adresses MAC, ce qui signifie qu'elles seront toujours + recréées au moment de l'importation, évitant des doublons d'adresses MAC + entre les VMs importées plusieurs fois.</para> + </listitem> + <listitem> + <para>API : blocage de la suppression de l'instantané actuel s'il a des + instantanés fils (pertinent seulement pour les VMs où aucun instantané + durs n'est pas possible car leur présence empêchait toujours la + suppression), ce qui provoquait une corruption de la config de la VM</para> + </listitem> + + <listitem> + <para>API : marquage des configs de VM ayant des instantanés mais aucun + d'accessible actuellement comme inaccessibles, car cette combinaison + n'a pas de sens</para> + </listitem> + + <listitem> + <para>API : correction des informations de certains événements générées + automatiquement (seulement avec XPCOM, l'hôte Windows n'était pas concerné), + ce qui provoquait des erreurs de récupération d'attributs par le service + Web (bogue #12379)</para> + </listitem> + <listitem> + <para>API : correction de plantages des clients de l'API Java qui + utilisent les bindings XPCOM et qui survenaient surtout dans la sortie + des paramètres (bogue #11232)</para> + </listitem> + + </itemizedlist> + + </sect1> + + <sect1> + <title>Version 4.3.8 (25-02-2014)</title> + + <para>C'est une version de maintenance. Les éléments suivants ont été + corrigés et/ou ajoutés :</para> + + <itemizedlist> + + <listitem> + <para>VMM : davantage de travail sur l'amélioration de l'émulation de + certains registres MSR (par exemple, bogues #12224, #12544)</para> + </listitem> + + <listitem> + <para>VMM : correction d'une Guru Meditation <emphasis>VERR_INVALID_RPL</emphasis> + lors du démarrage de certains invités (bogue #11350)</para> + </listitem> + + <listitem> + <para>VMM : support expérimental de SSE 4.1 / SSE 4.2 passthrough, voir + dans le manuel de l'utilisateur la façon de l'activer (bogue #8651)</para> + </listitem> + + <listitem> + <para>VMM : correction pour les noyaux Linux récents avec la virtualisation + logicielle</para> + </listitem> + + <listitem> + <para>GUI: expérimentale des LEDs HID pour les hôtes + Windows, voir le manuel de l'utilisateur</para> + </listitem> + + <listitem> + <para>GUI : avertissement de l'utilisateur si le pack d'extensions + Oracle n'est pas installé et si l'utilisateur essaie d'activer la fonction + d'affichage à distance (bogue #9104)</para> + </listitem> + + <listitem> + <para>GUI : on s'assure qu'un inviqé minimisé (en utilisant la mini + barre d'outils en mode plein écran ou transparent) reste minimisé (bogue #12199)</para> + </listitem> + + <listitem> + <para>GUI : affichage d'une case à cocher "ne plus afficher ce message" + à la place du bouton correspondant</para> + </listitem> + + <listitem> + <para>GUI : les câbles de l'adaptateur réseau peuvent maintenant être + connectés/déconnectés directement dans le menu Périphériques / Réseau + dans la machine virtuelle actuelle, via un indicateur d'état Réseau</para> + </listitem> + + <listitem> + <para>GUI : l'assistant NouvelleVM propose maintenant par défaut des + invités 64 bits sur des hôtes 64 bits ; meilleure distinction entre les + types d'OS 32 bits et ceux 64 bits (bogue #12533)</para> + </listitem> + + <listitem> + <para>GUI : e d'erreur si l'importation d'un applicatif + échoue (bogue #12657)</para> + </listitem> + + <listitem> + <para>GUI : possibilité de définir la host-combination (combinaison d'hôte) + à 'Aucune' en utilisant les paramètres globaux / onglet Entrée (bogue #12730)</para> + </listitem> + + <listitem> + <para>GUI : ne met pas la VM en écran noir pendant la synchronisation + d'un instantané en ligne (régression 4.3)</para> + </listitem> + + <listitem> + <para>VBoxManage : à l'export d'un applicatif, support de la suppression + des adresses MAC, ce qui veut dire qu'elles seront toujours recréées + lors de l'importation, évitant d'avoir des adresses MAC doubles pour + des VMs importées plusieurs fois</para> + </listitem> + + <listitem> + <para>AHCI : correction d'un accroc de VM pendant la suspension dans + certaines circonstances</para> + </listitem> + + <listitem> + <para>AHCI : correction d'un accroc de VM pendant la synchronisation des + instantanés en ligne dans certaines circonstances</para> + </listitem> + + <listitem> + <para>AHCI: correction d'un bogue faisant planter les invités + Windows XP si un lecteur CD-ROM SATA est connecté (bogue #12417)</para> + </listitem> + + <listitem> + <para>AHCI : correction d'une Guru Meditation dans certaines conditions</para> + </listitem> + + <listitem> + <para>AHCI : échec de l'éjection d'un CD/DVD dans certaines conditions</para> + </listitem> + + <listitem> + <para>AHCI : correction du branchement à chaud d'un disque</para> + </listitem> + + <listitem> + <para>NAT : gestion transparente des veilles prolongées/réveils de l'hôte + et des changements de configurationréseau si dnsproxy est actif eu si + hostresolver est utilisé + (bogue #12441)</para> + </listitem> + + <listitem> + <para>NAT : correction d'un plantage et d'un mauvais comportemen dans + certaines circonstances avec des paquets ICMP ayant TTL=1</para> + </listitem> + + <listitem> + <para>Réseau NAT : correction du réassemblage en IPv6</para> + </listitem> + + <listitem> + <para>Réseau NAT : implémentation du ping d'un proxy</para> + </listitem> + + <listitem> + <para>OVF : correction de la lecture de l'élément de section d'OVF 0.9 + (régression 4.3 ; bogue #12345)</para> + </listitem> + + <listitem> + <para>OVF : plusieurs corrections</para> + </listitem> + + <listitem> + <para>Support 3D : plusieurs corrections, notamment le multi-écrans + (voir bogue #9124)</para> + </listitem> + + <listitem> + <para>Support 3D : inclusion d'un contenu 3D dans les vidéos capturées + (bogue #12666)</para> + </listitem> + + <listitem> + <para>Support 3D : inclusion d'un contenu 3D dans les impressions d'écran + capturées (bogue #11758)</para> + </listitem> + + <listitem> + <para>VGA : bonne gestion des modes graphiques rudimentaires si les + suppléments invité sont actifs (bogue #6649)</para> + </listitem> + + <listitem> + <para>USB : correction d'un plantage pendant un transfert asynchrone + dans de rares circonstances</para> + </listitem> + + <listitem> + <para>BIOS : meilleure gestion de la géométrie des disques SCSI</para> + </listitem> + + <listitem> + <para>API : correction de plantages dans les clients de l'API Java + utilisant le binding XPCOM, ce qui n'arrivait qu'avec les paramètres de + sortie (bogue #11232)</para> + </listitem> + + <listitem> + <para>VBoxSVC : documentation de la prise en charge des événements de + gestion d'énergie de l'hôte (voir <xref linkend="hostpowertweaks" xreflabel="here"/>) ++ et ajout d'une donnée externe pour configurer la gestion de l'événement + batterie faible (bogue #9925)</para> + </listitem> + + <listitem> + <para>VBoxSVC : correction d'un bogue pouvant provoquer un plantage + si l'instantané d'une VM était restauré une deuxième fois alors que + la VM avait des groupes de bandes passantes associés + (bogue #12569)</para> + </listitem> + + <listitem> + <para>VBoxSVC : bonne détection d'ifconfig s'il se trouve dans + <emphasis>/bin</emphasis> + (bogue #12713)</para> + </listitem> + + <listitem> + <para>Dossiers partagés : correction d'un échec pour restaurer + des dossiers partagés précédemment utilisés lors du démarrage d'une VM + d'un état sauvegardé (bogue #12578)</para> + </listitem> + + <listitem> + <para>Hôtes Mac OS X : correction d'un problème quand l'icône de l'application + a été maintenue dans le dock si l'interface de bridge n'était pas + connectée à un réseau + (bogue #12241)</para> + </listitem> + + <listitem> + <para>Hôtes Linux : prise en compte de l'ID physique des paquets lors de + la détermination du nombre de cœurs de processeurs physiques</para> + </listitem> + + <listitem> + <para>Hôtes / invités Linux : pas d'avertissement dans le journal du + noyau en cas d'échec d'affectation de mémoire (bogue #11171)</para> + </listitem> + + <listitem> + <para>Hôtes Solaris : correction du script SMF de démarrage automatique + (bogue #11720)</para> + </listitem> + + <listitem> + <para>Hôtes Windows : corrections des noms d'utilisateur des pages de + code non ANSI ou des contenus d'environnements du même genre (bogue #12596)</para> + </listitem> + + <listitem> + <para>Hôtes / invités Windows : correction du réglage et de l'utilisation + des variables d'environnement du processus d'un utilisateur de l'invité + (par cohérence avec le contrôle de l'invité)</para> + </listitem> + + <listitem> + <para>Suppléments Windows : correction de la gestion des fuites dans + VBoxTray (bogue #12563)</para> + </listitem> + + <listitem> + <para>Suppléments Windows : correction d'un plantage pendant la détection + des utilisateurs actifs sur l'invité</para> + </listitem> + + <listitem> + <para>Suppléments Windows : correction de la restauration des fichiers + D3D sauvegardés lors du passage de XPDM à WDDM</para> + </listitem> + + <listitem> + <para>Contrôoe invité : correction de la définition et de l'utilisation + des variables d'environnement du processus de l'utilisateur de l'invité</para> + </listitem> + + <listitem> + <para>Suppléments Linux : support des noyaux Linux Enterprise 6.5 + (bogue #12505)</para> + </listitem> + + <listitem> + <para>Suppléments Linux : correction de la suppression à chaud du + processeur sur les nouveaux noyaux Linux</para> + </listitem> + + <listitem> + <para>Suppléments Linux / Solaris : ne monte pas automatiquement un + dossier partagé qui est déjà monté</para> + </listitem> + + <listitem> + <para>Suppléments X11 : support de X.Org Server 1.15 (bogue #12623)</para> + </listitem> + + </itemizedlist> + + </sect1> + + <sect1> + <title>Version 4.3.6 (18-12-2013)</title> + + <para>C'est une version de maintenance. Les éléments suivants ont été + corrigés et/ou ajoutés :</para> + + <itemizedlist> + + <listitem> + <para>VMM : correction d'une Guru Meditation <emphasis>VINF_EM_TRIPLE_FAULT</emphasis> + causée par la mise en cache VMCB avec la pagination nested sur + certains processeurs AMD (bogue #12451)</para> + </listitem> + + <listitem> + <para>VMM : correction d'une Guru Meditation <emphasis>VERR_VMX_UNEXPECTED_INTERRUPTION_EXIT_TYPE</emphasis> + pendant l'interception des exceptions de débogage (VT-x seulement ; bogue #12410)</para> + </listitem> + + <listitem> + <para>VMM : correction d'une Guru Meditation <emphasis>VERR_SVM_UNEXPECTED_EXIT</emphasis> + pendant l'interception des accès aux registres de débogage (AMD-V + seulement ; bogue #12481)</para> + </listitem> + + <listitem> + <para>VMM correction d'une erreur a <emphasis>VERR_SSM_STRUCTURE_MAGIC</emphasis> + quand on essaie de charger un état sauvegardé établi par VBox 4.3.4 + quand VT-x/AMD-V est désactivé. Malheureusement, + VBox 4.3.4 produisait des états sauvegardé cassés dans cette + configuration, donc vous devez désactiver ces états (bogue #12414)</para> + </listitem> + + <listitem> + <para>VMM : ajout de quelques MSRs supplémentaires pour la liste + blanche exigée par certains invitçs (bogue #12245)</para> + </listitem> + + <listitem> + <para>GUI : correction de la suppression des VMs inaccessibles + (régression 4.3, bogue #12205)</para> + </listitem> + + <listitem> + <para>GUI : correction d'avertissements dans les paramètres de la VM / + nombre de processeurs de l'invité (bogue #12480)</para> + </listitem> + + <listitem> + <para>Principal : n'active pas automatiquement les invités 64 bits sur + des hôtes 64 bits si VT-x/AMD-V n'est pas disponible (bogue #12424)</para> + </listitem> + + <listitem> + <para>Principal : on présente toujours les informations en mémoire DMI + pour les invités Windows 2012 (bogue #12017)</para> + </listitem> + + <listitem> + <para>Principal : correction de plantages occasionels sur lors d'un + changement de résolution de l'affichage de l'invité (bogue #7063)</para> + </listitem> + + <listitem> + <para>Principal : correction de l'affichage des noms temporaires quand on + appelle <emphasis>IGuestSession::DirectoryCreateTemp()</emphasis> (bogue #12498)</para> + </listitem> + + <listitem> + <para>API : correction d'un accroc au lancement d'une VM avec GUI via + l'API, qui plante car la GUI n'est pas disponible</para> + </listitem> + + <listitem> + <para>Stockage : correction d'erreurs à l'exécution de + <emphasis>BLKCACHE_IOERR</emphasis> + dans de rares circonstances (bogue #11030)</para> + </listitem> + + <listitem> + <para>Réseau : possibilité de démarrer plus de 5 instances PCNet (bogue #12426)</para> + </listitem> + + <listitem> + <para>E1000 : si le câble a été déconnecté avant l'initialisation par + l'invité du périphérique, l'état du lien n'était pas bien passé en + 'désactivé' après la fin de l'initialisation, malgré le fait qu'il n'y + avait pas de connexion</para> + </listitem> + + <listitem> + <para>Support 3D : correction d'un offset d'éléments d'une image 3D dans + l'invité (hôtes Mac OS X Retina seulement ; bogue #11021)</para> + </listitem> + + <listitem> + <para>Hôtes Solaris : correction de l'accès au pilote de l'hôte à parti + zones non globales (régression 4.3, bogue #12271)</para> + </listitem> + + </itemizedlist> + + </sect1> + + <sect1> + <title>Version 4.3.4 (2013-11-29)</title> + + <para>C'est une version de maintenance. Les éléments suivants ont été + corrigés et/ou ajoutés :</para> + + <itemizedlist> + + <listitem> + <para>VMM : correction d'un bogue dans l'émulation de l'APIC Local provoquant + un BSOD au démarrage de certains invités (régression 4.3.0 ; bogue #12240)</para> + </listitem> + + <listitem> + <para>VMM : correction du chargement des états sauvegardés si VT-x/AMD-V + a été désactivé (régression 4.3.2 ; bogue #12291)</para> + </listitem> + + <listitem> + <para>VMM : correction du single-stepping dans l'invité pour certaines + instructions (VT-x seulement ; bogue #10947)</para> + </listitem> + + <listitem> + <para>VMM : correction d'un problème de performance impliquant les accès + à l'APIC après le redémarrage d'une VM (régression 4.3.0 ; VT-x seulement ; + bogue #12296)</para> + </listitem> + + <listitem> + <para>VMM : correction de l'activation d'un correctif TPR pour les + invités 32 bits même quand le type d'invité choisi était un 32 bit + (régression 4.3.0 ; AMD-V seulement)</para> + </listitem> + + <listitem> + <para>VMM : correction d'erreurs <emphasis>VINF_EM_TRIPLE_FAULT</emphasis> occasionnelles + sur des hôtes sans la fonction d'exécution sans restriction de l'invité (bogue #12198)</para> + </listitem> + + <listitem> + <para>GUI : on n'ennuie pas l'utilisateur avec l'avertissement BPP si + les suppléments invité ne sont pas installés</para> + </listitem> + + <listitem> + <para>GUI : correction de dessins artifcacts dans la fenêtre de la machine + au redémarrage de la VM / redimensionnement de l'écran de l'invité</para> + </listitem> + + <listitem> + <para>GUI : on s'assure que la licence et la description sont reliées + à l'applicatif exporté</para> + </listitem> + + <listitem> + <para>GUI : correction de bogues dans la gestion des restrictions de + fermeture d'une VM (bogue #12333)</para> + </listitem> + + <listitem> + <para>GUI : correction de mauvaises couleurs du texte des assistants + dans certaines apparences inhabituelles et pour certains styles (bogue #11743)</para> + </listitem> + + <listitem> + <para>GUI : devrait restaurer le mode transparent dès que possible après + le redémarrage ou l'extinction de la VM</para> + </listitem> + + <listitem> + <para>GUI : corrections de l'énumération des médias</para> + </listitem> + + <listitem> + <para>GUI : les points chauds d'OS X n'étaient pas accessibles tant qu'une + VM VirtualBox est en fonction (hôtes Mac OS X seulement ; bogue #4139)</para> + </listitem> + + <listitem> + <para>GUI : correction d'un vieux bogue qui empêchait vhôte de s'éteindre / + redémarrer proprement si la fenêtre de sélection d'une VM est ouverte + (hôtes Mac OS X seulement ; bogue #8254)</para> + </listitem> + + <listitem> + <para>Réseau Host-only : correction de la création d'interfaces réseaux + host-only (régression 4.3.0 ; bogue #12182)</para> + </listitem> + + <listitem> + <para>NAT : n'entre pas dans une boucle infinie si l'hôte ne peut pas + accéder à un serveur DNS (régression 4.3.0 ; bogue #12300)</para> + </listitem> + + <listitem> + <para>NAT : ne rebranche pas le câble si les informations de DNS changent + et si le câble a été déconnecté auparavant (régression 4.3.0 ; bogue #12225)</para> + </listitem> + + <listitem> + <para>NAT : correction de plusieurs problèmes avec le démarrage/fin automatique + des réseaux NAT au démarrage " arrêt de la VM et lors des changements + de configuration</para> + </listitem> + + <listitem> + <para>VBoxNetDHCP : le non bloc ge empêche VBoxSVC de se terminer + (bogue #12264)</para> + </listitem> + + <listitem> + <para>Accélération graphique 2D : correction de plantages lors des + changements de modes d'affichage + (bogue #9194)</para> + </listitem> + + <listitem> + <para>BusLogic : possibilité de lancer des VMs ayant plus d'un contrôleur + SCSI BusLogic activé</para> + </listitem> + + <listitem> + <para>Clavier : correction d'un plantage de VM si une VM s'est réveillée + d'un état sauvegardé par l'appui sur au moins une touche (bogue #11289)</para> + </listitem> + + <listitem> + <para>VBoxSVC : correction d'une corruption heap dans certaines conditions (régression + 4.3.0)</para> + </listitem> + + <listitem> + <para>VBoxSVC : correction d'un conflit provoquant un accroc pendant + l'initialisation (bogue #12349)</para> + </listitem> + <listitem> + <para>OVF : correction d'une logique importation pour les applicatifs OVF + contenant plusieurs + VMs</para> + </listitem> + + <listitem> + <para>OVF : amélioration logique de la recherche d'un format d'image + adéquat pendant l'importation d'un OVF</para> + </listitem> + + <listitem> + <para>API : blocage de la suppression de l'instantané actuel s'il a des + instantanés fils (pertinent seulement pour les VMs sans disque dur + pouvant faire l'objet d'instantanés, leur présence empêchait toujours + la suppression), ce qui entraînait une corruption de la config de la VM + </para> + </listitem> + + <listitem> + <para>API : marquage des configurations de VM avec des instantanés sans + celui actuel, inaccessible, car cette combinaison est ridicule</para> + </listitem> + + <listitem> + <para>API : correction des informations sur certains événements générés + automatiquement (seulement avec XPCOM, l'hôte Windows n'était pas concerné), + ce qui provoquait des erreurs lors de ;a définition de certains attributs + via le service Web + (bogue #12379)</para> + </listitem> + + <listitem> + <para>SDK : extension des fonctionnalités des bindings C</para> + </listitem> + + <listitem> + <para>Contrôle d'invité : diverses corrections de bogues et amélioration + de l'aide de VBoxManage (bogues #8072, #11044, #12336, #12338, #12346, #12371)</para> + </listitem> + + <listitem> + <para>Hôtes Windows : nouvelle tentative de correction de la forte latence + DPC + (bogue #6242)</para> + </listitem> + + <listitem> + <para>Installeur sur hôtes Windows : l'enregistrement des extensions de + fichiers devient facultatif, contribution de Tal Aloni (bogue #8009)</para> + </listitem> + + <listitem> + <para>Hôtes Mac OS X : signature correct des extensions du noyau pour + les hôtes Mavericks (bogue #12256)</para> + </listitem> + + <listitem> + <para>Hôtes Mac OS X : correction d'un bogue où l'icône VirtualBox du dock + n'était bien supprimée du dock après la fin d'une VM, empêchant + les hîtes Mavericks de s'éteindre (bogue #12241)</para> + </listitem> + + <listitem> + <para>Hôtes Mac OS X : correction d'un petit problème de l'installeur + (bogue #12275)</para> + </listitem> + + <listitem> + <para>Hôtes / invités Linux : corrections de compilation avec Linux 3.13 + (bogue #12358)</para> + </listitem> + + <listitem> + <para>Invités Linux : bonne construction du module noyau vboxvideo sur les + invités OL/RHEL 6.1 (bogue #11996)</para> + </listitem> + + <listitem> + <para>Invités Linux : la 3D fonctionne sur Slackware 14.1 + (bogue #12320 commentaires 3 et 4)</para> + </listitem> + + <listitem> + <para>Suppléments invité/3D : correction d'un dead-lock occasionnel (bogue #12319)</para> + </listitem> + + <listitem> + <para>Suppléments Windows/3D : correction d'une fuite de mémoire possible + (bogue #12228)</para> + </listitem> + + <listitem> + <para>Suppléments Windows/XPDM : utilisation de tables séparées contenant + des modes graphiques valides pour chaque écran</para> + </listitem> + <listitem> + <para>Suppléments Windows : correction des icentifications automatiques + sur les invités Windows Vista et supérieur (bogue #12332)</para> + </listitem> + + </itemizedlist> + </sect1> + + <sect1> + <title>Version 4.3.2 (01-11-2013)</title> + + <para>C'est une version de maintenance. Les éléments suivants ont été + corrigés et/ou ajoutés :</para> + + <itemizedlist> + + <listitem> + <para>VMM : correction de la restauration du TSC MSR auxiliaire en VT-x + qui provoquait des BSODs de l'hôte sur les hôtes Windows 8.1 et un comportement + imprévisible sur les autres hôtes (bogue #12237)</para> + </listitem> + + <listitem> + <para>VMM : on fournit de fausses valeurs pour deux MSRs afin de + mieux contenter l'invité sur certains hôtes</para> + </listitem> + <listitem> + <para>VMM : correction de la détection de VT-x sur certaines machines + où le BIOS ne définirait pas le bit de la fonction VMX LOCK, ce qui + concernait les paramètres de la VM dans la GUI</para> + </listitem> + + <listitem> + <para>VMM : correction du threshold TPR qui provoquait des BSODs sur + les invités Windows XP qui utilisent l'APIC E/S (VT-x seulement ; bogue #12227)</para> + </listitem> + + <listitem> + <para>VMM : correction d'une incompatibilité PATM dans l'état sauvegardé + pour les VMs virtualisées de façon logicielle (bogue #12222)</para> + </listitem> + + <listitem> + <para>VMM : n'échoue pas si if AMD-V n'est pas disponible si la VM est + configurée pour utiliser la virtualisation logicielle</para> + </listitem> + + <listitem> + <para>GUI : correction d'une rupture du redimensionnement de l'invité + lors des changements des modes d'affichage (quand on passe du mode normal + au plein écran, etc)</para> + </listitem> + + <listitem> + <para>GUI : on s'assure que l'écran de l'invité se redimensionne après + la restauration d'une VM d'un état sauvegardé si la taille de l'écran + de l'hôte a changé</para> + </listitem> + + <listitem> + <para>GUI : désactivation de la synchronisation de la LED du défilement + par rapport à la synchronisation des LEDs HID + (hôtes Mac OS X seulement)</para> + </listitem> + + <listitem> + <para>Amélioration du Webcam passthrough, y compris le support en + GUI support (voir + <xref linkend="webcam-passthrough" />)</para> + </listitem> + + <listitem> + <para>Contrôle d'invité : implémentation de davantage de méthodes + <computeroutput>IGuestSession</computeroutput></para> + </listitem> + + <listitem> + <para>Contrôle invité : ajout du support de l'effacement et du renommage + des fichiers et des répertoires de l'invité dans VBoxManage</para> + </listitem> + + <listitem> + <para>Contrôle invité : plusieurs corrections de bogues</para> + </listitem> + + <listitem> + <para>API : mauvaise gestion de la valeur par défaut de l'UUID, ce qui + donne des UUIDs DMI/SMBIOS pleins de zéros, amenant Windows à + demander d'être réactivé (régression 4.3 ; bogue #12244)</para> + </listitem> + + <listitem> + <para>Support 3D : correction d'un plantage à l'extinction si l'accélération + graphique 2D est activée (hôtes Mac OS X seulement)</para> + </listitem> + + <listitem> + <para>Support 3D : corrections diverses</para> + </listitem> + + <listitem> + <para>Stockage : correction de la détection des CD/DVD quand on passe + d'un lecteur vide à un rattaché à l'hôte avec passthrough activé</para> + </listitem> + + <listitem> + <para>Stockage : correction d'un accroc du processus de VM quand le disque + est plein dans certaines + circonstances</para> + </listitem> + + <listitem> + <para>NAT : écoute des changements de paramétrage du réseau NAT pendant + l'exécution.</para> + </listitem> + + <listitem> + <para>NAT : le serveur DHCP du réseau NAT enregistre maintenant les + adresses sur un support de stockage permanent</para> + </listitem> + <listitem> + <para>Principal : changements d'écran dans la configuration du DNS de l'hôte </para> + </listitem> + + <listitem> + <para>Hôte Mac OS X : on a retravaillé un mécanisme d'ajout d'un alias + sur le bureau vers une VM à partir du sélecteur de VM</para> + </listitem> + + <listitem> + <para>Hôtes Mac OS X : suppression des extensions pour les + vieux noyaux lors de la mise à jour (bogue #12258)</para> + </listitem> + + <listitem> + <para>Suppléments Linux : bonne définition de l'umask avant d'installer + (bogue #12166)</para> + </listitem> + + <listitem> + <para>Suppléments X11 /3D : correction de gels au lancement d'un bureau + 3D (bogue #11503, merci à Sam Spilsbury)</para> + </listitem> + + <listitem> + <para>Suppléments X11 / 3D : correction du support de tampons en profondeur + (bogue #11905)</para> + </listitem> + + <listitem> + <para>Suppléments X11 / 3D : correction de l'affichage Age Of Empires 3 + (bogue #11331)</para> + </listitem> + + <listitem> + <para>Suppléments Windows / 3D : correction de l'affichage du greffon + Google Earth</para> + </listitem> + + <listitem> + <para>Suppléments Windows / WDDM : corrections de personnalisation</para> + </listitem> + + </itemizedlist> + </sect1> + + <sect1> + <title>Version 4.3.0 (2013-10-15)</title> + + <para>C'est une mise à jour majeure. Les nouvelles fonctions suivantes ont + été ajoutées :</para> + + <itemizedlist> + + <listitem> + <para>VMM : grosse réécriture du code VT-x et du code AMD-V, incluant + de nombreuses corrections de bogues et des améliorations de performance + (par exemple bogue #9659)</para> + </listitem> + <listitem> + <para>VMM : introduction d'un petit interpréteur d'instructions pour les + situations que ne gère pas la virtualisation matérielle</para> + </listitem> + <listitem> + <para>GUI : mécanisme de messages étendus (utilisation des nouvelles + couches d'affichage non modales pour afficher des avertissements non + critiques et donner à l'utilisateur des informations supplémentaires)</para> + </listitem> + + <listitem> + <para>GUI : extension de la gestion de raccourcis claviers (onglet Entrée des préférences + globales avec la possibilité de modifier des raccourcis généraux du + gestionnaire de VirtualBox et de la machine virtuelle)</para> + </listitem> + + <listitem> + <para>GUI : support de la capture graphique (bogue #4766)</para> + </listitem> + + <listitem> + <para>Ajout de l'émulation d'un pavé tactile USB</para> + </listitem> + + <listitem> + <para>Ajout du support expérimental du webcam passthrough en complément + du passthroough USB (voir <xref linkend="webcam-passthrough" />)</para> + </listitem> + <listitem> + <para>Ajout de l'émulation d'un CD-ROM SCSI, incluant le support au + démarrage</para> + </listitem> + <listitem> + <para>VRDP : support d'IPv6</para> + </listitem> + + <listitem> + <para>Contrôle de l'invité : les sessions de l'invité s'exécutent + maintenant dans des processus de sessions dédiés et individualisés (avec + les supplément invité au moins 4.3 installés)</para> + </listitem> + + <listitem> + <para>Contrôle invité : implémentation du support d'<computeroutput>IGuestFile</computeroutput></para> + </listitem> + + <listitem> + <para>NAT : mode routeur expérimental : plusieurs VMs sont connectées + au même réseau interne et partagent un service NAT (voir <xref linkend="network_nat_service" />) + </para> + </listitem> + + </itemizedlist> + + <para>En outre, les éléments suivants ont été corrigés et/ou ajoutés :</para> + + <itemizedlist> + + + <listitem> + <para>VMM : amélioration significative des performances des invités + NetWare 5.x/6.x sur des systèmes hôte ne supportant pas la pagination + imbriquée</para> + </listitem> + + <listitem> + <para>VMM : correction d'une perte des NMIs de l'hôte en VT-x guest-context</para> + </listitem> + + <listitem> + <para>VMM : changement de l'ordre des actions dans la bascule de l'émulated + de tâches (bogue #10532)</para> + </listitem> + <listitem> + <para>VMM : possibilité d'activer VT-x tout en étant en mode IMX et + on donne plus d'informations si ce n'est pas possible</para> + </listitem> + <listitem> + <para>GUI : la vérification des mises à jour utilise https</para> + </listitem> + + <listitem> + <para>GUI : nombreux petits nettoyages internes et corrections de bogues</para> + </listitem> + + <listitem> + <para>GUI : synchronisation des LEDs HID pendant le changement + de fenêtre hôte-invité (hôtes (Mac OS X seulement)</para> + </listitem> + <listitem> + <para>GUI, VBoxManage : lorsqu'on désenregistre une VM, désenregistrement + également des images de disques durs utilisées exclusivement par celle-ci + (bogue #10311)</para> + </listitem> + + <listitem> + <para>GUI : utilisation du nombre de coeurs de processeurs physiques + présentés au lieu du nombre de coeurs de processeurs logiques pour + vérifier si les utilisateurs ont affecté trop de processeurs virtuels à + l'invité</para> + </listitem> + <listitem> + <para>Instantanés : les instantanés en direct fonctionnent de nouveau + (bogue #9255)</para> + </listitem> + + <listitem> + <para>Téléportation : cela fonctionne de nouveau (khn1e #9455)</para> + </listitem> + + <listitem> + <para>Stockage : implémentation du mode de compatibilité AHA-154x dans le + BusLogic SCSI HBA émulé</para> + </listitem> + + <listitem> + <para>Stockage : amélioration significative des performances des gros + transferts ATAPI PIO (les invités BeOS, Minix 3 sont concernés)</para> + </listitem> + + <listitem> + <para>Stockage : ajout de l'émulation du formatage d'une disquette (NB : + inutilisable pour repartitionner un média) + </para> + </listitem> + + <listitem> + <para>Paramètres : configuration d'une interface par défaut globale + et par VM, utile pour choisir d'utiliser des interfaces de VMs + alternatives</para> + </listitem> + + <listitem> + <para>Paramètres : le paramètre hwvirtextexcl par VM a été remplacé + par une propriété hwvirtexclusive globale</para> + </listitem> + + <listitem> + <para>Principal : implémentation d'une nouvelle queue d'événements qui + n'utilise plus la queue d'événements native de l'hôte pour gérer les + événements de VirtualBox</para> + </listitem> + + <listitem> + <para>Principal : élimination des sémaphores SysV sur tous les OS hôtes + autres que Windows, à savoir Linux, Solaris et Mac OS X, d'où il s'ensuit + qu'aucune reconfiguration du système n'est nécessaire pour lancer + environ plus de 100 VMs</para> + </listitem> + <listitem> + <para>Principal : utilisation du dossier de configuration standard + de XDG au lieu de .VirtualBox sur des systèmes où c'est nécessaire (bogue + #5099)</para> + </listitem> + + <listitem> + <para>Principal : l'environnement de développement du pack d'extension + peut maintenant supporter le chargement des modules HGCM produits par + Jeff Westphal</para> + </listitem> + <listitem> + <para>VBoxManage : listage de davantage d'informations sur le disque + dur//DVD/amovible et support de l'option + <computeroutput>--long</computeroutput> pour afficher véritablement + tous les détails disponibles</para> + </listitem> + <listitem> + <para>VBoxManage : ajout du support de paramètres en ligne de commandes + pour la mise à jour automatique des suppléments invité.</para> + </listitem> + <listitem> + <para>VBoxManage : ajout du support de la présentation des sessions, + des processus et/ou des fichiers de l'invité actifs avec + <computeroutput>guestcontrol list <all|sessions|processes|files></computeroutput>.</para> + </listitem> + <listitem> + <para>VBoxManage : ajout du support de la fermeture de sessions actives + sur l'invité avec via + <computeroutput>guestcontrol session close --session-id <ID>| + --session-name <nom ou modèle>|--all</computeroutput> + </para> + </listitem> + + <listitem> + <para>VBoxManage : ajout du support de l'arrêt des processus invités + actifs via + <computeroutput>guestcontrol process kill|close|terminate --session-id <ID>| + --session-name <nom ou modèle> <PID> ... <PID n></computeroutput> + ou + <computeroutput>guestcontrol [p[s]]kill --session-id <ID>| + --session-name <nom ou modèle> <PID> ... <PID n></computeroutput> + </para> + </listitem> + + <listitem> + <para>VBoxManage : ajout du support de supervision des sessions de l'invité via + <computeroutput>guestcontrol watch</computeroutput> + </para> + </listitem> + <listitem> + <para>VBoxManage : ajout de <computeroutput>modifyvm --triplefaultreset</computeroutput> + pour que la VM redémarre après trois erreurs au lieu de tomber en + Meditation Gourou.</para> + </listitem> + + <listitem> + <para>Support 3D : plusieurs corrections</para> + </listitem> + + <listitem> + <para>Support 3D : plusieurs corrections pour les hôtes Mac OS X</para> + </listitem> + + <listitem> + <para>OVF : plusieurs corrections</para> + </listitem> + + <listitem> + <para>VBoxManage : ajout du support de la fin des processus actifs de + l'invité via <computeroutput>guestcontrol process kill|close|terminate --session-id <ID>| + --session-name <nom ou modèle> <PID> ... <PID n></computeroutput> + ou + <computeroutput>guestcontrol [p[s]]kill --session-id <ID>| + --session-name <nom ou modèle> <PID> ... <PID n></computeroutput> + </para> + </listitem> + + + <listitem> + <para>support 3D : plusieurs corrections pour les hôtes Mac OS X</para> + </listitem> + + <listitem> + <para>Installeur des packs d'extension : cela fonctionne si le dossier + contient des caractères spéciaux</para> + </listitem> + <listitem> + <para>Clavier : correction de séquences de touches de renvoi comme + Ctrl+Alt+Supp pour l'émulation d'un clavier USB</para> + </listitem> + + <listitem> + <para>Presse-papier partagé/X11 : support des images au format BMP + contribution de François Revol</para> + </listitem> + <listitem> + <para>Hôtes Mac OS X : support limité pour Mac OS X 10.9 (Mavericks)</para> + </listitem> + <listitem> + <para>Hôtes Mac OS X : utilisation d'un script de lancement au lieu + du mécanisme obsolète StartupItem (bogue #8940)</para> + </listitem> + <listitem> + <para>Hôtes Windows : ne provoque pas de grosse latence DPC (seulement + sur certains hôtes ; a encore besoin d'améliorations ; bogue #6242)</para> + </listitem> + <listitem> + <para>Hôtes Windows : prise en compte des liens symboliques dans la + récupération des informations sur le volume (bogue #11962)</para> + </listitem> + + <listitem> + <para>Suppléments Windows : correction d'un mauvais comportement + avec l'affichage de la gestion de l'énergie dans l'invité (pilote WDDM + seulement ; bogue #11170)</para> + </listitem> + + <listitem> + <para>Suppléments Windows : correction d'une fuite de mémoire à cause + d'un WTSQuerySessionInformation() sur les invités Windows 2000 + (bogue #12072)</para> + </listitem> + <listitem> + <para>Invités Windows : possibilité de repérer les moments d'inactivité + de l'utilisateur dans l'invité grâce à l'événement + IGuestUserStateChangedEvent, introduit récemment.</para> + </listitem> + <listitem> + <para>Suppléments Linux : correction de la détection par udev dans le + script de démarrage avec les noyaux 3.x</para> + </listitem> + + + </itemizedlist> + + </sect1> + + <sect1> + <title>Version 4.2.22 (10-01-2014)</title> + + <para>C'est une version de maintenance. Les éléments suivants ont été + corrigés et/ou ajoutés :</para> + + <itemizedlist> + + <listitem> + <para>GUI : hôte Mac OS X : introduction de la donnée externe "GUI/HidLedsSync" + destinée à activer la synchronisation des LEDs HID (fonction désactivée + par défaut)</para> + </listitem> + + <listitem> + <para>GUI : hôte Mac OS X : correction d'un problème sur les hôtes + MacBook Air/Pro quand la GUI pourrait se figer en essayant de synchroniser + les LEDs HID</para> + </listitem> + + <listitem> + <para>Principal : présentation en permanence des informations de la + mémoire DMI aux invités Windows 2012 (bogue #12017)</para> + </listitem> + + <listitem> + <para>HGCM : correction de plantages dans certaines conditions</para> + </listitem> + + <listitem> + <para>Stockage : correction d'erreurs <emphasis>BLKCACHE_IOERR</emphasis> + à l'exécution dans de rares circonstances (bogue #11030)</para> + </listitem> + + <listitem> + <para>AHCI : correction d'un bogue qui causait un accroc des invités + Windows XP si un lecteur CDROM SATA est connecté (bogue #12417)</para> + </listitem> + + <listitem> + <para>AHCI : correction d'une Guru Meditation dans certaines conditions</para> + </listitem> + + <listitem> + <para>E1000 : si le câble a été déconnecté avant que l'invité a initialisé + le périphérique, l'état de la liaison n'était pas bien passé à 'inactif' + après que l'initialisation ne se soit terminée malgré le fait qu'il n'y + avait pas de connexion</para> + </listitem> + + <listitem> + <para>Support 3D : correction d'un offset des éléments d'une image 3D + sur certains invités (hôtes Mac OS X Retina seulement ; + bogue #11021)</para> + </listitem> + + <listitem> + <para>Support 3D : nombreuses corrections</para> + </listitem> + + <listitem> + <para>Suppléments Linux : support des noyaux Linux Enterprise 6.5 + (bogue #12505)</para> + </listitem> + + <listitem> + <para>Suppléments Linux : correction du retrait à chaud d'un processeur + sur les noyaux Linux récents</para> + </listitem> + + <listitem> + <para>Suppléments Windows : correction de plantages de l'hôte dans le + service dossiers partagés dans certaines conditions</para> + </listitem> + + </itemizedlist> + + </sect1> + + <sect1> + <title>Version 4.2.20 (28-11-2013)</title> + + <para>C'est une version de maintenance. Les éléments suivants ont été + corrigés et/ou ajoutés :</para> + + <itemizedlist> + + <listitem> + <para>GUI : on signale toujours les résolutions recommandées pour tous + les écrans (craa ne se faisait pas toujours depuis la 4.2.12)</para> + </listitem> + + <listitem> + <para>GUI : on s'assure que la licence et la description affectées sont + en lien avec l'applicatif exporté</para> + </listitem> + + <listitem> + <para>GUI : les angles chauds d'OS X n'étaient pas accessibles tant qu'une + VM VirtualBox est en fonction (hôtes Mac OS X seulement ; bogue #4139)</para> + </listitem> + + <listitem> + <para>NAT : ne tombe pas en boucle infinie si l'hôte ne peut pas + accéder à un serveur de DNS (régression 4.3.0 ; bogue #12300)</para> + </listitem> + + <listitem> + <para>NAT : pas de reconnexion du câble si les informations DNS + changent et si le câble a été déconnecté auparavant (régression 4.3.0 ; bogue #12225)</para> + </listitem> + + <listitem> + <para>Principal : sauvegarde correcte du drapeau <emphasis>passthrough</emphasis> + pour les lecteurs DVD sans média inséré</para> + </listitem> + + <listitem> + <para>Clavier : correction d'un plantage de VM si une VM se réveille + d'un état sauvegardé où on appuie au moins sur une touche (bogue #11289)</para> + </listitem> + + <listitem> + <para>Accélération graphique 2D : correction de plantages lors des changements + de mode d'affichage (bogue #9194)</para> + </listitem> + + <listitem> + <para>Stockage : correction d'erreurs d'instantanés quand on utilise des + images de disque QCOW ou QED (bogue #12144)</para> + </listitem> + + <listitem> + <para>Stockage : correction pour les noyaux Linux récents qui ne détectent + pas un disque dur en tant que SSD quand on utilise un contrôleur + IDE ou SATA (bogue #12025)</para> + </listitem> + + <listitem> + <para>Stocmage : correction de la détection des CD/DVD quane on passe d'un + contenu vide au lecteur hôte quand passthrough est activé</para> + </listitem> + + <listitem> + <para>Instantanés : correction d'un bogue qui pouvait faire perdre la + connexion avec les médias (régression 4.2.18, bogue #11750)</para> + </listitem> + + <listitem> + <para>Presse-papiers partagç : correction d'une erreur de segmentation + potentielle quand on travaille avec un contenu UTF8 et UTF16 (hôtes Mac + OS X seulement)</para> + </listitem> + + <listitem> + <para>OVF : correction d'une logique d'importation pour les applicatifs + OVF contenant plusieurs VMs</para> + </listitem> + + <listitem> + <para>Installeur du pack d'extension : il fonctionne si le fichier se + trouve dans un dossier ayant des caractères spéciaux</para> + </listitem> + + <listitem> + <para>SDK : extension de la fonctionnalité pour les bindings C</para> + </listitem> + + <listitem> + <para>API : blocage de la suppression de l'instantané actuel s'il a des ++ instantanés fils (pertinent seulement pour les VMs sans disques durs, + dont on peut prendre un instantané, leur présence empêchait toujours + la suppression), ce qui créait une corruption de configuration de la + VM</para> + </listitem> + + <listitem> + <para>API : marquage des configurations de VM par des instantanés sans + que l'instantané actuel ne soit inaccessible, car cette combinaison + n'a aucun sens</para> + </listitem> + + <listitem> + <para>API : correction des informations sur certains événements + générés automatiquement (seulement avec XPCOM, l'hôte Windows n'était pas + concerné), ce qui ne provoquait pas d'erreurs quand on récupérait les + attributs par le service Web (bogue #12379)</para> + </listitem> + + <listitem> + <para>Hôtes Mac OS X : support pour Mac OS X 10.9 (Mavericks)</para> + </listitem> + + <listitem> + <para>Hîtes Mac OS X : bonne signature des extensions noyau pour les + hôtes Mavericks (bogue #12256)</para> + </listitem> + + <listitem> + <para>Hôtes Mac OS X : utilisation d'un script de lancement au lieu + d'un mécanisme StartupItem obsolète (bogue #8940)</para> + </listitem> + + <listitem> + <para>Hôtes Mac OS X : correction d'un bogue où l'icône de dock de + VirtualBox n'était pas bien supprimé du dock après la fin d'une VM, + empêchant les hôtes Mavericks de s'éteindre (bogue #12241)</para> + </listitem> + + <listitem> + <para>Suppléments Linux : correction de la compilation avec Linux 3.13 + (bogue #12358)</para> + </listitem> + + <listitem> + <para>Suppléments Linux : correction de la compilation avec Linux 3.12 (bogue #12083)</para> + </listitem> + + <listitem> + <para>Suppléments Linux : correction de la compilation avec Linux 3.11 + pour les dossiers partagés (bogues #11946, #12128)</para> + </listitem> + + <listitem> + <para>Suppléments Linux : correction de la compilation avec SLES11 SP3</para> + </listitem> + + <listitem> + <para>Suppléments Linux : bonne définftion de l'umask avant l''installation + (bogue #12166)</para> + </listitem> + + <listitem> + <para>Suppléments Linux : construction correcte du module de noyau vboxvideo + sur des invités OL/RHEL 6.1 (bogue #11996)</para> + </listitem> + + <listitem> + <para>Suppléments Linux : on a fait en sorte que la 3D fonctionne sur + Slackware 14.1 (bogue #12320 commentaires 3 et 4)</para> + </listitem> + + <listitem> + <para>Suppléments Windows : correction de fuites de mémoire causçes par + <emphasis>WTSQuerySessionInformation()</emphasis> + sur des invités Windows 2000 (bogue #12072)</para> + </listitem> + + <listitem> + <para>Suppléments Windows : correction du redimensionnement avec plusieurs + écrans</para> + </listitem> + + <listitem> + <para>Suppléments X11/3D : correction de gels au démarrage du bureau 3D + (bogue #11503, merci à Sam Spilsbury)</para> + </listitem> + + <listitem> + <para>Suppléments invité/3D : correction d'un dead-lock occasionnel + (bogue #12319) + </para> + </listitem> + + </itemizedlist> + </sect1> + + <sect1> + <title>Version 4.2.18 (09-06-2013)</title> + + <para>C'est une version de maintenance. Les éléments suivants ont été + corrigés et/ou ajoutés :</para> + + <itemizedlist> + + <listitem> + <para>VMM : gestion correcte des NMIs sur les hôtes Linux où X2APIC est + activé</para> + </listitem> + + <listitem> + <para>VMM : correction de plantages potentiels avec les invités 64 bits + sur des hôtes 32 bits (bogue #11979)</para> + </listitem> + + <listitem> + <para>GUI / transparence : gestion correcte du défilement via la roulette + de la souris</para> + </listitem> + + <listitem> + <para>GUI, VBoxManage : quand on désenregistre une VM, désenregistrement + également des images de disque dur utilisées exclusivement par cette VM + (bogue #10311)</para> + </listitem> + + <listitem> + <para>GUI : on empêche des plantages dans certaines conditions sur les + hôtes X11</para> + </listitem> + + <listitem> + <para>Support 3D : corrections du multiécrans (mauvais positionnement de la souris, + morcellements)</para> + </listitem> + + <listitem> + <para>Support 3D : plusieurs corrections du pilote graphique WDDM de Windows + (multiécrans, transparence)</para> + </listitem> + + <listitem> + <para>Instantanés : la prise d'instantanés en direct fonctionne de nouveau + (bogue #9255)</para> + </listitem> + + <listitem> + <para>Téléportation : elle fonctionne à nouveau (bogue #9455)</para> + </listitem> + + <listitem> + <para>VBoxManage : avec <emphasis>snapshot take</emphasis>, <emphasis> + --pause</emphasis> est par défaut et <emphasis>--live</emphasis> + correspond à la prise d'instantanés en direct</para> + </listitem> + + <listitem> + <para>VBoxSVC : pas de plantage sur les systèmes ayant de nombreuses + interfaces + (hôtes Solaris seulement)</para> + </listitem> + + <listitem> + <para>Réseau : après le réveil de l'hôte d'une suspension, déconnexion + et reconnexion des câbles réseaux virtuels pour forcer le renouvellement + des baux DHCP de l'invité. Jusque-là, seuls les hôtes Mac OS X et + Windows le faisaient (bogue #10063)</para> + </listitem> + + <listitem> + <para>NAT : lors des changements de noms des serveurs, on force la notification + de la reconnexion du câble réseau virtuel (hôtes Mac OS X seulement)</para> + </listitem> + + <listitem> + <para>Installeur Mac OS X : on laisse les packs d'extension précédemment + installés lors des mises à jour de VirtualBox</para> + </listitem> + + <listitem> + <para>Hôtes / invités Linux : corrections pour Linux 3.11 (bogue #12001)</para> + </listitem> + + <listitem> + <para>Hôtes Solaris : correction d'un kernel panic potentiel à cause + d'une préemption imprévue due à la journalisation</para> + </listitem> + + <listitem> + <para>Hôtes Windows : correction d'un problème où les périphériques USB2 + étaient inaccessibles si on les branchait à des ports USB3</para> + </listitem> + <listitem> + <para>Suppléments Linux : ajout de l'identifiant de périphérique PCI + à vboxvideo.ko pour corriger l'initialisation du DRI sous certaines conditions (bogue #11957)</para> + </listitem> + + <listitem> + <para>Suppléments Linux : correction de la détection par udev dans le + script de démarrage avec les noyaux Linux 3.x</para> + </listitem> + + </itemizedlist> + </sect1> + + <sect1> + <title>Version 4.2.16 (04-07-2013)</title> + + <para>C'est une version de maintenance. Les éléments suivants ont été + corrigés et/ou ajoutés :</para> + + <itemizedlist> + + <listitem> + <para>OVF/OVA : ne plante pas lors de l'importation si aucun manifeste + n'est utilisé (régression 4.2.14 ; + bogue #11895)</para> + </listitem> + + <listitem> + <para>GUI : ne restaure pas l'instantané actuel si on coupe après une + Mediation Gourou</para> + </listitem> + + <listitem> + <para>Stockage : correction d'un plantage lorsqu'on branche à chaud un + lecteur DVD vide dans la VM</para> + </listitem> + + <listitem> + <para>Stockage : correction d'un plantage quand un invité lit un DVD + connecté au contrôleur SATA dans certaines circonstances</para> + </listitem> + + <listitem> + <para>EFI : n'échoue pas avec des invités 64 bits sur des hôtes 32 bits + (bogue #11456)</para> + </listitem> + + <listitem> + <para>Démarrage automatique : correction du démarrage de la VM sur OS X</para> + </listitem> + + <listitem> + <para>Hôtes Windows : contrôles natifs Windows 8</para> + </listitem> + + <listitem> + <para>Hôtes Windows : restauration du style d'origine sur Vista 32</para> + </listitem> + + <listitem> + <para>Hôtes / invités Windows : adaptions pour Windows 8.1 (bogue #11899)</para> + </listitem> + + <listitem> + <para>Hôtes Mac OS X : après la suppression de VirtualBox par + <emphasis>VirtualBox_Uninstall.tool</emphasis>, suppression de la + liste <emphasis>pkgutil --pkgs</emphasis> list as well</para> + </listitem> + + </itemizedlist> + </sect1> + + <sect1> + <title>Version 4.2.14 (21-06-2013)</title> + + <para>C'est une version de maintenance. Les éléments suivants ont été + corrigés et/ou ajoutés :</para> + + <itemizedlist> + + <listitem> + <para>VMM : correction d'une autre invalidation TLB pour les pages non + présentes</para> + </listitem> + + <listitem> + <para>VMM : correction d'une régression de performance (régression 4.2.8 ; + bogue #11674)</para> + </listitem> + + <listitem> + <para>GUI : correction d'un plantage à l'extinction</para> + </listitem> + + <listitem> + <para>GUI : on empêche les touches mortes dans certaines conditions sur + les hôtes Windows (bogues #2613, #6171)</para> + </listitem> + + <listitem> + <para>VRDP : correction d'un plantage rare lors du redimensionnement de + l'écran de l'invité</para> + </listitem> + + <listitem> + <para>VRDP : possibilité de changer les paramètres VRDP (y compris + l'activation/désactivation du serveur) si la VM est en pause</para> + </listitem> + + <listitem> + <para>USB : correction des périphériques en passing through sur des hôtes + Mac OS X avec une VM ayant 2 ou plusieurs processeurs virtuels (bogue + #7462)</para> + </listitem> + + <listitem> + <para>USB : correction d'un accroc lors d'un transfert asynchrone avec + certains périphériques (régression 4.1 ; hôtes Windows seulement ; bogues #11839)</para> + </listitem> + + <listitem> + <para>USB : bonne gestion des adresses orphelines (bogue #11207)</para> + </listitem> + + <listitem> + <para>BIOS : correction de la fonction de bascule de la table de routage + PCI (corrige les invités NetWare 6.x)</para> + </listitem> + + <listitem> + <para>BIOS : n'utilise pas les instructions <emphasis>ENTER</emphasis> / <emphasis>LEAVE</emphasis> + du BIOS car elles ne fonctionnent pas en mode réel comme l'ont défini + certains invités (comme Plan 9 et QNX 4)</para> + </listitem> + + <listitem> + <para>DMI : possibilité de configurer <emphasis>DmiChassisType</emphasis> + (bogue #11832)</para> + </listitem> + + <listitem> + <para>Stockage : correction d'une perte d'écritures si on utilise + iSCSI avec des instantanés et des E/S asynchrones (bogue #11479)</para> + </listitem> + + <listitem> + <para>Stockage : correction de l'accès à certaines images VHDX créées par + Windows 8 (bogue #11502)</para> + </listitem> + + <listitem> + <para>Stockage : correction d'un accroc à la création d'un instantané en + utilisant des images de disque Parallels (bogue #9617)</para> + </listitem> + + <listitem> + <para>Support 3D : corrections du mode transparent + 3D (bogue #11723)</para> + </listitem> + + <listitem> + <para>Support 3D : la version 4.2.12 ne pouvait pas lire les états suvegardés des + anciennes versions dans certaines conditions (bogue #11718)</para> + </listitem> + + <listitem> + <para>Principal/Propriétés : pas de création d'une propriété invité sur des + VMs non en fonction si la propriété n'existe pas et est sur le point + d'être supprimée (bogue #11765)</para> + </listitem> + + <listitem> + <para>Principal/propriétés : n'oublie pas de rendre permanentes les + propriéés après l'extinction d'une VM (bogue #11719)</para> + </listitem> + + <listitem> + <para>Principal/affichage : pas de perte des régions transparentes lors + du redimensionnement d'un écran</para> + </listitem> + + <listitem> + <para>Principal/OVF : pas de plantage à l'importation si le client a + oublié d'appeler <emphasis>Appliance::interpret()</emphasis> (bogue #10845)</para> + </listitem> + + <listitem> + <para>Principal/OVF : ne cée pas d'applicatifs invalides en découpant le + nom des fichiers lorsque le nom de la VM est très long (bogue #11814)</para> + </listitem> + + <listitem> + <para>Principal/OVF : pas d'échec si l'applicatif contient plusieurs références + de fichiers (bogue #10689)</para> + </listitem> + + <listitem> + <para>Principal/mesures :: correction de fuites du descripteur de fichier + Solaris</para> + </listitem> + + <listitem> + <para>Paramètres : limitation de la profondeur de l'arborescence des + instantanés à 250 niveaux car au-delà, cela entraînera une perte de performance + et cela peut provoquer des plantages</para> + </listitem> + + <listitem> + <para>VBoxManage : correction de la définition de l'UUID parent sur + les images de différenciation qui utilisent + <emphasis>sethdparentuuid</emphasis></para> + </listitem> + + <listitem> + <para>Hôtes Linux : contournement pour éviter un plantage suite à une balance + NUMA automatique qui a été introduite dans Linux 3.8 + (bogue #11610)</para> + </listitem> + + <listitem> + <para>Installeur Windows : installation forcée du certificat public en + arrière-plan (donc en empêchant totalement l'interaction de l'utilisateur) + si on spécifie l'option <emphasis>--silent</emphasis> en ligne de commandes</para> + </listitem> + + <listitem> + <para>Suppléments Windows : correction de problèmes avec l'instalation partielle + dans l'installation sans efforts</para> + </listitem> + + <listitem> + <para>Suppléments Windows : correction du morcellement de l'affichage avec + le bouton démarrer en mode transparent dans certains thèmes</para> + </listitem> + + <listitem> + <para>Suppléments Windows : corrections du mode transparent et du + redimensionnement automatique</para> + </listitem> + + <listitem> + <para>Suppléments Windows : correction de la tentative de récupération + des nouvelles autorisations d'identification automatique si celles actuelles + n'étaient pas encore traitées</para> + </listitem> + + <listitem> + <para>Installeur des suppléments Windows : ajout du paramètre + <emphasis>/with_wddm</emphasis> pour sélectionner par défaut le pilote + WDDM expérimental</para> + </listitem> + + <listitem> + <para>Suppléments Linux : correction du paramétrage du délai maximale + propre et des textes annulés + dans les informations d'étiquette du greeter + lightdm</para> + </listitem> + + <listitem> + <para>Suppléments Linux : correction de la compilation avec les noyaux + Linux 3.2.0 d'Ubuntu (régression 4.2.12, effet colatéral de la correction + de construction avec le nyau Debian ; bogue #11709)</para> + </listitem> + + <listitem> + <para>Suppléments X11 : réduction de la charge processeur de VBoxClient + en mode glisser/déplacer</para> + </listitem> + + <listitem> + <para>Suppléments OS/2 : la roulette de la souris fonctionne (bogue #6793)</para> + </listitem> + + <listitem> + <para>Suppléments invité : correction de problèmes de copier/coller entre + deux invités sur un hôte X11 (bogue #11792)</para> + </listitem> + + <listitem> + <para>Suppléments invité : correction de la gestion du dépassement de déllai / + tuage des processus de l'invité</para> + </listitem> + + </itemizedlist> + </sect1> + + <sect1> + <title>Version 4.2.12 (12-04-2013)</title> + + <para>C'est une version de maintenance. Les éléments suivants ont été + corrigés et/ou ajoutés :</para> + + <itemizedlist> + + <listitem> + <para>VMM : correction d'une Guru Meditation quand on branche un + processeur dans un invité Linux si la pagination imbriquée est désactivée</para> + </listitem> + + <listitem> + <para>VMM : invalidation des entrées TLB même pour des pages non présentes</para> + </listitem> + + <listitem> + <para>GUI : support du Multi-écrans : correction d'un plantage quand on + change de mode visuel</para> + </listitem> + + <listitem> + <para>GUI : Support Multi-écran : la désactivation des écrans invités + devrait maintenant persister quand on change de mode visuel</para> + </listitem> + + <listitem> + <para>GUI : Support Multi-écrans : gestion du branchement/débranchement + d'un écran hôte/invité dans les différents modes visuels</para> + </listitem> + + <listitem> + <para>GUI : support Multi-écrans : mode transparent : correction d'un + bogue quand les écrans sont vides en mode transparent et étaient représentés + représentés par des fenêtres en plein écran</para> + </listitem> + + <listitem> + <para>GUI : Support Multi-écrans : chaque fenêtre de machine en configuration + multi-écrans devrait maintenant avoir la bonne barre de menus (hôtes + Mac OS X)</para> + </listitem> + + <listitem> + <para>GUI : Support Multi-écrans : le menu Vue de la fenêtre de la machine + devrait maintenant avoir le bon contenu en mode transparent/plein écran + (hôtes Mac OS X)</para> + </listitem> + + <listitem> + <para>GUI : gestionnaire de VM : les barres de défilement verticales + devraient maintenant se mettre à jour lors du redimensionnement du + contenu/de la fenêtre</para> + </listitem> + + <listitem> + <para>GUI : paramètres VM : correction d'un plantage lors d'un événement + de changement d'état de la machine</para> + </listitem> + + <listitem> + <para>GUI : n'affiche pas d'avertissements sur l'activation et la +' désactivation de l'intégration de la souris si la VM a été restaurée + d'un état sauvegardé</para> + </listitem> + + <listitem> + <para>Virtio-net : signalement correct que l'invité doit prendre en + charge les sommes de vérification MD5 TCP partielles (bogue #9380)</para> + </listitem> + + <listitem> + <para>Stockage : correction d'un mauvais alignment des images VDI qui + faisait changer la taille du disque lors de l'utilisation des instantanés + (bogue #11597)</para> + </listitem> + + <listitem> + <para>Son : correction d'un ALSA & PulseAudio cassés sur certains + hôtes Linux à cause d'une symbole de résolution invalide (bogue #11615)</para> + </listitem> + + <listitem> + <para>Clavier PS/2 : nouvelle application du délai de répétition du + clavier et de la vitesse après la resta[ation d'une VM sauvegardée (bogue #10933)</para> + </listitem> + + <listitem> + <para>BIOS : mise à jour des informations de la table du processeur DMI + (type 4) : correction des gestions de la table du cache L1 & L2</para> + </listitem> + + <listitem> + <para>Prise du temps : correction de plusieurs problèmes pouvant conduire + à une heure incorrecte, les invités Solaris affichaient de façon sporadique + l'heure qui revenait brièvement au 1 janvier 1970</para> + </listitem> + + <listitem> + <para>Principal/mesures : les mesures du disque sont récupérées + correctement quand on utilise un RAID logiciel, des liens symboliques + ou rootfs sur hôtes Linux</para> + </listitem> + + <listitem> + <para>VBoxManage : ne reste pas en pause après la création d'un + instantané et que la VM était en fonction avant</para> + </listitem> + + <listitem> + <para>VBoxManage : introduction de <emphasis>controlvm nicpromisc</emphasis> + (bogue #11423)</para> + </listitem> + + <listitem> + <para>VBoxManage : ne plante pas lors d'un <emphasis>controlvm + guestmemoryballoon</emphasis> quand la VM n'est pas en fonction + (bogue #11639)</para> + </listitem> + + <listitem> + <para>VBoxHeadless : ne filtre pas les événements de propriétés invité + car cela toucherait tous les clients (bogue #11644)</para> + </listitem> + + <listitem> + <para>Contrôle de l'invité : on empêche le double retour à la ligne dans + la sortie généée par les commandes de l'invité et conversion NLS</para> + </listitem> + + <listitem> + <para>Hôtes / invités Linux : correction d'erreurs de construction sur + les noyaux Linux 3.5 et plus récent si on a activé l'option de configuration + <emphasis>CONFIG_UIDGID_STRICT_TYPE_CHECKS</emphasis> (bogue #11664)</para> + </listitem> + + <listitem> + <para>Suppléments Linux : gestion du rabattement sur le pilote VESA sur + les invités basés sur RedHat si vboxvideo ne peut pas être chargé</para> + </listitem> + + <listitem> + <para>Suppléments Linux : correction de compilation RHEL/OEL/CentOS 6.4 (bogue #11586)</para> + </listitem> + + <listitem> + <para>Suppléments Linux : correction de compilation sur un noyau Debian + Linux 3.2.0-4 (3.2.39) (bogue #11634)</para> + </listitem> + + <listitem> + <para>Suppléments Linux : ajout du support de l'identification automatique + pour les invités Linux qui utilisent + LightDM comme gestionnaire d'affichage</para> + </listitem> + + <listitem> + <para>Suppléments Windows : Support du multiécrans. Activation/désactivation + Dynamique des écrans virtuels secondaires. Support des invités basés + sur XPDM/WDDM (bogue #6118)</para> + </listitem> + + <listitem> + <para>Suppléments X11 : support de X.Org Server 1.14 (bogue #11609)</para> + </listitem> + + </itemizedlist> + + </sect1> + + <sect1> + <title>Version 4.2.10 (05-03-2013)</title> + + <para>C'est une version de maintenance. Les éléments suivants ont été + corrigés et/ou ajoutés :</para> + + <itemizedlist> + + <listitem> + <para>GUI : correction du clavier avec XQuartz X server (bogue #10664)</para> + </listitem> + + <listitem> + <para>Principal/affichage : correction d'un plantage avec plusieurs écrans + dans certaines conditions (hôtes Mac OS X seulement)</para> + </listitem> + + <listitem> + <para>Principal/propriétés : correction d'un plantage dans certaines + conditions, par exemple après un retour d'hibernation de l'hôte (bogue #11444)</para> + </listitem> + + <listitem> + <para>Paramètres : pas de perte des paramètres du réseau interne s'ils + ne sont pas actuellement actifs</para> + </listitem> + + <listitem> + <para>Stocmage : nouvelle correction d'incompatibilité des images de différenciation + VHD avec Hyper-V (bogue #5990)</para> + </listitem> + + <listitem> + <para>VBoxManage : pas de lecture au-delà de la fin d'un fichier spécifiée + avec <emphasis>export --eulafile (bogue #11528)</emphasis></para> + </listitem> + + <listitem> + <para>Hôtes / invités Linux : corrections de compilation avec Linux 3.9-rc0</para> + </listitem> + + <listitem> + <para>Suppléments Linux : corrections de deux avertissements dans le + module des dossiers partagés du noyau de l'invité (bogue #11390)</para> + </listitem> + + <listitem> + <para>Suppléments Linux: ne plante pas VBoxService si libdbus n'est pas + disponilable (bogue #8638)</para> + </listitem> + + <listitem> + <para>Suppléments Windows : correction de la mise à jour du + support MultiMedia Redirection (MMR)</para> + </listitem> + + </itemizedlist> + </sect1> + + <sect1> + <title>Version 4.2.8 (20-02-2013)</title> + + <para>C'est une version de maintenance. Les éléments suivants ont été + corrigés et/ou ajoutés :</para> + + <itemizedlist> + + <listitem> + <para>VMM : correction d'un plantage de l'invité avec un invité à grande + quantité de RAM sur les hôtes VT-x (bogue #11306)</para> + </listitem> + + <listitem> + <para>GUI : correction d'un bogue d'affichage dans la boîte de dialogue + de Mac OS X de clonage d'une VM (bogue #10982)</para> + </listitem> + + <listitem> + <para>GUI : tous les tags de traduction n'étaient pas pris en compte + quand on changeait de langue (bogue #11342)</para> + </listitem> + + <listitem> + <para>GUI : la boîte de dialogue <emphasis>faire une impression d'écran + de l'invité</emphasis> n'avait parfois aucune possibilité de saisie au + clavier sur les hôtes Windows</para> + </listitem> + + <listitem> + <para>Principal/Machine: correction de la génération d'un événement + spurious pour les VMs inaccessibles qui rapportaient une boxle de génération + d'événement sans fin en coopération avec la GUI qui ne répondait plus + (régression 4.2.6 ; bogue + #11323)</para> + </listitem> + + <listitem> + <para>Principal/Affichage : correction d'une violation d'accès dans + certaines conditions avec des configurations multiécrans (bogue #10539)</para> + </listitem> + + <listitem> + <para>Principal/mesures : les mesures du réseau sont désormais ne récupérées + que pour les interfaces actives, l'état d'une interface étant évalué + quand la mesure correspondante est activée via <emphasis>setupMetrics</emphasis></para> + </listitem> + + <listitem> + <para>Instantanés : réduction du temps de synchronisation des instantanés dans + certaines conditions</para> + </listitem> + + <listitem> + <para>Stockage : correction d'une corruption de données après le + redimensionnement d'une image VDI dans + certaines circonstances (bogue #11344)</para> + </listitem> + + <listitem> + <para>Stockage : correction de la synchronisation d'instantanés en ligne + qui ne fonctionnait pas (régression 4.2.6, bogue #11359)</para> + </listitem> + + <listitem> + <para>Stockage : correction d'un plantage à la connexion à certaines + cibles iSCSI QNAP</para> + </listitem> + + <listitem> + <para>Stockage : correction d'une incompatibilité des images de + différenciation VHD avec Hyper-V (bogue #5990)</para> + </listitem> + + <listitem> + <para>Réseau bridgé : correction du calcul de la somme de contrôle d'une pseudo + en-tête TCP pour IPv6 (bogue #9380)</para> + </listitem> + + <listitem> + <para>Support 3D : correction de plantages du jeu Battlefield 1942 (bogue #11369)</para> + </listitem> + + <listitem> + <para>Paramètres : vrai nettoyage du nom des dossiers de VM et du iichier + des paramètres, le code était jusque-là désactivé (bogue #10549)</para> + </listitem> + + <listitem> + <para>Paramètres : possibilité de modifier les paramètres VRDE pour les VMs + sauvegardées</para> + </listitem> + + <listitem> + <para>VBoxManage : ne plante pas pendant <emphasis>screenshotpng</emphasis> + s'il n'y a pc; d'affichage (bogue #11363)</para> + </listitem> + + <listitem> + <para>Hôtes Linux : contournement du bogue 55940 de gcc qui pourrait + conduire à un faux code de module de noyau si on utilise gcc 4.7 pour + compiler le noyau 32 bits de l'hôte Linux (bogue #11035)</para> + </listitem> + + <listitem> + <para>Hôtes Linux : correction d'un état de verrouillage incohérent et + d'avertissements deadlock de la charge du module et au démarrage de la VM + quand CONFIG_PROVE_LOCKING est activé (bogue #11318)</para> + </listitem> + + <listitem> + <para>Hôtes Linux : la touche "]" fonctionne à nouveau sur les claviers + japonais</para> + </listitem> + + <listitem> + <para>Hôtes Mac OS X : ne fait pas planter le noyau pendant un dtrace si + les extensions VBox du noyau sont chargées (hôtes 10.6 seulement ; bogue #11273)</para> + </listitem> + + <listitem> + <para>Hôtes Solaris / Mac OS X : les mesures de la charge processeur de + la machine signalement maintenant 100% si tous les coeurs sont entièrement + utilisés (pour être un coeur unique)</para> + </listitem> + + <listitem> + <para>Installeur hôte Solaris 11 : attente de la fin des services d'une + précédente installation pour éviter une collision SMF. + </para> + </listitem> + + <listitem> + <para>Suppléments invité : ne bloque pas les signaux des processus exécutés + via le contrôle de l'invité</para> + </listitem> + + <listitem> + <para>Suppléments invité : correction d'une petite fuite de mémoire dans + VBoxService + (bogue #10970)</para> + </listitem> + + <listitem> + <para>Suppléments Windows : correction d'un problème de dossier partagé + en gros besoins de lecture/écriture sur les invités Windows 64 bits (bogue #11115)</para> + </listitem> + + <listitem> + <para>Suppléments Linux : corrections de compilation sur Linux 3.8 (bogue #11036)</para> + </listitem> + + <listitem> + <para>Suppléments X11 : correction des SIGALRM bloqués dans les sessions + du bureau 3D + (bogue #10987)</para> + </listitem> + + <listitem> + <para>Suppléments X11 : correction d'une référence non résolue dans vboxvideo_drv + pour les invités X.org 6.8 et antérieurs (comme RHEL4 ; régression 4.2.0)</para> + </listitem> + + <listitem> + <para>Suppléments X11 : correction du redimensionnement automatique de + l'écran pour les invités ayant X.org 1.3 ou antérieur (régression 4.2.0)</para> + </listitem> + + </itemizedlist> + + </sect1> + <sect1> + <title>Version 4.2.6 (19-12-2012)</title> + + <para>C'est une version de maintenance. Les éléments suivants ont été + corrigés et/ou ajoutés :</para> + + <itemizedlist> + + <listitem> + <para>VMM : n'envoie pas d'événements stale VT-x pour empêcher des + plantages après le redémarrage de la VM + (bogue #11256)</para> + </listitem> + + <listitem> + <para>VMM : contournement des BIOS bogués ne permettant un <emphasis>MONITOR</emphasis> + que pour certains processeurs (bogue #9460)</para> + </listitem> + + <listitem> + <para>GUI : correction du trimming du texte sans alias dans les + en-têtes de l'élément à voir en détails + (régression 4.2.0)</para> + </listitem> + + <listitem> + <para>GUI : correction d'une fonctionnalité create-settings-file-alias + sur les hôtes Mac + (régression 4.2.0)</para> + </listitem> + + <listitem> + <para>GUI : correction de la fonctionnalité fixed take-guest-screenshot sur les hôtes + Windows + (bogue #11095)</para> + </listitem> + + <listitem> + <para>GUI : plusieurs petites corrections notamment de la palette (bogue #11191)</para> + </listitem> + + <listitem> + <para>GUI : correction du type d'OS Windows 2012 (bogue #11206)</para> + </listitem> + + <listitem> + <para>GUI : possibilité d'éteindre la VM même si VBoxSVC a planté</para> + </listitem> + + <listitem> + <para>API : correction de l'annulation d'instantanés, qui pouvait + provoquer des configurations de VMs incohérentes (bogue #6877)</para> + </listitem> + + <listitem> + <para>API : correction de l'identification des images de disque par l'UUID (bogue #11209)</para> + </listitem> + + <listitem> + <para>Support 3D : plusieurs corrections</para> + </listitem> + + <listitem> + <para>VRDP : correction d'un plantage occasionnel avec l'authentification externe + (bogue #11156)</para> + </listitem> + + <listitem> + <para>VGA : correction d'un doublon d'analyse dans les modes de texte</para> + </listitem> + + <listitem> + <para>USB : correction de l'énumération des requêtes invalides en attente + au moment du service de requêtes <emphasis>DEVICE POWER</emphasis> (hôtes + Windows seulement ; + bogues #10021, #11056)</para> + </listitem> + + <listitem> + <para>Clavier USB : contournement pour les claviers coéens (bogue #11150)</para> + </listitem> + + <listitem> + <para>Stockage: correction d'un accroc avec les images QCOW et quand + les E/S asynchrones sont activées</para> + </listitem> + + <listitem> + <para>Stockage : correction d'un accroc avec les images VHD récentes (bogue #11279)</para> + </listitem> + + <listitem> + <para>Stockage : on a enfin écrit le drapeau non rotationel pour les + paramètres de la VM (régression 4.2.0)</para> + </listitem> + + <listitem> + <para>Virtio-net : correction d'un problème avec les compteurs de + statistiques réseaux dans la boîte de dialogue d'informations de la + session (GUI)</para> + </listitem> + + <listitem> + <para>Mesures : introduction de <emphasis>network rate</emphasis> et de + <emphasis>disk usage</emphasis> metrics</para> + </listitem> + + <listitem> + <para>Mesures : correction d'un plantage dans certaines conditions sur + les hôtes Solaris</para> + </listitem> + + <listitem> + <para>BIOS : correction pour El Torito</para> + </listitem> + + <listitem> + <para>Dossiers partagés : si l'association d'un dossier de l'hôte à un + dossier partagé n'existe pas, on le laisse actif mais on le note comme + invalide pour empêcher une incohérence des états sauvegardés (bogue #11147)</para> + </listitem> + + <listitem> + <para>VBoxManage : correction de la conversion des disques depuis des + images brutes</para> + </listitem> + + <listitem> + <para>VBoxManage : affichage de la description des instantanés dans + les informations de la VM ou des instantanés</para> + </listitem> + + <listitem> + <para>VBoxManage : ouverture cohérente des médias implicits dans tous + les endroits gérant des médias</para> + </listitem> + + <listitem> + <para>VBoxManage : le nom de l'initiateur iSCSI n'était pas stocké dans le + fichier des paramètres quand on faisait un <emphasis>storageattach</emphasis> (bogue #11212)</para> + </listitem> + + <listitem> + <para>VBoxManage : <emphasis>metrics collect</emphasis> gère maintenant + correctement les mesures + <computeroutput>'CPU/MHz'</computeroutput> et + <computeroutput>'Net/*/LinkSpeed'</computeroutput> metrics</para> + </listitem> + + <listitem> + <para>VBoxManage : modification de l'UUID de l'image ou de l'UUID parent + pour faire en sorte que + <emphasis>storageattach</emphasis> fonctionne dans tous les cas + à coup sûr</para> + </listitem> + + <listitem> + <para>VBoxManage : introduction de <emphasis>storageattach --medium additions</emphasis>, + raccourci pour monter l'images des suppléments (bogue #11165)</para> + </listitem> + + <listitem> + <para>OVF : correction de l'imroqtation de fichiers OVF créés par + un VMware récent (bogue #10905)</para> + </listitem> + + <listitem> + <para>Hôtes Linux / Réseau Bridgé : correction du problème de fuite de + connexions avec conntrack (bogue #11178)</para> + </listitem> + + <listitem> + <para>Suppléments Linux : ajout du support des sessions ConsoleKit dans + le service vminfo de VBoxService</para> + </listitem> + + <listitem> + <para>Suppléments Linux : ne plante pas au remontage dans certaines + conditions (bogue #11291)</para> + </listitem> + + <listitem> + <para>Suppléments Linux/Solaris : correction du recueil des mesures de + la mémoire de l'invité</para> + </listitem> + + <listitem> + <para>Hôtes Solaris : ajout d'une dépendance pour garantir que les + répertoires de l'utilisateur soient accessibles lors du démarrage de VBox services</para> + </listitem> + + <listitem> + <para>Installeur hôte Windows : intégration des traductions issues de + contributions des utilisateurs, merci à tous les contributeurs !</para> + </listitem> + + <listitem> + <para>Suppléments Windows : correction de l'installation des identifications + automatiques pour Windows 8</para> + </listitem> + + <listitem> + <para>Suppléments Windows : n'échoue pas si le service hôte des dossiers + partagés n'est pas disponible</para> + </listitem> + + <listitem> + <para>Suppléments Windows : correction du démarrage des suppléments + invité sur les invités Windows 2000 (bogue #11253)</para> + </listitem> + + <listitem> + <para>Suppléments Windows : correction du redimensionnement automatique + des invités Windows 8</para> + </listitem> + </itemizedlist> + + </sect1> + + <sect1> + <title>Version 4.2.4 (26-10-2012)</title> + + <para>C'est une version de maintenance. Les éléments suivants ont été + corrigés et/ou ajoutés :</para> + + <itemizedlist> + + <listitem> + <para>GUI : correction d'avertissements de validation dans l'onglet des + paramètres globaux / proxy (régression 4.2.2, bogue #11089)</para> + </listitem> + + <listitem> + <para>GUI : correction d'un plantage en multiécrans dans certaines + conditions (hôtes OS X seulement)</para> + </listitem> + + <listitem> + <para>VBoxBalloonCtrl : correction de la gestion de l'argument en ligne + de commandes dans le module du jeu de ballon</para> + </listitem> + + <listitem> + <para>VRDP : correction d'un plantage occasionnel lors de la lecture d'une vidéo + dans l'invité (bogue #11082)</para> + </listitem> + + <listitem> + <para>BIOS : correction d'informations DMI cassées (régression 4.2)</para> + </listitem> + + <listitem> + <para>BIOS : contournement du démarrage à partir de disquettes Windows 2000</para> + </listitem> + + <listitem> + <para>EFI : correction de la perte de la élection du mode graphique au + redémarrage de la VM (#10983)</para> + </listitem> + + <listitem> + <para>Parallèle : correction d'échec de l'impression sur port parallèle + / erreur de file du papier vide (hôtes Windows seulement)</para> + </listitem> + + <listitem> + <para>NAT : correction d'un plantage aux réponses DNS sans alias quand + on utilise le résolveur de l'hôte</para> + </listitem> + + <listitem> + <para>Stockage : correction d'un accroc dans de rares circonstances</para> + </listitem> + + </itemizedlist> + </sect1> + + <sect1> + <title>Version 4.2.2 (18-10-2012)</title> + + <para>C'est une version de maintenance. Les éléments suivants ont été + corrigés et/ou ajoutés :</para> + + <itemizedlist> + + <listitem> + <para>VMM : adaptaption aux changements sur Mac OS X 10.8.2 (bogue #10965)</para> + </listitem> + + <listitem> + <para>GUI : rétablissement de la fonction du bouton de barre d'outils des + VMs (régression 4.2)</para> + </listitem> + + <listitem> + <para>GUI : ajout de la fonctionnalité Groupe à la barre d'outils</para> + </listitem> + + <listitem> + <para>GUI : correction de la gestion de l'association des noms de fichiers + .ova/.ovf (régression 4.2)</para> + </listitem> + + <listitem> + <para>GUI : il n'était pas possible de modifier un paramètre avant + la création de la première VM (bogue #10928)</para> + </listitem> + + <listitem> + <para>GUI : désactivation du groupage si tous les éléments sélectionnés + sont dans une liste de fils d'un même groupe</para> + </listitem> + + <listitem> + <para>GUI : ajout d'un menu pour changer l'option glisser/déplacer lors de + l'exécution </para> + </listitem> + + <listitem> + <para>GUI : nettoyage du menu presse-papier partagé lors du changement + de mode visuel</para> + </listitem> + + <listitem> + <para>GUI : on s'assure que la VM reçoit le focus du clavier en entrant + en mode plein écran sur un hôte Win (bogue #11051)</para> + </listitem> + + <listitem> + <para>GUI : désactivation de l'authentification de proxy pour des raisons de sécuri!é</para> + </listitem> + + <listitem> + <para>Support 3D : correction de l'implémentation + <emphasis>DrawIndexedPrimitiveUP</emphasis> pour le pilote graphique + Windows WDDM (bogue #10929) </para> + </listitem> + + <listitem> + <para>Stocmage : correction d'une déclaration de version dans l'émulation + AHCI lors des requêtes où les E/S asynchrones sont désactivées</para> + </listitem> + + <listitem> + <para>Stockage : correction d'un accroc au redémarrage de la VM dans + certaines circonstances (bogue #10898)</para> + </listitem> + + <listitem> + <para>NAT : correction d'un plantage dans de rares circonstances (hôtes + Windows seulement ; bogue #10128)</para> + </listitem> + + <listitem> + <para>NAT : utilisation automatique du résolveur de l'hôte si le nom + du serveur hôte est défini sur une valeur inhabituelle (bogue #10864)</para> + </listitem> + + <listitem> + <para>E1000 : correction d'un plantage de VirtualBox lors de gros + transferts réseaux (régression 4.2 ; bogues #10936, #10969, #10980)</para> + </listitem> + + <listitem> + <para>ICH9 : correction de l'initialisation du pont PCI</para> + </listitem> + + <listitem> + <para>Souris USB : garantie que le dernier événement de souris ne se perde pa + si aucune adresse n'est disponible</para> + </listitem> + + <listitem> + <para>BIOS : certains invités primaires (comme Windows 95) ne trouvaient + pas de périphérique d'amorçage après un redémarrage à chaud</para> + </listitem> + + <listitem> + <para>BIOS : on ne jette pas la palette en mode texte lors du paramétrage + de la couleur des contours</para> + </listitem> + + <listitem> + <para>EFI : correction du démarrage automatique des invités OS X (régression 4.2)</para> + </listitem> + + <listitem> + <para>VBoxManage : correction de la sortie de <emphasis>showvminfo --machinereadable</emphasis> + (bogue #10973)</para> + </listitem> + + <listitem> + <para>VBoxManage : correction de l'analyse de <emphasis>storageattach --discard</emphasis> + (bogue #11023)</para> + </listitem> + + <listitem> + <para>VBoxManage : correction d'une mauvaise sortie du paramètre HPET + de <emphasis>showvminfo</emphasis> + (bogue #11065)</para> + </listitem> + + <listitem> + <para>VBoxManage : correction de la fermeture de la session de l'invité + après l'exécution d'un processus invité via le contrôle de l'invité</para> + </listitem> + + <listitem> + <para>VBoxShell : adaptations aux changements de nom de l'interface</para> + </listitem> + + <listitem> + <para>Périphériques suppléments invité : correction d'un accroc des + suppléments invité quand on a relancé une machine après un plantage</para> + </listitem> + + <listitem> + <para>Hôtes / invités Linux : corrections pour Linux 3.7-rc1</para> + </listitem> + + <listitem> + <para>Suppléments Linux: support de X.Org Server 1.13</para> + </listitem> + + <listitem> + <para>Suppléments Linux : correction d'un accroc au redémarrage du serveur X + avec 'anciens noyaux invités</para> + </listitem> + + <listitem> + <para>Suppléments Linux : correction d'un plantage de VBoxService lkrs + du retrait à chaud d'un processeur + (bogue #10964)</para> + </listitem> + + <listitem> + <para>Suppléments Windows : correction d'un problème de + redimensionnement automatique de l'écrn avec les invités NT4</para> + </listitem> + + <listitem> + <para>Suppléments OS/2 : correction d'un accroc à l'extinction</para> + </listitem> + + <listitem> + <para>Suppléments OS/2 : correction d'un problème du pilote de la souris</para> + </listitem> + + <listitem> + <para>Hôtes Solaris : correction du service de démarrage automatique qui + partait en mode maintenance après le démarrage de toutes les VMs</para> + </listitem> + + <listitem> + <para>Hôtes Solaris : correction du lien entre le pilote de l'hôte et le + module dtrace</para> + </listitem> + + </itemizedlist> + </sect1> + + <sect1> + + <title>Version 4.2.0 (13-09-2012)</title> + + <para>C'est une version majeure. Les nouvelles fonctions essentielles suivantes + ont été ajoutées :</para> + + <itemizedlist> + + <listitem> + <para>Amélioration du support de Windows 8, en particulier beaucoup de + corrections liées à la 3D</para> + </listitem> + + <listitem> + <para>GUI : groupes de VMs (bogue #288)</para> + </listitem> + + <listitem> + <para>GUI : mode expert dans les assistants</para> + </listitem> + + <listitem> + <para>GUI : on permet de modifier certains paramètres pendant + l'exécution</para> + </listitem> + + <listitem> + <para>Support jusqu'à 36 cartes réseaux, associées à une configuration + de chipset ICH9 (bogue #8805)</para> + </listitem> + + <listitem> + <para>Contrôle des ressources : ajout du support de la limitation + de la bande passante E/S du réseau virtuel ; voir <xref linkend="network_bandwidth_limit" /> + (bogue #3653)</para> + </listitem> + + <listitem> + <para>Ajokt de la possibilité de démarrer des VMs au démarrage du système + sur Linux, OS X et Solaris ; voir <xref linkend="autostart" /> (bogue #950)</para> + </listitem> + + <listitem> + <para>Ajout du support expérimental de Drag'n'drop de l'hôte pour les + invités Linux. Le support de plus d'invités et pour le sens invité-vers-hôte + est prévu. (bogue #81)</para> + </listitem> + + <listitem> + <para>Ajout du support du passthrough pour le port parallèle sur les + hôtes Windows</para> + </listitem> + + <listitem> + <para>Amélioration de l'API pour contrôler l'invité ; merci de voir + la documentation de référence du SDK et de l'API pour plus d'informations</para> + </listitem> + + </itemizedlist> + + <para>En outre, les éléments suivants ont été corrigés et/ou ajoutés :</para> + + <itemizedlist> + + <listitem> + <para>Hôtes Mac OS X : signature de l'application et de l'installeur + pour éviter des avertissements sur Mountain Lion</para> + </listitem> + + <listitem> + <para>VMM : correction d'un plantage potentiel de l'hôte lors de + l'extinction d'une VM quand une autre VM est en fonction (ne concernait + que les hôtes 32 bits et ceux 64 bits OS X, régression de la de la + 4.1, bogue #9897)</para> + </listitem> + + <listitem> + <para>VMM : correction d'un plantage potentiel de l'hôte en cas de forte + pression sur la mémoire de l'invité (découvert dans les invités Windows + 8)</para> + </listitem> + + <listitem> + <para>VMM : amélioration des performances du passage en contexte VM pour + les processeurs Intel qui utilisent la pagination nestée</para> + </listitem> + + <listitem> + <para>VMM : ajout du support des fonctions <emphasis>FlushByASID</emphasis> + des processeurs AMD (Bulldozer et plus récents)</para> + </listitem> + + <listitem> + <para>VMM : correction de la gestion du mode non-réel sur les anciens + processeurs ayant activé VT-x (gPXE, Solaris 7/8/9 ; bogue #9941)</para> + </listitem> + + <listitem> + <para>VMM : correction des tableaux MP pour les routines d'interruption + E/S d'APIC pour les harmoniser avec les anciens invités SMP (comme + les anciennes versions d'OS/2)</para> + </listitem> + + <listitem> + <para>VMM : support des processeurs VIA récents (bogue #10005)</para> + </listitem> + + <listitem> + <para>VMM : correction de la gestion des délimitateurs de tâches si + VT-x/AMD-V est désactivé</para> + </listitem> + + <listitem> + <para>VMM : corrections de la fusion de page</para> + </listitem> + + <listitem> + <para>GUI : gestionnaire des opérations réseaux</para> + </listitem> + + <listitem> + <para>GUI : permet de prendre des instantanés du contenu de la fenêtre de la VM + actuelle (bogue #5561)</para> + </listitem> + + <listitem> + <para>GUI : permet de trier automatiquement la liste des VMs</para> + </listitem> + + <listitem> + <para>GUI : permet le démarrage des VMs transparentes à partir de + l'interface graphique</para> + </listitem> + + <listitem> + <para>GUI : permet la réinitialisation, l'extinction et la coupure depuis + la fenêtre du gestionnaire</para> + </listitem> + + <listitem> + <para>GUI : permet de limiter globalement la résolution maximum de + l'écran pour les invités</para> + </listitem> + + <listitem> + <para>GUI : affichage de toute la partie du média dans ;a liste des + images ISO récemment utilisées</para> + </listitem> + + <listitem> + <para>GUI : ne crée pas de dossiers supplémentaires quand une nouvelle + machine a un caractère de séparation dans son nom (bogue #6541)</para> + </listitem> + + <listitem> + <para>GUI : ne plante pas ou ne se termine pas si la boîte de dialogue + des paramètres est toujours ouverte. + (bogue #9973)</para> + </listitem> + + <listitem> + <para>GUI : prise en compte des valeurs DPI échelonnées lors de l'affichage + des polices sur des hôtes Windows + (bogue #9864)</para> + </listitem> + + <listitem> + <para>GUI : si une interface réseau bridgée ne peut pas être trouvée, + ne refuse pas de démarrer la VM mais permet à l'utilisateur de modifier + immédiatement le paramètre</para> + </listitem> + + <listitem> + <para>Instantanés : correction d'un plantage lors de la restauration d'un + ancien instantané au moment de l'extinction d'une VM (bogues + #9364, #9604, #10491)</para> + </listitem> + + <listitem> + <para>Presse-papier : désactivation du presse-papier par défaut sur les + nouvelles VMs (voir <xref linkend="security_clipboard" />). Vous pouvez + l'activer n'importe quand en utilisant le menu de la VM</para> + </listitem> + + <listitem> + <para>Paramètres : mettoyage du nom des dossiers de VMs et du fichier + des paramètres (bogue #10549)</para> + </listitem> + + <listitem> + <para>Paramètres : permet de stocker de façon chiffrée le mot de passe + de l'initiateur iSCSI</para> + </listitem> + + <listitem> + <para>NAT : améliorations du serveur TFTP intégré (bogues #7385, #10286)</para> + </listitem> + + <listitem> + <para>NAT : correction d'une fuite de mémoire lors de la désactivation du + moteur NAT (bogue #10801)</para> + </listitem> + + <listitem> + <para>E1000 : support du VLAN 802.1q (bogue #10429)</para> + </listitem> + + <listitem> + <para>Stockage : implémentation de la gravure de CDs audio en mode + passthrough</para> + </listitem> + + <listitem> + <para>Stockage : correction du passthrough des CDs audio pour certains + lecteurs multimédias</para> + </listitem> + + <listitem> + <para>Stockage : implémentation du support de la désactivation des + blocs inusités d'une image via TRIM pour SATA et IDE, et via UNMAP + pour SCSI lorsqu'on utilise des images VDI</para> + </listitem> + + <listitem> + <para>Stockage : ajout du support des images QED</para> + </listitem> + + <listitem> + <para>Stockage : ajout du support de QCOW (support complet de la v1 et + en lecture seule pour les images v2)</para> + </listitem> + + <listitem> + <para>Stockage : ajout du support en lecture seule des images VHDX</para> + </listitem> + + <listitem> + <para>USB : ne plante pas si on branche ou débranche un périphérique USB + pendant la sauvegarde ou le chargement de l'état d'une VM (invités + SMP seulement)</para> + </listitem> + + <listitem> + <para>Suppléments Solaris : ajout du support du serveur X.org 1.11 et + 1.12</para> + </listitem> + + <listitem> + <para>Suppléments Solaris : passage à l'utilisation du pilote de souris inclu + dans le noyau</para> + </listitem> + + <listitem> + <para>Hôtes Windows : pas besoin de recréer les adaptateurs réseaux + host-only: pas besoin de recréer d'adaptateurs host-only après une mise + à jour de VirtualBox update</para> + </listitem> + + <listitem> + <para>Hôtes Windows : Mise à jour de l'ensemble d'outils ; le code source + a été rendu compatible avec VC 2010 et des options du compilateur liées + à la sécurité ont été activées</para> + </listitem> + + <listitem> + <para>Suppléments Windows : correction d'une perte de mémoire dans VBoxTray (bogue #10808)</para> + </listitem> + + </itemizedlist> + </sect1> + + <sect1> + <title>Version 4.1.18 (06-06-2012)</title> + + <para>C'est une version de maintenance. Les éléments suivants ont été corrigés + et/ou ajoutés :</para> + + <itemizedlist> + + <listitem> + <para>VMM : correction de <emphasis>VERR_REM_VIRTUAL_CPU_ERROR</emphasis> + dans des conditions rares après que l'invité a été réinitialisé (bogue #5164 + et autres)</para> + </listitem> + + <listitem> + <para>VMM : correction de gels de l'hôte avec les invités 64 bits sur + des hôtes Linux 32 bits (bogue #10528)</para> + </listitem> + + <listitem> + <para>VRDP : ajout d'un contournement pour les clients rdesktop qui ne + mettent pas à jour correctement la taille de l'écran lorsqu'on le minimise</para> + </listitem> + + <listitem> + <para>AHCI : correction d'un bogue rare qui peut entraîner une corruption + de la mémoire de l'invité après que le contrôleur de stockage de l'invité + a été réinitialisé</para> + </listitem> + + <listitem> + <para>NAT : nouvelle tentative pour corriger des plantages dans + certaines conditions (hôtes Windows seulement ; bogue #10513)</para> + </listitem> + + <listitem> + <para>Hôtes Mac OS X : traitement des problèmes lors de l'exécution de + Leopard / Snow Leopard + (bogue #10631)</para> + </listitem> + + <listitem> + <para>Hôtes Linux / Réseau bridgé : correction du problème de déchargement + du pilote de périphérique sur les noyaux 3.2.18 et supérieur, du fait + d'un compteur de références invalide + (bogue #10624)</para> + </listitem> + + <listitem> + <para>Hôtes Linux / invités : corrections Linux 3.5-rc1</para> + </listitem> + + <listitem> + <para>Suppléments Linux : le contenu de l'invité n'était parfois pas + mis à jour correctement (bogue #9887)</para> + </listitem> + + <listitem> + <para>Suppléments Solaris : correction de l'installeur pour le serveur + X.org 1.11 et 1.12</para> + </listitem> + + </itemizedlist> + </sect1> + + <sect1> + <title>Version 4.1.16 (22-05-2012)</title> + + <para>C'est une version de maintenance. Les éléments suivants ont été corrigés et/ou + ajoutés :</para> + + <itemizedlist> + + <listitem> + <para>VMM : correction d'une Guru Meditation <emphasis>VERR_ACCESS_DENIED</emphasis> + avec certains invités (bogues #7589, #8247)</para> + </listitem> + + <listitem> + <para>VMM : correction d'une Guru Meditation <emphasis>VERR_PAGE_TABLE_NOT_PRESENT</emphasis> + avec les invités Ubuntu 32 bits où la pagination nestée est activée + sur les processeurs AMD + (bogue #10183)</para> + </listitem> + + <listitem> + <para>VMM : préservation des limites et des attributs de segmentation lors + du passage en mode non-réel nécessaire pour que certains invités basiques + (legacy) fonctionnent correctement (VT-x sans exécution non restreinte de + l'invité seulement ; bogue #9941)</para> + </listitem> + + <listitem> + <para>VMM : correction d'un accroc de la VM après le retour d'un état en + pause / sauvegardé avec les invités SMP dans de rares cas</para> + </listitem> + + <listitem> + <para>Support 3D : plusieurs corrections de plantages des pilotes + graphiques WDDM de Windows</para> + </listitem> + + <listitem> + <para>NAT : correction d'un plantage quand on essaie de traiter des + diagrammes (datagram) ICMP dans certaines + circonstances (bogue #10527)</para> + </listitem> + + <listitem> + <para>Réseau Host-only : passage du nombre maximal d'interfaces à + 128 sur les hôtes Linux et Mac OS X (il n'existe pas cette limite + pour les hôtes Solaris et Windows)</para> + </listitem> + + <listitem> + <para>EFI : correction d'un mauvais calcul du point d'entrée SEC/PEI Core (bogue #10531)</para> + </listitem> + + <listitem> + <para>Principal : définition de la bonne VM si l'état sauvegardé a + échoué pour une raison quelconque (bogue #6189)</para> + </listitem> + + <listitem> + <para>Principal : message d'erreur plus utile si un média est inaccessible</para> + </listitem> + + <listitem> + <para>VBoxManage : correction de <emphasis>controlvm savestate</emphasis> + si la VM est déjà en + pause</para> + </listitem> + + <listitem> + <para>Hôtes Mac OS X : traitement de problèmes d'exécution sur Mountain Lion Preview 3 + (bogue #10267)</para> + </listitem> + + <listitem> + <para>Hôtes Linux : correction de compilation sur Linux 3.4</para> + </listitem> + + <listitem> + <para>Hôtes Linux : correction d'un mauvais chemin de l'aide sur certains + paquets de type rpm + (bogue #10418)</para> + </listitem> + + <listitem> + <para>Suppléments invité : correction de la gestion des variables + d'environnement personnalisées pendant + (bogue #10581)</para> + </listitem> + + <listitem> + <para>Suppléments Windows : correction de plantages du pilote invité + de VBoxSF idanscertains cas (régression de la 4.1.10, bogue #10408)</para> + </listitem> + + <listitem> + <para>Suppléments Windows : ne charge pas le pilote WDDM si le support + 3D n'est pas disponible pour les invités que les Windows 8 gardent des + invités maintenables dans ce cas (toujours mieux de se passer de + certaines fonctions que d'avoir un écran vide)</para> + </listitem> + + <listitem> + <para>Suppléments Solaris : ajout du support du serveur X.org 1.11 et + 1.12</para> + </listitem> + + </itemizedlist> + + </sect1> + + <sect1> + <title>Version 4.1.14 (13-04-2012)</title> + + <para>C'est une version de maintenance. Les éléments suivants ont été corrigés et/ou + ajoutés :</para> + + <itemizedlist> + + <listitem> + <para>Réseau : correction du problème avec les paquets plus gres que + MTU-4 quand PCnet ou PRO/1000 ont été reliés à certains types d'adaptateurs + sur les hôtes OS X + (bogue #3783)</para> + </listitem> + + <listitem> + <para>NAT : correction d'une erreur de segmentation dans de rares + circonstances</para> + </listitem> + + <listitem> + <para>Support 3D : correction de plantages du pilote graphique WDDM de + Windows pour certains invités SMP + (bogues #10200, #10331)</para> + </listitem> + + <listitem> + <para>Suppléments invité Windows, VRDP: correction de corruptions + occasionnelles du texte à la verticale</para> + </listitem> + + </itemizedlist> + + </sect1> + + <sect1> + <title>Version 4.1.12 (03-04-2012)</title> + + <para>C'est une version de maintenance. Les éléments suivants ont été corrigés et/ou + ajoutés :</para> + + <itemizedlist> + + <listitem> + <para>VMM : correction d'une guru meditation + <emphasis>VERR_NOT_SUPPORTED</emphasis> et + <emphasis>VERR_RAW_MODE_INVALID_SMP</emphasis> due à une reprogrammation + invalide en mode brut (bogue #10370)</para> + </listitem> + + <listitem> + <para>VMM : correction d'une guru meditation + <emphasis>PDMCritSectLeave</emphasis> dans de rares circonstances avec + les invités SMP</para> + </listitem> + + <listitem> + <para>VMM : bonne gestion de <emphasis>Math Fault</emphasis> avec + certains invités basiques (bogue #9042)</para> + </listitem> + + <listitem> + <para>NAT : correction d'une perte de la socket dans certaines conditions</para> + </listitem> + + <listitem> + <para>Stockage : meilleure vérification de propreté des lectures dépassant + le end-of-file</para> + </listitem> + + <listitem> + <para>Son : correction d'un plantage de la fondation son NUL (bogue #10374; + régression de la 4.1.10)</para> + </listitem> + + <listitem> + <para>HGCM : correction d'un plantage en état sauvegardé dans de rares + circonstances</para> + </listitem> + + <listitem> + <para>Mesures : correction d'un plantage occasionnel lors de l'extinction + de la VM si les mesures de la RAM/VMM de l'hôte sont activées</para> + </listitem> + + <listitem> + <para>VBoxSVC : correction de plusieurs verrouillages</para> + </listitem> + + <listitem> + <para>VBoxManage : renvoi du bon code d'erreur si + <emphasis>controlvm savestate</emphasis> a échoué (bogue #10134)</para> + </listitem> + + <listitem> + <para>Suppléments invité : VBoxService ne devrait pas planter lors + de la sortie (bogue #10326 ; + régression de la 4.1.10)</para> + </listitem> + + <listitem> + <para>Suppléments Windows : définition du bon horodatage quand un fichier + est fermé (bogue #6473)</para> + </listitem> + + <listitem> + <para>Suppléments Windows : meilleure aide si les sauvegardes DirectX + ne sont pas bien installées</para> + </listitem> + + <listitem> + <para>Suppléments Linux : corrections de compilation Linux 3.4-rc1</para> + </listitem> + + </itemizedlist> + </sect1> + + <sect1> + <title>Version 4.1.10 (13-03-2012)</title> + + <para>C'est une version de maintenance. Les éléments suivants ont été corrigés et/ou + ajoutés :</para> + + <itemizedlist> + + <listitem> + <para>GUI : si le support 3D n'est pas disponible sur l'hôte pour une + raison quelconque, non seulement on désactive ce paramètre de la VM, + mais on décoche aussi la case</para> + </listitem> + + <listitem> + <para>VMM : correction d'un problème potentiel provoquant des interruptions + de programmation lors de <emphasis>SYSEXIT</emphasis> juste après <emphasis>STI</emphasis></para> + </listitem> + + <listitem> + <para>VMM : correction d'un problème potentiel de corruption de la + mémoire de l'invité + avec la fusion de page</para> + </listitem> + + <listitem> + <para>VMM : ajustement d'un module correspondant un peu à l'algorithme de la + fusion de page, aboutissant en général à des pages légèrement plus + éparpillées</para> + </listitem> + + <listitem> + <para>Principal : les interfaces de l'hôte n'ont pas de réglages + par défaut d'adresse IP et d'attributs de masque de réseau</para> + </listitem> + + <listitem> + <para>Principal : pas de dépendance du mot de passe pour certaines + opérations de contrôle de l'invité + (bogue #10030)</para> + </listitem> + + <listitem> + <para>Support 3D : correction du support des hôtes Windows XP (régression de la + 4.1.8 ; bogues #10071 et #10088</para> + </listitem> + + <listitem> + <para>Support 3D : corrections d'affichage pour les hôtes Linux ayant + des cartes NVIDIA</para> + </listitem> + + <listitem> + <para>Support 3D : correction de problèmes de l'état + sauvegardé (régression de la 4.1.8 ; bogue #10126)</para> + </listitem> + + <listitem> + <para>Support 3D : Pilote WDDM : correction de plantages de + powershell_ise (bogue #10167), on a fait en sorte que les appli basées sur + WPF fonctionnent quand Aero est activé, correction d'autres plantages + possibles de WinSAT</para> + </listitem> + + <listitem> + <para>VRDP : correction de problèmes de compatibilité du presse-papier distant + avec certains clients</para> + </listitem> + + <listitem> + <para>Stockage : correction d'une corruption possible des données lors + de la compression d'images VDI ou VHD avec des instantanés (hôtes 32 bits + seulement)</para> + </listitem> + + <listitem> + <para>iSCSI : correction d'un plantage lors de l'utilisation de mauvaises + autorisations quand on s'authentifie avec une cible LIO (bogue #10173)</para> + </listitem> + + <listitem> + <para>Série : ne plante pas en mode hôte en cas de rare error conditions + (hôtes non Windows seulement)</para> + </listitem> + + <listitem> + <para>SDK : inclusion des bindings C actuels</para> + </listitem> + + <listitem> + <para>SDK : correction du code Java glue pour JDK 1.7.0 (bogue #9848)</para> + </listitem> + + <listitem> + <para>SDK : ajout d'un exemple de Python</para> + </listitem> + + <listitem> + <para>Mesures : prises de mesures plus robustes quand les VMs sont + bloquées</para> + </listitem> + + <listitem> + <para>Service Web : ajout du support SSL/TLS</para> + </listitem> + + <listitem> + <para>VBoxShell : correction de la recherche d'informations sur les + suppléments invité</para> + </listitem> + + <listitem> + <para>Installeur Solaris : correction de la vérification des dépendences + lors de l'installation de VirtualBox dans une + zone</para> + </listitem> + + <listitem> + <para>Hôtes/invités Linux : corrcctions de compilation dans Linux 3.3-rc1</para> + </listitem> + + <listitem> + <para>Hôtes Solaris : correction de kernel panics lors de l'ouverture + de données CTF du module + (bogue #9651)</para> + </listitem> + + <listitem> + <para>Hôtes Mac OS X : correction du support Python sur Lion</para> + </listitem> + + <listitem> + <para>Suppléments Linux : on a fait en sorte que passthrough 3D + fonctionne sur OL/RHEL 6.2 (bogue + #10010)</para> + </listitem> + + <listitem> + <para>Suppléments Linux : correction d'une implémentation manquante + lors de la copie des données d'un dossier partagé par la mémoire haute + du noyau (bogue #9878)</para> + </listitem> + + <listitem> + <para>Suppléments Linux : on a garanti que toutes les données s'écrivent + à la fermeture d'un fichier affecté à la mémoire dans un dossier + partagé</para> + </listitem> + + <listitem> + <para>Suppléments Linux : ajout du support du serveur X.Org 1.12</para> + </listitem> + + <listitem> + <para>Suppléments Solaris : correction du pilote du noyau invité pour + qu'il se charge correctement au redémarrage de l'invité (régression + 4.1.8 ; bogue #10113)</para> + </listitem> + + <listitem> + <para>Suppléments Solaris : correction de l'absence de la bibliothèque + VBoxOGL.so dans OpenGL 64 bits + (bogue #10151)</para> + </listitem> + + <listitem> + <para>Suppléments Solaris : correction de l'importation et du démarrage + de VBoxService pour les invités Solaris 11</para> + </listitem> + + <listitem> + <para>Suppléments Windows : quelques adaptations à Windows 8</para> + </listitem> + + <listitem> + <para>Suppléments Windows : plusieurs corrections des dossiers partagés + (bogue #9753)</para> + </listitem> + + <listitem> + <para>Contrôle de l'invité : corrections générale de bogues</para> + </listitem> + + </itemizedlist> + </sect1> + + <sect1> + <title>Version 4.1.8 (19-12-2011)</title> + + <para>C'est une version de maintenance. Les éléments suivants ont été corrigés et/ou + ajoutés :</para> + + <itemizedlist> + + <listitem> + <para>VMM : correction de <emphasis>VERR_MAP_FAILED</emphasis> en + état sauvegardé dans certaines circonstances (bogue #7929)</para> + </listitem> + + <listitem> + <para>GUI : plus d'icône de l'état des mises à jour de la VM quand la + VM est en pause (bogue #8368)</para> + </listitem> + + <listitem> + <para>VBoxManage : correction d'un mauvais code de renvoi après + <emphasis>startvm</emphasis> (bogue #9642)</para> + </listitem> + + <listitem> + <para>BIOS : correction d'accrocs au lancement d'applications DOS + générées par Clipper 5.3 (remarquez que la virtualisation matérielle + peut être nécessaire) + </para> + </listitem> + + <listitem> + <para>USB : correction d'accrocs au démarrage d'OS/2 lors de l'utilisation + de pilotes USB récentt</para> + </listitem> + + <listitem> + <para>NAT : augmentation du nombre maximum de connexions parallèles, + rendant plus robustes les connexions avec redirection de ports (#8471)</para> + </listitem> + + <listitem> + <para>Mesures : correction d'un problème potentielle d'accès invalide + dans la prise des mesures de l'invité lors de la destruction d'une + VM</para> + </listitem> + + <listitem> + <para>Principal : ne plante pas si si un média est éjecté deux fois + (bogue #9922)</para> + </listitem> + + <listitem> + <para>VBoxSVC : correction d'un plantage dans de rares circonstances + (comme un plantage du client)</para> + </listitem> + + <listitem> + <para>VRDP : correction d'un gel de l'écran (bogue #9620)</para> + </listitem> + + <listitem> + <para>OVF/OVA : correction d'images de disque cassées lors d'une importation + dans de rares circonstances</para> + </listitem> + + <listitem> + <para>OVF/OVA : meilleur message d'erreur quand l'importation a corrompu + des applicatifs</para> + </listitem> + + <listitem> + <para>VMDK/VHD : correction d'une corruption possible quand le cache de + l'hôte est désactivé quand on utilise des instantanés dans de rares + circonstances (bogue #9749)</para> + </listitem> + + <listitem> + <para>Support 3D : correction de problèmes en mode plein écran pour + les cartes ATI (bogue #9775), de l'affichage dans + Windows Media Player avec le support Direct3D basé sur XPDM (bogue# 8341). + Plusieurs corrections du support 3D basé sur XPDM et WDDM pour + les invités Windows et pour le support 3D en + général</para> + </listitem> + + <listitem> + <para>Hôtes Linux : corrections pour Fedoras Linux 2.6.41 (bogue #9948)</para> + </listitem> + + <listitem> + <para>Hôtes/invités Linux : corrections pour Linux 3.2 (bogue #9743)</para> + </listitem> + + <listitem> + <para>Suppléments Solaris : plusieurs corrections du dossier partagé + (bogues #9856, #9862, #9917)</para> + </listitem> + + <listitem> + <para>Suppléments Windows : plusieurs corrections de la (dés)installation + du support Direct3D, ajout de la détection des fichiers du système + Direct3D manquants ou incorrects</para> + </listitem> + + </itemizedlist> + </sect1> + + <sect1> + <title>Version 4.1.6 (04-11-2011)</title> + + <para>C'est une version de maintenance. Les éléments suivants ont été corrigés et/ou + ajoutés :</para> + + <itemizedlist> + + <listitem> + <para>VRDP : correction de la corruption de l'écran</para> + </listitem> + + <listitem> + <para>NAT : l'interface s'arrêtait de fonctionner après beaucoup de + d'échecs de requêtes ICMP (bogue #9371)</para> + </listitem> + + <listitem> + <para>E1000 : correction de rares accrocs avec un invité Windows 7, + soit au moment du démarrage soit lors de la reconfiguration de la carte + réseau dans des configurations inhabituelles (bogue #6223)</para> + </listitem> + + <listitem> + <para>ATA : correction d'un plantage possible en ATAPI passthrough avec + certains invités</para> + </listitem> + + <listitem> + <para>ATA : amélioration de la compatibilité avec les anciens noyaux + Linux</para> + </listitem> + + <listitem> + <para>Principal : correction des informations de framebuffer incorrectes + après qu'on a quitté le mode plein écran avec les invités X11, cela + provoquait par exemple une fenêtre d'affichage brouillée dans l'interface + graphique</para> + </listitem> + + <listitem> + <para>Hôtes Mac OS X : correction d'un problème avec la duplication de + paquets passant par un pont sans fil (bogue #9648)</para> + </listitem> + + <listitem> + <para>Hôtes Linux : correction du support sur Fedora 15 (bogue #9799)</para> + </listitem> + + <listitem> + <para>Hôtes Linux : n'appelle pas <emphasis>del_timer_sync</emphasis> + dans un contexte d'interruption (Fedora bogue 746331 signalé)</para> + </listitem> + + <listitem> + <para>Invités Windows Vista et 7 : encore des corrections WDDM</para> + </listitem> + + <listitem> + <para>Suppléments Linux : correction d'échecs de compilation du module + noyau sur Redhat + Enterprise Linux 4 (bogue #9709)</para> + </listitem> + + <listitem> + <para>Suppléments Linux : installation correcte d'un pilote DRI sur les + invités Ubuntu 11.10</para> + </listitem> + + <listitem> + <para>Suppléments Solaris : ajout du support mmap en lecture seule pour + des dossiers partagés</para> + </listitem> + + <listitem> + <para>Suppléments Solaris : ajout des options directory, file mode et + mask pour les dossiers partagés</para> + </listitem> + + <listitem> + <para>Suppléments Windows : implémentation d'une détection plus rapide + des utilisateurs identifiés dans l'invité et des sessions stale</para> + </listitem> + + <listitem> + <para>Suppéments X.Org : correction d'une corruption graphique quand + on bascule dans un terminal virtuel (bogue #9490)</para> + </listitem> + + </itemizedlist> + </sect1> + + <sect1> + <title>Version 4.1.4 (10-03-2011)</title> + + <para>C'est une version de maintenance. Les éléments suivants ont été corrigés et/ou + ajoutés :</para> + + <itemizedlist> + + <listitem> + <para>VMM : correction du PAE sur l'invité sur des hôtes 32 bits (régression + 4.0 ; + bogue #9458)</para> + </listitem> + + <listitem> + <para>VMM : correction d'une guru meditation + <emphasis>INVALID_PARAMETER</emphasis> due à des conditions de mémoire + insuffisants (régression 4.1.0 ; bogue #9240)</para> + </listitem> + + <listitem> + <para>VMM : correction des registres morcelés du processeur pendant + l'émulation <emphasis>stos/lods/ins/outs</emphasis> dans de rares + circonstances</para> + </listitem> + + <listitem> + <para>VMM : une autre correction pour les invités 64 bits sur des + processeurs AMD récents</para> + </listitem> + + <listitem> + <para>GUI : avertissement de l'utilisateur s'il utilise un pack d'extension + et, dans ce cas, possibilité de télécharger et de mettre à jour (bogue + #8025)</para> + </listitem> + + <listitem> + <para>GUI : correction d'événements malicieux de touches LCtrl sur + certains hôtes Windows (régression 4.0.6 ; bogue #373)</para> + </listitem> + + <listitem> + <para>VBoxManage : une autre correction de <emphasis>extpack install --replace</emphasis> + (bogue #9308)</para> + </listitem> + + <listitem> + <para>VBoxManage : on peut spécifier l'UUID de l'image cible avec + <emphasis>convertfromraw</emphasis></para> + </listitem> + + <listitem> + <para>VRDP : correction d'un plantage rare quand deux ou plusieurs clients + se connectent au serveur + (bogue #9503)</para> + </listitem> + + <listitem> + <para>VRDP : correction d'un souci quand un client n'a pas été redimensionné + correctement + (bogue #9242)</para> + </listitem> + + <listitem> + <para>USB : on a fait en sorte que la capture de périphérique fonctionne + sur des hôtes Windows avec les pilotes de filtres de la classe usbhub + installés (bogue #9298) ; + corrections de bogues du support USB dans l'hôte Windows</para> + </listitem> + + <listitem> + <para>VHD : correction de lectures croisant les sondages de blocs + (bogue #8532)</para> + </listitem> + + <listitem> + <para>VMDK : correction de l'indicateur de défilement lors de la + création d'images VMDK découpées</para> + </listitem> + + <listitem> + <para>Amovible : correction de la détection de la taille des médias + physiques (hôtes Windows seulement)</para> + </listitem> + + <listitem> + <para>Principal : correction de l'initialisation de la VM si l'USB + n'existe pas (bogue #7941)</para> + </listitem> + + <listitem> + <para>Principal : correction d'un gel possible entre l'énumération des + disques durs et la redéfinition des disques immuables (bogue #9549)</para> + </listitem> + + <listitem> + <para>Principal : correction du non détachement du stockage virtuel + après la restauration d'un instantané + (bogue #8296)</para> + </listitem> + + <listitem> + <para>Principal : réinitialisation permanente de l'état modifié après + la restauration d'un instantané (bogue + #9387)</para> + </listitem> + + <listitem> + <para>Principal : correction de l'écriture des paramètres modifiés + de la VM concernant le disque lors de l'utilisation d'instantanés + (bogue #8932)</para> + </listitem> + + <listitem> + <para>Principal : correction de la prise d'instantanés (comme la fenêtre + d'aperçu) pour les VMs transparentes si les suppléments invité sont + actifs</para> + </listitem> + + <listitem> + <para>Virtio-net : correction du problème d'excès de paquets UDP du + MTU (bogue #9370)</para> + </listitem> + + <listitem> + <para>Support 3D : correction de l'affichage incorrect et de plantages + possibles lors de la bascule du mode plein écran quand l'accélération 3D + est activée</para> + </listitem> + + <listitem> + <para>Support 3D : correction de compiz sous ubuntu 9.10</para> + </listitem> + + <listitem> + <para>Contrôle de l'invité : corrections de petits bogues généraux</para> + </listitem> + + <listitem> + <para>Hôtes Linux / Solaris : n'utilise pas de liens en dur dans les + paquets (régression 4.1.2 ; bogue #9441)</para> + </listitem> + + <listitem> + <para>Hôtes Mac OS X : correction de problèmes d'installation lors d'une + installation en tant qu'administrateur + (bogue #1578)</para> + </listitem> + + <listitem> + <para>Hôtes Mac OS X : correction de problèmes de capture de paquets + avec les interfaces host-only vboxnetX + (bogue #8076)</para> + </listitem> + + <listitem> + <para>Hôtes Solaris : correction de la diffusion de plusieurs paquets + entrants pour les réseaux bridgés basés sur Crossbow + (bogue #9532)</para> + </listitem> + + <listitem> + <para>Hôtes Solaris : correction du démarrage des invités EFI à cause + de fichiers ROM EFI manquants + (bogue #9535)</para> + </listitem> + + <listitem> + <para>Installeur sur hôtes Windows : correction de l'utilisation de + <emphasis>ADDLOCAL</emphasis> sur la ligne de commandes (régression + 4.1.0 ; bogue #9488)</para> + </listitem> + + <listitem> + <para>Installeur sur hôtes Windows : correction du raccourci de dangling + vers le fichier d'aide .chm + (bogue #9646)</para> + </listitem> + + <listitem> + <para>Installeur sur hôtes Windows : essai de correction d'une erreur + d'installation 2869 apparue dans certaines circonstances (bogue #9664)</para> + </listitem> + + <listitem> + <para>Hôtes Windows : VBoxHeadless ne devrait jamais ouvrir une autre + fenêtre de console (bogue #3549)</para> + </listitem> + + <listitem> + <para>Suppléments invité : correction d'accrocs pendant l'attente + de la sortie de l'exécution de l'invité (régression 4.1.2 ; bogue #9446)</para> + </listitem> + + <listitem> + <para>Suppléments Linux : ajout du support du serveur X.Org 1.11 (bogue #9519) + </para> + </listitem> + + <listitem> + <para>Suppléments Linux : suppression d'un message d'erreur incorrect + et possibilité de monter un dossier partagé à plusieurs endroits + (bogue #9627) + </para> + </listitem> + + <listitem> + <para>Suppléments Linux : démarrage correct de VBoxService sur + openSUSE 12.1 (bogue #6229) + </para> + </listitem> + + <listitem> + <para>Suppléments Linux : achèvement correct de l'installation même si + la compilation du module DRM échoue (ce qui n'est pas fatal)</para> + </listitem> + + <listitem> + <para>Suppléments Solaris : correction de fuites de mémoire et de + panics lors du montage (en console) et du démontage des dossiers + partagés</para> + </listitem> + + <listitem> + <para>Suppléments Windows : correction de la corrdination du hotspot + du curseur de la souris échangé (régression 4.1.0 ; bogue #9447)</para> + </listitem> + + <listitem> + <para>Suppléments Windows : correction de <emphasis>PAGE_FAULT_IN_NONPAGED_AREA</emphasis> + BSOD dans VBoxDisp.dll lors de l'exécution de SnippingTool (bogue #9508)</para> + </listitem> + + <listitem> + <para>Suppléments Windows : on a fait en sorte que le visualiseur d'image + fonctionne bien quand Aero est activé (Vista et Windows 7)</para> + </listitem> + + <listitem> + <para>Suppléments Windows : correction de bords de fenêtres bleus avec + Aero avec les cartes ATI (Vista et Windows 7)</para> + </listitem> + + <listitem> + <para>Suppléments Windows : correction d'un mauvais affichage lors du + déplacement d'applications 3D hors du bureau invité puis d'un retour sur + Aero (Vista et Windows 7)</para> + </listitem> + + <listitem> + <para>Suppléments Windows : correction d'accrocs de l'invité quand +on quitte le mode plein écran avec des + applications en mode texte (bogue #9636)</para> + </listitem> + + </itemizedlist> + </sect1> + + <sect1> + <title>Version 4.1.2 (15-08-2011)</title> + + <para>C'est une version de maintenance. Les éléments suivants ont été corrigés et/ou + ajoutés :</para> + + <itemizedlist> + + <listitem> + <para>VMM : correction de la gestion des invités 64 bits sur les + processeurs AMD Fusion (bogue #8824)</para> + </listitem> + + <listitem> + <para>VMM : correction de la gestion des instructions machine + <emphasis>sysenter/sysexit</emphasis> dans les invités 64 bits sur + des hôtes Intel</para> + </listitem> + + <listitem> + <para>GUI : ajout du support de l'édition de liens entre clones</para> + </listitem> + + <listitem> + <para>GUI : correction de la vérification d'erreurs lors du changement + des paraçtres du contrôleur de la VM (régression 4.1.0 ; bogue #9246)</para> + </listitem> + + <listitem> + <para>GUI : correction de l'inclusion d'informations supplémentaires + (licence, distributeur, ...) sur l'export USB</para> + </listitem> + + <listitem> + <para>GUI : lors de la prise d'un instantané à partir du sélecteur de + VM, ne fait pas d'instantanés en direct</para> + </listitem> + + <listitem> + <para>GUI : correction d'un plantage subite au démarrage sur certains + environnements à cause d'un conflit de versions des bibliothèques</para> + </listitem> + + <listitem> + <para>Exécution et contrôle de l'invité : implémentation de la copie + d'un seul fichier de l'invité vers l'hôte (les répertoires et les + filtres ne sont pas encore supportés)</para> + </listitem> + + <listitem> + <para>Exécution et contrôle de l'invité : limitation par défaut du service + à 5 processus invités en même temps</para> + </listitem> + + <listitem> + <para>Principal : renvoi du bon port RDP par défaut, corrigeant les + avertissements sur les paramètres dans la GUI si l'affichage distant a + été activé lors de l'exécution (bogue + #9368)</para> + </listitem> + + <listitem> + <para>VBoxSVC : le chemin de comparaison des OS est indépendant quand + des images sont enregistrées (bogue #9303)</para> + </listitem> + + <listitem> + <para>VBoxSVC : améliorations de plusieurs aspects/performances pour + cloner des VMs</para> + </listitem> + + <listitem> + <para>Instantanés : correction du maintien du drapeau "Solid-State drive" + lors de la création d'un instantané (bogue #9379)</para> + </listitem> + + <listitem> + <para>VBoxManage : implémentation des outils de contrôle de l'invité + <emphasis>copyfrom</emphasis> and + <emphasis>stat</emphasis> pour copier des fichiers de l'invité vers + l'hôte et vérifier l'existence des fichiers sur l'invité</para> + </listitem> + + <listitem> + <para>VBoxManage : correction de <emphasis>extpack install --replace</emphasis> + (bogue #9308)</para> + </listitem> + + <listitem> + <para>VBoxManage : possibilité de démarrer plusieurs VMs avec + <emphasis>startvm</emphasis></para> + </listitem> + + <listitem> + <para>VBoxManage : support expérimental du montage à chaud de lecteurs + CD/DVD SATA</para> + </listitem> + + <listitem> + <para>Support souris : correction d'une erreur de positionnement du + pointeur off-by-one dans les invités Windows (bogues #7566, #9321)</para> + </listitem> + + <listitem> + <para>VRDP : correction d'un problème quand l'écran ne s'est pas bien + redessiné (bogue #9242)</para> + </listitem> + + <listitem> + <para>NAT : modification de l'établissement des connexion TCP en + fonction des exigences de l'API Winsock (hôtes Windows seulement ; bogue #8919)</para> + </listitem> + + <listitem> + <para>USB : correction de problèmes de reconnaissance de périphérique + (bogues #9299) et correction de plusieurs problèmes de captation du + périphérique (hôtes + Windows ; bogue #9299)</para> + </listitem> + + <listitem> + <para>USB : correction de problèmes quand certains filtres sont appliqués + à des périphériques USB locaux</para> + </listitem> + + <listitem> + <para>Suppléments invité : conservation du compte utilisateur connecté + quand la mémoire est pleine et avertissement de ceci</para> + </listitem> + + <listitem> + <para>OVA : correction de l'importation des fichiers OVA renommés + (bogue #9033)</para> + </listitem> + + <listitem> + <para>Hôte Windows : correction de l'icône des fichiers .VDI (bogue #9393)</para> + </listitem> + + <listitem> + <para>Hôtes Solaris : correction d'un bogue empêchant l'utilisation + conjointe de plusieurs NICs de l'hôte sur un réseau bridgé basé sur + Crossbow</para> + </listitem> + + <listitem> + <para>Hôtes Linux : correction de kernel panics aléatoires lors de la + suspension/extinction de l'hôte (régression 4.1.0 ; bogue #9305)</para> + </listitem> + + <listitem> + <para>Suppléments Solaris : correction des dossiers partagés à cause + de symboles manquants dans le module vboxfs (régression 4.0.12 / 4.1.0 b + bogue #9264)</para> + </listitem> + + <listitem> + <para>Suppléments Windows : correction du troncage de fichiers sur un + dossier partagé avec certaines applications (bogues #9276, #9315)</para> + </listitem> + + <listitem> + <para>Suppléments Windows : correction de problèmes du dossier partagé + avec les logiciels antivirus et les invités Windows 64 bits (bogue #9318)</para> + </listitem> + + <listitem> + <para>Invités Windows Vista et 7 : correction du pilote WDDM et améliorations + des performances, correction de plantages de WinSAT (#9267)</para> + </listitem> + + <listitem> + <para>Suppléments Linux : correction de <emphasis>llseek</emphasis> pour + les noyaux Linux 2.6.37 et supérieur</para> + </listitem> + + </itemizedlist> + </sect1> + + <sect1> + <title>Version 4.1.0 (19-07-2011)</title> + + <para>Cette version est une mise à jour majeure. Les nouvelles fonctions + majeures suivantes ont été ajoutées :</para> + + <itemizedlist> + + <listitem> + <para>Support du clonage de VMs (bogue #5853, voir + <xref linkend="clone"/>) : on peut créer des clones complets par + la GUI et VBoxManage, les clones liés étant seulement avec VBoxManage</para> + </listitem> + + <listitem> + <para>GUI : amélioration de l'assistant de création de nouveaux disques + virtuels</para> + </listitem> + + <listitem> + <para>GUI : nouvel assistant de copie de disques virtuels</para> + </listitem> + + <listitem> + <para>GUI : conservation du ratio d'affichage en mode écheloné (hôtes + Windows et OSX seulement ; bogue #7822)</para> + </listitem> + + <listitem> + <para>VMM : augmentation de la limite de mémoire pour les hôtes 64 bits + à 1To</para> + </listitem> + + <listitem> + <para>Support expérimental du passthrough PCI pour les hôtes Linux, + voir <xref linkend="pcipassthrough"/></para> + </listitem> + + <listitem> + <para>Invités Windows : pilote graphique WDDM expérimental, supportant + Windows Aero (bogue #4607) et fourniture du support Direct3D utilisant + une approche plus propre (slus besoin d'installer les pilotes de + l'invité en mode sans échec)</para> + </listitem> + + <listitem> + <para>Suppléments invité : l'état des modules et des fonctions peut + être maintenant demandé séparément par chaque interface</para> + </listitem> + + <listitem> + <para>Réseau : nouveau mode de connexion réseau "Pilote générique", qui + offre une architecture de plugin ouverte pour implémenter un réseau + virtuel distribuable de manière séparée et selon votre choix</para> + </listitem> + + <listitem> + <para>Réseau Host-only : correction du plantage de l'hôte avec des + noyaux inférieurs à 2.6.29 + </para> + </listitem> + + <listitem> + <para>Nouveau mode réseau <emphasis>UDP Tunnel</emphasis> : permet de + connecter facilement et de façon transparente des VMs en fonction sur + plusieurs hôtes, voir <xref linkend="networkingmodes" /></para> + </listitem> + + <listitem> + <para>Support expérimental du montage à chaud d'un disque dur SATA + disponible avec VBoxManage</para> + </listitem> + + <listitem> + <para>Hôtes Solaris : Nouveau pilote de réseau bridgé basé sur Crossbow + pour Solaris 11 build 159 et supérieure</para> + </listitem> + + + </itemizedlist> + + <para>En outre, les éléments suivants ont été corrigés et/ou ajoutés :</para> + + <itemizedlist> + + <listitem> + <para>VMM : plus de corrections de l'horloge SMP</para> + </listitem> + + <listitem> + <para>VMM : correction de plantages sporadiques du recompilateur avec + les invités SMP</para> + </listitem> + + <listitem> + <para>VMM : plusieurs petites corrections</para> + </listitem> + + <listitem> + <para>GUI : lors de la restauration d'un instantané, on demande s'il + faut prendre un instantané de l'état actuel</para> + </listitem> + + <listitem> + <para>GUI : ajout d'un menu <emphasis>Vue</emphasis></para> + </listitem> + + <listitem> + <para>GUI : ajout d'un paramètre pour les règles du mode promiscuous + pour les réseaux interne, bridgé et host-only</para> + </listitem> + + <listitem> + <para>GUI : ajout d'une glissière pour régler le volume d'exécution du + processeur, permettant de limiter la quantité de temps processeur consacrée + à l'exécution de l'invité, voir + <xref linkend="settings-processor"/></para> + </listitem> + + <listitem> + <para>GUI : La description de la VM est modifiable pendant l'exécution + d'une VM (bogue #1551)</para> + </listitem> + + <listitem> + <para>GUI : ajout des paramètres de proxy (bogue #2870)</para> + </listitem> + + <listitem> + <para>GUI : le nombre de slots SATA est configurable</para> + </listitem> + + <listitem> + <para>GUI : réduction du temps avant d'afficher la boîte de dialogue de + configuration de la VM</para> + </listitem> + + <listitem> + <para>VBoxManage : configuration plus commode des connexions aux contrôleurs + de stockage en déterminant automatiquement les paramètres du port ou + du périphérique quand un contrôleur de stockage n'a qu'un port ou qu'un + périphérique par port</para> + </listitem> + + <listitem> + <para>VBoxManage : modification de la syntaxe du groupe de commande + <emphasis>guestcontrol</emphasis>, correction de divers bogues, + suppression d'options obsolètes</para> + </listitem> + + <listitem> + <para>VBoxBalloonCtrl : nouveau service d'ajustement automatique et + dynamique de la taille du ballon pour y lancer des + VMs</para> + </listitem> + + <listitem> + <para>Paramètres : les noms de la machine et des instantanés ne peuvent + pas être un UUID valide</para> + </listitem> + + <listitem> + <para>Paramètres : meilleurs diagnostiques si un seul média est utilisé + deux fois dans la configuration d'une VM</para> + </listitem> + + <listitem> + <para>Paramètres : meilleur diagnostique des erreurs des opérations de + création/synchronisation/clonage de médias et correction de fuites de + mémoire en cas d'erreur</para> + </listitem> + + <listitem> + <para>Stockage : les lecteurs ATA/SATA peuvent être marqués comme étant + non tournants, c'est-à-dire que l'OS invité les détectera comme des + SSD s'il le supporte, ce qui peut améliorer les + performances</para> + </listitem> + + <listitem> + <para>Stockage : les images de CD/DVD virtuels seront détachées si l'invité + éjecte le média, sauf si le lecteur est marqué pour n'éjecter que de + manière temporaire</para> + </listitem> + + <listitem> + <para>Stockage : on peut changer encore l'UUID d'un média lorsqu'on + connecte un média pour la première fois, ce qui permet d'utiliser des + images dupliquées exactes jusqu'à l'UUID</para> + </listitem> + + <listitem> + <para>Stockage : correction d'une corruption possible des données dans + certaines circonstances avec VDE et les images parallèles + (bogue #9150)</para> + </listitem> + + <listitem> + <para>Stockage : correction d'une expansion inutile lors du clonage + d'images de différenciation au format VDI</para> + </listitem> + + <listitem> + <para>Stockage : correction du code de détection pour gérer des + fichiers vides pour le format VDI et VMDK</para> + </listitem> + + <listitem> + <para>Stockage : correction de l'accès aux inages CD/DVD de plus de + 4Go lors de l'utilisation du contrôleur SATA + (bogue #8592)</para> + </listitem> + + <listitem> + <para>Disquette : plusieurs bogues ont été corrigés</para> + </listitem> + + <listitem> + <para>Disquette : possibilité de démonter une disquette de l'hôte + (bogue #6651)</para> + </listitem> + + <listitem> + <para>BIOS : les structures concernant le disque sont désormais vérifiables + correctement par la somme (bogue #8739)</para> + </listitem> + + <listitem> + <para>USB : nombreuses corrections du pilote USB hôte de Windows</para> + </listitem> + + <listitem> + <para>NAT : réduction d'une footprint de mémoire</para> + </listitem> + + <listitem> + <para>Réseau : correction du problème d'offloading de segmentation quand + plusieurs VMs envoient parallèlement</para> + </listitem> + + <listitem> + <para>Réseau : contournement d'un bogue dans wireshark lorsqu'on + travaille directement sur un fichier de capture créé par VirtualBox</para> + </listitem> + + <listitem> + <para>Série : annonce des périphériques série dans les tables ACPI pour + que les invités Windows trouvent le matériel virtuel (bogue #7411)</para> + </listitem> + + <listitem> + <para>VRDP : support des connexions TLS (voir + <xref linkend="vrde-crypt"/>)</para> + </listitem> + + <listitem> + <para>VRDP : support de configurations de clients à plusieurs écrans avec + les clients RDP de MSs</para> + </listitem> + + <listitem> + <para>VRDP : correction d'une corruption rare de l'écran</para> + </listitem> + + <listitem> + <para>Support 3D : correction de la chaîne + <emphasis>GL_VERSION</emphasis> pour avoir différentes locales (bogue #8916)</para> + </listitem> + + <listitem> + <para>Service Web : correction de la gestion des timeout avec + HTTP 1.1 en vie, et le service est plus robuste quand des connexions + échouent</para> + </listitem> + + <listitem> + <para>VBoxSVC : correction d'une régression quand plusieurs clients + démarrent en décalé automatiquement et simultanément</para> + </listitem> + + <listitem> + <para>Principal : correction d'une mauvaise gestion de l'emplacement des + médias pour les médias non basés sur des fichiers (comme des + iSCSI), qui créait des conflits de valeurs d'emplacement à de multiples + endroits</para> + </listitem> + + <listitem> + <para>Bindings du client JAX-WS : correction d'une fuite des ressources</para> + </listitem> + + <listitem> + <para>Sources : correction du support USB 2.0 utilisant les packs d'extension + pour les constructions non officielles</para> + </listitem> + + <listitem> + <para>Hôtes Mac OS X : correction du mode non-VT-x sur les hôtes Lion</para> + </listitem> + + <listitem> + <para>Hôtes Windows : correction du copier-coller de la GUI et de la + fenêtre de la VM (bogue #4491)</para> + </listitem> + + <listitem> + <para>Hôtes Windows (64 bits seulement) : activation de la suppression + de tous les médias quand on supprime une VM</para> + </listitem> + + <listitem> + <para>Hôtes Windows (64 bits seulement) : activation de l'effacement en direct + des instantanés</para> + </listitem> + + <listitem> + <para>Hôtes Windows : utilisation des outils de contrôle natifs dans + l'installeur (bogue #5520)</para> + </listitem> + + <listitem> + <para>Hôtes Solaris : correction d'un problème de préemption avec + les hôtes Solaris 11 (builds + 166 et supérieur)</para> + </listitem> + + <listitem> + <para>Hôtes Solaris : meilleur contrôle de l'accès aux périphériques USB + sur les hôtes Solaris 11</para> + </listitem> + + <listitem> + <para>Suppléments invité : amélioration de l'installation du pilote sur + les invités Windows</para> + </listitem> + + <listitem> + <para>Suppléments invité : correction d'une forte utilisation du + processeur quand on exécute des programmes invités depuis l'hôte</para> + </listitem> + + <listitem> + <para>Suppléments Solaris : correction du montage automatique des + dossiers partagés (bogue #8014)</para> + </listitem> + + </itemizedlist> + + </sect1> + + <sect1> + <title>Version 4.0.14 (13-10-2011)</title> + + <para>C'est une version de maintenance. Les éléments suivants ont été corrigés et/ou + ajoutés :</para> + + <itemizedlist> + + <listitem> + <para>VMM : correction des invités 6 bits sur les processeurs AMD Fusion(bogue #8824)</para> + </listitem> + + <listitem> + <para>VMM : correction de la gestion des instructions machines + <emphasis>sysenter/sysexit</emphasis> sur les invités 64 bits et des + hôtes Intel</para> + </listitem> + + <listitem> + <para>GUI : correction de l'inclusion d'informations supplémentaires + (licence, distributeur, ...) lors de l'export OVF</para> + </listitem> + + <listitem> + <para>GUI : lors de la prise d'un instantané dans le sélecteur de VM, + ne fait pas d'instantané de la situation actuelle</para> + </listitem> + + <listitem> + <para>GUI : correction d'événements de touche Contrôle Gauche spurious + sur certains hôtes Windows (régression 4.0.6 ; bogue #5908)</para> + </listitem> + + <listitem> + <para>VBoxManage : correction de <emphasis>extpack install --replace</emphasis></para> + </listitem> + + <listitem> + <para>VRDP : correction d'une corruption d'écran rare</para> + </listitem> + + <listitem> + <para>E1000 : correction d'accrocs rares sur l'invité Windows 7, soit + au démarrage soit lors de la reconfiguration du réseau, dans des + configurations exotiques + (bogue #6223)</para> + </listitem> + + <listitem> + <para>Support souris : correction d'une erreur de position off-by-one du + pointeur concernant les invités Windows (bogues #7566, #9321)</para> + </listitem> + + <listitem> + <para>NAT : modification de l'établissement des connexions TCP en + fonction des exigences de l'API Winsock API (hôtes Windows seulement ; + bogue #8919)</para> + </listitem> + + <listitem> + <para>VHD : correction de rebonds de blocs croisés en lecture + (bogue #8532)</para> + </listitem> + + <listitem> + <para>VMDK : correction de la barre de progression lors de la création + d'images VKDK divisées</para> + </listitem> + + <listitem> + <para>Disquette : correction de la détection de la taille des médias + pour les médias physiques (hôtes Windows seulement)</para> + </listitem> + <listitem> + <para>VBoxSVC : la comparaison du chemin est indépendante de l'OS quand + les images sont enregistrées (bogue #9303)</para> + </listitem> + + <listitem> + <para>Principal : renvoi des bons avertissements sur les paramètres de + fixation du port RDP par défaut dans la GUI si l'affichage distant a été + activé lors de l'exécution (bogue #9368)</para> + </listitem> + + <listitem> + <para>Principal : correction de l'initialisation de la VM si un + dossier partagé n'existe pas (bogue #7941)</para> + </listitem> + + <listitem> + <para>Principal : correction de la prise d'impressions d'écran (comme + la fenêtre de prévisualisation) pour les VMs transparentes si les + suppléments invité sont actifs</para> + </listitem> + + <listitem> + <para>Principal : correction de deadlocks possibles entre la numérotation + des disques durs et le reparamétrage des disques immuables + (bogue #9549)</para> + </listitem> + + <listitem> + <para>OVA : correction de l'importation de fichiers OVA renommés (bogue #9033)</para> + </listitem> + + <listitem> + <para>Virtio-net : correction d'un problème avec les paquets UDP qui + dépassaient le MTU (bogue #9370)</para> + </listitem> + + <listitem> + <para>Hôtes Solaris : correction du démarrage de certains invités EFI + à cause de fichiers ROM d'EFI manquants + (bogue #9535)</para> + </listitem> + + <listitem> + <para>Hôtes Mac OS X : correction de problèmes d'installation lorsqu'on + installe en tant qu'administrateur + (bogue #1578)</para> + </listitem> + + <listitem> + <para>Suppléments Windows : correction de fichiers tronqués sur un + dossier partagé avec certaines applications (bogues #9276, #9315)</para> + </listitem> + + <listitem> + <para>Suppléments Linux : suppression d'un mauvais message d'erreur et + on permet à un dossier partagé de se monter à plusieurs endroits + (bogue #9627) + </para> + </listitem> + + <listitem> + <para>Suppléments Linux : ajout du support du serveur X.Org 1.11 (bogue #9519) + </para> + </listitem> + + <listitem> + <para>Suppléments Linux : correction de <emphasis>llseek</emphasis> pour + les noyaux Linux 2.6.37 et supérieur</para> + </listitem> + + <listitem> + <para>Suppléments Linux : bon démarrage de VBoxService sur openSUSE 12.1 + (bogue #6229)</para> + </listitem> + + <listitem> + <para>Suppléments Linux : terminaison propre de l'installation même si + la compilation du module DRM échoue (ce qui n'est pas fatal)</para> + </listitem> + + </itemizedlist> + </sect1> + + <sect1> + <title>Version 4.0.12 (15-07-2011)</title> + + <para>C'est une version de maintenance. Les éléments suivants ont été corrigés et/ou + ajoutés :</para> + + <itemizedlist> + + <listitem> + <para>Hôtes Mac OS X : correction pour Lion</para> + </listitem> + + <listitem> + <para>Hôtes Solaris : correction d'un problème de préemption avec les + hôtes Solaris 11 (builds 166 et supérieur)</para> + </listitem> + + <listitem> + <para>VBoxManage : configuration plus pratique des connexions des + contrôleurs de stockage en déterminant automatiquement le paramètre du + port et du périphérique quand un contrôleur de stockage n'a qu'un port + ou qu'un périphérique par port + (bogue #9188)</para> + </listitem> + + <listitem> + <para>Stockage : correction de 'une corruption possible des données + dans certaines circonstances avec les images VHD et Parallels (bogue #9150)</para> + </listitem> + + <listitem> + <para>Stockage : correction de l'accès aux images de CD/DVD de plus de + 4Go en utilisant un contrôleur SATA (bogue #8592)</para> + </listitem> + + <listitem> + <para>Disquette : possiblité de démonter un disque amovible de l'hôte + (bogue #6651)</para> + </listitem> + + <listitem> + <para>Réseau : correction du problème d'offloading de segmentation quand + plusieurs VMs sransmettaient en même temps</para> + </listitem> + + <listitem> + <para>Support 3D : correction de la chaîne <emphasis>GL_VERSION</emphasis> + pour des locales différentes (bogue #8916)</para> + </listitem> + + <listitem> + <para>Sources : correction du support USB 2.0 en utilisant les packs + d'extension pour les constructions non officielles</para> + </listitem> + + <listitem> + <para>Suppléments Solaris : correction du montage automatique des + dossiers partagés (bogue #8014)</para> + </listitem> + + </itemizedlist> + </sect1> + <sect1> + <title>Version 4.0.10 (22-06-2011)</title> + + <para>C'est une version de maintenance. Les éléments suivants ont été corrigés et/ou + ajoutés :</para> + + <itemizedlist> + + <listitem> + <para>GUI : correction de la disparition d'objets de paramètres sur les + hôtes KDE (bogue #6809)</para> + </listitem> + + <listitem> + <para>Stockage : correction d'accrocs dans de rares circonstances avec + des images VMDK plates</para> + </listitem> + + <listitem> + <para>Stockage : une VM sauvegardée ne pouvait pas être restaurée dans + certaines circonstances après la mise à jour du noyau de l'hôte + (bogue #8983)</para> + </listitem> + + <listitem> + <para>Stockage : refus de créer un média ayant une variante invalide + (par exemple, Split2G avec VDI ; bogue #7227)</para> + </listitem> + + <listitem> + <para>iSCSI : mise en pause de la VM si une requête dure trop</para> + </listitem> + + <listitem> + <para>Instantanés : aucune connexion de disque dur ne doit être rattachée + à une autre VM en mode normal lors de la création d'un instantané</para> + </listitem> + + <listitem> + <para>USB : correction d'accrocs occasionels de la VM avec des + invités SMP (bogue #4580)</para> + </listitem> + + <listitem> + <para>USB : détection correcte de périphérique sur les invités RHEL/OEL/CentOS 5 + (correction partielle du bogue #8978)</para> + </listitem> + + <listitem> + <para>ACPI : on oblige l'horloge ACPI à renvoyer des valeurs monotones + pour améliorer le comportement avec les invités Linux SMP (bogue #8511 + et autres)</para> + </listitem> + + <listitem> + <para>VRDP : correction de corruption d'écran dans de rares circonstances + (bogue #8977)</para> + </listitem> + + <listitem> + <para>rdesktop-vrdp : passage à la version 1.7.0</para> + </listitem> + + <listitem> + <para>OVF : dans de rares circonstances, certaines données en fin + de fichier VMDK ne s'écrivait pas à l'export</para> + </listitem> + + <listitem> + <para>Hôtes Mac OS X : correction Lion</para> + </listitem> + + <listitem> + <para>Hôtes Mac OS X : corrections GNOME 3</para> + </listitem> + + <listitem> + <para>Hôtes Linux : correction de la détection de VT-x sur les hôtes + Linux 3.0 (bogue #9071)</para> + </listitem> + + <listitem> + <para>Hôtes Linux : correction des bindings Python 2.7 dans les + binaires Linux universels</para> + </listitem> + + <listitem> + <para>Hôtes Windows : correction d'une fuite de thread and de gestion + du processus</para> + </listitem> + + <listitem> + <para>Suppléments Windows : correction d'un bogue à la détermination + de la version étendue des supplçments invité (régression 4.0.8 ; bogue #8948)</para> + </listitem> + + <listitem> + <para>Suppléments Solaris : correction de l'installation des + invités Solaris 10u9 64 bits (régression 4.0.8)</para> + </listitem> + + <listitem> + <para>Suppléments Linux : correction de compilation RHEL6.1/OL6.1</para> + </listitem> + + <listitem> + <para>Suppléments Linux : correction d'une perte de mémoire pendant + <computeroutput>VBoxManage + guestcontrol execute</computeroutput> (bogue #9068)</para> + </listitem> + + </itemizedlist> + </sect1> + + <sect1> + <title>Version 4.0.8 (16-05-2011)</title> + + <para>C'est une version de maintenance. Les éléments suivants ont été corrigés et/ou + ajoutés :</para> + + <itemizedlist> + + <listitem> + <para>Hôtes Mac OS X : correction d'une incompatibilité avec les versions + récentes de Mac OS X en mode 64 bits (bogue #8474)</para> + </listitem> + + <listitem> + <para>Hôtes Mac OS X : correction d'une incompatibilité avec des hôtes + ayant plus de 16 coeurs (bogue #8389)</para> + </listitem> + + <listitem> + <para>Hôtes Mac OS X : correction de corruptions d'affichage sur un + deuxième moniteur en mode 64 bits (bogue #7606)</para> + </listitem> + + <listitem> + <para>GUI : rétablissement de la fonctionnalité pour définir un clé + d'hôte vide pour empêcher toute combinaison de clé de l'hôte (régression + 4.0.6 ; bogue #8793)</para> + </listitem> + + <listitem> + <para>GUI : messages d'erreur plus parlants pour des problèmes de droits + du proxy USB (poincipalement les hôtes Linux; ; bogue #8823)</para> + </listitem> + + <listitem> + <para>VBoxManage : ajout de la sous-commande <computeroutput>controlvm screenshotpng</computeroutput> + pour enregistrer l'impression d'écran d'une VM en fonction au format + PNG</para> + </listitem> + + <listitem> + <para>VBoxHeadless : correction d'un plantage potentiel lors de + l'extinction (hôtes Windows seulement)</para> + </listitem> + + <listitem> + <para>NAT : les services intégrés utilisent les bonnes adresses Ethernet + dans l'en-tête Ethernet et dans les requêtes ARP</para> + </listitem> + + <listitem> + <para>Réseau Host-only : correction du comptage de référence de l'adaptateur</para> + </listitem> + + <listitem> + <para>E1000 : correction de rares plantages de l'invité avec des + invités Linux SMP (bogue #8755)</para> + </listitem> + + <listitem> + <para>SATA : correction d'une corruption du disque invité dans de rares + circonstances (pertinent seulement pour les invités ayant plus de 2Go + de RAM ; bogue #8826)</para> + </listitem> + + <listitem> + <para>Stockage : correction d'une corruption de données après la + prise d'un instantané avec l'E/S symehrnmisée activée (bogue #8498)</para> + </listitem> + + <listitem> + <para>Disquette : plusieurs améliorations</para> + </listitem> + + <listitem> + <para>HPET : une autre correction de sauts temporels (bogue #8707)</para> + </listitem> + + <listitem> + <para>USB : utilisation des bons droits lors de la création de /dev/vboxusb + (hôtes Linux seulement)</para> + </listitem> + + <listitem> + <para>USB : suppression du présupposé que les descripteurs de chaînes + se terminent par null (hôtes Windows seulement)</para> + </listitem> + + <listitem> + <para>Support 3D : correction d'un plantage potentiel lors du redimensionnement + de la fenêtre de l'invité</para> + </listitem> + + <listitem> + <para>Support 3D : correction de l'affichage de GNOME 3 sous Ubuntu 11.04 + et Fedora 15</para> + </listitem> + + <listitem> + <para>Instantanés : correction d'un autre bogue qui pourrait perdre des + entrées dans le registre des médfs quand on restaure un instantané + (bogue #8363)</para> + </listitem> + + <listitem> + <para>Dossiers partagés : n'arrête pas le montage des autres dossiers + valides si un dossier de l'hôte est inaccessible (régression 4.0.6)</para> + </listitem> + + <listitem> + <para>Suppléments Linux : vérification si gcc et make sont installés + avant de construire les modules du noyau (bogue #8795)</para> + </listitem> + + <listitem> + <para>Suppléments Solaris : ajout du support du serveur X.Org 1.10</para> + </listitem> + + <listitem> + <para>Suppléments invité : correction d'une notification de mise à jour + des suppléments invité inappropriée lorsqu'on utilise des suffixes de + version spécifiques au distributeur (bogue #8844)</para> + </listitem> + + </itemizedlist> + </sect1> + + <sect1> + <title>Version 4.0.6 (21-04-2011)</title> + + <para>C'est une version de maintenance. Les éléments suivants ont été corrigés et/ou + ajoutés :</para> + + <itemizedlist> + + <listitem> + <para>VMM : correction d'une mauvaise gestion des pages mises en ballon + lors de la restauration d'une VMM d'un état sauvegardé</para> + </listitem> + + <listitem> + <para>VMM : ne plante pas sur les hôtes de plus de 64 coeurs / hyperthreads ; + implémentation du support d'hôtes jusqu'à 256 coeurs (sauf les hôtes + Windows ; bogue #8489)</para> + </listitem> + + <listitem> + <para>VMM : correction d'une guru meditation des invités PAE fonctionnant + sur les hôtes sans PAE (bogue #8006)</para> + </listitem> + + <listitem> + <para>VMM : correction d'une lenteur des invités Linux en mode brut + et sur les neyaux invités récents (bogue #8726)</para> + </listitem> + + <listitem> + <para>GUI : support des combinaisons de touches hôtes (bogue #979)</para> + </listitem> + + <listitem> + <para>GUI : correction de la barre de progression (bogue #7814)</para> + </listitem> + + <listitem> + <para>GUI : affichage du pointeur de souris quand la VM est en pause si + l'émulation souris de la tablette USB est utilisée (bogue #6799)</para> + </listitem> + + <listitem> + <para>GUI : adaptation du dossier d'instantané au renommage d'une VM + (bogue #8469)</para> + </listitem> + + <listitem> + <para>GUI : mémoire permanente des derniers dossiers des sélecteurs de + disque/DVD/disquette</para> + </listitem> + + <listitem> + <para>GUI : ne permet jamais de démarrer une VM ayant l'USB-2.0 activé + si le bon pack d'extension manque (bogue #8182)</para> + </listitem> + + <listitem> + <para>GUI : correction d'un accroc/plantage dans la boîte de dialogue + d'ouverture d fichiers dans un dossier inexistant + (bogue #8673)</para> + </listitem> + + <listitem> + <para>Instantanés : correction d'un bogue pouvant perdre des entrées + dans le registre des médias lors de la restauration d'un instantané + (bogue #8363)</para> + </listitem> + + <listitem> + <para>Instantanés : possibilité pour les instantanés de se stocker dans + le répertoire de la VM</para> + </listitem> + + <listitem> + <para>Support 3D : correction d'un plantage si une VM a dû se terminer + brutalement (hôtes Windows seulement ; bogue #7133)</para> + </listitem> + + <listitem> + <para>Stockage : correction d'une fuite de mémoire (régression 4.0 ; bogue #7966)</para> + </listitem> + + <listitem> + <para>Stockage : correction de l'accès aux cibles iSCSI par le réseau + interne</para> + </listitem> + + <listitem> + <para>Stockage : correction de la lecture de disques ayant plus d'un + instantané pour les images VHD et VMDK quand le cache de l'hôte est + désactivé (bogue #8408)</para> + </listitem> + + <listitem> + <para>Stockage : correction d'un accroc possible quand la VM se + suspend après une erreur E/S</para> + </listitem> + + <listitem> + <para>Stockage : correction d'un accroc possible quand la VM se suspend + / réinitialise (bogue #8276, #8294)</para> + </listitem> + + <listitem> + <para>Stockage : création automatique d'une image de diférenciation quand + on connecte une image VMDK streamOptimized à une VM</para> + </listitem> + + <listitem> + <para>ATA/SATA : correction du montage automatique des CD/DVDs virtuels + avec des distributions Linux récentes en signalant correctement le + profil courant comme 'none' s'il n'y a pas de média</para> + </listitem> + + <listitem> + <para>Buslogic : correction d'émulation de certains invités (comme jRockit VE)</para> + </listitem> + + <listitem> + <para>Réseau Host-Only : correction d'un échec de la création d'interface + sur les hôtes Windows (régression 4.0.4 ; bogue #8362)</para> + </listitem> + + <listitem> + <para>réseau Host-Only & Bridged & Interne : correction du + traitement de requêtes en mode promiscuous par les VMs, changeant par + défaut le comportement</para> + </listitem> + + <listitem> + <para>Réseau Host-Only : correction d'un problème de connectivité après + le réveil de l'hôte d'une veille prolongée (bogue #3625)</para> + </listitem> + + <listitem> + <para>Réseau Bridgé : support du lien (bonding) d'interface sur les + hôtes Mac OS X (bogue #8731)</para> + </listitem> + + <listitem> + <para>NAT : correction du traitement des annonces ARP pour les invités + ayant des IPs affectées de façon statiques (bogue #8609)</para> + </listitem> + + <listitem> + <para>VRDP : rétro-compatibilité avec la bibliothèque d'authentification + externe VRDPAuth (bogue #8063)</para> + </listitem> + + <listitem> + <para>Dossiers partagés : n'échoue pas le démarrage d'une VM si un + chemin n'est pas absolu, par exemple lors de l'importation d'une OVF + d'un hôte différent (bogue #7941)</para> + </listitem> + + <listitem> + <para>Son : correction d'un plantage 4ans certaines conditions (bogue #8527)</para> + </listitem> + + <listitem> + <para>USB : correction d'un plantage au branchement de certains périphériques + USB (bogue #8699)</para> + </listitem> + + <listitem> + <para>HPET : correction de sauts temporels à la lecture du compteur (bogue #8707)</para> + </listitem> + + <listitem> + <para>OVF/OVA : ajustement automatique des chemins des disques si le nom + de la VM change lors de l'importation</para> + </listitem> + + <listitem> + <para>OVF/OVA : correction de l'exportation sur des médias lents</para> + </listitem> + + <listitem> + <para>OVF/OVA : réparation automatique d'applicatifs incohérents avec + plusieurs disques (bogue #8253)</para> + </listitem> + + <listitem> + <para>rdesktop-vrdp : correction d'une déclaration décalée dans + certaines conditions + (bogue #8593)</para> + </listitem> + + <listitem> + <para>Hôtes Windows : correction d'accrocs occasionnels à l'extinction de + la VM du fait que, parfois, COM n'était pas bien désinitialisé</para> + </listitem> + + <listitem> + <para>Hôtes Mac OS X : on empêche la souris de quitter la fenêtre de la + VM lorsqu'elle est + capturée</para> + </listitem> + + <listitem> + <para>Hôtes Mac OS X : conservation du ratio d'ffichage lors du + redimensionnement en mode échelonné (retour à l'ancien comportement + (en partie le bogue #7822)</para> + </listitem> + + <listitem> + <para>Hôtes X11 : correction de du support de la touche Yen (bogue #8438) + </para> + </listitem> + + <listitem> + <para>Hôtes X11 : correction d'une régression où Hôte+F1 faisait + apparaître l'aide au lieu d'envoyer Ctrl+Alt+F1</para> + </listitem> + + <listitem> + <para>Hôtes Linux / Suppléments Linux : compression des symboles IPRT + pour permettre d'installer VirtualBox dans une VM où les suppléments + invité sont actifs (bogue #5686)</para> + </listitem> + + <listitem> + <para>Hôtes Linux / invités Linux : contournement d'un bogue de GLIBC + inférieure à la version 1.11, provoquant des plantages dans certaines + conditions (problème signé/non signé avec memchr sur des machines 64 bits)</para> + </listitem> + + <listitem> + <para>Hôtes Solaris : correction d'un deadlock dans les sémaphores + d'événements qui pourrait provoquer des processus de VM non tuables</para> + </listitem> + + <listitem> + <para>Suppléments Windows : correction de la gestion du paramètre + Sysprep</para> + </listitem> + + <listitem> + <para>Suppléments Windows : correction de redémarrages spontanés de l'invité + dans certaines circonstances (régression 4.0.2 ; bogues #8406, #8429)</para> + </listitem> + + <listitem> + <para>Suppléments Windows : ajout du support de l'identification automatique + dans les stations de travail verrouillées sur des versions de Windows + primitives</para> + </listitem> + + <listitem> + <para>Suppléments Windows : correction d'une erreur de vérification de + bogues du pilote en gérant des messages PnP (régression 4.0 ; bogue #8367)</para> + </listitem> + + <listitem> + <para>Suppléments Windows : correction d'une fuite de mémoire dans + VBoxVideo</para> + </listitem> + + <listitem> + <para>Suppléments X11 : ajout du support du serveur X.Org 1.10 final</para> + </listitem> + + <listitem> + <para>Suppléments Linux : corrections noyau Linux 2.6.39-rc1</para> + </listitem> + + <listitem> + <para>Suppléments Linux : amélioration du support de l'exécution automatique + (bogue #5509)</para> + </listitem> + + <listitem> + <para>Suppléments Linux : correction du support de la souris sur les + invités SUSE 11 SP 1 (bogue #7946)</para> + </listitem> + + <listitem> + <para>Suppléments Solaris : ajout du support du serveur X.Org 1.9</para> + </listitem> + + <listitem> + <para>Suppléments invité : plusieurs corrections de bogues dans l'exécution + du contrôle invité</para> + </listitem> + + <listitem> + <para>Service Web : utilisation de son propre fichier journal avec la + rotation des logs pour limiter sa taille</para> + </listitem> + + </itemizedlist> + + </sect1> + + <sect1> + <title>Version 4.0.4 (17-02-2011)</title> + + <para>C'est une version de maintenance. Les éléments suivants ont été corrigés et/ou + ajoutés :</para> + + <itemizedlist> + + <listitem> + <para>VMM : correction de plantages du recompilateur sous certaines + conditions + (bogues #8255, #8319 et autres)</para> + </listitem> + + <listitem> + <para>VMM : correction de l'exécution d'invités 64 bits sur les hôtes + 32 bits où la pagination nestées est activée sur les processeurs AMD + (régression 4.0 ; bogue #7938)</para> + </listitem> + + <listitem> + <para>VMM : correction de problèmes / accrocs de temps pour certains + invités qui utilisent l'horloge à intervalles programmables (bogues #8033 et #8062)</para> + </listitem> + + <listitem> + <para>VMM : correction des grandes pages et de la supervision pour des + instantanés de la situation actuelle + (bogues #7910, #8059, #8125)</para> + </listitem> + + <listitem> + <para>GUI : correction d'un message d'erreur lorsqu'on essaie de dépasser + le nombre maximum d'interfaces réseaux de l'hôte</para> + </listitem> + + <listitem> + <para>GUI : correction de l'enregistrement des modifications des + métadonnées d'un instantané existant + (bogue #8145)</para> + </listitem> + + <listitem> + <para>GUI : correction d'un plantage rare sur les hôtes X11 (bogue #8131)</para> + </listitem> + + <listitem> + <para>GUI : lors de la sélection d'un dossier partagé, démarrage de la + boîte de dialogue de fichiers dans le dossier personnel des utilisateurs + (bogue #8017)</para> + </listitem> + + <listitem> + <para>ExtPack : renforcement des bons droits qu'il faudrait restreindre + par l'umask quand on crée des répertoires (hôtes non Windows seulement ; + bogue #7878)</para> + </listitem> + + <listitem> + <para>VBoxSDL : correction d'un plantage quand on démarre en spécifiant + l'UUID de la VM (régression 4.0 ; bogue #8342)</para> + </listitem> + + <listitem> + <para>VBoxManage : possibilité d'horodater même si la VM est déjà en + pause</para> + </listitem> + + <listitem> + <para>VBoxManage : correction de <emphasis>modifyvm --synthcpu</emphasis> + (bogue #6577)</para> + </listitem> + + <listitem> + <para>VBoxManage : correction d'un accroc quand on fait + <emphasis>guestcontrol execute + --wait-for exit</emphasis> et qu'on affiche l'état du processus en + quittant + (bogue #8235)</para> + </listitem> + + <listitem> + <para>VBoxManage : diminution de la charge du processeur pendant + <emphasis>guestcontrol execute + --wait-for exit/stdout</emphasis> en attendant que le processus invité + se termine (bogue #7872)</para> + </listitem> + + <listitem> + <para>VBoxManage : correction de <emphasis>list hostdvds/hostfloppies</emphasis></para> + </listitem> + + <listitem> + <para>VBoxManage: correction de <emphasis>storageattach</emphasis> pour + les lecteurs DVD de l'hôte et ses lecteurs amovibles</para> + </listitem> + + <listitem> + <para>Mesures : introduction de la mesure de base <emphasis>RAM/VMM</emphasis></para> + </listitem> + + <listitem> + <para>Principal : amélioration de la vérification de propreté lorsqu'on + prend une impression écran de la VM + (bogue #7966)</para> + </listitem> + + <listitem> + <para>Principal : correction d'un plantage dans de rares circonstances + si une VM n'a pas pu démarrer</para> + </listitem> + + <listitem> + <para>Principal : correction de la connexion d'une image de disque + immuable (bogue #8105)</para> + </listitem> + + <listitem> + <para>Principal : correction d'un plantage à l'extinction de la VM (bogue #6443)</para> + </listitem> + + <listitem> + <para>Principal : correction d'une mauvaise gestion des connexions par + références croisàes des médias (bogue #8129)</para> + </listitem> + + <listitem> + <para>Paramètres : correction du troncage de grandes valeurs d'entiers + (régression 4.0)</para> + </listitem> + + <listitem> + <para>Paramètres : stockage correct du type de chipset ICH9 (bogue #8123)</para> + </listitem> + + <listitem> + <para>Réseau Host-Only & Bridgé : correction d'un problème de démarrage + du serveur DHCP de VBox sur les hôtes Windows (régression 4.0 ; bogue #7905)</para> + </listitem> + + <listitem> + <para>Réseau Host-Only : re-création des interfaces vboxnetX après le + rechargement du module vboxnetadp.ko sur Linux et Darwin (bogues #5934, #6341)</para> + </listitem> + + <listitem> + <para>NAT : correction d'une fuite de mbuf dans de rares circonstances + (bogue #7459)</para> + </listitem> + + <listitem> + <para>ACPI : impossibilité pour l'invité de rentrer par défaut en S4 et + pas d'indication sur S1 et S4 dans les tables ACPI s'ils sont désactivés + (bogue #8008)</para> + </listitem> + + <listitem> + <para>Carte graphique : on a fait en sorte que le travail des écrans + désactivé se réactive correctement pour éviter des problèmes quand les + invités X11 passent en mode économiseur d'écran + (bogue #8122)</para> + </listitem> + + <listitem> + <para>Stockage : correction d'erreurs d'écriture d'instantanés si le + cache de l'hôte est désactivé (régression 4.0 ; + bogue #8221)</para> + </listitem> + + <listitem> + <para>ATA/SATA : correction de la gestion du redémarrage après une + suspension/réveil d'ACPI</para> + </listitem> + + <listitem> + <para>BusLogic : correction d'accrocs avec les VMs SMP</para> + </listitem> + + <listitem> + <para>Série : nouvel essai pour empêcher la perte de caractères pendant + la transmission (bogue #1548)</para> + </listitem> + + <listitem> + <para>Hôtes/invités Linux : correction de compilation sur Linux 2.6.38-rc1</para> + </listitem> + + <listitem> + <para>Hôtes Mac OS X : correction d'un plantage de VBoxSVC lors du + listage des interfaces de l'hôte sans passerelle par défaut (hôte 64 bits + seulement, bogue #7955)</para> + </listitem> + + <listitem> + <para>Hôtes Solaris/Darwin : correction d'un pic d'exécutiondu processeur + sur la VM</para> + </listitem> + + <listitem> + <para>Invités X.Org : correction d'un plantage au redémarrage du servur + X (bogue #8231)</para> + </listitem> + + <listitem> + <para>Invités X.Org : support du serveur X.Org 1.10 pré-publication et + d'Ubuntu 11.04 Alpha</para> + </listitem> + + <listitem> + <para>Invités X.Org : Ajout de l'émulation d'EDID dans le pilote graphique + pour empêcher le démon des paramètres de GNOME de modifier le mode lors + de l'identification</para> + </listitem> + + <listitem> + <para>Invités X.Org : aucun envoi des modes graphiques à un hôte, les + versions précédentes de VirtualBox ne peuvent pas le gérer</para> + </listitem> + + <listitem> + <para>Suppléments Linux : correction d'une fuite de mémoire dans le code + des dossiers partagés si un lien vers l'hôte n'est pas lisible (bogue #8185)</para> + </listitem> + + <listitem> + <para>Suppléments Windows : correction de la gestion de Security + Attention Sequence (SAS) avec VBoxGINA</para> + </listitem> + + </itemizedlist> + + </sect1> + + <sect1> + <title>Version 4.0.2 (18-01-2011)</title> + + <para>C'est une version de maintenance. Les éléments suivants ont été corrigés et/ou + ajoutés :</para> + + <itemizedlist> + + <listitem> + <para>GUI : ne plante pas si un lecteur amovible de l'hôte auquel se + réfère les paramètres de la VM a disparu</para> + </listitem> + + <listitem> + <para>GUI : correction d'un plantage lorsqu'on utilise le thème + Oxygen de KDE4 et qu'on clique sur le bouton des paramètres (régression + 4.0 ; bogue #7875)</para> + </listitem> + + <listitem> + <para>GUI : avertissement correct si le dossier de la machine ne peut + pas être créé (bogue #8031)</para> + </listitem> + + <listitem> + <para>GUI : plusieurs corrections pour les invités X11 à plusieurs + écrans</para> + </listitem> + + <listitem> + <para>PackExt : l'application d'aide de l'installeur n'est plus réglée + avec l'UID root (.deb de Linux/paquets .rpm seulement)</para> + </listitem> + + <listitem> + <para>PackExt : amélioration de l'expérience utilisateur sur Vista / Windows 7 + lors de l'installation d'un pack d'extension</para> + </listitem> + + <listitem> + <para>PackExt : correction d'un problème avec les caractères non ascii + dans des noms de chemins au moment de l'installation d'un pack + d'extension (bogue #9717)</para> + </listitem> + + <listitem> + <para>PackExt : correction de problèmes SELinux sur les hôtes Linux 32 + bits</para> + </listitem> + + <listitem> + <para>VBoxManage : la créatsion et la suppression de l'interface Host-only + est maintenant supportée pour toutes les plateformes, sauf Solaris (bogue #7741)</para> + </listitem> + + <listitem> + <para>VBoxManage : correction d'une erreur de segmentation lors de la + suppression d'une interface host-only inexistante</para> + </listitem> + + <listitem> + <para>Stockage : correction de plantages possibles avec les images + VMDK/VHD avec des instantanés et des E/S asynchrones (régression 4.0)</para> + </listitem> + + <listitem> + <para>Stockage : n'éjecte pas le média physique ss un lecteur DVD/CDROM/disquette + est débranché de la VM (bogue #5825)</para> + </listitem> + + <listitem> + <para>Stockage : davantage de robustesse quand un invité erroné envoie + des commandes ATA à un périphérique ATAPI (bogue #6597)</para> + </listitem> + + <listitem> + <para>Parallèle : correction de l'effacement de l'image pendant la + suspension, la mise en pause ou l'extinction (régression 4.0)</para> + </listitem> + + <listitem> + <para>Réseau bridgé : correction d'un kernel panic de l'hôte lorsru'on + bridge vers des périphériques sans queue TX (régression 4.0 ; hôtes + Linux seulement ; bogue #7908)</para> + </listitem> + + <listitem> + <para>NAT : l'enregistrement des règles de redirection des ports respecte + les paramètres du protocole (bogue #8094)</para> + </listitem> + + <listitem> + <para>E1000 : correction de problèmes de démarrage PXE avec WDS (bogue #6330)</para> + </listitem> + + <listitem> + <para>Virtio-net : correction du problème de performances TX dans certains + invités Linux</para> + </listitem> + + <listitem> + <para>ICH9 : correction d'un plantage de VM (virtualisation logicielle + seulement ; bogue #7885)</para> + </listitem> + + <listitem> + <para>VGA : correction d'un problème d'écran VESA (régression 4.0 ; bogue #7986)</para> + </listitem> + + <listitem> + <para>Dossiers partagés : correction de l'analyse des paramètres lors + de la création de liens symboliques, correction d'un problème de bits en + 32/64 bits (bogue #818)</para> + </listitem> + + <listitem> + <para>Principal : correction d'un plantage dans de rares circonstances + du fait d'une chaîne de journalisation invalide (régression 4.0)</para> + </listitem> + + <listitem> + <para>Principal : amélioration de la diffusion des informations d'erreur + pour celles empêchant le démarrage d'une VM</para> + </listitem> + + <listitem> + <para>Principal : correction de problèmes avec les instantanés et les + caractères non ASCII dans les chemins de la + machine (bogue #8024)</para> + </listitem> + + <listitem> + <para>Service Web : écoute désormais par défaut sur localhost comme + documenté (bogue #6067)</para> + </listitem> + + <listitem> + <para>Paramètres : n'échoue pas pour charger les paramètres d'une machine + si on ne peut pas trouver de connexion à un disque amovible (lecteur + hôte ou image) ; avec la 4.0, cela arrivait le plus souvent quand les + machines étaient déplacés d'un hôte à l'autre</para> + </listitem> + + <listitem> + <para>Paramètres : correction d'un problème où le changement de nom ou + de description des instantanés n'était pas enregistré dans le XML de + la machine</para> + </listitem> + + <listitem> + <para>OVF/OVA : correction de l'importation de fichiers créés par + d'autres outils OVF (bogue + #7983)</para> + </listitem> + + <listitem> + <para>rdesktop-vrdp : correction d'un plantage lors de l'énumeéation des + périphériques USB (bogue + #7981)</para> + </listitem> + + <listitem> + <para>Hôtes Linux : correction d'un plantage pendant l'énumération des + périphériques USB</para> + </listitem> + + <listitem> + <para>Hôtes Linux : tentative de compliquer un peu l'affectation de + mémoire (bogue #8035 ; + régression 4.0)</para> + </listitem> + + <listitem> + <para>Suppléments invité : correction de l'analyse des paramètres du + contrôle de l'invité dans + VBoxService (régression 4.0 ; bogue #8010)</para> + </listitem> + + <listitem> + <para>Suppléments invité Windows : l'identification automatique sur + Windows Vista/Windows 7 supporte maintenant le déverrouillage avant les + stations de travail verrouillées + </para> + </listitem> + + </itemizedlist> + + </sect1> + + <sect1> + <title>Version 4.0.0 (22-12-2010)</title> + + <para>Cette version est une mise à jour majeure. Les nouvelles fonctions + suivantes ont été ajoutées :</para> + + <itemizedlist> + + <listitem> + <para>Réorganisation de VirtualBox dans un paquet de base et des + packs d'Extension ; voir <xref linkend="intro-installing" /></para> + </listitem> + + <listitem> + <para>Nouvelle présentation des paramètres et des disques pour une portabilityé + des VMs ; voir <xref linkend="vboxconfigdata" /></para> + </listitem> + + <listitem> + <para>Revue majeure de la GUI (qui s'appelle maintenant le "gestionnaire + VirtualBox") : + <itemizedlist> + <listitem> + <para>Nouveau design de l'interface utilisateur avec une fenêtre de + visualisation de l'invité (et des impressions d'écran)</para> + </listitem> + + <listitem> + <para>Nouveau mode d'affichage "échelonné" avec l'affichage échelonné + de l'invité ; voir <xref linkend="intro-resize-window" /></para> + </listitem> + + <listitem> + <para>Support de la création et du démarrage des lanceurs de bureau + <computeroutput>.vbox</computeroutput> (bogue #1889)</para> + </listitem> + + <listitem> + <para>On peut maintenant trier la liste des VMs</para> + </listitem> + + <listitem> + <para>Les machines peuvent maintenant être facilement effacées + sans laisser de traces, même d'instantanés et d'états sauvegardés, + voire d'images de disque attachées (bogue #5511 ; de plus, + <computeroutput>VBoxManage unregistervm --delete</computeroutput> + peut maintenant faire la même chose)</para> + </listitem> + + <listitem> + <para>Création d'un lanceur de bureau intégré pour démarrer des VMs + par un double clic (bogue #2322)</para> + </listitem> + + </itemizedlist> + </para> + </listitem> + + <listitem> + <para>VMM : support d'une RAM invité de plus d'1.5/2 Go sur les hôtes + 32 bits</para> + </listitem> + + <listitem> + <para>Nouveau matériel virtuel : + <itemizedlist> + <listitem> + <para>Chipset Intel ICH9 avec trois bus PCI, PCI Express et Message Signaled Interrupts (MSI) ; + voir <xref linkend="settings-motherboard" /></para> + </listitem> + + <listitem> + <para>Intel HD Audio, pour un meilleur support des systèmes + d'exploitation modernes (comme Windows 64 bits ; bogue #2785)</para> + </listitem> + </itemizedlist> + </para> + </listitem> + + <listitem> + <para>Améliorations du support OVF (voir <xref linkend="ovf" />) : + <itemizedlist> + <listitem> + <para>Support du format Open Virtualization Archive (OVA)</para> + </listitem> + + <listitem> + <para>Améliorations significative des performances d'exportation + et d'importation</para> + </listitem> + + <listitem> + <para>La création du fichier manifest lors de l'exportation est + maintenant facultative</para> + </listitem> + + <listitem> + <para>L'importation des disques peut prendre d'autres formats que + VMDK</para> + </listitem> + + </itemizedlist> + </para> + </listitem> + + <listitem> + <para>Contrôle des ressources : ajout du support de la limitation du temps + processeur et de la bande passante E/S d'une VM ; voir + <xref linkend="storage-bandwidth-limit" /></para> + </listitem> + + <listitem> + <para>Stockage : support d'E/S asynchrone pour les images iSCSI, VMDK, + VHD et Parallels</para> + </listitem> + + <listitem> + <para>Stockage : support du redimensionnement des images VDI et VHD ; + voir <xref linkend="vboxmanage-modifyvdi" /></para> + </listitem> + + <listitem> + <para>Suppléments invité : support de plusieurs écrans virtuels sur les + invités Linux et Solaris qui utilisent le serveur X.Org et supérieur</para> + </listitem> + + <listitem> + <para>Bindings de langage : bindings Java uniformes pour l'appel des + APIs locaux (COM/XPCOM) et distants (SOAP)</para> + </listitem> + + </itemizedlist> + + <para>Par ailleurs, les éléments suivants ont été corrigés et/ou ajoutés :</para> + + <itemizedlist> + + <listitem> + <para>VMM : Activation par défaut du support des grandes pages sur les + hôtes 64 bits (cela s'applique seulement à la pagination + imbriquée)</para> + </listitem> + + <listitem> + <para>VMM : correction d'une guru meditation lors de l'exécution de Minix + (VT-x seulement ; bogue #6557)</para> + </listitem> + + <listitem> + <para>VMM : correction d'un plantage dans certaines circonstances (hôtes + Linux seulement, mode non VT-x/AMD-V seulement ; bogues #4529 et #7819)</para> + </listitem> + + <listitem> + <para>GUI : ajout d'une boîte de dialogue de configuration pour la + redirection de ports en mode NAT + (bogue #1657)</para> + </listitem> + + <listitem> + <para>GUI : affichage du contenu de la fenêtre de l'invité sauvegardé et + restauré</para> + </listitem> + + <listitem> + <para>GUI : certains avertissements de la GUI n'arrêtent plvm la sortie + de la VM</para> + </listitem> + + <listitem> + <para>GUI : correction d'un écran noir dans la mini-barre d'outils sur + les hôtes KDE4 (hôtes Linux seulement ; bogue #5449)</para> + </listitem> + + <listitem> + <para>BIOS : implémentation de la lecture de plusieurs secteurs pour + accélérer le démarrage de certains invités (comme Solaris)</para> + </listitem> + + <listitem> + <para>Réseau bridgé : amélioration de la throughput en filtrant les paquets + sortants et à destination de l'hôte avant qu'ils n'arrivent au réseau + physique (hôtes Linux seulement ; + bogue #7792)</para> + </listitem> + + <listitem> + <para>Support 3D : possibilité de nouveau d'utiliser <emphasis>CR_SYSTEM_GL_PATH</emphasis> + (bogue #6864)</para> + </listitem> + + <listitem> + <para>Support 3D : correction de plusieurs problèmes de coupure/visibilité + (bogues #5659, + #5794, #5848, #6018, #6187, #6570)</para> + </listitem> + + <listitem> + <para>Support 3D : corruption de la pile d'application de l'invité + lors de l'utilisation de + glGetVertexAttrib[ifd]v (bogue #7395)</para> + </listitem> + + <listitem> + <para>Support 3D : correction du support OpenGL pour libMesa 7.9</para> + </listitem> + + <listitem> + <para>Support 3D : correction de plantages d'Unity/Compiz sur natty</para> + </listitem> + + <listitem> + <para>Accélération graphique 2D : support de plusieurs écrans</para> + </listitem> + + <listitem> + <para>VRDP : correction de rares plantages dans une configuration à plusieurs + écrans</para> + </listitem> + + <listitem> + <para>VRDP : support en amont du son</para> + </listitem> + + <listitem> + <para>Affichage : correction d'un plantage occasionel du redimensionnement + de l'invité</para> + </listitem> + + <listitem> + <para>NAT : les règlet de redirection de ports peuvent s'appliquer lors + de l'exécution</para> + </listitem> + + <listitem> + <para>SATA : possibilité de connecter des lecteurs CD/DVD-ROM, y compris + passthrough (bogue #7058)</para> + </listitem> + + <listitem> + <para>Disquette : support des fichiers images en lecture seule, ce qui + est un critère pour rendre le média en lecture seule (bogue #5651)</para> + </listitem> + + <listitem> + <para>Son : correction d'une corruption de mémoire pendant la lecture + et dans de rares circonstances</para> + </listitem> + + <listitem> + <para>Son : la fondation DirectSound permet maintenant aux VMs d'émettre + du son quand une autre application DirectSound est active, même sur une + autre VM (bogue + #5578) + </para> + </listitem> + + <listitem> + <para>EFI : support des disques et des CDROMs SATA</para> + </listitem> + + <listitem> + <para>BIOS : réduction de l'utilisation de la pile de la fonction VESA BIOS + <emphasis>#4F01</emphasis> (correction de Quake)</para> + </listitem> + + <listitem> + <para>OVF/OVA : correction de l'exportation de VMs avec des disques iSCSI</para> + </listitem> + + <listitem> + <para>Stockage : support de l'image Apple DMG pour le CD/DVD virtuel (bogue + #6760)</para> + </listitem> + + <listitem> + <para>Support USB avec hôte Linux : introduction d'une manière moins + intrusive d'accéder aux périphériques USB en brut + (bogues #1093, #5345, #7759)</para> + </listitem> + + <listitem> + <para>Hôtes Linux : support des noyaux Linux récents avec + <emphasis>CONFIG_DEbogue_SET_MODULE_RONX</emphasis> activé</para> + </listitem> + + <listitem> + <para>Suppléments invité : On peut désormais marquer les dossiers + partagés comme pouvant être montés automatiquement sur des invités + on Windows, Linux et Solaris</para> + </listitem> + + <listitem> + <para>Suppléments Linux : Les dossiers partagés supportent maintenant + les liens symboliques (bogue #818)</para> + </listitem> + + <listitem> + <para>Suppléments Linux : combinaisoqs des suppléments 32 et 64 bits dans + un seul fichier</para> + </listitem> + + <listitem> + <para>Suppléments Windows : l'identification automatique sur Windows + Vista/Windows 7 est maintenant capable de gérer les comptes utilisateurs + renommés ; ajout de plusieurs corrections de bogues</para> + </listitem> + + </itemizedlist> + + </sect1> + + <sect1> + <title>Version 3.2.12 (30-11-2010)</title> + + <para>C'est une version de maintenance. Les éléments suivants ont été corrigés et/ou + ajoutés :</para> + + <itemizedlist> + + <listitem> + <para>VMM : correction de rares plantages de l'hôte lorsqu'on exécute des + invités 64 bits sur des hôtes 32 bits (bogue #7577)</para> + </listitem> + + <listitem> + <para>VMM : correction de redémarrages de l'hôte dans de rares circonstances + du fait du retardement de NMIs par des mesureurs de performance actifs + (hôtes Linux en mode non-VT-x/AMD-V seulement ; bogue #4529)</para> + </listitem> + + <listitem> + <para>VMM : correction d'une guru meditation supérieure à la mémoire + pour les invités à grande mémoire (bogue #7586)</para> + </listitem> + + <listitem> + <para>VMM : correction d'une guru meditation liée aux grandes pages</para> + </listitem> + + <listitem> + <para>VMM : utilisation de la nouvelle fonction VT-x pour empêcher l'invité + d'acaparer le processeur</para> + </listitem> + + <listitem> + <para>Instantanés : implémentation de l'effacement des derniers instantanés + qui restent pendant qu'une VM est en fonction</para> + </listitem> + + <listitem> + <para>GUI : application des vérifications de dépassement de la taille + limite du système de fichiers hôte et d'E/S asynchrones cassés sur les + anciens noyaux Linux ayant les systèmes de fichiers ext4 / xfs, non + seulement au démarrage à partir de 0 d'une VM, mais aussi au démarrage + à partir d'un état sauvegardé</para> + </listitem> + + <listitem> + <para>NAT : correction d'une fuite de mémoire (régression 3.2.0 ; bogues #6918, #7353)</para> + </listitem> + + <listitem> + <para>NAT : correction d'un problème de la racine NFS sur Linux (bogues #7299)</para> + </listitem> + + <listitem> + <para>Réseau : correction de la gestion du redémarrage d'une VM avec + e1000</para> + </listitem> + + <listitem> + <para>VRDP : correction de rares plantages dans une configuration à plusieurs + écrans</para> + </listitem> + + <listitem> + <para>Affichage : correction d'un plantage occasionel lors du + redimensionnement de l'invité</para> + </listitem> + + <listitem> + <para>Souris : n'envoie pas d'événements de souris relatifs en même temps + que des çvénements absolus (régression 3.2.10 ; bogue #7571)</para> + </listitem> + + <listitem> + <para>Clavier : corrections dans l'émulation du clavier USB ; corrections + pour les claviers coréens</para> + </listitem> + + <listitem> + <para>Série : ne bogue plus si le périphérique de l'hôte bloque + pendant son ouverture (bogues #5756, #5380)</para> + </listitem> + + <listitem> + <para>Série : correction des lignes d'état du modem (hôtes Linux seulement ; + bogue #812)</para> + </listitem> + + <listitem> + <para>Affichage : Les résolutions Horizontales ne se limitent plus à + un multiple de 8 pixels (bogue #2047; il faut mettre à jour les + suppléments invité). + </para> + </listitem> + + <listitem> + <para>USB : correction d'un plantage avec les anciens noyaux Linux et les + caractères non ASCII dans les chaînes de périphériques (hôtes Linux + seulement ; bogue #6983, #7158, #7733 ; la version 3.2.8 comportait une + correction incomplète)</para> + </listitem> + + <listitem> + <para>USB : correction d'un plantage dans de rares circonstances (bogue #7409 ; + hôtes Windows seulement)</para> + </listitem> + + <listitem> + <para>"iSCSI : réponse immédiate aux requêtes NOP-In de la cible afin + d'éviter une déconnexion si l'invité est en veille</para> + </listitem> + + <listitem> + <para>Support 3D : correction d'un plantage dans certaines circonstances (bogue #7659)</para> + </listitem> + + <listitem> + <para>Support 3D : correction de plantages des ades applis basées + sur GLUT (bogue #6848)</para> + </listitem> + + <listitem> + <para>Support 3D : ajout d'une fonctionnalité GLX 1.3 manquante (bogues #7652, #7195)</para> + </listitem> + + <listitem> + <para>Accélération graphique 2D : correction d'un deadlock potentiel + lors de la sauvegarde de l'état d''une VM (bogue #4124)</para> + </listitem> + + <listitem> + <para>Hôtes Windows : autre correction de BSODs dans certaines circonstances + dans VBoxNetFlt.sys (bogue #7601)</para> + </listitem> + + <listitem> + <para>Hôtes Solaris : correction de la détection d'un lecteur DVD USB + de l'hôte</para> + </listitem> + + <listitem> + <para>Hôtes Mac OS X : correction des touches d'échange pour certains + types de clavier ISO (bogue #2996)</para> + </listitem> + + <listitem> + <para>Hôtes Linux : ajout de la gestion de l'état d'un lien pour les + périphériques TAP, nécessaire pour ue bon fonctionnement avec le réseau + bridgé sur les noyaux 2.6.36 et supérieur (bogue #7649)</para> + </listitem> + + <listitem> + <para>Hôtes/invités Linux : corrections Linux 2.6.37 fixes</para> + </listitem> + + <listitem> + <para>Suppléments Linux : bonne compilation du module vboxvideo si + DKMS n'est pas installé (bogue #7572)</para> + </listitem> + + <listitem> + <para>Suppléments Linux : correction d'une fuite de mémoire lors d'un + accès à des fichiers inexistants sur des dossiers partagés (bogue #7705)</para> + </listitem> + + <listitem> + <para>Suppléments Windows : on saute les comptes utilisateurs non + affectés lors de l'énumération des comptes utilisateur pour en informer + la VM</para> + </listitem> + + </itemizedlist> + + </sect1> + + <sect1> + <title>Version 3.2.10 (08-10-2010)</title> + + <para>C'est une version de maintenance. Les éléments suivants ont été corrigés et/ou + ajoutés :</para> + + <itemizedlist> + + <listitem> + <para>VMM : correction du mode V8086 pour les invités DOS/Windows primitifs + avec EMM386 (régression 3.2.8)</para> + </listitem> + + <listitem> + <para>VMM : correction de stabilité (bogue #7342)</para> + </listitem> + + <listitem> + <para>VMM : correction d'une Guru meditation liée à de grandes pages (bogue #7300)</para> + </listitem> + + <listitem> + <para>VMM : correction du support des grandes pages sur les hôtes Linux</para> + </listitem> + + <listitem> + <para>VMM : correction d'une Guru meditation pour les grosses mémoires + des invités 64 bits sur les hôtes 32 bits ayant la pagination imbriquée + (bogue #7544)</para> + </listitem> + + <listitem> + <para>VMM : améliorations de performance des VMs ayant plus de + 2Go de RAM (bogue #6928)</para> + </listitem> + + <listitem> + <para>GUI : correction de la gestion de la touche hôte si elle est + définie comme Alt gauche (hôtes Linux/Solaris seulement ; régression + 3.2.0 ; bogue #6758)</para> + </listitem> + + <listitem> + <para>GUI : la VM peut être minimisée à partir de la barre système + (bogue #4952)</para> + </listitem> + + <listitem> + <para>GUI : bonne gestion de Ctrl+Break sur les hôtes X11 (régression + 3.2.0 ; bogue #6122)</para> + </listitem> + + <listitem> + <para>GUI : correction d'un souci où l'utilisateur tuait le sélecteur + de médias lors de la sélection du disque dur de démarrage dans l'assistant + de la VM</para> + </listitem> + + <listitem> + <para>GUI : ajout d'une vérification que les noyaux Linux sont les 2.6.36 ou + supérieurs, car ils sont connus pour avoir corrigé un bogue d'E/S asymchrone sur + les systèmes de fichiers ext4 / xfs (hôtes Linux seulement)</para> + </listitem> + + <listitem> + <para>Invités OpenSolaris : utilisation du contrôleur SATA par défaut</para> + </listitem> + + <listitem> + <para>Stockage : correction d'erreurs E/S dans l'invité après la création + d'images VDI (régression 3.2.6 ; bogue #7294)</para> + </listitem> + + <listitem> + <para>Stockage : réparation automatique des images de disques de base + dont l'UUID parent n'est pas zéro, ce qui les rendait inaccessible (bogue #7289)</para> + </listitem> + + <listitem> + <para>Stockage : correction des images corrompues si une synchronisation + a été annulée</para> + </listitem> + + <listitem> + <para>IDE : ajout du support passthrough d'ATAPI pour les CDs audio</para> + </listitem> + + <listitem> + <para>SATA : correction d'un accroc potentiel pendant le démarrage des + invités Solaris récents</para> + </listitem> + + <listitem> + <para>SATA : meilleure gestion de l'espace disque et des conditions + équivalentes</para> + </listitem> + + <listitem> + <para>iSCSI : correction d'accrocs sporadiques à la fermeture de la + connexion</para> + </listitem> + + <listitem> + <para>VGA : correction du manque d'actualisation de l'affichage avec + plusieurs écrans, dans certaines circonstances (bogue #7291)</para> + </listitem> + + <listitem> + <para>VGA : plusieurs petites corrections des modes graphiques VGA de + base</para> + </listitem> + + <listitem> + <para>Réseau bridgé : correction d'un gel occasionnel de l'hôte pendant + l'extinction de la VM (hôtes Linux seulement)</para> + </listitem> + + <listitem> + <para>NAT : pas de vérification de l'existence du préfixe TFTP lors + du dépôt d'un fichier par bootp (bogue #7384)</para> + </listitem> + + <listitem> + <para>NAT : correction de la résolution des noms dans le résolveur de + l'hôte (bogue #7138)</para> + </listitem> + + <listitem> + <para>NAT : dans de rares conditions, le moteur NAT consommait 100% + de la charge processeur (hôtes non Windows seulement)</para> + </listitem> + + <listitem> + <para>VRDP : correction d'une fuite de émoire sous certaines circonstances (bogue #5966)</para> + </listitem> + + <listitem> + <para>VRDP : correction de l'absence d'actualisation de l'affichage avec + les invités Windows dans certaines circonstances</para> + </listitem> + + <listitem> + <para>USB : désactivation correcte du blocage des URBs fulk sortants, + corrige certaines imprimantes</para> + </listitem> + + <listitem> + <para>USB : correction pour Blackberry (bogue #6465)</para> + </listitem> + + <listitem> + <para>VBoxHeadless : correction de problèmes de traitement de la queue + d'événements qui provoquait des accrocs si la VM ne réussissait pas à + démarrer</para> + </listitem> + + <listitem> + <para>VBoxManage : ne plante pas si les paramètres comportant des + caractères invalides sont passés (bogue #7388)</para> + </listitem> + + <listitem> + <para>VBoxManage : <computeroutput>clonehd</computeroutput> : correction + d'un bogue où la commande échouait avec un message d'erreur dans de rares + circonstances</para> + </listitem> + + <listitem> + <para>VBoxManage <computeroutput>metrics</computeroutput> : on a + fait en sorte que le démarrage direct des VMs fonctionne de nouveau + (régression 3.2.8 ; bogue #7482)</para> + </listitem> + + <listitem> + <para>Support 3D : on signale <emphasis>GLX_ARB_get_proc_address</emphasis> + comme étant une extension supportée</para> + </listitem> + + <listitem> + <para>Support 3D : corruption de la pile d'application de l'invité lors + d'une utilisation de + <emphasis>glGetVertexAttrib[ifd]v</emphasis> (bogue #7395)</para> + </listitem> + + <listitem> + <para>Support 3D : correction du support 3D cassé quand on bascule le mode + plein écran et le mode transparent (bogue #7314)</para> + </listitem> + + <listitem> + <para>Support 3D : correction de des applis OpenGL 32 bits sur + Windows XP/Vista 64 bits (bogue #7066)</para> + </listitem> + + <listitem> + <para>OVF : correction d'un bogue lors de l'exportation d'une VM avec + plusieurs disques connectés + (bogue #7366)</para> + </listitem> + + <listitem> + <para>OVF : correction d'une exportation lente sur certains systèmes de + fichiers (bogue #3719)</para> + </listitem> + + <listitem> + <para>OVF : désactivation du support du manifest (fichier .mf) ; les + manifests ne sont plus vérifiés lors de l'importation, ni écrits pour + l'exportation</para> + </listitem> + + <listitem> + <para>Presse-papier partagé/Windows : amélioration de la fiabilité du + presse-papier partagé sur les hôtes et les invités Windows (correction + partielle du bogue #5266)</para> + </listitem> + + <listitem> + <para>Dossiers partagés : pas d'affichage des répertoires vides si des + noms des fichiers avec un encodage invalide sont présents sur l'hôte + (bogue #7349)</para> + </listitem> + + <listitem> + <para>Dossiers partagés : renvoi du bon code d'erreur quand on essaie de + lister les fichiers d'un dossier inexistant (bogue #7004)</para> + </listitem> + + <listitem> + <para>Son : correction d'une corruption de mémoire de l'invité lors + d'une capture à partir de la fondation audio + NULL (bogue #6911)</para> + </listitem> + + <listitem> + <para>Son : amélioration de la qualité de la lecture (moins variable)</para> + </listitem> + + <listitem> + <para>Service Web : on évite la création inutile de threads inactifs</para> + </listitem> + + <listitem> + <para>Suppléments : correction d'un bogue dans la fonction d'exécution + de l'invité lorsqu'on passe plus d'une variable d'environnement</para> + </listitem> + + <listitem> + <para>Suppléments : mise à jour de toutes les propriétés invité qu'écrit + VBoxService après une restauration de la VM d'un état sauvegardé</para> + </listitem> + + <listitem> + <para>Suppléments : correction d'un plantage <emphasis>division par zéro</emphasis> + de VBoxService dans certaines circonstances</para> + </listitem> + + <listitem> + <para>Suppléments: resynchronisation immédiate de l'heure de l'invité avec + celle de l'hôte après la restauration de la VM d'un état sauvegardé + (bogue #4018)</para> + </listitem> + + <listitem> + <para>Suppléments/Windows : correction d'une erreur + <emphasis>LsaEnumerate</emphasis> lors de l'énumération des utilisateurs + connectés</para> + </listitem> + + <listitem> + <para>Suppléments/X.Org : support du serveur X.Org 1.9 (bogue #7306)</para> + </listitem> + + <listitem> + <para>Suppléments/X.Org : ne plante pas VBoxClient au redémarrage</para> + </listitem> + + <listitem> + <para>Hôtes Solaris : correction de l'énumération des lecteurs DVDs de + l'hôte sur Solaris 10</para> + </listitem> + + <listitem> + <para>Hôtes Solaris : ajout d'un transfert de coeur personnalisé pour + offrir plus de données quand une VM plante</para> + </listitem> + + <listitem> + <para>Invités Solaris : correction de la détection de l'inactivité de + l'utilisateur</para> + </listitem> + + <listitem> + <para>Invités Solaris : correction d'un panic possible dans les + dossiers partagés lorsqu'on utilise le mauvais ID de groupe ou + d'utilisateur (bogue #7295)</para> + </listitem> + + <listitem> + <para>Invités Solaris : correction des dossiers partagés qui tronquaient + les fichiers à partir de 2Go sur les invités 32 bits (bogue #7324)</para> + </listitem> + + <listitem> + <para>Hôtes Windows : correction d'un BSOD dans certaines circonstances + dans VBoxNetFlt.sys (bogue #7448)</para> + </listitem> + + <listitem> + <para>Hôtes/invités Linux : corrections pour Linux 2.6.36</para> + </listitem> + + <listitem> + <para>Hôtes/invités Linux : corrections pour DKMS (bogue #5817)</para> + </listitem> + + <listitem> + <para>Hôtes Mac OS X : correction d'entrées de menu système absentes + (bogue #7392)</para> + </listitem> + + </itemizedlist> + + </sect1> + + <sect1> + <title>Version 3.2.8 (05-08-2010)</title> + + <para>C'est une version de maintenance. Les éléments suivants ont été corrigés et/ou + ajoutés :</para> + + <itemizedlist> + + <listitem> + <para>VMM : fin correcte d'une VM avec une erreur si l'invité essaie de + passer en mode PAE et si PAE est désactivé dans les paramètres de la + VM</para> + </listitem> + + <listitem> + <para>GUI : passage à des boîtes de dialogue de fichiers natives (hôtes + Windows seulement ; bogue #5459)</para> + </listitem> + + <listitem> + <para>GUI : n'utilise pas les boîtes de dialogue de fichier natives sur + les hôtes KDE (hôtes Linux seulement ; + bogue #6809)</para> + </listitem> + + <listitem> + <para>Support 3D : correction du support <emphasis>GL_EXT_texture_sRGB</emphasis></para> + </listitem> + + <listitem> + <para>PXE : correction d'une régression ZENworks PXE au démarrage</para> + </listitem> + + <listitem> + <para>OVF : correction d'une exportation trop lente et trop lourde dans + certaines circonstances (régression 3.2.6 ; bogue #7073)</para> + </listitem> + + <listitem> + <para>USB : signal correct d'une interruption si l'état suspendu du port + change</para> + </listitem> + + <listitem> + <para>USB : respect du filtre "distant seulement"</para> + </listitem> + + <listitem> + <para>USB : on évite un accroc de VM lors du changement de la configuration + de certains périphériques (hôtes Windows seulement)</para> + </listitem> + + <listitem> + <para>USB : correction d'un plantage avec les anciens noyaux Linux + et les caractères non ASCII dans les chaînes de périphériques (hôtes + Linux seulement ; bogue #6983)</para> + </listitem> + + <listitem> + <para>PageFusion : correction d'un conflit avec les fonctions d'exécution + de l'invité</para> + </listitem> + + <listitem> + <para>PageFusion: correction de problèmes de stabilité avec un grand + nombre de VMs</para> + </listitem> + + <listitem> + <para>PageFusion : correction de plantages de l'hôte avec le SMP de + l'invité et les invités Win64</para> + </listitem> + + <listitem> + <para>Ballon de mémoire : correction de problèmes de restauration des + VMs quand la pré-affectation est activée</para> + </listitem> + + <listitem> + <para>Réseau bridgé : correction de problèmes de performance quand GRO + est activé sur un périphérique bridgé (bogue #7059)</para> + </listitem> + + <listitem> + <para>Réseau hostonly : correction de problèmes de performance (régression + 3.2.6 ; bogue #7081)</para> + </listitem> + + <listitem> + <para>Disques durs : correction d'une réinitialisation automatique d'un + disque immuable au démarrage de la VM + (bogue #6832)</para> + </listitem> + + <listitem> + <para>BusLogic : plusieurs corrections pour les invités Windows NT/2000 + et SCO OpenServer</para> + </listitem> + + <listitem> + <para>LsiLogic : correction d'erreurs d'E/S dans de rares circonstances</para> + </listitem> + + <listitem> + <para>Partage de disques : support de la connexion d'un disque à plusieurs + VMs sans outils ni bidouilles externes</para> + </listitem> + + <listitem> + <para>Dossiers partagés : plusieurs corrections et améliorations de + performance pour les invités Solaris guests (bogues #4154 et #6512)</para> + </listitem> + + <listitem> + <para>Installeur Solaris : ajout du support des installations distantes</para> + </listitem> + + <listitem> + <para>API des propriétés invité : support correct de l'énumération des + propriétés d'une VM en fonction avec un champ "modèles" vide (bogue #7171)</para> + </listitem> + + <listitem> + <para>Propriétés invité : effacement correct des propriétés passagères + lors de l'extinction</para> + </listitem> + + <listitem> + <para>VRDP : amélioration des performances de la redirection d'image + et corrections de stabilité</para> + </listitem> + + <listitem> + <para>Paramètres : correction discrète du pilote son de l'hôte lors + de la lecture du fichier XML des paramètres d'une machine ou d'OVF écrits + par VirtualBox sur un OS hôte différent, par exemple conversion de + DirectSound en PulseAudio (bogue #7209) + </para> + </listitem> + + <listitem> + <para>Paramètres : stockage correct des paramètres du réseau NAT dans + un fichier de paramètres XML version 1.10 et supérieur (bogue #6176)</para> + </listitem> + + <listitem> + <para>VBoxManage : gestion correcte des images de différenciation avec l'UUID + parent dans la sous-commande <emphasis>openmedium disk</emphasis> (bogue #6751)</para> + </listitem> + + <listitem> + <para>Service Web : activation du maintien de HTTP pour une bien meilleure + performance + </para> + </listitem> + + <listitem> + <para>Service Web : ajout de l'horodatage à la sortie des joornaux</para> + </listitem> + + <listitem> + <para>Service Web : traitement des chaînes 8 bits comme des UTF-8 non + ASCII</para> + </listitem> + + <listitem> + <para>Suppléments X11 : correction pour les invités Xorg 6.8 (comme + RHEL4)</para> + </listitem> + + </itemizedlist> + + </sect1> + + <sect1> + <title>Version 3.2.6 (25-06-2010)</title> + + <para>C'est une version de maintenance. Les éléments suivants ont été corrigés et/ou + ajoutés :</para> + + <itemizedlist> + + <listitem> + <para>VMM : correction d'un plantage de l'hôte lors de l'exécution d'invités + 64 bits sur des hôtes 32 bits avec certains processeurs Intel (VT-x + seulement ; bogue #6166) </para> + </listitem> + + <listitem> + <para>VMM : possibilité d'avoir des invités SMP 64 bits sur des hôtes + 32 bits (VT-x and AMD-V seulement ;ne s'applique pas à Mac OS X, qui + le supporte déjà) </para> + </listitem> + + <listitem> + <para>VMM : correction d'une Guru mediation si les invités de plus de + 2Go démarrent sans VT-x/AMD-V activé (bogue #5740)</para> + </listitem> + + <listitem> + <para>VMM : correction d'une limitation TR à la mise en corbeille (hôtes + VT-x et 64 bits seulement ; bogue #7052)</para> + </listitem> + + <listitem> + <para>Fusion de page : plusieurs corrections de bogues des invités + SMP (y compris le bogue #6964) </para> + </listitem> + + <listitem> + <para>Téléportation : plusieurs corrections et améliorations</para> + </listitem> + + <listitem> + <para>Invités Mac OS X server : correction de compatibilité</para> + </listitem> + + <listitem> + <para>EFI : correction de la détection de mémoire pour les invités ayant + 2Go de RAM ou plus d'affectés</para> + </listitem> + + <listitem> + <para>GUI : ajout d'un contournement d'un bogue du noyau Linux qui + concerne l'E/S asynchrone sur les systèmes de fichiers ext4 / xfs (hôtes + Linux seulement)</para> + </listitem> + + <listitem> + <para>GUI : ajout d'un paramètre pour des connexions VRDP multiples ; + utile si on active plusieurs écrans</para> + </listitem> + + <listitem> + <para>GUI : autre correction du bogue de capture du clavier sous metacity (bogue #6727)</para> + </listitem> + + <listitem> + <para>GUI : correction de la boîte de dialogue quit lorsqu'on l'utilise + en mode transparent ou plein écran (hôtes Mac OS X seulement ; bogue #6938)</para> + </listitem> + + <listitem> + <para>GUI : gestion de nouveau de la touche en plus sur le clavier brésilien sur + les hôtes X11 (bogue #7022). + </para> + </listitem> + + <listitem> + <para>Accélération graphique 2D : correction de plantages lorsqu'on + quitte le mode plein écran (bogue #6768)</para> + </listitem> + + <listitem> + <para>VBoxManage : correction d'une erreur de gestion de + <emphasis>storageattach</emphasis> + (bogue #6927)</para> + </listitem> + + <listitem> + <para>VBoxManage : correction de <emphasis>dhcpserver add</emphasis> + (régression 3.2.0 ; bogue #7031)</para> + </listitem> + + <listitem> + <para>Stockage : correction d'un accroc avec des images qui se trouvent + sur des systèmes de fichiers ne supportant pas l'E/S (bogue #6905)</para> + </listitem> + + <listitem> + <para>Stockage : correction des disques bruts sur les hôtes Windows + (régression 3.2.0 ; bogue #6987)</para> + </listitem> + + <listitem> + <para>LsiLogic : correction d'un accroc avec les anciens invités Linux</para> + </listitem> + + <listitem> + <para>BusLogic : correction d'un accroc en E/S</para> + </listitem> + + <listitem> + <para>SATA : paramétrage du nombre initial de ports sur 1 car certains + invités ne peuvent pas gérer 30 ports (comme CentOS 4 et FreeBSD ; bogue #6984)</para> + </listitem> + + <listitem> + <para>SATA : amélioration de performances</para> + </listitem> + + <listitem> + <para>SCSI : correction d'une erreur lors de l'utilisation de l'option + format plein pendant l'installation des invités Windows (bogue #5101)</para> + </listitem> + + <listitem> + <para>iSCSI : correction de l'authentification (bogue #4031)</para> + </listitem> + + <listitem> + <para>Réseau Host-only/bridgé : correction d'avertissements excessifs du + noyau hôte dans certaines circonstances (hôtes Linux seulement ; régression + 3.2.0 ; bogue #6872)</para> + </listitem> + + <listitem> + <para>NAT : correction de fuites potentielles de mémoire</para> + </listitem> + + <listitem> + <para>NAT : augmentation de la taille de la mémoire pour les + cadres Jumbo 16K (bidouillage de performance)</para> + </listitem> + + <listitem> + <para>NAT : possibilité de brancher/débrancher le câble réseau même si + la VM est actuellement en pause</para> + </listitem> + + <listitem> + <para>E1000 : le débranchement du câble n'était pas bien géré si le NIC + n'était pas encore initialisé par l'invité</para> + </listitem> + + <listitem> + <para>OVF : optimisation des performances de l'exportation</para> + </listitem> + + <listitem> + <para>OVF : mise à jour des définitions des types d'OS vers CIM 2.25.0 + pour que Windows 7 et d'autres OS soient marqués correctement lors de + l'exportation</para> + </listitem> + + <listitem> + <para>Paramètres : le paramètre de désactivation du cache E/S de l'hôte + n'était parfois pas bien sauvegardé</para> + </listitem> + + <listitem> + <para>Paramètres : sauvegarde correcte de l'état de la machine dans un + XML même quand le dossier des instantanés est allé à un autre endroit + que celui par défaut (bogue #5656)</para> + </listitem> + + <listitem> + <para>USB : possibilité pour l'invité de désactiver un port EHCI</para> + </listitem> + + <listitem> + <para>USB : recherche d'un langage valide avant de chercher des chaînes + (bogue #7034)</para> + </listitem> + + <listitem> + <para>Hôtes POSIX : correction de plusieurs pertes de mémoire (régression + 3.2.0)</para> + </listitem> + + <listitem> + <para>Hôtes Solaris : correction d'un problème d'accès VDI dans + certaines circonstances (IDE/SATA ; régression 3.2.0)</para> + </listitem> + + <listitem> + <para>Hôtes Solaris : correction de la VM qui n'arrive pas à démarrer + sur les hôtes 32 bits (régression 3.2.0 ; bogue #6899)</para> + </listitem> + + <listitem> + <para>Hôtes Windows (32 bits) : augmentation de la limite de RAM de + l'invité si le noyau hôte permet plus d'espace d'adresses virtuelles</para> + </listitem> + + <listitem> + <para>Suppléments Linux : relecture d'un répertoire après qu'un fichier + a été supprimé (bogue #5251)</para> + </listitem> + + <listitem> + <para>Suppléments Linux : installation du pilote DRI au bon endroit des + invités ArchLinux (bogue #6937)</para> + </listitem> + + <listitem> + <para>Suppléments X11 : correction d'événements de mouvements de souris + spurious (bogue #4260)</para> + </listitem> + + <listitem> + <para>Suppléments Solaris : correction de la fonction d'exécution de + l'invité</para> + </listitem> + + <listitem> + <para>Suppléments Windows : l'identification automatique sur Windows Vista/Windows 7 + est maintenant capable de gérer les comptes utilisateur renommés et + principaux ; ajout de diverses corrections de bogues</para> + </listitem> + + <listitem> + <para>Suppléments Windows : améliorations de l'analyse de la ligne de commandes + de l'installeur</para> + </listitem> + + <listitem> + <para>Suppléments Windows : correction d'un bogue vérifié dans le + vérificateur du pilote dans VBoxMouse (bogue #6453)</para> + </listitem> + + <listitem> + <para>Support 3D : correction du support OpenGL pour les applications + 32 bits sous des invités Windows 64 bits</para> + </listitem> + + </itemizedlist> + </sect1> + + <sect1> + <title>Version 3.2.4 (07-06-2010)</title> + + <para>C'est une version de maintenance. Les éléments suivants ont été corrigés et/ou + ajoutés :</para> + + <itemizedlist> + + <listitem> + <para>GUI : correction d'un événement de redimensionnement superflu lors + de l'allumage de la VM pour X11 (amélioration de la correction 3.2.2)</para> + </listitem> + + <listitem> + <para>GUI : correction d'un bogue à la capture du clavier sur metacity (bogue #6727)</para> + </listitem> + + <listitem> + <para>Réseau Host-only/bridgé correction de la communication invité-vers-invité + en sans fil (régression 3.2.0 ; bogue #6855)</para> + </listitem> + + <listitem> + <para>Stockage : correction d'une corruption potentielle du disque invité + avec les images extensibles (régression 3.2.0)</para> + </listitem> + + <listitem> + <para>Fusion de page : correction de la détection de modules partagés + pour les invités Win64</para> + </listitem> + + <listitem> + <para>Support 3D : possibilité de nouveau d'utiliser <emphasis>CR_SYSTEM_GL_PATH</emphasis> + (bogue #6864)</para> + </listitem> + + <listitem> + <para>Support 3D : correction d'une déclaration de l'hôte pour certains + applications invitées multi-threaded (bogue #5236)</para> + </listitem> + + <listitem> + <para>Support 3D : correction de plantages de l'hôte avec le pilote + nVIDIA au démarrage de WDDM</para> + </listitem> + + <listitem> + <para>OVF : correction de l'importation des OVFs avec une description de + VM (annotation) + (régression 3.2.2 ; bogue #6914)</para> + </listitem> + + <listitem> + <para>VRDP : correction de problèmes avec les écrans secondaires (bogue #6759)</para> + </listitem> + + </itemizedlist> + + </sect1> + + <sect1> + <title>Version 3.2.2 (02-06-2010)</title> + + <para>C'est une version de maintenance. Les éléments suivants ont été corrigés et/ou + ajoutés :</para> + + <itemizedlist> + + <listitem> + <para>VMM : correction de rares guru meditation de l'état invalide des + invités (VT-x seulement)</para> + </listitem> + + <listitem> + <para>VMM : correction d'une faible performance avec la pagination imbriquée + et l'exécution de ;'invité sans restriction (VT-x seulement ; bogue #6716)</para> + </listitem> + + <listitem> + <para>VMM : correction d'une guru meditation occasionnelle pendant le + démarrage de Windows 7 (bogue #6728)</para> + </listitem> + + <listitem> + <para>GUI : conservation de l'état pour le contrôle distant et synchronisé + avec l'état définitif</para> + </listitem> + + <listitem> + <para>GUI : ne quitte pas après une mise à jour réussie d'une configuration + invalide de la VM</para> + </listitem> + + <listitem> + <para>GUI : correction d'un bogue à la capture du clavier sur metacity (bogue #6727)</para> + </listitem> + + <listitem> + <para>GUI : correction d'un plantage pendant la fin d'une VM si une boîte + de dialogue modale est ouverte</para> + </listitem> + + <listitem> + <para>GUI : les noms des contrôleurs par défaut dans l'assistant Nouvelle + VM sont synchronisés avec les paramètres de la VM</para> + </listitem> + + <listitem> + <para>GUI : correction d'événements de redimensionnement superflu lors + de l'allumage de la VM pour X11</para> + </listitem> + + <listitem> + <para>GUI : correction de la régression - absence de l'icône de + l'élément USB dans le menu des périphériques USB</para> + </listitem> + + <listitem> + <para>GUI : Activation de la fenêtre de la VM place de la souris pour + les VMs à plusieurs écrans</para> + </listitem> + + <listitem> + <para>VBoxSDL/Hôtes Linux : détection automatique du type de clavier + (bogue #5764)</para> + </listitem> + + <listitem> + <para>SATA : correction d'un plantage lors de la suspension d'une VM dans + de rares circonstances</para> + </listitem> + + <listitem> + <para>SATA : correction d'un plantage pendant le redémarrage de la VM + après la prise d'un instantané</para> + </listitem> + + <listitem> + <para>Stockage : correction d'un accroc sporadique des invités SMP + utilisant SATA ou LSI Logic SCSI et les E/S asynchrones</para> + </listitem> + + <listitem> + <para>Virtio-net : correction pour les invités de plus de 4Go de RAM + (bogue #6784)</para> + </listitem> + + <listitem> + <para>Fusion de Page : correction d'un plantage du VBoxService quand la + fusion de page est activée sur les invités Win64</para> + </listitem> + + <listitem> + <para>Fusion de Page : ajout du partage de module du noyau</para> + </listitem> + + <listitem> + <para>HGCM : correction d'une fuite de mémoire qui intervenait si les + suppléments invité accédaient à un service GCM inexistant</para> + </listitem> + + <listitem> + <para>Téléportation : plusieurs corrections</para> + </listitem> + + <listitem> + <para>Disquette : ne désactive pas par défaut le cache E/S de l'hôte</para> + </listitem> + + <listitem> + <para>USB : correction d'une régression 3.1 avec certains pçriphériques + (comme l'iPhone) ; hôtes Windows seulement</para> + </listitem> + + <listitem> + <para>Série : mise à jour de l'émulation de périphérique de l'invité vers + 16550A et réduction de la probabilité de perte d'octets pendant la + transmission (bogue #1548)</para> + </listitem> + + <listitem> + <para>NAT : nouveau rapatriment des paramètres de nom du serveur de l'hôte + dès les requêtes DHCP de l'invité pour mieux gérer les paramètres du + réseau hôte (bogue #3847)</para> + </listitem> + + <listitem> + <para>NAT : correction de l'analyse des adresses IPv4 en notation + CIDR (bogue #6797)</para> + </listitem> + + <listitem> + <para>NAT : limitation à quatre du nombre de serveurs de noms passés à + l'invité (hôtes non Windows seulement ; bogue #4098)</para> + </listitem> + + <listitem> + <para>NAT : correction d'une mauvaise correspondance dans la transaction + DNS de l'ID (bogue #6833)</para> + </listitem> + + <listitem> + <para>VDE : correction du changement de connexion pendant l'exécution</para> + </listitem> + + <listitem> + <para>Réseau bridgé : correction d'une fuite de mémoire dans le pilote + Réseau Bridgé pour les hôtes Windows (bogue #6824)</para> + </listitem> + + <listitem> + <para>Suppléments Windows : correction pour les invités NT4 (bogue #6748)</para> + </listitem> + + <listitem> + <para>Suppléments Windows : ré-introduction des fonctions de préparation + du système</para> + </listitem> + + <listitem> + <para>Invités Linux : activation par défaut du PAE pour les invités RedHat</para> + </listitem> + + <listitem> + <para>Invités Linux : correction du support de la désactivation de l'intégration + de la souris (bogue #6714)</para> + </listitem> + + <listitem> + <para>Service Web : correction d'un plantage rare quand on appelle les + méthodes IGuest du service web</para> + </listitem> + + <listitem> + <para>OVF : correction de mauvais UUIDs de disque dur lors de l'exportation + . (bogue #6802)</para> + </listitem> + + <listitem> + <para>OVF : correction d'une régression 3.2.0 dans l'importation de + fichiers OVF 0.9 primitifs</para> + </listitem> + + <listitem> + <para>Support 3D : correction du support d'OpenGL pour les applications + 64 bits sur les invités windows</para> + </listitem> + + <listitem> + <para>Support 3D : correction de divers plantages de l'hôte (bogues #2954, #5713, #6443)</para> + </listitem> + + </itemizedlist> + + </sect1> + + <sect1> + <title>Version 3.2.0 (18-05-2010)</title> + + <para>Cette version est une mise à jour majeure. Les nouvelles fonctions + majeures suivantes ont été ajoutées :</para> + + <itemizedlist> + + <listitem> + <para>Suite à l'acquisition de Sun Microsystems par Oracle Corporation, + le produit s'appelle désermais "Oracle VM VirtualBox" et toutes les + références ont été modifiées sans conséquences sur ses possibilités</para> + </listitem> + + <listitem> + <para>Support expérimental des invités Mac OS X Server (voir <xref linkend="intro-macosxguests" />)</para> + </listitem> + + <listitem> + <para>Jeu de ballon de mémoire pour augmenter ou diminuer de façon + dynamique la RAM utilisée par une VM (hôtes 64 bits seulement) (voir + <xref linkend="guestadd-balloon" />)</para> + </listitem> + + <listitem> + <para>La fusion de Page dé-duplique automatiquement la RAM lors du + lancement de VMs identiques en y augmentant la capacité. Supporté + actuellement pour les invités Windows sur les hôtes 64 bits + (voir <xref linkend="guestadd-pagefusion" />)</para> + </listitem> + + <listitem> + <para>Montage à chaud d'un processeur pour Linux (ajout et retrait à + chaud) et certains invités Windows (voir <xref linkend="cpuhotplug" />)</para> + </listitem> + + <listitem> + <para>Nouvelles fonctions de l'Hyperviseur : avec VT-x/AMD-V sur les + hôtes 64 bits, l'utilisation de grandes pages peut améliorer les + performances (voir <xref linkend="imbriquéepaging"/>) ; en outre, sur + VT-x, l'exécution sans restriction de l'invité est maintenant supportée + (si la pagination imbriquée est activée avec VT-x, le mode réel et le mode + protégé sans code de pagination fonctionnent plus vite, ce qui accélère + considérablement le démarrage de l'OS invité)</para> + </listitem> + + <listitem> + <para>Support de l'effacement des instantanés pendant que la VM est en + fonction</para> + </listitem> + + <listitem> + <para>Support des paramétrages de l'invité pour plusieurs écrans dans la + GUI pour les invités Windows (voir <xref linkend="settings-display" />)</para> + </listitem> + + <listitem> + <para>Emulation de la tablette USB/clavier pour une meilleure expérience + utilisateur si aucun supplément invité n'est disponible (voir + <xref linkend="settings-motherboard" />)</para> + </listitem> + + <listitem> + <para>Emulation du contrôleur SAS LsiLogic (voir <xref linkend="harddiskcontrollers" />)</para> + </listitem> + + <listitem> + <para>Accélération graphique VRDP (voir <xref linkend="vrde-videochannel"/>)</para> + </listitem> + + <listitem> + <para>Configuration du moteur NAT par l'API et VBoxManage</para> + </listitem> + + <listitem> + <para>L'utilisation du cache E/S de l'hôte est maintenant configurable + (voir <xref linkend="iocaching" />)</para> + </listitem> + + <listitem> + <para>Suppléments invité : ajout du support de l'exécuting des applications + invitées depuis le système hôte (remplace la fonction de préparation + automatique du système ; voir + <xref linkend="guestadd-guestcontrol" />)</para> + </listitem> + + <listitem> + <para>OVF : amélioration du support d'OVF avec des noms personnalisés + pour préserver les paramètres ne faisant pas partie du standard OVF de + base</para> + </listitem> + + </itemizedlist> + + <para>De plus, les éléments suivants ont été corrigés et/ou ajoutés :</para> + + <itemizedlist> + + <listitem> + <para>VMM : correction d'un plantage des invités Windows 2000 lorsqu'ils + sont configurés avec beaucoup de RAM (bogue #5800) </para> + </listitem> + + <listitem> + <para>Invités Linux/Solaris : ajout du module PAM pour l'identification + automatique</para> + </listitem> + + <listitem> + <para>GUI : on devine le type d'OS à partir du nom d'OS au moment de la + création d'un nouveau VM</para> + </listitem> + + <listitem> + <para>GUI : ajout d'un paramètre de VM pour que le temps passe en UTC + et ne passe pas l'heure de l'hôte locale à l'invité + (bogue #1310)</para> + </listitem> + + <listitem> + <para>GUI : correction du mode transparent sur les écrans secondaires + (bogues #1322 et #1669)</para> + </listitem> + + <listitem> + <para>GUI : possibilité de télécharger le manuel de l'utilisateur dans + la version OSE (bogue #6442)</para> + </listitem> + + <listitem> + <para>GUI : possibilité de définir une touche hôte vide pour interdire + toute combinaison de l'hôte (bogue #684)</para> + </listitem> + + <listitem> + <para>GUI : possibilité de restreindre les actions possibles depuis + la GUI lors de l'extinction de la VM</para> + </listitem> + + <listitem> + <para>Principal : possibilité de démarrer une VM même si un média + DVD ou amovible virtuel n'est pas accessible</para> + </listitem> + + <listitem> + <para>Paramètres : plus de robustesse lors de l'enregistrement des + fichiers XML des paramètres</para> + </listitem> + + <listitem> + <para>Mac OS X : réécriture du pilote CoreAudio et ajout du support + de l'entrée audio (bogue #5869)</para> + </listitem> + + <listitem> + <para>Mac OS X : support du module 'authentification externe VRDP + (bogue #3106)</para> + </listitem> + + <listitem> + <para>Mac OS X : déplacement des paramètres de prévisualisation du + bouton en temps réel dans les paramètres de la VM (plus d'option globale). + Utilisation du menu système pour le configurer</para> + </listitem> + + <listitem> + <para>Mac OS X : ajout du menu système à la VM</para> + </listitem> + + <listitem> + <para>Support 3D : correction de l'affichage de la surface corrompue + (bogue #5695)</para> + </listitem> + + <listitem> + <para>Support 3D : correction de plantages de la VM lors de l'utilisation + de <emphasis>ARB_IMAGING</emphasis> (bogue #6014)</para> + </listitem> + + <listitem> + <para>Support 3D : correction d'une déclaration où les applications invitées + utilisent plusieurs fenêtres avec un seul contexte (bogue #4598)</para> + </listitem> + + <listitem> + <para>Support 3D : ajout du support d GL_ARB_pixel_buffer_object</para> + </listitem> + + <listitem> + <para>Support 3D : ajout du support d'OpenGL 2.1</para> + </listitem> + + <listitem> + <para>Support 3D : correction du cadre Final de l'animation Compiz qui + n'est pas à jour avec l'écran (Mac OS X seulement) (bogue #4653)</para> + </listitem> + + <listitem> + <para>Support 3D : correction d'un écran noir après le chargement d'un + instantané de VM où Compiz est activé</para> + </listitem> + + <listitem> + <para>Ajout du support de <emphasis>Virtual Distributed Ethernet</emphasis> (VDE) + (hôtes Linux seulement ; voir <xref linkend="networkingmodes" />)</para> + </listitem> + + <listitem> + <para>Ajout du support du high precision event timer (HPET) virtuel</para> + </listitem> + + <listitem> + <para>OVF : correction de l'association de deux canaux IDE en OVF et + le contrôleur IDE dans VirtualBox</para> + </listitem> + + <listitem> + <para>OVF : correction des identifiants des chaînes VMDK et tri des + éléments XML de rasd : par nom et ordre alphabétique comme le prévoit le + standard</para> + </listitem> + + <listitem> + <para>VBoxShell : extension du shell Python interactif pour avoir une GUI + complètement fonctionnelle dans VirtualBox</para> + </listitem> + + <listitem> + <para>Suppléments Linux : support de Fedora 13 (bogue #6370)</para> + </listitem> + + <listitem> + <para>VBoxManage : correction des vérifications strictes dépassées lors + de la création d'une partition VMDK brute (bogues #688, #4438)</para> + </listitem> + + </itemizedlist> + </sect1> + + <sect1> + <title>Version 3.1.8 (10-05-2010)</title> + + <para>C'est une version de maintenance. Les éléments suivants ont été corrigés et/ou + ajoutés :</para> + + <itemizedlist> + + <listitem> + <para>VMM : correction d'un plantage avec OpenSUSE 11.3, noyau de base + très tôt au démarrage (virtualisation logicielle seulement)</para> + </listitem> + + <listitem> + <para>VMM : correction d'un état invalide pendant une téléportation</para> + </listitem> + + <listitem> + <para>VMM : correction d'un plantage de l'invité OS/2 quand la pagination + imbriquée activée</para> + </listitem> + + <listitem> + <para>VMM : correction d'une grosse perte des performances d'affichage + (AMD-V avec la pagination imbriquée seulement) </para> + </listitem> + + <listitem> + <para>GUI : correction d'un bogue off-by-one lors du passge de + coordinations absolues de la souris à l'invité (régression 3.1.6)</para> + </listitem> + + <listitem> + <para>GUI : affichage de la vraie version des suppléments invité, pas de + la version de l'interfac</para> + </listitem> + + <listitem> + <para>GUI : lors de l'ajout d'un slot DVD ou amovible dans la VM et + qu'une boîte de dialogue des paramètres des supports de stockage apparaît, + ne connecte pas de médium aléatoire mais le slot reste tout simplement + vide</para> + </listitem> + + <listitem> + <para>GUI : ajout des paramètres <computeroutput>--seamless</computeroutput> et + <computeroutput>--fullscreen</computeroutput> en ligne de commande + (bogue #4220)</para> + </listitem> + + <listitem> + <para>GUI : correction d'une erreur de segmentation dans de rares circonstances</para> + </listitem> + + <listitem> + <para>Accélération graphique 2D : correction de problèmes d'affichage + lorsqu'on travaille avec des modes non 32 bits (bogues #6094 & #6208)</para> + </listitem> + + <listitem> + <para>LsiLogic : correction de la détection des disques durs connectés + au port 0 lors de l'utilisation des pilotes de LSI</para> + </listitem> + + <listitem> + <para>ATA : correction de plantages sporadiques avec les invités Linux + lorsqu'il y a un disque dur et un lecteur DVD sur le même canal + (bogue #6079)</para> + </listitem> + + <listitem> + <para>Réseau : possibilité de démarrer une VM même si tous les adaptateurs + réseaux sont connectés</para> + </listitem> + + <listitem> + <para>Réseau : support du mode promiscuous pour e1000 et des adaptateurs + paravirtualisés (bogue #6519)</para> + </listitem> + + <listitem> + <para>NAT : correction d'une latence ICMP (hôtes non Windows seulement ; + bogue #6427)</para> + </listitem> + + <listitem> + <para>SCSI : correction de plantages de l'invité dans certaines circonstances + quand on démarre à partir de périphériques SCSI</para> + </listitem> + + <listitem> + <para>VBoxManage : correction de plusieurs bogues dans le clonage des + images (l'un d'eux est le bogue #6408)</para> + </listitem> + + <listitem> + <para>VBoxManage : correction de <emphasis>modifyvm --natnet default</emphasis></para> + </listitem> + + <listitem> + <para>Hôtes Solaris : correction d'un kernel panic quand le réseau + bridgé pourrait ne pas s'initialiser</para> + </listitem> + + <listitem> + <para>Hôtes Solaris : correction de la priorité des paquets VLAN marqués + en réseau bridgé</para> + </listitem> + + <listitem> + <para>Dossiers partagés : correction d'un problème dans la copie de + fichiers en lecture seule (invités Linux seulement ; bogue #4890)</para> + </listitem> + + <listitem> + <para>Dossiers partagés : renommage du module du noyau invité de + <emphasis>vboxvfs</emphasis> en <emphasis>vboxsf</emphasis> pour qu'il + soit chargeable à la demande par le noyau Linux. Cela corrige le montage + dans /etc/fstab avec Ubuntu 10.04</para> + </listitem> + + <listitem> + <para>Dossiers partagés : correction des droits setuid des fichiers (invités + Solaris seulement)</para> + </listitem> + + <listitem> + <para>Dossiers partagés : correction de l'effacement récursif des + répertoires (invités Solaris seulement ; bogue #6513)</para> + </listitem> + + <listitem> + <para>Suppléments invité : support du redimensionnement transparent + et dynamique sur certains anciens invités X11 (bogue #5840)</para> + </listitem> + + <listitem> + <para>Suppléments Solaris : correction des dépendances de la bibliothèque + OpenGL (bogue #6435)</para> + </listitem> + + <listitem> + <para>Emulation clavier/souris : correction de la gestion des événements + clavier/souris simultanés dans certaines circonstances (bogue #5375)</para> + </listitem> + + <listitem> + <para>Emulation souris : jamais de bascule direct de l'explorateur au + mode IntelliMouse car cela désoriente le pilote de souris de FreeBSD + (bogue #6488)</para> + </listitem> + + <listitem> + <para>SDK : correction d'une fuite de mémoire dans <emphasis>IDisplay::takeScreenShotSlow()</emphasis> (bogue #6549)</para> + </listitem> + + <listitem> + <para>Support 3D : correction d'un cadre Final de l'animation Compiz + qui ne se met pas à jour sur l'écran (Mac OS X seulement) (bogue #4653)</para> + </listitem> + + <listitem> + <para>VRDP : possibilité de sonder localhost seulement sur Mac OS X (bogue + #5227)</para> + </listitem> + + <listitem> + <para>Hôtes Linux : ajout du support USB de l'hôte pour Ubuntu 10.04 et + d'aut!es hôtes sans démon hal ou usbfs (bogue #6343)</para> + </listitem> + + <listitem> + <para>Service Web : davantage de corrections de structs et d'échelle dans + les bindings PHP</para> + </listitem> + + <listitem> + <para>Hôtes Windows : on fait en sorte que le pilote du réseau bridgé + prévienne que le dll soit correctement désenregistré lors de la + désinstallation (bogue #5780)</para> + </listitem> + + </itemizedlist> + </sect1> + + <sect1> + <title>Version 3.1.6 (25-03-2010)</title> + + <para>C'est une version de maintenance. Les éléments suivants ont été corrigés et/ou + ajoutés :</para> + + <itemizedlist> + + <listitem> + <para>Hôtes Linux : correction d'un problème de temps sur des hôtes + avec des noyaux Linux 2.6.31 ou supérieur avec certains processeurs + (mode temporel asynchrone ; bogue #6250)</para> + </listitem> + + <listitem> + <para>Hôtes Linux : bonne gestion des événements de suspension/réveil de + l'hôte sur les noyaux Linux 2.6.30 ou supérieur (bogue #5562)</para> + </listitem> + + <listitem> + <para>Hôtes Mac OS X : correction d'un plantage VBoxSVC pendant + l'énumération des interfaces réseaux de l'hôte dans certaines circonstances</para> + </listitem> + + <listitem> + <para>Instantanés : correction d'une corruption d'image après la + synchronisation d'instantanés dans certaines circonstances (bogue #6023)</para> + </listitem> + + <listitem> + <para>Instantanés : correction d'un plantage avec VBoxHeadless / OSE</para> + </listitem> + + <listitem> + <para>VMM : correction d'une guru meditation pendant le comptage des + référence (bogue #4940)</para> + </listitem> + + <listitem> + <para>VMM : amélioration de la stabilité SMP des invités</para> + </listitem> + + <listitem> + <para>VMM : correction de problèmes de débogage avec le maériel VT-x + (bogues #477 & #5792)</para> + </listitem> + + <listitem> + <para>VMM : correction d'une guru meditation + <emphasis>PGMDynMapHCPage</emphasis> + (Mac OS X ; VT-x seulement ; bogue #6095)</para> + </listitem> + + <listitem> + <para>VMM : correction d'une guru meditation + <emphasis>pgmPoolTrackFlushGCPhysPTInt</emphasis> + (Mac OS X ; VT-x seulement ; bogues #6095 & #6125)</para> + </listitem> + + <listitem> + <para>VMM : correction d'un plantage de l'hôte lors de l'exécution d'invités + PAE en mode VT-X (Mac OS X seulement ; bogue #5771)</para> + </listitem> + + <listitem> + <para>GUI : correction de l'affichage des messages d'erreur (bogue #4345)</para> + </listitem> + + <listitem> + <para>GUI : correction de l'impossibilité d'entrer en mode transparent + (bogues #6185, #6188)</para> + </listitem> + + <listitem> + <para>Support 3D : correction d'une déclaration et d'un clignottement quand + l'application invitée utilise plusieurs fenêtres avec un seul contexte + OpenGL (bogue #4598)</para> + </listitem> + + <listitem> + <para>Support 3D : correction de plantages de l'hôte lors de l'utilisation + des appels de l'élément <emphasis>GL_EXT_compiled_vertex_array</emphasis> et + de l'échelle (bogue #6165)</para> + </listitem> + + <listitem> + <para>Support 3D : correction d'erreurs de l'éditeur de liens lors de + l'exécution avec les bibliothèques OpenQL de l'invité + (bogue #5297)</para> + </listitem> + + <listitem> + <para>Support 3D : correction d'un plantage du visualiseur d'extension + OpenGL au démarrage (bogue #4962)</para> + </listitem> + + <listitem> + <para>NAT : correction d'une régression 3.1.4 sur les hôtes Windows avec + laquelle la fin des bonnes connexions était cassée + (bogue #6237)</para> + </listitem> + + <listitem> + <para>NAT : les paramètres réseaux alternatifs ne se stockait pas d'un + démarrage à l'autre (bogue #6176)</para> + </listitem> + + <listitem> + <para>NAT : correction d'une corruption de mémoire pendant le trafic + ICMP dans certaines circonstances</para> + </listitem> + + <listitem> + <para>Réseau : possibilité de passer à l'interface hôte ou au réseau + interne pendant qu'une VM est en fonction (bogue #5781)</para> + </listitem> + + <listitem> + <para>VHD : correction des images dont la taille de bloc n'est pas de 2Mo</para> + </listitem> + + <listitem> + <para>USB : correction d'une régression dans la connexion des périphériques + filtrés (bogue #6251)</para> + </listitem> + + <listitem> + <para>USB : correction d'un plantage avec OHCI dans de rares circonstances + (bogue #3571)</para> + </listitem> + + <listitem> + <para>VRDP : correction d'un accroc dans de rares circonstances lors + d'une connexion de périphériques USB</para> + </listitem> + + <listitem> + <para>ACPI : on empêche l'invité de se geler lorsqu'il accède à + /proc/acpi pour déterminer l'état de la batterie de l'hôte à l'adaptateur + AC (hôtes Linux seulement ; bogue #2836)</para> + </listitem> + + <listitem> + <para>PulseAudio : correction d'un gel de l'invité dans certaines + conditions (régression 3.1.4 ; bogue #6224)</para> + </listitem> + + <listitem> + <para>BIOS : augmentation de l'espace des chaînes DMI</para> + </listitem> + + <listitem> + <para>BIOS : correction d'un problème de routine d'interruption pour + certaines configurations (quand l'E/S-APIC est activé, l'ACPI inusité ; + bogue #6098)</para> + </listitem> + + <listitem> + <para>iSCSI : plus de robustesse dans la gestion d'une réponse + <emphasis>INQUIRY</emphasis></para> + </listitem> + + <listitem> + <para>iSCSI : plus de robustesse dans la gestion du sens des données</para> + </listitem> + + <listitem> + <para>BusLogic : correction pour les invités FreeBSD</para> + </listitem> + + <listitem> + <para>Service Web : vboxwebsrv est maintenant multithreadé</para> + </listitem> + + <listitem> + <para>Service Web : correction de la gestion des structs et des échelles + dans les bindings PHP</para> + </listitem> + + <listitem> + <para>Installeur Solaris: correction du masque réseau pour persister + entre les redémarrages pour l'interface Host-only (bogue #4590)</para> + </listitem> + + <listitem> + <para>Installeur Linux : suppression de la dépendance externe de libpng12.so (bogue #6243)</para> + </listitem> + + <listitem> + <para>Suppléments Solaris : correction d'une journalisation du noyau + superflue (bogue #6181)</para> + </listitem> + + <listitem> + <para>Suppléments Linux : correction d'un accroc au démarrage du serveur + X dans les invités Fedora12 et dans ceux ayant Linux 2.6.33 ou supérieur + (bogue #6198)</para> + </listitem> + + <listitem> + <para>Suppléments Linux : support du niveau speedboot (démarrage rapide) + de Mandriva (bogue #5484)</para> + </listitem> + + <listitem> + <para>Suppléments Linux : correction du contexte de sécurité SELinux de + mount.vboxsf (bogue #6362)</para> + </listitem> + + <listitem> + <para>Suppléments Linux : support d'Ubuntu 10.04 (bogue #5737)</para> + </listitem> + + <listitem> + <para>Service Web : mise à jour des bindings PHP pour corriger des + problèmes avec les enums and collections (énumérations et collections)</para> + </listitem> + + </itemizedlist> + </sect1> + + <sect1> + <title>Version 3.1.4 (12-02-2010)</title> + + <para>C'est une version de maintenance. Les éléments suivants ont été corrigés et/ou + ajoutés :</para> + + <itemizedlist> + + <listitem> + <para>VMM : corrections de stabilité de SMP</para> + </listitem> + + <listitem> + <para>VMM : correction d'une guru meditation dans certains cas rares (bogue #5968)</para> + </listitem> + + <listitem> + <para>VMM : activation de NXE pour les invités où PAE est activé (VT-x + et AMD-V sur les hôtes 32 bits seulement ; bogue #3578)</para> + </listitem> + + <listitem> + <para>VMM : ajout d'un contournement pour les BIOS cassés, avec lequel + VirtualBox croit que l'AMD-V est utilisé (pour des détails, voir le bogue #5639)</para> + </listitem> + + <listitem> + <para>VMM : correction d'un rare redémarrage de l'hôte lors de la + restauration d'un état sauvegardé (bogue #3945)</para> + </listitem> + + <listitem> + <para>VMM : correction d'une incompatibilité avec les noyaux Linux + 2.6.32 (virtualisation logicielle seulement ; bogue #6100)</para> + </listitem> + + <listitem> + <para>VMM : activation de la pagination imbriquée par défaut sur les + nouvelles VMs (s'il est disponible ; VT-x et AMD-V seulement)</para> + </listitem> + + <listitem> + <para>VMM : activation de VPID par défaut pour les nouvelles VMs (s'il + est disponible ; VT-x seulement) </para> + </listitem> + + <listitem> + <para>VMM : stricts vérifications de compatibilité CPUID lors d'une + téléportation ; pour récupérer l'ancien paramétrage du comportement de + "VBoxInternal/CPUM/StrictCpuIdChecks" sur 0</para> + </listitem> + + <listitem> + <para>VMM : correction d'un plantage de la VM avec certaines applications + Windows 16 bits (virtualisation logicielle seulement ; bogue #5399) </para> + </listitem> + + <listitem> + <para>Instantanés : correction d'une régression 3.1 qui cassait + l'effacement d'instantanés quand une machine était connecté à un support + de stockage immuable ou writethrough (bogue #5727)</para> + </listitem> + + <listitem> + <para>État sauvegardé : correction d'une erreur + <emphasis>VERR_SSM_LOADED_TOO_MUCH</emphasis> lors du chargement de + <emphasis>DisplayScreenshot</emphasis>(bogue #6162)</para> + </listitem> + + <listitem> + <para>VBoxManage : ajout d'une opération <emphasis>restorecurrent</emphasis> + à la commande snapshots</para> + </listitem> + + <listitem> + <para>VBoxManage : correction de la recherche d'instantanés cassés par + noms (bogue #6070</para> + </listitem> + + <listitem> + <para>GUI : correction du bouton "Recharger" cassé qui recharge le XML + de la machine lorsqu'une machine est inaccessible</para> + </listitem> + + <listitem> + <para>GUI : correction du mode plein écran de l'invité après un + redémarrage (bogue #5372)</para> + </listitem> + + <listitem> + <para>GUI : prise en charge correcte de Ctrl+Break sur les hôtes X11 + (bogue #6122)</para> + </listitem> + + <listitem> + <para>GUI : correction des LEDs d'état des périphériques de stockage</para> + </listitem> + + <listitem> + <para>GUI : contournement de la désactivation du mode transparent sur + des hôtes KDE (bogue KWin)</para> + </listitem> + + <listitem> + <para>Support 3D : correction d'un avertissement SELinux disant que + VBoxOGL.so exige la resituation du texte (bogue #5690)</para> + </listitem> + + <listitem> + <para>Support 3D : correction d'un affichge corrompu (bogue #5695)</para> + </listitem> + + <listitem> + <para>Support 3D : affichages libres à la fin des applications invités (bogue #5206)</para> + </listitem> + + <listitem> + <para>Support 3D : correction de plantages + <emphasis>ubigraph_server</emphasis> (bogue #4674)</para> + </listitem> + + <listitem> + <para>Support 3D : corrections pour les invités Solaris 64 bits</para> + </listitem> + + <listitem> + <para>Transparent : désactivation du mode transparent lorsque l'invité + modifie la résolution de l'écran (bogue #5655)</para> + </listitem> + + <listitem> + <para>NAT : correction d'une forte charge du processeur dans certaines + circonstances (hôtes Windows seulement ; bogue #5787)</para> + </listitem> + + <listitem> + <para>NAT : correction de la gestion du drapeau <emphasis>broadcast</emphasis> + dans les requêtes DHCP</para> + </listitem> + + <listitem> + <para>NAT : correction de rares plantages à cause d'une déclaration + dans le code d'ICMP (bogue #3217)</para> + </listitem> + + <listitem> + <para>Virtio-net : ne plante pas quand on accède aux ports au-delà de + la plage valide (bogue #5923)</para> + </listitem> + + <listitem> + <para>LsiLogic : correction pour les invités Windows 7</para> + </listitem> + + <listitem> + <para>ATA : corrction d'une guru meditation lors de l'installation + d'invités Solaris 8 (bogue #5972)</para> + </listitem> + + <listitem> + <para>VHD : correction d'une incompatibilité avec Virtual PC (bogue #5990)</para> + </listitem> + + <listitem> + <para>VHD : mise à jour de la sauvegarde du pied de page après la + définition d'un nouvel UUID (bogue #5004)</para> + </listitem> + + <listitem> + <para>DVD hôte : correction véritable du chargement du paramètre + "passthrough" du fichier de configuration (bogue #5681)</para> + </listitem> + + <listitem> + <para>Dossiers partagés : correction de la résolution de la cible + du lien symbolique sur Linux (régression 3.1.2)</para> + </listitem> + + <listitem> + <para>VRDP : correction de l'erreur <emphasis>VERR_NET_ADDRESS_IN_USE</emphasis> + au redémarrage d'une VM (régression 3.1 ; bogue #5902)</para> + </listitem> + + <listitem> + <para>VRDP : correction d'un plantage sur Mac OS X lorsqu'on active + la 3D (régression 3.1)</para> + </listitem> + + <listitem> + <para>PulseAudio : correction de l'enregistrement (bogue #4302)</para> + </listitem> + + <listitem> + <para>USB : correction d'un écran bleu à l'ex!inction (hôtes Windows + Seulement ; bogue #5885)</para> + </listitem> + + <listitem> + <para>BIOS : correction des attributs pendant le défilement de texte (bogue #3407)</para> + </listitem> + + <listitem> + <para>OVF : correction de messages d'erreur bizarres lors de l'importation + du disque errors</para> + </listitem> + + <listitem> + <para>OVF : n'exige pas les droits d'écriture dans le fichier .ovf pour + une importation (régression 3.1 ; bogue #5762)</para> + </listitem> + + <listitem> + <para>iSCSI : correction de la prise d'instantanés d'une VM en fonction + (bogue #5849)</para> + </listitem> + + <listitem> + <para>Hôtes Solaris : plusieurs corrections de l'USB (y compris le support + de l'iPod d'Apple ; bogue #5873)</para> + </listitem> + + <listitem> + <para>Installur Solaris : correction de la suppression du module USB et + d'une incompatibilité du binaire "id" dans Solaris 10</para> + </listitem> + + <listitem> + <para>Suppléments invité : correction d'un mauvais ajustement de l'heure + de l'invité si l'horloge de l'invité est en avance (régression 3.1 ; + invités non Windows seulement)</para> + </listitem> + + <listitem> + <para>Suppléments Linux : correction des dossiers partagés pour les + invités Linux 2.6.32 (bogue #5891)</para> + </listitem> + + <listitem> + <para>Suppléments Linux : le pilote de la souris fonctionne de nouveau + sur un invité Debian 5.0.3 (régression 3.1.2, bogue #5832)</para> + </listitem> + + <listitem> + <para>Suppléments Windows : correction d'un mauvais fonctionnement de + VBoxService qui cassait la synchronisation de temps (bogue #5872)</para> + </listitem> + + <listitem> + <para>Suppléments Windows : correction de problèmes de désinstallation + sur les invités 64 bits</para> + </listitem> + + <listitem> + <para>Suppléments Windows : correction de certains problèmes d'exécution + sysprep</para> + </listitem> + + <listitem> + <para>Suppléments X.Org : ne rejette jamais le mode graphique sauvegardé + car il serait invalide (bogue #5731)</para> + </listitem> + + <listitem> + <para>Suppléments XFree86 : réacceptation des suggestions de mode graphique + pour le mode de départ</para> + </listitem> + + </itemizedlist> + + </sect1> + + <sect1> + <title>Version 3.1.2 (17-12-2009)</title> + + <para>C'est une version de maintenance. Les éléments suivants ont été corrigés et/ou + ajoutés :</para> + + <itemizedlist> + + <listitem> + <para>VMM : correction d'une régression dans la stabilité de SMP</para> + </listitem> + + <listitem> + <para>USB : correction de plantages de l'hôte liés à l'USB sur les + hôtes Windows 64 bits (bogue #5237)</para> + </listitem> + + <listitem> + <para>Principal : mauvaise valeur par défaut de HWVirtExExclusive pour + les nouvelles VMs (bogue #5664)</para> + </listitem> + + <listitem> + <para>Principal : le paramètre passthrough DVD était perdu (bogue #5681)</para> + </listitem> + + <listitem> + <para>VBoxManage : les disques iSCSI ne supportent pas l'ajout d'un + commentaire (bogue #4460)</para> + </listitem> + + <listitem> + <para>VBoxManage : ajout d'options <emphasis>--cpus</emphasis> et + <emphasis>--memory</emphasis> absentes à <emphasis>--import</emphasis> + OVF</para> + </listitem> + + <listitem> + <para>GUI : correction de la boîte de dialogue de mise à jour de VBox URL + pour l'allemend et l'autrichien</para> + </listitem> + + <listitem> + <para>GUI : mises à jour de NLS</para> + </listitem> + + <listitem> + <para>OVF : correction de l'exportation de noms de contrôleurs de stockage + non standards (bogue #5643)</para> + </listitem> + + <listitem> + <para>Hôtes Solaris : plusieurs corrections pour l'USB (y compris le + support de l'iPhone d'Apple)</para> + </listitem> + + <listitem> + <para>Hôtes Mac OS X : plusieurs corrections du support 3D</para> + </listitem> + + <listitem> + <para>Hôtes Mac OS X : réactivation des combinaisons CMD+Touche même + si la touche hôte n'est pas CMD (bogue #5684)</para> + </listitem> + + <listitem> + <para>Hôtes Mac OS X : correction du défilement trop rapide si on utilise + la roulette de la souris dans l'invité (bogue #5672)</para> + </listitem> + + <listitem> + <para>Hôtes Mac OS X : le menu système & la barre de menus ne + disparaissent pas en plein écran quand la VM n'est pas en fonction sur + le premier afficheur (bogue + #1762)</para> + </listitem> + + <listitem> + <para>Hôtes Mac OS X : ajout d'une option d'activation de "L'affichage + automatique du menu système & de la barre de menus en plein écran" + (bogue #5636)</para> + </listitem> + + <listitem> + <para>Installeur sur hôtes Windows : correction du démarrage de VBox + avec de mauvais privilèges juste après l'installation (bogue #4162)</para> + </listitem> + + <listitem> + <para>Interface hôte et réseau host-only : on empêche le pilote de se + décharger tant qu'une VM est active (hôtes Windows seulement)</para> + </listitem> + + <listitem> + <para>Réseau Host-only : correction de la création de l'interface + host-only (hôte Windows seulement) (bogue #5708)</para> + </listitem> + + <listitem> + <para>Virtio-net : ne plante pas si aucun réseau n'est connecté</para> + </listitem> + + <listitem> + <para>Virtio-net : correction du problème de réseau intermitant dans une + VM ayant plusieurs coeurs de processeurs virtuels</para> + </listitem> + + <listitem> + <para>NAT : correction de régressions dans la redircds:on de ports (bogue #5666)</para> + </listitem> + + <listitem> + <para>NAT : correction d'un plantage dans certaines conditions (bogue #5427)</para> + </listitem> + + <listitem> + <para>NAT : correction de la résolution de noms de fichiers contenant + une barre oblique ou un soulignement lorsqu'on utilise le proxy DNS du + résolveur d'hôte (bogue #5698)</para> + </listitem> + + <listitem> + <para>ATA : correction d'un plantage sporadique lors d'un réveil + après qu'une VM a été mise en pause de force (par exemple à cause d'une + cible iSCSI indisponible)</para> + </listitem> + + <listitem> + <para>SATA : correction des disques vmdk bruts (bogue #5724)</para> + </listitem> + + <listitem> + <para>Invités Linux : augmentation de la mémoire par défaut pour les + invités Redhat et Fedora</para> + </listitem> + + <listitem> + <para>Suppléments Linux : correction de l'installation sur bes + invités RHEL 3.9 et sur certains invités 64 bits</para> + </listitem> + + <listitem> + <para>Suppléments Linux : on empêche les avertissements SELinux + sur le repositionnement de texte dans VBoxOGL.so (bogue #5690)</para> + </listitem> + + <listitem> + <para>Invités X11 : correction du support de la souris pour certains + invités Xorg 1.4 (openSUSE 11.0)</para> + </listitem> + + <listitem> + <para>Invités X11 : correction d'une modification de xorg.conf pour + certaines anciennes versions de Xorg (openSUSE 11.1)</para> + </listitem> + + <listitem> + <para>Invités Windows : correction de certains problèmes à l'arrêt de + VBoxService</para> + </listitem> + + <listitem> + <para>Invités Windows : correction de problèmes de spinlock de VBoxVideo + sur NT4</para> + </listitem> + + <listitem> + <para>Suppléments invité Windows : correction de problèmes de + désinstallation de NT4</para> + </listitem> + + <listitem> + <para>Dossiers partagés : correction de la résolution de la cible de + liens symboliques (bogue #5631)</para> + </listitem> + + <listitem> + <para>Accélération graphique 2D : le mise en place d'un délai de chargement des dlls d'OpenGL + pour les hôtes Windows pour éviter des plantages de la GUI sur des + systèmes mal configurés</para> + </listitem> + + <listitem> + <para>Accélération graphique 2D : correction de problèmes de non + affichage des images pendant la lecture</para> + </listitem> + + </itemizedlist> + + </sect1> + + <sect1> + <title>Version 3.1.0 (30-11-2009)</title> + + <para>Cette version est une mise à jour majeure. Les nouvelles fonctions + majeures suivantes ont été ajoutées :</para> + + <itemizedlist> + + <listitem> + <para>Téléportation (migration d'une aka en fonction) ; migrer une session + de VM en fonction d'un hôte à l'autre (voir <xref linkend="teleporting" />)</para> + </listitem> + + <listitem> + <para>Les états de la VM peuvent être maintenant restaurés à partir d'instantanés + de votre choix plutôt qu'au dernier, on peut aussi prendre de nouveaux + instantanés à partir d'autres instantanés ("instantanés en arborescence" ; + voir <xref linkend="snapshots" />)</para> + </listitem> + + <listitem> + <para>Accélération graphique 2D pour les invités Windows ; utilisation + du matériel graphique de l'hôte pour l'étendue de la palette et la conversion + de couleurs (voir <xref linkend="guestadd-2d" />)</para> + </listitem> + + <listitem> + <para>Connexions de stockage plus flexible : les lecteurs CD/DVD peuvent + désormais être connectés aux contrôleurs de stockage de votre choix et + il peut y en avoir plusieurs (<xref linkend="storage" />)</para> + </listitem> + + <listitem> + <para>On peut changer de type de connexion réseau pendant qu'une VM est + en fonction</para> + </listitem> + + <listitem> + <para>Réécriture complète du support USB expérimental pour les hôtes + OpenSolaris utilisant les dernières améliorations USB de Solaris Nevada + 124 et suérieur</para> + </listitem> + + <listitem> + <para>Amélioration significative des performances des invités PAE et AMD64 + (VT-x et AMD-V seulement ; pagination normale (non nestée)) </para> + </listitem> + + <listitem> + <para>Support expérimental de l'EFI (Extensible Firmware Interface ; + voir <xref linkend="efi" />)</para> + </listitem> + + <listitem> + <para>Support des adaptateurs réseaux paravirtualisés (virtio-net ; + voir <xref linkend="nichardware" />)</para> + </listitem> + + </itemizedlist> + + <para>Par ailleurs, les éléments suivants ont été corrigés et/ou ajoutés :</para> + + <itemizedlist> + + <listitem> + <para>VMM : corrections de SMP pour l'invité pour certains cas rares</para> + </listitem> + + <listitem> + <para>GUI : les instantanés incluent une impression d'écran</para> + </listitem> + + <listitem> + <para>GUI : les supports de stockage verrouillés peuvent être démontés + de force</para> + </listitem> + + <listitem> + <para>GUI : la fenêtre de journal captait tous les événements de touches + des autres fenêtres graphiques (bogue #5291)</para> + </listitem> + + <listitem> + <para>GUI : possibilité de désactiver les filtres USB (bogue #5426)</para> + </listitem> + + <listitem> + <para>GUI : amélioration de la courbe de mémoire dans les paramètres de + la VM</para> + </listitem> + + <listitem> + <para>Support 3D : amélioration majeure de performances dans le + traitement de VBO</para> + </listitem> + + <listitem> + <para>Support 3D : ajout du support <emphasis>GL_EXT_framebuffer_object</emphasis>, + <emphasis>GL_EXT_compiled_vertex_array</emphasis></para> + </listitem> + + <listitem> + <para>Support 3D : correction de plantages dans FarCry, SecondLife, + Call of Duty, Unreal Tournament, Eve Online (bogues #2801, #2791)</para> + </listitem> + + <listitem> + <para>Support 3D : correction de corruptions graphiques dans World of Warcraft (bogue #2816)</para> + </listitem> + + <listitem> + <para>Support 3D : correction de du cadre Final de l'animation Compiz + qui ne se rafraîchissait pas sur l'écran (bogue #4653)</para> + </listitem> + + <listitem> + <para>Support 3D : correction d'un affichage incorrect des images + non ARGB sous compiz</para> + </listitem> + + <listitem> + <para>iSCSI : support des cibles iSCSI de plus de 2Tio</para> + </listitem> + + <listitem> + <para>VRDP : correction d'un plantage occasionnel du serveur VRDP (bogue #5424)</para> + </listitem> + + <listitem> + <para>Réseau : correction de l'émulation E1000 pour les invités QNX + (et probablement d'autres) (bogue #3206)</para> + </listitem> + + <listitem> + <para>NAT : ajout du proxy DNS du résolveur de l'hôte + (voir <xref linkend="nat_host_resolver_proxy" />)</para> + </listitem> + + <listitem> + <para>VMDK : correction du découpage incorrect de grosses images + rejetées en morceaux de 2G (bogue #5523, #2787)</para> + </listitem> + + <listitem> + <para>VMDK : correction d'un problème de compatibilité avec des fichiers + VNDK à taille fixe ou bruts (bogue #2723)</para> + </listitem> + + <listitem> + <para>VHD : correction d'une incompatibilité avec Hyper-V</para> + </listitem> + + <listitem> + <para>Support des fichiers images de disque en Parallels version 2 (HDD) ; + voir <xref linkend="vdidetails" /></para> + </listitem> + + <listitem> + <para>OVF : création de fichiers manifest lors de l'exportation et + vérification du contenu d'un fichier manifest facultatif lors de + l'importation</para> + </listitem> + + <listitem> + <para>OVF : correction du paramètre de la mémoire lors de l'importation (bogue #4188)</para> + </listitem> + + <listitem> + <para>Périphérique de souris : cinq boutons sont désormais passés à + l'invité (bogue #3773)</para> + </listitem> + + <listitem> + <para>VBoxHeadless : correction d'une perte de l'état sauvegardé quand + une VM ne parvient pas à démarrer</para> + </listitem> + + <listitem> + <para>VBoxSDL : correction d'un plantage lors de l'extinction (hôtes + Windows seulement)</para> + </listitem> + + <listitem> + <para>Hôtes basés sur X11 : possibilité pour les utilisateurs d'indiquer + leurs propres formes de code-barres (bogue #2302)</para> + </listitem> + + <listitem> + <para>Hôtes Mac OS X : n'affiche pas automatiquement le menu et le + menu système en plein écran (bogue #4866)</para> + </listitem> + + <listitem> + <para>Hôtes Mac OS X (64 bits) : n'interprète pas les événements de la + roulette de la souris comme des clics gauches (bogue #5049)</para> + </listitem> + + <listitem> + <para>Hôtes Mac OS X : correction d'une mort de la VM au moment de + l'extinction dans certaines conditions</para> + </listitem> + + <listitem> + <para>Hôtes Solaris : inclusion du paquet d'interface avec le noyau, + dans le paquet principal de VirtualBox</para> + </listitem> + + <listitem> + <para>Hôtes Solaris : support de l'architecture OpenSolaris Boomer (avec + la fondation son OSS)</para> + </listitem> + + <listitem> + <para>Dossiers partagés : VBOXSVR est visible dans le dossier Réseau + (invités Windows, bogue #4842)</para> + </listitem> + + <listitem> + <para>Dossiers partagés : améliorations de performance (invités Windows, + bogue #1728)</para> + </listitem> + + <listitem> + <para>Suppléments Windows, Linux et Solaris : ajout d'une notification + de jeu de ballon si la version de VirtualBox sur l'hôte a été mise à + jour et si les suppléments sont obsolètes</para> + </listitem> + + <listitem> + <para>Invités Solaris : correction de l'émulation du clavier (bogue #1589)</para> + </listitem> + + <listitem> + <para>Suppléments Solaris : correction des erreurs du champ + <emphasis>as_pagelock()</emphasis> touchant les propriétés (bogue #5337)</para> + </listitem> + + <listitem> + <para>Suppléments Windows : ajout du support de l'identification automatique + pour Windows Vista et Windows 7</para> + </listitem> + + <listitem> + <para>Suppléments Windows : amélioration de la recherche pour la + version du fichier des informations sur l'OS invité</para> + </listitem> + + <listitem> + <para>Suppléments Windows : correction de la détection des informations + de session d'OS sur Windows 7</para> + </listitem> + + <listitem> + <para>Suppléments Windows : correction d'un plantage en mode transparent + (contribution de Huihong Luo)</para> + </listitem> + + <listitem> + <para>Suppléments Linux : ajout du support de la désinstallation des + suppléments invité Linux (bogue #4039)</para> + </listitem> + + <listitem> + <para>Dossiers partagés et invités Linux : possibilité de monter un + dossier partagé si un fichier du même nom que le dossier existe dans + le répertoire actuel (bogue #928)</para> + </listitem> + + <listitem> + <para>SDK : ajout de bindings pour le service Web orienté objet pour + PHP5</para> + </listitem> + + </itemizedlist> + + </sect1> + + <sect1> + <title>Version 3.0.12 (10-11-2009)</title> + + <para>C'est une version de maintenance. Les éléments suivants ont été corrigés et/ou + ajoutés :</para> + + <itemizedlist> + + <listitem> + <para>VMM : réduction de la surcharge d'ES-APIC pour les invités 32 bits Windows NT/2000/XP/2003 ; + exige le support 64 bits (VT-x seulement ; bogue #4392) </para> + </listitem> + + <listitem> + <para>VMM : correction d'une double interruption de l'horloge sur les + anciens noyaux Linux utilisant l'ES-APIC (ce qui aboutissait à ce que + l'heure de l'invité tournait à double vitesse ; bogue #3135)</para> + </listitem> + + <listitem> + <para>VMM : ré-initizalisation de VT-x et d'AMD-V après une + suspension ou une hibernation de l'hôte ; certains BIOS l'oublient + (hôtes Windows seulement ; bogue #5421)</para> + </listitem> + + <listitem> + <para>VMM : correction du chargement de l'état sauvegardé quand la + pré-affectation de la RAM est activée</para> + </listitem> + + <listitem> + <para>BIOS : on ignore les codes d'extinction inconnus plutôt que de + provoquer une guru meditation (bogue #5389)</para> + </listitem> + + <listitem> + <para>GUI : ne démarre jamais une VM avec un seul clic dans la fenêtre + de sélection (bogue #2676)</para> + </listitem> + + <listitem> + <para>Série : réduction de la probabilité de perte d'octets si l'hôte + est connecté à un fichier brut</para> + </listitem> + + <listitem> + <para>VMDK : correction de la gestion des variantes de découpage d'images + et correction d'une régression 3.0.10 (bogue #5355)</para> + </listitem> + + <listitem> + <para>VRDP : correction d'un plantage occasionnel du serveur VRDP</para> + </listitem> + + <listitem> + <para>Réseau : même si le câble réseau virtuel est débranché, certains + invités pouvaient envoyer/recevoir des paquets (E1000 ; bogue #5366)</para> + </listitem> + + <listitem> + <para>Réseau : même si le câble réseau virtuel est débranché, cla carte + PCNet recevait des paquets spurious qui pourraient perdre l'invité + (bogue #4496)</para> + </listitem> + + <listitem> + <para>Dossiers partagés : correction de la modification de la casse + dans les noms de fichiers (bogue #2520)</para> + </listitem> + + <listitem> + <para>Suppléments Windows : correction d'un plantage en mode transparent + (contribution de Huihong Luo)</para> + </listitem> + + <listitem> + <para>Suppléments Linux : correction de l'écriture dans des fichiers + ouverts en mode <emphasis>O_APPEND</emphasis> (bogue #3805)</para> + </listitem> + + <listitem> + <para>Suppléments Solaris : correction d'une régression dans le pilote + des suppléments invité qui provoquait, entre autres, la perte des mises + à jour des propriétés invité et des messages d'erreur périodiques dans + les journaux système</para> + </listitem> + + </itemizedlist> + + </sect1> + + <sect1> + <title>Version 3.0.10 (29-10-2009)</title> + + <para>C'est une version de maintenance. Les éléments suivants ont été corrigés et/ou + ajoutés :</para> + + <itemizedlist> + + <listitem> + <para>VMM : corrections de stabilité pour les invités SMP</para> + </listitem> + + <listitem> + <para>VMM : correction d'une guru meditation en pagination imbriquée et + avec les invités SMP (bogue #5222) </para> + </listitem> + + <listitem> + <para>VMM : changement de l'utilisation de VT-x/AMD-V pour détecter + d'autres hyperviseurs actifs ; nécessaire par exemple pour le mode + compatibilité XP de Windows 7 (hôtes Windows & Mac OS X seulement ; bogue #4239) </para> + </listitem> + + <listitem> + <para>VMM : guru meditation pendant l'installation et le redémarrage + de OpenServer SCO (VT-x seulement ; bogue #5164)</para> + </listitem> + + <listitem> + <para>VMM : correction de la gestion des bits d'accès dans certains cas + (bogue #5248)</para> + </listitem> + + <listitem> + <para>VMM : correction d'un flash VPID (VT-x seulement)</para> + </listitem> + + <listitem> + <para>VMM : correction de la pagination imbriquée cassée pour les invités + 64 bits sur les hôtes 32 bits (AMD-V seulement ; bogue #5285)</para> + </listitem> + + <listitem> + <para>VMM : correction du chargement des anciens çtats états sauvegardé/instantané + (bogue #3984)</para> + </listitem> + + <listitem> + <para>Hôtes Mac OS X : correction de fuites de mémoire (bogue #5084)</para> + </listitem> + + <listitem> + <para>Hôtes Mac OS X (Snow Leopard) : correction d'un problème de + dessin dans une configuration à deux écrans (bogue #4942)</para> + </listitem> + + <listitem> + <para>Hôtes Windows : mises à jour de l'installeur pour Windows 7</para> + </listitem> + + <listitem> + <para>Hôtes Solaris : la gestion des dépassements de mémoire était + incorrecte (bogue #5241)</para> + </listitem> + + <listitem> + <para>Hôtes Solaris : la correction précédente de #5077 cassait le + support du DVD de l'hôte sur Solaris 10 (régression VBox 3.0.8)</para> + </listitem> + + <listitem> + <para>Hôtes Linux : correction de la compilation du module dans + Linux 2.6.32rc4 et supérieur</para> + </listitem> + + <listitem> + <para>Suppléments invité : correction d'un remplissage de mémoire possible + du noyau de l'OS invité</para> + </listitem> + + <listitem> + <para>Suppléments invité : correction de problèmes de stabilité avec + les invités SMP</para> + </listitem> + + <listitem> + <para>Suppléments Windows : correction d'un problème de profondeur de + couleurs avec les hôtes à faible résolution, les + netbooks, etc. (bogue #4935)</para> + </listitem> + + <listitem> + <para>Suppléments Windows : correction d'une erreur NO_MORE_FILES lors + de la sauvegarde dans des dossiers partagés (bogue #4106)</para> + </listitem> + + <listitem> + <para>Suppléments Windows : correction de la création de sous-répertoires + dans les dossiers partagés (bogue #4299)</para> + </listitem> + + <listitem> + <para>Suppléments Linux : <emphasis>sendfile()</emphasis> renvoyait + <emphasis>-EOVERFLOW</emphasis> lorsqu'il était exécuté sur un + dossier partagé (bogue #2921)</para> + </listitem> + + <listitem> + <para>Suppléments Linux : correction d'une mauvaise valeur d'utilisation + du disque (hôtes non Windows seulement)</para> + </listitem> + + <listitem> + <para>installeur Linux : enregistrement des sources du module dans DKMS + même si le paquet fournit les bons modules pour la version actuellement + utilisée du noyau</para> + </listitem> + + <listitem> + <para>Support 3D : suppression d'une déclaration OpenGL invalide (bogue #5158)</para> + </listitem> + + <listitem> + <para>Réseau : correction de l'émulation d'Am79C973 PCNet pour les + invités QNX (et probablement d'autres) (bogue #3206)</para> + </listitem> + + <listitem> + <para>VMDK : correction de la gestion des variantes d'iimages découpées</para> + </listitem> + + <listitem> + <para>VHD : ne roporte pas la mise à jour du pied de page lors de + l'envoi d'une image pour empêcher des incohérences </para> + </listitem> + + <listitem> + <para>USB : correction de stabilité pour certains périphériques USB 2.0</para> + </listitem> + + <listitem> + <para>GUI : ajout d'un index de recherche au fichier d'aide .chm</para> + </listitem> + + <listitem> + <para>GUI/Hôtes Windows : correction de la gestion du verrouillage + Majuscule sur les claviers français (bogue #2025)</para> + </listitem> + + <listitem> + <para>Presse-papier partagé/hôtes X11 : correction d'un plantage quand + l'initialisation du presse-papier a échoué (bogue #4987)</para> + </listitem> + + </itemizedlist> + + </sect1> + + <sect1> + <title>Version 3.0.8 (02-10-2009)</title> + + <para>C'est une version de maintenance. Les éléments suivants ont été corrigés et/ou + ajoutés :</para> + + <itemizedlist> + + <listitem> + <para>VMM : correction d'une régression sur les invités 64 bits sur + les hôtes 32 bits dans la 3.0.6 VT-x seulement ; bogue #4947)</para> + </listitem> + + <listitem> + <para>VMM : correction d'une guru meditation par une erreur triple du + recompilateur (VT-x & AMD-V only seulement ; bogue #5058) </para> + </listitem> + + <listitem> + <para>VMM : correction d'un accroc après la restauration de l'état de + l'invité (AMD-V, invité Windows 32 bits où ES/APIC est activé seulement, + bogue #5059) </para> + </listitem> + + <listitem> + <para>VMM : correction d'un problème de pagination avec les invités OS/2 </para> + </listitem> + + <listitem> + <para>VMM : correction d'une guru meditation dans de rares cas (régression + 2.0 ; virtualisation logicielle seulement) </para> + </listitem> + + <listitem> + <para>VMM : correction d'une déclaration relâchée pendant la restauration + d'un état quand on utilise l'émulation Sound Blaster 16 (bogue #5042) </para> + </listitem> + + <listitem> + <para>Sécurité : correction d'une vulnérabilité qui permettait d'exécuter + des commandes avec des privilèges administrateur</para> + </listitem> + + <listitem> + <para>Hôtes Linux : correction d'une déclaration lors de l'exécution dans + l'implémentation de semaphore qui était retardée dans certaines conditions (bogue #616)</para> + </listitem> + + <listitem> + <para>Hôtes Linux : modification du mode d'accès USB par défaut sur + certaines distributions (bogues #3394 et #4291)</para> + </listitem> + + <listitem> + <para>Hôtes Linux : sur les Gentoo endurcis, le démon VBoxSVC plantait + en ouvrant les paramètres réseaux de la VM (bogue #3732)</para> + </listitem> + + <listitem> + <para>Hôtes Linux, Hôtes Solaris : passage de la variable XAUTHORITY à + la variable DISPLAY au démarrage d'une VM avec VBoxManage ou le sélecteur + de VM (bogue #5063)</para> + </listitem> + + <listitem> + <para>Hôtes Linux : utilisation de sysfs pour énumérer les lecteurs de + l'hôte si hal n'est pas disponible</para> + </listitem> + + <listitem> + <para>Hôtes Solaris : correction d'un bogue qui créerait un accroc de + l'hôte de façon sporadique car les interruptions n'étaient pas réactivées + à chaque fois</para> + </listitem> + + <listitem> + <para>Hôtes Solaris : correction d'un kernel panic avec le réseau + bridgé et host-only (bogue #4775)</para> + </listitem> + + <listitem> + <para>Hôtes Solaris : correction de CD/DVD-ROMs qui persistent de manière + incorrecte après avoir été changés (bogue #5077)</para> + </listitem> + + <listitem> + <para>Hôtes basés sur X11 : support de touches de fonction supplémentaires + sur les claviers Sun (bogue #4907)</para> + </listitem> + + <listitem> + <para>Hôtes Mac OS X (Snow Leopard) : correction d'un problème au + démarrage des VMs sans affichage sans session graphique (bogue #5002)</para> + </listitem> + + <listitem> + <para>Hôtes Mac OS X : correction d'un problème dans le listage des noms + des adaptateurs host-only qui laissait des déchets (les VMs connectées ne + démarreront pas)</para> + </listitem> + + <listitem> + <para>Suppléments Windows : fonctionnement désormais avec Vista 64 bits édition + familiale (bogue #3865)</para> + </listitem> + + <listitem> + <para>Suppléments Windows : correction d'une corruption d'écran avec + la loupe ZoomText</para> + </listitem> + + <listitem> + <para>Suppléments Windows : correction d'un échec NPGetUniversalName + (bogue #4853)</para> + </listitem> + + <listitem> + <para>Suppléments Windows : correction d'une régression Windows NT (bogue #4946)</para> + </listitem> + + <listitem> + <para>Suppléments Windows : correction de VBoxService qui ne fonctionnait + pas si aucun dossier partagé n'était installé</para> + </listitem> + + <listitem> + <para>Suppléments Linux : implémentation de <emphasis>ftrunctate</emphasis> + (bogue #4771)</para> + </listitem> + + <listitem> + <para>VRDP : démarrage d'une VM même si le port VRDP configuré est + utilisé</para> + </listitem> + + <listitem> + <para>Réseau : le périphérique réseau PCnet arrêtait sa réception dans + de rares conditions (bogue #4870)</para> + </listitem> + + <listitem> + <para>VBoxManage : implémentation de la commande <computeroutput>controlvm vrdpport</computeroutput></para> + </listitem> + + <listitem> + <para>iSCSI : correction de'un problèm avec les cibles NetApp (bogue #5072)</para> + </listitem> + + <listitem> + <para>SCSI : ajout du support des disques virtuels supérieurs à 2To </para> + </listitem> + + <listitem> + <para>USB : correction d'un plantage potentiel lorsqu'on débranche des + périphériques USB2 (bogue #5089)</para> + </listitem> + + <listitem> + <para>NAT : IPSEC ne fonctionnait pas bien avec les invités Linux + (bogue #4801)</para> + </listitem> + + </itemizedlist> + + </sect1> + + <sect1> + <title>Version 3.0.6 (09-09-2009)</title> + + <para>C'est une version de maintenance. Les éléments suivants ont été corrigés et/ou + ajoutés :</para> + + <itemizedlist> + + <listitem> + <para>VMM : correction d'une surcharge ES-APIC pour les invités Windows + NT, 2000, XP et 2003 32 bits (AMD-V seulement ; bogue #4392)</para> + </listitem> + + <listitem> + <para>VMM : correction d'une Guru meditation dans certaines circonstances + lors de l'activation d'un périphérique désactivé (bogue #4510)</para> + </listitem> + + <listitem> + <para>VMM : correction d'une Guru meditation au démarrage de certains + invités Arch Linux (virtualisation logicielle seulement ; bogue #2149)</para> + </listitem> + + <listitem> + <para>VMM : correction d'accrocs avec les invités Solaris & OpenSolaris + 64 bits (bogue #2258)</para> + </listitem> + + <listitem> + <para>VMM : correction d'une diminution des valeurs de <emphasis>rdtsc</emphasis> + (AMD-V & VT-x seulement ; bogue #2869)</para> + </listitem> + + <listitem> + <para>VMM : petites améliorations de performances sur Solaris/OpenSolaris + (VT-x seulement) </para> + </listitem> + + <listitem> + <para>VMM : passage de <emphasis>cpuid</emphasis> au bon ID de processeur + virtuel signalé dans Linux </para> + </listitem> + + <listitem> + <para>VMM : accrocs du CD de NetBSD 5.0.1 lors du démarrage (VT-x + seulement ; bogue #3947) </para> + </listitem> + + <listitem> + <para>Hôtes Solaris : contournement d'un problème qui entraînait un + accroc de l'hôte (bogue #4486)</para> + </listitem> + + <listitem> + <para>Hôtes Solaris : correction d'un verrouillage rare du système hôte + lors de l'utilisation du réseau bridgé</para> + </listitem> + + <listitem> + <para>Hôtes Solaris : correction d'un verrouillage potentiel du système + hôte quand les processeurs sont montés ou démontés</para> + </listitem> + + <listitem> + <para>Installeur sur hôte Solaris : ajout d'une dépendance manquante du + paquet UTF-8 (bogue #4899)</para> + </listitem> + + <listitem> + <para>Hôtes Linux : ne plante pas sur les noyaux Linux PAE < 2.6.11 (en + particulier RHEL/CentOS 4) ; désactivation de VT-x sur les noyaux Linux + < 2.6.13 (bogue #1842)</para> + </listitem> + + <listitem> + <para>Hôtes Solaris/Linux : détection correcte des claviers de moins de + touches que d'habitude (bogue #4799)</para> + </listitem> + + <listitem> + <para>Hôtes Mac OS X : on empêche les boîtes de dialogue de mots de + passe dans Snow Leopard 32 bits</para> + </listitem> + + <listitem> + <para>Python WS : correction d'un problème avec certaines constantes + d'énumérations qui ont de mauvaises valeurs dans les bindings Python du + service Web</para> + </listitem> + + <listitem> + <para>API Python : correction de plusieurs problèmes de threading et de + plateforme</para> + </listitem> + + <listitem> + <para>Shell Python : ajout de la commande <emphasis>exportVM</emphasis></para> + </listitem> + + <listitem> + <para>Shell Python : diverses améliorations et corrections de bogues</para> + </listitem> + + <listitem> + <para>Shell Python : correction de la détection du dossier personnel + s'il est distant</para> + </listitem> + + <listitem> + <para>OVF : correction de la gestion d'un commentaire XML qui pourrait + mener à des erreurs de l'analyseur</para> + </listitem> + + <listitem> + <para>Principal : correction d'un problème rare d'analyse avec des + numéros de filtres de ports de périphériques USB dans le XML des + paramètres de la machine</para> + </listitem> + + <listitem> + <para>Principal : restrictition de la taille de la RAM de l'invité à + 1.5 Go (hôtes Windows 32 bits seulement)</para> + </listitem> + + <listitem> + <para>Principal : correction d'un accroc possible au redémarrage de + l'invité (bogue #3792)</para> + </listitem> + + <listitem> + <para>GUI : correction d'un plantage rare lors de la suppression du + dernier disque du gestionnaire de médias (bogue #4795)</para> + </listitem> + + <listitem> + <para>VBoxManage : correction de <computeroutput>guestproperty</computeroutput> + pour les hôtes Mac OS X (bogue #3806)</para> + </listitem> + + <listitem> + <para>VBoxManage : correction des propriétés invité avec + <emphasis>--flags</emphasis> ou <emphasis>-flags</emphasis></para> + </listitem> + + <listitem> + <para>Service Web : correction d'une fuite de mémoire sévère, au + moins sur des plateformes utilisant XPCOM</para> + </listitem> + + <listitem> + <para>Série : correction du mode hôte (hôtes Solaris, Linux et Mac OS X ; bogue #4672)</para> + </listitem> + + <listitem> + <para>VRDP : Protocole USB distant version 3</para> + </listitem> + + <listitem> + <para>SATA : correction d'accrocs et de BSODs apparus avec la 3.0.4 (bogues #4695, #4739, #4710)</para> + </listitem> + + <listitem> + <para>SATA : correction d'un bogue qui empêchait Windows 7 de détecter + plus d'un disque dur</para> + </listitem> + + <listitem> + <para>SATA/SCSI : correction de plantages rares et aléatoires de l'invité + et d'accrocs </para> + </listitem> + + <listitem> + <para>SCSI : correction d'un problème où Fedora 11 refusait de démarrer + après une mise à jour du noyau</para> + </listitem> + + <listitem> + <para>iSCSI : correction d'une déconnexion quand la cible a fermé la + connexion, correction de la négociation des paramètres, correction du + renvoi de la commande qk1nd la connexion a été fermée, correction du + traitement de l'état SCSI pour les cibles qui n'utilisent pas le + phase collapse</para> + </listitem> + + <listitem> + <para>BIOS : correction d'un bogue qui faisait échouer le gestionnaire de + démarrage d'OS/2 (régression 2.1.0, bogue #3911)</para> + </listitem> + + <listitem> + <para>PulseAudio : pas d'accroc à l'extinction d'une VM si la connexion + au serveur a été fermée de façon inattendue (bogue #3100)</para> + </listitem> + + <listitem> + <para>Souris : correction d'un comportement bizarre de la souris avec + les invités SMP (Solaris) (bogue #4538)</para> + </listitem> + + <listitem> + <para>Réseau HostOnly : correction d'un échec dans + <emphasis>CreateHostOnlyNetworkInterface()</emphasis> sur Linux (pas de + GUID)</para> + </listitem> + + <listitem> + <para>Réseau HostOnly : correction d'un mauvais démarrage du serveur DHCP + quand l'interface hostonly était activée sur Linux</para> + </listitem> + + <listitem> + <para>Réseau HostOnly : correction d'un nom de fabricant incorrect et de + l'adresse MAC par défaut sur Solaris</para> + </listitem> + + <listitem> + <para>Réseau HostOnly : correction du problème de listage des + interfaces host-only sur Mac OS X quand toutes les interfaces physiques + sont inactives (bogues #4698, #4790)</para> + </listitem> + + <listitem> + <para>DHCP : correction d'un bogue du serveur DHCP où il affectait une + adresse IP inférieure à la plage configurée</para> + </listitem> + + <listitem> + <para>E1000 : correction de la réception des paquets multicast</para> + </listitem> + + <listitem> + <para>E1000 : correction de la notification d'activation/désactivation de + la connexion après le réveil d'une VM</para> + </listitem> + + <listitem> + <para>NAT : correction de corruptions de l'adresse Ethernet (bogue #4839)</para> + </listitem> + + <listitem> + <para>NAT : correction d'accrocs, rejet des paquets et de problèmes de + retransmissions (bogue #4343)</para> + </listitem> + + <listitem> + <para>Réseau bridgé : correction d'un problème dans la queue des paquets + qui pourrait causer des BSOD + DRIVER_POWER_STATE_FAILURE pour les hôtes Windows (bogue #4821)</para> + </listitem> + + <listitem> + <para>Suppléments Windows : correction d'un bogue dans VBoxGINA qui + empêchait de sélectionner le bon domaine lors de l'identification la + première fois</para> + </listitem> + + <listitem> + <para>Installeur sur hôte Windows : devrait maintenant fonctionner sur + les systèmes unicode (comme en coréen, bogue #3707)</para> + </listitem> + + <listitem> + <para>Installeur sur hôte Windows : vérification qu'il y a assez + d'espace disque</para> + </listitem> + + <listitem> + <para>Presse-papier partagé : n'envoie pas de texte qui finit par zéro + dans les invités et les hôtes X11 (bogue #4712)</para> + </listitem> + + <listitem> + <para>Presse-papier partagé : utilisation d'une façon moins consommatrice + en processeur de vérifier des nouvelles données dans les invités et les + hôtes X11 (bogue #4092)</para> + </listitem> + + <listitem> + <para>Suppléments invité : ne cache pas le curseur de la souris de l'hôte + lors de la restauration d'un état sauvegardé (bogue #4700)</para> + </listitem> + + <listitem> + <para>Invités Windows : correction de problèmes d'affichage de l'image du + curseur de la souris (bogues #2603, #2660 et #4817)</para> + </listitem> + + <listitem> + <para>Invités SUSE 11 : correction de l'installation des suppléments + invité (bogue #4506)</para> + </listitem> + + <listitem> + <para>Suppléments invité : support des invités Fedora 12 Alpha (bogues #4731, #4733 et #4734)</para> + </listitem> + + </itemizedlist> + + </sect1> + + <sect1> + <title>Version 3.0.4 (04-08-2009)</title> + + <para>C'est une version de maintenance. Les éléments suivants ont été corrigés et/ou + ajoutés :</para> + + <itemizedlist> + + <listitem> + <para>VMM : corrections de la stabilité des invités 64 bits (AMD-V + seulement ; bogues #3923 & #3666)</para> + </listitem> + + <listitem> + <para>VMM : corrections de la stabilité SMP (AMD-V seulement)</para> + </listitem> + + <listitem> + <para>VMM : amélioration des performances SMP (surtout pour les invités + Solaris)</para> + </listitem> + + <listitem> + <para>VMM : élimination de plusieurs bogues qui pourraient conduire à + un redémarrage de l'hôte</para> + </listitem> + + <listitem> + <para>VMM : correction d'un accroc du démarrage d'OS/2 ACP2 sur disquette + (VT-x seulement)</para> + </listitem> + + <listitem> + <para>VMM : petite amélioration de performances pour les invités + OpenSolaris (AMD-V seulement)</para> + </listitem> + + <listitem> + <para>VMM : correction d'un redémarrage de CentOS/Xen (virtualisation + logicielle seulement ; bogue #4509)</para> + </listitem> + + <listitem> + <para>SATA : correction d'accrocs / BSOD pendant l'installation de Windows + XP (bogue #4342)</para> + </listitem> + + <listitem> + <para>SATA : marquage des ports comme étant non branchables (bogue #3920)</para> + </listitem> + + <listitem> + <para>Support 3D : correction de verrouillages et de poursuite ducontexte/fenêtre + pour les applications multithreaded (bogue #3922)</para> + </listitem> + + <listitem> + <para>Support 3D : correction de fuites de mémoire à l'extinction des + applications invitées en OpenGL </para> + </listitem> + + <listitem> + <para>Support 3D : correction d'un plantage avec Call of Duty</para> + </listitem> + + <listitem> + <para>NAT : l'utilisation de deux ou plusieurs adaptateurs NAT dans une + VM était cassée (régression 3.0.0)</para> + </listitem> + + <listitem> + <para>NAT : correction de corruptions dans la communication réseau (bogues #4499, #4540, #4591, #4604)</para> + </listitem> + + <listitem> + <para>NAT : correction de l'accès ftp passif au servur hôte (bogue #4427)</para> + </listitem> + + <listitem> + <para>iSCSI : correction du clonage de depuis/vers des disques iSCSI</para> + </listitem> + + <listitem> + <para>GUI : correction de la gestion des séparateurs de chemin pour + l'exportation OVF sur Windows (bogue #4354)</para> + </listitem> + + <listitem> + <para>GUI : la minibarre d'outils ne s'affichait que sur le premier + afficheur de l'hôte (bogue #4654)</para> + </listitem> + + <listitem> + <para>GUI : ajout d'une option de VM pour afficher la minibarre d'outils + en haut</para> + </listitem> + + <listitem> + <para>GUI : ne plante pas à l'ajout et à la configuration d'interfaces + réseaux host-only</para> + </listitem> + + <listitem> + <para>Dossiers partagés : correction de la sélection d'un répertoire + racine du lecteur comme chemin d'hôte du dossier partagé dans VirtualBox + (hôte Windows seulement)</para> + </listitem> + + <listitem> + <para>USB : correction d'un bogue qui pourrait rendre les paramètres des + filtres des périphériques USB inactifs (régression 3.0.2, bogue #4668)</para> + </listitem> + + <listitem> + <para>Suppléments invité : affichage de la version des suppléments invité + dans les propriétés invité (bogue #3415)</para> + </listitem> + + <listitem> + <para>Hôtes Mac OS X : correction de la création de fichiers VMDK donnant + un accès brut à la partition (bogue #1461)</para> + </listitem> + + <listitem> + <para>Hôtes Mac OS X : amélioration du support de Snow Leopard </para> + </listitem> + + <listitem> + <para>Hôtes Linux : correction de problèmes créant de mauvaises couleurs + ou une transparence dans les fenêtres de l'hôte ayant des pilotes + graphiques (bogue #3095)</para> + </listitem> + + <listitem> + <para>Hôtes Linux : ratrapage de la détection du matériel si le service + hal ne parvient pas à trouver de lecteurs DVD</para> + </listitem> + + <listitem> + <para>Hôtes Solaris et Linux : contournement des problèmes de gestion + des couleurs dans Qt (bogue #4353)</para> + </listitem> + + <listitem> + <para>Hôtes Solaris : correction de fuites de mémoire en réseau host-only</para> + </listitem> + + <listitem> + <para>Installeur Solaris : correction d'un mauvais masque réseau pour + l'interface Host-only (bogue #4590)</para> + </listitem> + + <listitem> + <para>Installeur Solaris : ajout d'une dépendance du paquet pour Python + et Python-devel (bogue #4570)</para> + </listitem> + + <listitem> + <para>Invités X11 : empêchement du passage des fenêtres quand on est en + mode transparent dans les invités KDE (bogues #1681 et #3574)</para> + </listitem> + + <listitem> + <para>Invités X11 : correction d'une corruption d'écran dans les invités + X11 quand de grandes quantités de mémoire graphique était affectée + (bogue #4430)</para> + </listitem> + + <listitem> + <para>Invités X11 : quelques corrections à la bascule entre l'hôte et + les pointeurs de souris affichés dans l'invité</para> + </listitem> + + <listitem> + <para>Invités X11 : correction d'un problème qui arrêtait le fonctionnement + normal du mode transparent (problème principal listé au bogue #2238)</para> + </listitem> + + </itemizedlist> + + </sect1> + <sect1> + <title>Version 3.0.2 (10-07-2009)</title> + + <para>C'est une version de maintenance. Les éléments suivants ont été corrigés et/ou + ajoutés :</para> + + <itemizedlist> + + <listitem> + <para>VMM : correction des régressions du réseau (accrocs de l'invité + pendant les ES réseaux) (bogue #4343)</para> + </listitem> + + <listitem> + <para>VMM : amélioration des performances de l'invité SMP</para> + </listitem> + + <listitem> + <para>VMM : correction d'accrocs et de faibles performances avec Kaspersky Internet Security + (VT-x/AMD-V seulement ; bogue #1778)</para> + </listitem> + + <listitem> + <para>VMM : correction de plantages à l'exécution de certains invités + Linux (virtualisation logicielle seulement ; bogues #2696 & #3868)</para> + </listitem> + + <listitem> + <para>ACPI : correction d'accrocs des noyaux Windows 2000 quand ES-APIC + est activé (bogue #4348)</para> + </listitem> + + <listitem> + <para>APIC : correction d'une forte charge d'activité pour certains + invités Linux (régression 3.0)</para> + </listitem> + + <listitem> + <para>BIOS : gestion correct de Ctrl-Alt-Supp en mode réel</para> + </listitem> + + <listitem> + <para>iSCSI : correction de l'analyse de la configuration (bogue #4236)</para> + </listitem> + + <listitem> + <para>OVF : correction d'une confusion potentielle à l'exportation des + réseaux</para> + </listitem> + + <listitem> + <para>OVF : correction de compatibilité (bogue #4452)</para> + </listitem> + + <listitem> + <para>OVF : acceptation des indicateurs ovf:/disk/ avec une seule barre + oblique en plus d'ovf://disk/ (bogue #4452) </para> + </listitem> + + <listitem> + <para>NAT : correction de plantages dans certaines circonstances (bogue #4330)</para> + </listitem> + + <listitem> + <para>Support 3D : correction de l'édition de liens dynamiques sur + les invités Solaris/OpenSolaris (bogue #4399)</para> + </listitem> + + <listitem> + <para>Support 3D : correction d'une la pourchasse incorrecte du contexte/fenêtre + pour les applis multithreadées</para> + </listitem> + + <listitem> + <para>Dossiers partagés : correction du chargement d'un état + sauvegardé (bogue #1595)</para> + </listitem> + + <listitem> + <para>Dossiers partagés : droits du fichier hôte définis à 0400 avec + l'invité Windows (bogue #4381)</para> + </listitem> + + <listitem> + <para>Hôte et invité X11 et presse-papier : correction d'un certain + nombre de problèmes y compris les bogues #4380 et #4344</para> + </listitem> + + <listitem> + <para>Suppléments X11 : correction de certains problèmes avec les + fenêtres transparentes dans les invités X11 (bogue #3727)</para> + </listitem> + + <listitem> + <para>Suppléments Windows : ajout de VBoxServiceNT aux invités NT4 + (pour la synchronisation du temps et les propriétés invité)</para> + </listitem> + + <listitem> + <para>Suppléments Windows : correction de la recherche de version</para> + </listitem> + + <listitem> + <para>Installeu rLinux : support de Linux Pardus</para> + </listitem> + + <listitem> + <para>Hôtes Linux : contournement des pilotes graphiques boggués qui + affichaient une fenêtre de VM en noir sur des distributions récentes + (bogue #4335)</para> + </listitem> + + <listitem> + <para>Hôtes Linux : correction d'une coquille dans le script de + démarrage du module noyau (bogue #4388)</para> + </listitem> + + <listitem> + <para>Hôtes Solaris : plusieurs corrections de l'installeur</para> + </listitem> + + <listitem> + <para>Hôtes Solaris : correction d'un problème de préemption aboutissant + à ce que les VMs ne démarrent jamais sur Solaris 10 (bogue #4328)</para> + </listitem> + + <listitem> + <para>Invités Solaris : correction de l'intégration de la souris pour + OpenSolaris 2009.06 (bogue #4365) </para> + </listitem> + + <listitem> + <para>Hôtes Windows : correction d'une forte utilisation du processeur + après le réveil de l'hôte (bogue #2978)</para> + </listitem> + + <listitem> + <para>correction d'un bogue de conversion du fichier des paramètres + qui activait parfois l'accélération matérielle pour les machines virtuelles + n'ayant pas de configuration explicite dans le XML</para> + </listitem> + + </itemizedlist> + + </sect1> + + <sect1> + <title>Version 3.0.0 (30-06-2009)</title> + + <para>Cette version est une mise à jour majeure. Les nouvelles fonctions majeures + suivantes ont été ajoutées :</para> + + <itemizedlist> + + <listitem> + <para>SMP invité avec jusqu'à 32 processeurs virtuels (VT-x et AMD-V + seulement ; voir <xref linkend="settings-processor" />)</para> + </listitem> + + <listitem> + <para>Invités Windows : possibilité d'utiliser des applications Direct3D + 8/9 / jeux (expérimental ; voir <xref linkend="guestadd-3d" />)</para> + </listitem> + + <listitem> + <para>Support d'OpenGL 2.0 pour les invités Windows, Linux et Solaris</para> + </listitem> + + </itemizedlist> + + <para>De plus, les éléments suivants ont été corrigés et/ou ajoutés :</para> + + <itemizedlist> + + <listitem> + <para>Hôtes Solaris : possibilité de suspendre/réveiller sur l'hôte + quand une VM est en fonction (bogue #3826)</para> + </listitem> + + <listitem> + <para>Hôtes Solaris : perte de la restriction de la mémoire physique + contiguë dans certaines conditions</para> + </listitem> + + <listitem> + <para>Hôtes Mac OS X : correction de l'invité PAE</para> + </listitem> + + <listitem> + <para>Hôtes Linux : corrections de la compilation du module noyau pour + 2.6.31 (bogue #4264)</para> + </listitem> + + <listitem> + <para>VMM : correction d'une guru meditation occasionnelle lors du + chargement d'un état sauvegardé (VT-x seulement)</para> + </listitem> + + <listitem> + <para>VMM : élimination d'une surcharge ES-APIC avec des invités 32 + bits (VT-x seulement, certains processeurs Intel ne supportent pas cette + fonction (la plupart le font) ; bogue #638)</para> + </listitem> + + <listitem> + <para>VMM : correction d'accrocs de l'invité CentOS 64 bits au tout + début du démarrage (AMD-V seulement ; bogue #3927)</para> + </listitem> + + <listitem> + <para>VMM : améliorations des performances de certains invités PAE (comme + les noyaux Linux 2.6.29+) </para> + </listitem> + + <listitem> + <para>VMM : certains invités Windows détectent une fréquence de + processeur complètement fausse (bogue #2227)</para> + </listitem> + + <listitem> + <para>VMM : correction d'un accroc et de processus de VM non tuables + (bogue #4040)</para> + </listitem> + + <listitem> + <para>VMM : correction de plantages aléatoires de l'invité à cause + d'une corruption de l'état XMM (hôtes Win64 seulement)</para> + </listitem> + + <listitem> + <para>VMM : améliorations des performances pour l'E/S réseau (VT-x/AMD-V + seulement)</para> + </listitem> + + <listitem> + <para>GUI : ajout d'une mini barre d'outils pour le mode plein écran et + transparent (Merci à Huihong Luo)</para> + </listitem> + + <listitem> + <para>GUI : réaménagement des boîtes de dialogue des paramètres</para> + </listitem> + + <listitem> + <para>GUI : possibilité de créer/supprimer plus d'un adaptateur réseau + host-only (hôtes non Windows)</para> + </listitem> + + <listitem> + <para>GUI : affichage du temps estimé des opérations qui durent (comme + l'importation/exportation d'OVF)</para> + </listitem> + + <listitem> + <para>GUI : correction d'accrocs rares à l'ouverture des assistants + d'importation/exportation d'OVF (bogue #4157))</para> + </listitem> + + <listitem> + <para>Support 3D : correction de plantages d'une VM pour les applications + client qui utilisent de mauvais états OpenGL</para> + </listitem> + + <listitem> + <para>Support 3D : correction de la corruption de mémoire lors de + la recherche des formats de compression d'images supportés</para> + </listitem> + + <listitem> + <para>Support 3D : correction d'un mauvais affichage de glDrawRangeElements</para> + </listitem> + + <listitem> + <para>Support 3D : correction d'une fuite de mémoire lors de + l'utilisation de VBOs</para> + </listitem> + + <listitem> + <para>Support 3D : correction de la détection de la bibliothèque glew</para> + </listitem> + + <listitem> + <para>Support 3D : correction d'une corruption aléatoire des images</para> + </listitem> + + <listitem> + <para>VRDP : support du client RDP de Windows 7</para> + </listitem> + + <listitem> + <para>Réseau : correction d'un autre problème de charge de la somme + de vérification TX avec des noyaux Linux jusqu'à la version 2.6.18</para> + </listitem> + + <listitem> + <para>NAT : correction de "ouvrir des ports sur le routeur virtuael + 10.0.2.2 - 513, 514" (forum)</para> + </listitem> + + <listitem> + <para>NAT : possibilité de configurer les paramètres de la socket et + internes</para> + </listitem> + + <listitem> + <para>NAT : possibilité de sonder des sockets sur une interface spécifique</para> + </listitem> + + <listitem> + <para>Démarrage PXE : augmentation significative des performances (VT-x/AMD-V + seulement)</para> + </listitem> + + <listitem> + <para>VHD : écriture correcte de secteurs vides lors du clonage de + d'images VHD (bogue #4080)</para> + </listitem> + + <listitem> + <para>VHD : correction d'un plantage lors de la désactivation d'instantanés + d'une image VHD</para> + </listitem> + + <listitem> + <para>VHD : correction d'un accèss dépassant le bitmap du bloc, qui + pourrait provoquer des plantages aléatoires</para> + </listitem> + + <listitem> + <para>VBoxManage : correction d'une mauvaise destion de la table de + partitions lors de la création de fichiers VMDK, donnant un accès brut + aux partitions (bogue #3510)</para> + </listitem> + + <listitem> + <para>VBoxManage : support du clonage dans un fichier image existant</para> + </listitem> + + <listitem> + <para>OVF : plusieurs corrections de compatibilité avec OVF 1.0</para> + </listitem> + + <listitem> + <para>OVF : correction de l'exportation d'images de disques quand + plusieurs machines virtuelles sont exportées en une fois</para> + </listitem> + + <listitem> + <para>Périphérique virtuel de souris : élimination des micro-mouvements + de la souris virtuelle qui perdaient certaines applications (bogue #3782)</para> + </listitem> + + <listitem> + <para>Dossiers partagés : parfois, un fichier était créé avec les mauvais + droits (régression 2.2.0 ; bogue #3785)</para> + </listitem> + + <listitem> + <para>Dossiers partagés : possibilité de modifier les attributs de + fichiers d'invités Linux et utilisation des bons droits sur les fichiers + lors de la création des fichiers</para> + </listitem> + + <listitem> + <para>Dossiers partagés : certains contenus n'étaient pas bien écrits + dans certaines conditions (bogue #1187)</para> + </listitem> + + <listitem> + <para>Dossiers partagés : correction de mauvais horodatages des fichiers + lorsqu'on utilise un invité Windows sur un hôte Linux (bogue #3404)</para> + </listitem> + + <listitem> + <para>Presse-papier X11 : correction de fins de lignes dupliquées (bogue #4270)</para> + </listitem> + + <listitem> + <para>Invités X11 : un certain nombre de corrections du presse-papier + partagé</para> + </listitem> + + <listitem> + <para>Invités Linux : support des suppléments invité pour SUSE Linux + Enterprise Desktop 11</para> + </listitem> + + <listitem> + <para>Invités Linux : nouveau démon vboxadd-service pour gérer la + synchronisation de l'heure et la recherche des propriétés invité</para> + </listitem> + + <listitem> + <para>Invités Linux : implémentation des propriétés invité (info d'OS, + utilisateurs connectés, informations réseaux de base)</para> + </listitem> + + <listitem> + <para>Installeur sur hôte Windows : l'API Python de VirtualBox peut + maintenant s'installer automatiquement (exige l'installation des extensions + Python et Win32)</para> + </listitem> + + <listitem> + <para>USB : le support des endpoints isochrones à haute vitesse a été + ajouté. De plus, la mise en tampon + read-ahead se fait pour les endpoints en entrée (hôtes Linux actuels + seulement). Cela devrait permettre à de nouveaux périphériques supplémentaires + de fonctionner, en particulier les webcams (bogue #242)</para> + </listitem> + + <listitem> + <para>USB : correction d'une erreur de gestion de certains dongles USB</para> + </listitem> + + <listitem> + <para>Service Web : correction d'une impossibilité de gérer les pointeurs + NULL pour les arguments objets, qui sont des valeurs valides pour + de nombreuses APIs, tant dans le service Web orienté objet que dans + le brut</para> + </listitem> + + <listitem> + <para>Service Web : les bindings t-orientés objet pour JAX-WS n'affichaient + pas bien l'interface héritée, cela est corrigé</para> + </listitem> + + <listitem> + <para>Service Web : ajout du support des interfaces IDisplay et + IGuest, jusqu'ici indisponibles</para> + </listitem> + + <listitem> + <para>La boîte de dialogue d'enregistrement utilise maintenant les comptes en + ligne de Sun</para> + </listitem> + + </itemizedlist> + </sect1> + + <sect1> + <title>Version 2.2.4 (29-05-2009)</title> + + <para>C'est une version de maintenance. Les éléments suivants ont été corrigés et/ou + ajoutés :</para> + + <itemizedlist> + + <listitem> + <para>Installeur Windows : correction d'un accroc potentiel pendant + l'installation</para> + </listitem> + + <listitem> + <para>Installeur Windows : correction de plusieurs problèmes (bogue #3892)</para> + </listitem> + + <listitem> + <para>Hôtes Solaris : on a fait en sorte que cela fonctionne avec + Solaris build 114 ou supérieur (bogue #3981)</para> + </listitem> + + <listitem> + <para>Hôtes Solaris : correction d'un bogue dans la gestion des + caractères du port série, qu'on a trouvé pendant la boucle (bogue #3120)</para> + </listitem> + + <listitem> + <para>Hôtes Linux : adaptation de vboxdrv.sh aux récents changements dans + <computeroutput>VBoxManage list runningvms</computeroutput> + (bogue #4034) + </para> + </listitem> + + <listitem> + <para>Hôtes Windows : correction d'un plantage provoqué par le réseau + host-only/bridgé</para> + </listitem> + + <listitem> + <para>Hôtes Mac OS X : correction de l'accès au DVD hôte avec le passthrough + désactivé (bogue #4077)</para> + </listitem> + + <listitem> + <para>Suppléments invité : correction de problèmes où KDE 4 ne reconnaissait + pas les clics de souris</para> + </listitem> + + <listitem> + <para>Suppléments Windows : correction d'une mauvaise profondeur des + couleurs dans les invités 8 bits sous les invités Windows 7</para> + </listitem> + + <listitem> + <para>GUI : avertissement si VT-x/AMD-V n'a pas pu être activé pour + les invités qui exigent ce paramètre (bogue #4055)</para> + </listitem> + + <listitem> + <para>VMM : correction d'un plantage occasionnel à cause d'une mémoire + insuffisante</para> + </listitem> + + <listitem> + <para>VMM : correction d'un accroc dans les invités Solaris 64 bits</para> + </listitem> + + <listitem> + <para>VMM : la restauration d'un état sauvegardé échouait parfois + (bogues #3984 et #2742)</para> + </listitem> + + <listitem> + <para>Presse-papier : correction d'un plantage lors de l'extinction du + presse-papier partagé sur les hôtes X11 (bogue #4020)</para> + </listitem> + + <listitem> + <para>OVF : correction d'un accroc potentiel pendant l'importation</para> + </listitem> + + <listitem> + <para>OVF : correction de plantages potentiels pendant l'importation/exportation + sur les hôtes Win64</para> + </listitem> + + <listitem> + <para>VBoxManage <computeroutput>modifyhd --compact</computeroutput> : + correction d'un bogue pouvant provoquer des plantages et une corruption + d'image (bogue #3864)</para> + </listitem> + + <listitem> + <para>VBoxManage <computeroutput>metrics collect</computeroutput> : on + flash maintenant le flux en sortie</para> + </listitem> + + <listitem> + <para>VHD : on a fait en sorte que <computeroutput>VBoxManage internalcommands + sethduuid</computeroutput> fonctionne pour les fichiers .vhd (bogue + #3443)</para> + </listitem> + + <listitem> + <para>VHD : certains fichiers .vhd ne pouvaient pas être clonés (bogue + #4080)</para> + </listitem> + + <listitem> + <para>NAT : amélioration de l'établissement d'une connexion TCP (bogue #2987)</para> + </listitem> + + <listitem> + <para>NAT : correction de l'ordre des serveurs DNS dans les essais + DHCP (bogue #4091)</para> + </listitem> + + <listitem> + <para>NAT : correction d'un essai DHCP pour plusieurs serveurs de noms + (bogue #3692)</para> + </listitem> + + <listitem> + <para>NAT : correction d'une erreur de segmentation potentielle si + l'hôte a perdu sa connectivité + (bogue #3964)</para> + </listitem> + + <listitem> + <para>Dossiers partagés : accès interdit aux répertoires parents sur + les hôtes Windows (bogue #4090)</para> + </listitem> + + <listitem> + <para>Dossiers partagés : on a fait en sorte que rm/rmdir fonctionne avec + les invités Solaris sur des hôtes Windows</para> + </listitem> + + <listitem> + <para>Réseau : correction du problème d'un thread de réception bloqué + quand un paquet acheminé arrive trop tôt pour être pris en charge par + l'adaptateur e1000 désinitialisé</para> + </listitem> + + <listitem> + <para>Réseau : correction du problème provoquant des gels/plantages de + l'hôte lors de l'utilisation du mode bridgé quand l'interface de l'hôte + a une somme de contrôle RX offloading on (bogue #3926 et liés). Cela + corrige également les problèmes de charge TX (bogue #3870)</para> + </listitem> + + <listitem> + <para>Démarrage PXE : Ajout du support de l'adaptateur PRO/1000 MT Server</para> + </listitem> + + <listitem> + <para>Bindings Python : correction d'un conflit de mots-clés</para> + </listitem> + + <listitem> + <para>SCSI : correction de plantages occasionnels sur Win64</para> + </listitem> + + <listitem> + <para>Série : possibilité de rediriger le port série sur un fichier brut (bogue #1023)</para> + </listitem> + + <listitem> + <para>VRDP : correction d'une mauvaise mise à jour rare de l'écran</para> + </listitem> + + <listitem> + <para>VMDK : correction de la création des instantanés</para> + </listitem> + + </itemizedlist> + </sect1> + + <sect1> + <title>Version 2.2.2 (27-04-2009)</title> + + <para>C'est une version de maintenance. Les éléments suivants ont été corrigés et/ou + ajoutés :</para> + + <itemizedlist> + + <listitem> + <para>Presse-papier hôte et invité : correction d'un certain nombre de + problèmes concernant les hôtes et les invités fonctionnant avec le + système X window</para> + </listitem> + + <listitem> + <para>Suppléments invité : assurance que la détection automatique de la + souris virtuelle fonctionne au premier redémarrage après avoir installé + les suppléments invité sur le serveur X.Org 1.5 et supérieur</para> + </listitem> + + <listitem> + <para>Suppléments invité : affichage correct du numéro d'identification + du processus des services en fonction</para> + </listitem> + + <listitem> + <para>Suppléments invité : nettoyage adéquat si le serveur X Window se + termine</para> + </listitem> + + <listitem> + <para>Suppléments Linux : correction du chemin d'installation des + bibliothèques OpenGL sur certains invités 64 bits (bogue #3693)</para> + </listitem> + + <listitem> + <para>Suppléments Solaris : correction de l'installation pour qu'elle + fonctionne quand X.Org n'est pas installée sur l'invité</para> + </listitem> + + <listitem> + <para>Suppléments Solaris : correction d'un bogue qui pourrait + planter l'invité au démontage d'un dossier partagé occupé</para> + </listitem> + + <listitem> + <para>Suppléments Windows : correction de l'intégration du pointeur de + souris de certains invités Windows (régression 2.2.0, bogue #3734)</para> + </listitem> + + <listitem> + <para>Suppléments Windows : correction de l'installation sur Windows + Server 2008 Core (bogue #2628)</para> + </listitem> + + <listitem> + <para>Principal : n'essaie pas d'utiliser d'anciennes versions de D-Bus (hôtes + Linux seulement, bogue #3732)</para> + </listitem> + + <listitem> + <para>VMM : correction de conditions hors-mémoire sur les hôtes Windows + (bogue #3657)</para> + </listitem> + + <listitem> + <para>VMM : correction d'accrocs occasionnels lors de la connexion de + périphériques USB au démarrage de la VM (régression 2.2.0 ; bogues #3787)</para> + </listitem> + + <listitem> + <para>VMM : correction d'une guru meditation liée à la gestion de la + mémoire + (virtualisation logicielle seulement) + </para> + </listitem> + + <listitem> + <para>Disques virtuels : correction d'une corruption possible des données + lors de l'écriture dans des images de différenciation, mauvaise détection + des écritures redondantes</para> + </listitem> + + <listitem> + <para>GUI : on a retravaillé la boîte de dialogue des paramètres réseaux</para> + </listitem> + + <listitem> + <para>GUI : affichage correct de la boîte de dialogue détaillée des + paramètres des réseaux NAT (bogue #3702)</para> + </listitem> + + <listitem> + <para>GUI : la touche hôte ne pouvait pas être modifiée (régression 2.2.0, + bogue #3689)</para> + </listitem> + + <listitem> + <para>GUI : correction du champ de texte de la taille de la mémoire + (hôtes Windows seulement ; + bogue #3679)</para> + </listitem> + + <listitem> + <para>GUI : correction d'un plantage lors de la sélection du chemin d'un + dossier partagé (hôtes Windows seulement ; + bogues #3694, #3751, #3756)</para> + </listitem> + + <listitem> + <para>VBoxManage <computeroutput>modifyhd --compact</computeroutput> : + implémentation de nouveau des fichiers VDI et support désormais des + chemins relatifs (bogue #2180, #2833)</para> + </listitem> + + <listitem> + <para>VBoxManage <computeroutput>snapshot discard</computeroutput> : + on a fait de nouveau en sorte que cela fonctionne (régression 2.1.0 ; bogue #3714)</para> + </listitem> + + <listitem> + <para>NAT : sur certains hôtes Windows, l'invité ne recevait pas de + tentative DHCP (bogue #3655)</para> + </listitem> + + <listitem> + <para>NAT : correction d'une déclaration de version pendant + <emphasis>poll()</emphasis> + (bogue #3667)</para> + </listitem> + + <listitem> + <para>Réseau : correction d'un verrou à cause de l'émulation d'un + périphérique réseau PCnet (régression 2.2.0, bogue #3676)</para> + </listitem> + + <listitem> + <para>Presse-papier : correction de plantages aléatoires (hôtes X11 + seulement, bogue #3723)</para> + </listitem> + + <listitem> + <para>Dossiers partagés : correction de mauvais droits pour les invités + Solaris</para> + </listitem> + + <listitem> + <para>Dossiers partagés : correction de wrong file sizes with Solaris guests</para> + </listitem> + + <listitem> + <para>Bindings C : correction d'une fuite de mémoire possible pendant + la relâche de IVirtualBox et ISession Objects</para> + </listitem> + + <listitem> + <para>Hôtes Solaris : correction d'une incompatibilité d'une interface + réseau host-only avec nwam/dhcpagent (bogue #3754)</para> + </listitem> + + <listitem> + <para>Installeur Windows : correction de plusieurs problèmes d'installation + et de désinstallation (bogues #3659, #3686, #1730, #3711, #3373, #3382, #3701, #3685, #3710)</para> + </listitem> + + <listitem> + <para>Hôtes Mac OS X : support préliminaire de Snow Leopard</para> + </listitem> + + </itemizedlist> + </sect1> + + <sect1> + <title>Version 2.2.0 (08-04-2009)</title> + + <para>Cette version est une mise à jour majeure. Les nouvelles fonctions majeures + suivantes ont été ajoutées :</para> + + <itemizedlist> + + <listitem> + <para>Applicatif OVF (Open Virtualization Format) pour l'importation et + l'exportation (voir <xref linkend="ovf" />) </para> + </listitem> + + <listitem> + <para>Mode réseau host-only (voir <xref linkend="network_hostonly" />) </para> + </listitem> + + <listitem> + <para>Optimisations de l'hyperviseur a des gains significatifs de + performances pour de hauts débits de changement de contexte</para> + </listitem> + + <listitem> + <para>Passage de la limite de la mémoire des VMs sur les hôtes 64 bits + à 16Go</para> + </listitem> + + <listitem> + <para>VT-x/AMD-V sont activés par défaut pour les machines virtuelles + nouvellement créées</para> + </listitem> + + <listitem> + <para>L'USB (OHCI & EHCI) est activé par défaut pour les machines + virtuelles nouvellement créées (GUI Qt seulement)</para> + </listitem> + + <listitem> + <para>Support expérimental de l'USB pour les hôtes OpenSolaris</para> + </listitem> + + <listitem> + <para>Dossiers partagés pour les invités Solaris et OpenSolaris</para> + </listitem> + + <listitem> + <para>Accélération OpenGL 3D pour les invités Linux et Solaris (voir + <xref linkend="guestadd-3d" />)</para> + </listitem> + + <listitem> + <para>Ajout d'une API en plus de celle C++, Java, Python et services + Web</para> + </listitem> + + </itemizedlist> + + <para>De plus, les éléments suivants ont été corrigés et/ou ajoutés :</para> + + <itemizedlist> + + <listitem> + <para>VMM : correction liée aux invités FreeBSD pour les drapeaux V86 (bogue #2342) </para> + </listitem> + + <listitem> + <para>VMM : correction d'une guru meditation au démarrage d'une VM Linux + AsteriskNow (bogue #2342) </para> + </listitem> + + <listitem> + <para>VMM : correction d'une guru meditation PGMPOOLKIND_FREE (bogues #3356, #3431) </para> + </listitem> + + <listitem> + <para>VMM : correction d'un accroc au démarrage de Windows XP (invité + PAE + pagination imbriquée seulement) </para> + </listitem> + + <listitem> + <para>VMM : possibilité de mélanger VT-x/AMD-V et la virtualisation + logicielle </para> + </listitem> + + <listitem> + <para>VMM : correction du démarrage en mode sans échec extrêmement lent + dans, par exemple, Windows 2008 (VT-x/AMD-V seulement) </para> + </listitem> + + <listitem> + <para>VMM : accélération significative de certains chargeurs d'amorçages + GRUB (comme Solaris) (VT-x/AMD-V seulement) </para> + </listitem> + + <listitem> + <para>VMM : correction IOPL en mode réel pour des invités DOS (VT-x + seulement) </para> + </listitem> + + <listitem> + <para>VMM : correction de la détection VT-x avec certains BIOS qui + activent le VT-x, mais pas de définition du bit de verrouillage sur + MSR_IA32_FEATURE_CONTROL </para> + </listitem> + + <listitem> + <para>VMM : correction de problèmes d'hibernation sur les hôtes Windows + XP (VT-x seulement ; bogue #1794) </para> + </listitem> + + <listitem> + <para>VMM : émulation correcte de <emphasis>RDMSR</emphasis> du MSR + TSC, cela devrait corriger certains invités NetBSD</para> + </listitem> + + <listitem> + <para>VMM : émulation de <emphasis>RDPMC</emphasis> ; correction des + plantages des invités Windows lors de l'utilisation de l'antivirus + Kaspersky (bogue #1778) </para> + </listitem> + + <listitem> + <para>NAT : correction de téléchargements tronqués (FTP) (bogue #3257)</para> + </listitem> + + <listitem> + <para>NAT : bloquage des paquets UDP provoqués par un plantage (bogue #3426)</para> + </listitem> + + <listitem> + <para>NAT : possibilité de configurer le <emphasis>prochain serveur</emphasis> + et le <emphasis>fichier de démarrage</emphasis> avec VBoxManage (bogue #2759)</para> + </listitem> + + <listitem> + <para>IDE : correction de la mise à jour du disque dur des paramètres + XML-1.2 (bogue #1518)</para> + </listitem> + + <listitem> + <para>Disque dur : support de davantage de variantes de fichiers VMDK + (y compris les images de serveur ESX à taille fixe)</para> + </listitem> + + <listitem> + <para>Disques durs : refus de démarrer la VM si une image de disque n'est + pas inscriptible</para> + </listitem> + + <listitem> + <para>USB : nouvelle réduction de l'utilisation de l'USB pour OHCI et + EHCI ; la clé de CFG "VBoxInternal/Devices/usb-ohci/0/Config/FrameRate" + n'est plus nécessaire ni supportée</para> + </listitem> + + <listitem> + <para>USB : correction de BSOD sur l'hôte avec certains périphériques USB + (hôtes Windows seulement ; bogue #1654)</para> + </listitem> + + <listitem> + <para>E1000 : gestion correcte des déconnexions de câble (bogue #3421)</para> + </listitem> + + <listitem> + <para>VRDP : correction des accrocs quand le serveur VRDP est activé + ou désactivé pendant l'exécution</para> + </listitem> + + <listitem> + <para>Dossiers partagés : respect des paramètres d'umask sur les hôtes + Linux, OSX et Solaris lors de la création de fichiers</para> + </listitem> + + <listitem> + <para>Invités X11 : on empêche de définir la locale dans vboxmouse, car + cela posait des problèmes avec les locales turques (bogue #3563)</para> + </listitem> + + <listitem> + <para>Invités X11 : affichage du pointeur de souris de l'invité à + droite si le bureau virtuel est plus grand que la résolution de + l'invité (bogue + #2306)</para> + </listitem> + + <listitem> + <para>Suppléments Linux : correction d'une coquille lors de la détection + de Xorg 1.6 (bogue #3555)</para> + </listitem> + + <listitem> + <para>Invités Solaris : ajout de la dépendance xpg4/xcu4 à l'installeur + des suppléments invité (bogue #3524)</para> + </listitem> + + <listitem> + <para>Invités Windows : sondage du pilote de filtre VBoxMouse.sys au + bon périphérique de pointage de l'invité (bogue #1324)</para> + </listitem> + + <listitem> + <para>Hôtes Windows : correction du BSOD au démarrage d'une VM quand + l'interface hôte est activée (bogue #3414)</para> + </listitem> + + <listitem> + <para>Hôtes Linux : comptage correct des références pour empêcher le + déchargement du module vboxnetflt tant que ce code est utilisé (bogue #3104)</para> + </listitem> + + <listitem> + <para>Hôtes Linux : ne laisse pas de zombies de VBoxSysInfo.sh + (bogue #3586)</para> + </listitem> + + <listitem> + <para>Installeurs Linux : corrections pour les systèmes Slackware, Arch Linux et + Linux from Scratch</para> + </listitem> + + <listitem> + <para>Installeurs Windows : combinaison de l'exécutable de l'installeur + qui contient à la fois les architectures 32 et 64 bits</para> + </listitem> + + <listitem> + <para>VBoxManage : moins de messages d'erreur chiffrés sur la ligne de + commandes</para> + </listitem> + + <listitem> + <para>Les commandes VBoxManage <computeroutput>list vms</computeroutput> + sont par défaut dans un format emballé</para> + </listitem> + + <listitem> + <para>VBoxManage <computeroutput>controlvm dvdattach</computeroutput> ne + fonctionnait pas si l'image était connecté auparavant</para> + </listitem> + + <listitem> + <para>VBoxManage : possibilité de créer toutes les variantes d'images de + disques supportées</para> + </listitem> + + <listitem> + <para>VBoxManage <computeroutput>showvminfo</computeroutput> : ne spamme + pas le journal des versions si les suppléments invité ne supportent pas + les informations de statistiques(bogue #3457)</para> + </listitem> + + <listitem> + <para>VBoxManage : nettoyage du traitement de grandes lignes de commandes, + les options primitives d'un seul tiret sont obsolètes et seront + supprimées dans la prochaine version majeure, donc passez dès maintenant + aux nouvelles options</para> + </listitem> + + <listitem> + <para>Disques durs : amélioration du support des disques immuables pour + réinitialiser automatiquement le fichier de différenciation au démarrage + de la VM (lié au bogue #2772)</para> + </listitem> + + <listitem> + <para>GUI : activation de l'adaptateur audio par défaut pour les + nouvelles VMs</para> + </listitem> + + <listitem> + <para>GUI : avertissement si VT-x/AMD-V n'est pas opérationnel au + démarrage d'un invité 64 bits</para> + </listitem> + + <listitem> + <para>GUI : désactivation du support des invités 64 bits quand le processeur + de l'hôte ne supporte pas VT-x/AMD-V</para> + </listitem> + + <listitem> + <para>GUI : suppression de l'icône de la disquette de la barre d'état</para> + </listitem> + + <listitem> + <para>GUI : affichage de la révision build dans une boîte de dialogue + A propos</para> + </listitem> + + <listitem> + <para>GUI : correction du texte sticky de la barre d'état</para> + </listitem> + + <listitem> + <para>GUI : amélioration des boîtes de dialogue d'erreur</para> + </listitem> + + <listitem> + <para>GUI : échec avec un message d'erreur adéquat lors d'une tentative + de démarrage d'une image de disque en lecture seule (bogue #1745)</para> + </listitem> + + <listitem> + <para>GUI/Mac OS X : correction d'un bouton Fermer désactivé</para> + </listitem> + + <listitem> + <para>GUI/Windows : ré-activation du support du copier-coller (régression 2.0 ; + hôtes Windows ; bogue #2065)</para> + </listitem> + + <listitem> + <para>Support 3D : ajout du support de la sélection/retour d'OpenGL + (bogue #2920)</para> + </listitem> + + <listitem> + <para>Support 3D : fermeture du sous-système OpenGL pour la fin + des applications invitées (bogue #3243)</para> + </listitem> + + <listitem> + <para>Support 3D : correction d'accrocs de la VM au démarrage des + invités ayant activé l'accélération 3D (bogue #3437)</para> + </listitem> + + <listitem> + <para>PXE : correction d'accrocs au démarrage quand la virtualisation + matérielle est utilisée (bogue #2536)</para> + </listitem> + + <listitem> + <para>LsiLogic : correction de problèmes avec les invités Solaris</para> + </listitem> + + <listitem> + <para>API principal : fermeture du fichier XML des paramètres de la + machine lorsqu'on désenregistre une machine + (bogue #3548)</para> + </listitem> + + </itemizedlist> + </sect1> + + <sect1> + <title>Version 2.1.4 (16-02-2009)</title> + + <para>C'est une version de maintenance. Les éléments suivants ont été corrigés et/ou + ajoutés :</para> + + <itemizedlist> + + <listitem> + <para>Hôtes Windows : correction de plantages/accrocs de l'hôte sur + certains systèmes Windows 32 bits lorsqu'on exécute des invités Linux + (bogues #1606, #2269, #2763)</para> + </listitem> + + <listitem> + <para>Hôtes Windows : correction d'un problème BSOD du composant + réseau (bogues #3168, #2916)</para> + </listitem> + + <listitem> + <para>Hôtes Windows : correction de problèmes d'installation (bogues #2517, #1730, #3130)</para> + </listitem> + + <listitem> + <para>Hôtes Linux : correction de bizarreries occasionnelles du noyau + (bogue #2556)</para> + </listitem> + + <listitem> + <para>Hôtes Linux : correction d'une dépendance du module pour les + modules intégrés (bogue #3115)</para> + </listitem> + + <listitem> + <para>Hôtes Linux : déplacement des règles udev de redirection USB + pour qu'elles n'écrasent pas celles existantes sur le système (bogue #3143)</para> + </listitem> + + <listitem> + <para>Hôtes Linux : correction du problème des invités incapables de + communiquer entre eux lorsqu'ils sont reliés par des interfaces TAP + (bogue #3215)</para> + </listitem> + + <listitem> + <para>Hôtes Linux : on arrête de chercher l'USB en permanence si DBus ou + hal ne sont pas disponibles (bogue #3136)</para> + </listitem> + + <listitem> + <para>Hôtes Linux : correction d'avertissements dans l'installeur quand + SELinux est désactivé (bogue #3098)</para> + </listitem> + + <listitem> + <para>Hôtes Linux : VirtualBox ne parvenait parfois pas à démarrer s'il + était lancé en utilisant au préalable sudo (bogue #3270)</para> + </listitem> + + <listitem> + <para>Hôtes Solaris : correction d'une forte charge du processeur + pendant le fonctionnement de nombreux invités en parallèle</para> + </listitem> + + <listitem> + <para>Hôtes Solaris : correction de l'impossibilité de démarrer plus de + 128 VMs</para> + </listitem> + + <listitem> + <para>VMM : correction d'une régression de performances des invités + Windows (bogue #3172) </para> + </listitem> + + <listitem> + <para>VMM : on ignore les stepping du processeur lors de la restauration + d'un état sauvegardé/instantané</para> + </listitem> + + <listitem> + <para>REM : correction d'une impossibilité d'utiliser gdb pour déboquer + les programmes dans les invités Linux avec la virtualisation logicielle + (bogue #3245)</para> + </listitem> + + <listitem> + <para>GUI : correction de la gestion des touches mortes sur les hôtes + Solaris (bogue #3256)</para> + </listitem> + + <listitem> + <para>GUI : dans la boîte de dialogue d'arrêt, désactivation de l'action + <emphasis>envoi du signal Arrêt</emphasis> si l'invité n'utilise pas + ACPI</para> + </listitem> + + <listitem> + <para>GUI : suppress,on des événements de relâche des touches + supplémentaires envoyés par les hôtes X11 quand les touches se répètent + automatiquement (bogue #1296)</para> + </listitem> + + <listitem> + <para>API : restauration de la sensibilité à la casse de la recherche + du nom du type d'OS (bogue #3087)</para> + </listitem> + + <listitem> + <para>VBoxHeadless : ne démarre vraiment plus les services X11 (service + presse-papier, accélération 3D ; hôtes Solaris & Darwin seulement ; bogue #3199)</para> + </listitem> + + <listitem> + <para>NAT : correction de plantages occasioneels quand l'invité fait un + traceroute (hôtes non Windows ; bogue #3200)</para> + </listitem> + + <listitem> + <para>NAT : correction de plantages en cas de charge élevée (bogue #3110)</para> + </listitem> + + <listitem> + <para>NAT : correction de téléchargements tronqués (hôtes Windows + seulement, bogue #3257)</para> + </listitem> + + <listitem> + <para>NAT : pas d'interception des paquets TFTP dont l'adresse de + destination est différente de celle du serveur TFTP intégré (bogue #3112)</para> + </listitem> + + <listitem> + <para>USB : plusieurs corrections du passthrough USB sur les hôtes Linux</para> + </listitem> + + <listitem> + <para>USB : réduction de l'utilisation du processeur de l'hôte si + EHCI est actif</para> + </listitem> + + <listitem> + <para>VRDP : correction d'un écran noir du serveur VRDP après la + reconnexion d'un client (bogue #1989)</para> + </listitem> + + <listitem> + <para>VRDP : modification du client rdesktop (rdesktop-vrdp) qui utilise + maintenant la synchronisation de l'état du verrouillage numérique (bogue #3253)</para> + </listitem> + + <listitem> + <para>LsiLogic : on a fait en sorte que les invités FreeBSD fonctionnent + (bogue #3174)</para> + </listitem> + + <listitem> + <para>ATA : correction d'un verrouillage lorsqu'on met en pause une VM + à cause de problèmes de disque virtuel (retrait du disque, indisponibilité + de la cible iSCSI)</para> + </listitem> + + <listitem> + <para>iSCSI : correction d'un plantage possible lors de la mise en pause + de la VM</para> + </listitem> + + <listitem> + <para>Support 3D : ajout d'un GL_MAX_TEXTURE_COORDS_ARB manquant (bogue #3246)</para> + </listitem> + + <listitem> + <para>Suppléments Windows : correction d'une erreur <emphasis>ERROR (e0000101)</emphasis> + pendant l'installation (bogue #1923)</para> + </listitem> + + <listitem> + <para>Suppléments Windows : correction d'un accroc de l'explorateur + Windows pendant la navigation dans des dossiers partagés avec les invités + 64 bits (bogue #2225)</para> + </listitem> + + <listitem> + <para>Suppléments Windows : correction de distortions de l'écran invité + lors du changement de mode graphique</para> + </listitem> + + <listitem> + <para>Suppléments Windows : correction d'un message <emphasis>Périphérique réseau + non connecté</emphasis> pour les dossiers partagés associés après le + démarrage de l'invité (bogue #3157)</para> + </listitem> + + <listitem> + <para>Suppléments Linux : correction d'une corruption occasionnelle de + fichiers quand on écrit des fichiers en mode + <emphasis>O_APPEND</emphasis> dans un dossier partagé (bogue #2844)</para> + </listitem> + + <listitem> + <para>Suppléments Linux : le pilote de souris n'était pas bien paramétré + sur les versions candidates de X.Org (bogue #3212)</para> + </listitem> + + <listitem> + <para>Suppléments Linux : correction pour que l'installeur fonctionne + avec openSUSE 11.1 (bogue #3213)</para> + </listitem> + + <listitem> + <para>Suppléments Linux : désactivation du redimensionnement dynamique + si le serveur X est configuré pour des résolutions fixes</para> + </listitem> + + <listitem> + <para>Suppléments Solaris/Linux : bonne gestion des résolutions virtuelles + pupérieures à la résolution actuelle de l'invité (bogue #3096)</para> + </listitem> + + </itemizedlist> + </sect1> + + <sect1> + <title>Version 2.1.2 (21-01-2009)</title> + + <para>C'est une version de maintenance. Les éléments suivants ont été corrigés et/ou + ajoutés :</para> + + <itemizedlist> + + <listitem> + <para>USB : corrections du support de l'hôte Linux (bogue #3136)</para> + </listitem> + + <listitem> + <para>VMM : correction d'une guru meditation sur les invités PAE sur + des hôtes non PAE (AMD-V)</para> + </listitem> + + <listitem> + <para>VMM : correction d'une guru meditation sur les hôtes Mac OS X lorsqu'on + utilise VT-x</para> + </listitem> + + <listitem> + <para>VMM : possibilité de lancer jusqu'à 1023 VMs sur les hôtes 64 + bits (on était à 127)</para> + </listitem> + + <listitem> + <para>VMM : plusieurs corrections liées aux invités FreeBSD (bogues #2342, #2341, #2761) </para> + </listitem> + + <listitem> + <para>VMM : correction d'une guru meditation à l'installation de + Suse Enterprise Server 10U2 (VT-x seulement ; bogue #3039)</para> + </listitem> + + <listitem> + <para>VMM : correction d'une guru meditation au démarrage de Novell Netware 4.11 + (VT-x seulement ; bogue #2898) </para> + </listitem> + + <listitem> + <para>VMM : correction d'un erreur VERR_ADDRESS_TOO_BIG sur certains + systèmes Mac OS X au démarrage d'une VM </para> + </listitem> + + <listitem> + <para>VMM : vidage de MSR_K6_EFER_SVME après le sondage pour AMD-V (bogue #3058) </para> + </listitem> + + <listitem> + <para>VMM : correction d'une guru meditation pendant le démarrage de + Windows 7 avec plus de 2 Go de RAM sur l'invité (VT-x, pagination nestée + seulement) </para> + </listitem> + + <listitem> + <para>VMM : correction d'un accroc pendant le démarrage d'OS/2 MCP2 (AMD-V et VT-x + seulement) </para> + </listitem> + + <listitem> + <para>VMM : correction d'une boucle pendant le démarrage d'OpenBSD 4.0 + (VT-x seulement) </para> + </listitem> + + <listitem> + <para>VMM : correction de plantages aléatoires liés à FPU/XMM avec des + invités 64 bits sur des hôtes 32 bits </para> + </listitem> + + <listitem> + <para>VMM : correction d'une corruption occasionnelle de l'état XMM + avec les invités 64 bits </para> + </listitem> + + <listitem> + <para>GUI : augmentation de la limite de RAM pour les nouvelles VMs à + 75% de la mémoire de l'hôte</para> + </listitem> + + <listitem> + <para>GUI : ajout deWindows 7 comme type de système d'exploitation</para> + </listitem> + + <listitem> + <para>VBoxSDL : correction du paramètre <computeroutput>-fixes fixedmode</computeroutput> + (bogue #3067)</para> + </listitem> + + <listitem> + <para>Presse-papier : corrections de stabilité (hôtes Linux et Solaris + seulement, bogue #2675 and #3003)</para> + </listitem> + + <listitem> + <para>Support 3D : correction de plantages de la VM avec certaines applications + invitées (bogues #2781, #2797, #2972, #3089)</para> + </listitem> + + <listitem> + <para>LsiLogic : amélioration du support des invités Windows (encore + expérimental)</para> + </listitem> + + <listitem> + <para>VGA : correction d'une régression de la 2.1.0 avec laquelle les + événements de redimensionnement de l'écran invité n'étaient pas bien + gérés (bogue #2783)</para> + </listitem> + + <listitem> + <para>VGA : améliorations significatives de performances lors de + l'utilisation de VT-x/AMD-V sur les hôtes Mac OS X</para> + </listitem> + + <listitem> + <para>VGA : meilleure gestion des changements offset de la mémoire + graphique (corrige les problèmes d'affichage de GRUB2 et de Dos DOOM)</para> + </listitem> + + <listitem> + <para>VGA : les modes VESA personnalisés aux largeurs invalides sont + maintenant arrondies aux bonnes valeurs juste au-dessus (bogue #2895)</para> + </listitem> + + <listitem> + <para>IDE : correction du support passthrough ATAPI (hôtes Linux + seulement ; bogue #2795)</para> + </listitem> + + <listitem> + <para>Réseau : correction de kernel panics à cuse d'un déréférencement + du pointeur NULL dans les noyaux Linux kernels < 2.6.20 (hôtes Linux seulement ; bogue #2827)</para> + </listitem> + + <listitem> + <para>Réseau : correction de BSODs intermitants lors de l'utilisation d'une + nouvelle interface de l'hôte (hôtes Windows seulement ; bogues #2832, #2937, #2929)</para> + </listitem> + + <listitem> + <para>Réseau : correction de plusieurs problèmes d'affichage des NICs + de l'hôte dans l'interface graphique (hôtes Windows seulement ; bogues 2814, #2842) + </para> + </listitem> + + <listitem> + <para>Réseau : correction du problème d'affichage des NICs hôtes sans + adresse IP affectée (hôtes Linux seulement ; bogue #2780) + </para> + </listitem> + + <listitem> + <para>Réseau : correction du probçme de paquets envoyés qui reviennent + dans le réseau interne lors de l'utilisation de hosting (hôtes Linux + seulement ; bogue #3056). + </para> + </listitem> + + <listitem> + <para>NAT : correction de la redirection de ports (hôtes Windows seulement ; + bogue #2808)</para> + </listitem> + + <listitem> + <para>NAT : correction du démarrage à partir du serveur TFTP intégré + (bogue #1959)</para> + </listitem> + + <listitem> + <para>NAT : correction de plantages occasionnels (bogue #2709)</para> + </listitem> + + <listitem> + <para>SATA : données du distributeur du produit (VPD) sont maintenant + configurables</para> + </listitem> + + <listitem> + <para>SATA : les partitions de disques brutes n'étaient pas reconnues + (régression 2.1.0, hôte Windows seulement, bogue #2778)</para> + </listitem> + + <listitem> + <para>SATA : correction d'un timeouts dans l'invité lors de l'utilisation + de fichiers VNDK bruts (hôtes Linux seulement, bogue #2796)</para> + </listitem> + + <listitem> + <para>SATA : forte accélération pendant certaines opérations d'E/S comme + le formattage d'un disque</para> + </listitem> + + <listitem> + <para>SATA/IDE : correction de plantages/erreurs possibles pendant + l'extinction d'une VM</para> + </listitem> + + <listitem> + <para>VRDP : correction du chargement de <computeroutput>libpam.so.1</computeroutput> + sur l'hôte (hôtes Solaris seulement)</para> + </listitem> + + <listitem> + <para>VRDP : correction de déconqexions du client RDP</para> + </listitem> + + <listitem> + <para>VRDP : correction de mauvais comportements du serveur VRDP après la + rupture d'une connexion</para> + </listitem> + + <listitem> + <para>VBoxManage <computeroutput>showvminfo</computeroutput> : + correction de la déclaration des VMs en fonction (bogue #2773)</para> + </listitem> + + <listitem> + <para>VBoxManage <computeroutput>convertfromraw</computeroutput>: ajout + de la vérification des paramètres et utilisation de cela par défaut + pour créer les fichiers VDI, documentation et correction du paramètre + de format (bogue #2776)</para> + </listitem> + + <listitem> + <para>VBoxManage <computeroutput>clonehd</computeroutput>: correction + d'une image de sortie en morceaux lorsqu'on crée des fichiers VDI + (bogue #2813)</para> + </listitem> + + <listitem> + <para>VBoxManage <computeroutput>guestproperty</computeroutput>: + correction de l'énumération des propriétés (mauvais paramètres/exception)</para> + </listitem> + + <listitem> + <para>VHD : correction d'une erreur lorsqu'on connecte certains fichiers + conteneurs (bogue #2768)</para> + </listitem> + + <listitem> + <para>Hôtes Solaris : ajout du support des ports série (bogue #1849)</para> + </listitem> + + <listitem> + <para>Hôtes Solaris : correction des claviers japonais (bogue #2847)</para> + </listitem> + + <listitem> + <para>Hôtes Solaris : les versions 32 bits et 64 bits sont maintenant + disponibles en un seul paquet unifié</para> + </listitem> + + <listitem> + <para>Hôtes Linux : ne dépend plus de <computeroutput>libcap1</computeroutput> + (bogue #2859)</para> + </listitem> + + <listitem> + <para>Hôtes Linux : corrections de compilation du module noyau pour + 2.6.29-rc1</para> + </listitem> + + <listitem> + <para>Hôtes Linux : n'oublie pas les popsibilités si la VM a été démarrée + par l'administrateur (régression 2.1.0)</para> + </listitem> + + <listitem> + <para>Hôtes Mac OS X : sauvegarde de l'état des VMs en fonction ou en + pause quand la batterie de la machine de l'hôte atteint un niveau + critique</para> + </listitem> + + <listitem> + <para>Hôtes Mac OS X : amélioration du redimensionnement de la fenêtre + de la VM</para> + </listitem> + + <listitem> + <para>Hôtes Mac OS X : ajout d'une option graphique pour désactiver + l'icône système de la vue du temps réel dans l'interface graphique, afin + de diminuer la charge du processeur de vhôte quand l'invité fait de la 3D</para> + </listitem> + + <listitem> + <para>Hôtes Mac OS X : peaufinement de l'icône système d'aperçu du temps + réel</para> + </listitem> + + <listitem> + <para>Suppléments Windows : correction de la propriété invité et de la + détection du type d'OS pour Windows 2008 et Windows 7 Beta</para> + </listitem> + + <listitem> + <para>Suppléments Windows : ajout du support de Windows 7 Beta (bogues #2995, #3015)</para> + </listitem> + + <listitem> + <para>Suppléments Windows : correction d'un gel des invités Windows 2000 + lors de l'accès aux fichiers dans des dossiers partagés (bogue #2764)</para> + </listitem> + + <listitem> + <para>Suppléments Windows : correction de la gestion de CTRL-ALT-Supp + lors de l'utilisation de VBoxGINA</para> + </listitem> + + <listitem> + <para>Installeur des suppléments Windows : ajout de l'option /extract + pour n'extraire (sans installer) que les fichiers dans un répertoire (on + peut la spécifier avec /D=chemin)</para> + </listitem> + + <listitem> + <para>Installeur Linux des suppléments : ajout du support de la + distribution Linux From Scratch (bogue #1587) et des versions récentes + de Gentoo (bogue #2938)</para> + </listitem> + + <listitem> + <para>Suppléments : ajout du support expérimental du serveur X.Org 1.6 + RC sur les invités Linux</para> + </listitem> + + <listitem> + <para>Suppléments Linux : correction d'un bogue qui empêchait de + régler correctement <computeroutput>fmode</computeroutput> dans les + dossiers partagés associés (bogue #1776)</para> + </listitem> + + <listitem> + <para>Suppléments Linux : correction de l'envoi de fichiers dans les + dossiers partagés (bogue #1612)</para> + </listitem> + + <listitem> + <para>Suppléments Linux : on ignore l'option <computeroutput>noauto</computeroutput> + au montage d'un dossier partagé (bogue #2498)</para> + </listitem> + + <listitem> + <para>Suppléments Linux : correction d'un problème de pilote qui empêchait + X11 de compiler les plans de clavier (bogue #2793 et #2905)</para> + </listitem> + + <listitem> + <para>Suppléments X11 : contournement dans le pilote de la souris + pour un plantage du serveur quand le pilote est chargé à la main (bogue #2397)</para> + </listitem> + + </itemizedlist> + </sect1> + + <sect1> + <title>Version 2.1.0 (17-12-2008)</title> + + <para>Cette version est une mise à jour majeure. Les nouvelles fonctions + majeures suivantes ont été ajoutées :</para> + + <itemizedlist> + <listitem> + <para>Support de la virtualisation matérielle (VT-x et AMD-V) sur les + hôtes Mac OS X</para> + </listitem> + + <listitem> + <para>Support des invités 64 bits sur les systèmes d'exploitation hôtes + 32 bits (expérimental ; voir <xref linkend="intro-64bitguests" />)</para> + </listitem> + + <listitem> + <para>Ajout du support des améliorations de virtualisation d'Intel + Nehalem (EPT et VPID ; voir <xref linkend="hwvirt" />)</para> + </listitem> + + <listitem> + <para>Accélératio 3D expérimentale avec OpenGL (voir <xref linkend="guestadd-3d" />)</para> + </listitem> + + <listitem> + <para>Contrôleurs SCSI expérimentaux LsiLogic et BusLogic (voir <xref linkend="harddiskcontrollers" />)</para> + </listitem> + + <listitem> + <para>Suppor complet de VMDK/VHD, y compris les instantanés (voir <xref linkend="vdidetails" />)</para> + </listitem> + + <listitem> + <para>Nouveau moteur NAT avec des performances beaucoup plus appréciables, + une meilleure fiabilité et le support de l'écho (ping) ICMP + (bogues #1046, #2438, #2223, #1247)</para> + </listitem> + + <listitem> + <para>Nouvelles implémentations de Host Interface Networking (réseau + interface hôte) pour les hôtes Windows et + Linux avec un paramétrage plus facile (remplace TUN/TAP sur Linux et + l'activation à la main sur Windows)</para> + </listitem> + + </itemizedlist> + + <para>De plus, les éléments suivants ont été corrigés et/ou ajoutés :</para> + + <itemizedlist> + <listitem> + <para>VMM : améliorations significative des performances pour VT-x + (exécution en mode réel) </para> + </listitem> + + <listitem> + <para>VMM : support des verrous (breakpoints) matériels (VT-x et AMD-V + seulement ; bogue #477)</para> + </listitem> + + <listitem> + <para>VMM : améliorations des performances de VGA pour VT-x et AMD-V </para> + </listitem> + + <listitem> + <para>VMM : améliorations des performances des invités Solaris et OpenSolaris + pour AMD-V (Famille de processeurs Barcelona seulement) </para> + </listitem> + + <listitem> + <para>VMM : correction d'une guru meditation pendant l'exécution de + l'antivirus Dr. Web (virtualisation logicielle seulement ; bogue #1439)</para> + </listitem> + + <listitem> + <para>VMM : désactivation de VT-x et de AMD-V quand la machine de l'hôte + passe en mode veille ; réactivation quand la machine hôte se réveille + (hôtes Windows, Mac OS X & Linux ; bogue #1660)</para> + </listitem> + + <listitem> + <para>VMM : correction d'accrocs de l'invité lors de la restauration des + états sauvegardés/instantanés VT-x or AMD-V </para> + </listitem> + + <listitem> + <para>VMM : correction d'une guru meditation à l'exécution d'une instruction + de débogage par octet (VT-x seulement ; bogue #2617)</para> + </listitem> + + <listitem> + <para>VMM : correction d'une guru meditation pour les invités PAE sur + des hôtes non PAE (VT-x) </para> + </listitem> + + <listitem> + <para>VMM : impossibilité de mélanger la l'exécution de la virtualisation + matérielle et logicielle en général (bogue #2404)</para> + </listitem> + + <listitem> + <para>VMM : correction d'un écran noir au démarrage d'OS/2 1.x (AMD-V + seulement) </para> + </listitem> + + <listitem> + <para>GUI : pause à l'exécution des VMs quand la machine hôte se met en + veille (hôtes Windows & Mac OS X)</para> + </listitem> + + <listitem> + <para>GUI : réveil des VMs en pause quand la machine hôte se réveille + après une veille (hôtes Windows & Mac OS X)</para> + </listitem> + + <listitem> + <para>GUI : sauvegarde de l'état en fonction ou en pause des VMs quand + la batterie de la machine hôte atteint un niveau critique (hôtes Windows)</para> + </listitem> + + <listitem> + <para>GUI : restauration correcte de la position de la fenêtre du + sélecteur lors d'une exécution sur un gestionnaire de fenêtre compiz</para> + </listitem> + + <listitem> + <para>GUI : restauration correcte de la VM en mode transparent (régression + 2.0)</para> + </listitem> + + <listitem> + <para>GUI : avertissement de l'utilisateur quand il n'y a pas de réglage + optimal de la mémoire</para> + </listitem> + + <listitem> + <para>GUI : structuration de la liste des systèmes d'exploitation selon + leur famille et leur version pour une commodité améliorée</para> + </listitem> + + <listitem> + <para>GUI : prédéfinition de paramètres pour les invités QNX</para> + </listitem> + + <listitem> + <para>IDE : amélioration du support passthrough d'ATAPI </para> + </listitem> + + <listitem> + <para>Réseau : ajout du support de jusqu'à 8 adaptateurs Ethernet par VM</para> + </listitem> + + <listitem> + <para>Réseau : correction d'un problème où une VM pourrait perdre la + connectivité après un redémarrage</para> + </listitem> + + <listitem> + <para>iSCSI : possibilité de créer des instantanés/différenciations en + utilisant un fichier VDI local</para> + </listitem> + + <listitem> + <para>iSCSI : amélioration de l'interopérabilité avec des cibles iSCSI</para> + </listitem> + + <listitem> + <para>Graphique : correction de la gestion d'une mémoire graphique de + l'invité n'étant pas une puissance de deux (bogue #2724)</para> + </listitem> + + <listitem> + <para>VBoxManage : correction d'un bogue qui eopêchait de paramétrer + le port série pour un accès direct au périphérique</para> + </listitem> + + <listitem> + <para>VBoxManage : ajout du support de la création d'images VMDK et VHD</para> + </listitem> + + <listitem> + <para>VBoxManage : ajout du support de la conversion d'images (VDI/VMDK/VHD/RAW)</para> + </listitem> + + <listitem> + <para>Hôtes Solaris : ajout du support IPv6 entre vhôte et l'invité quand + on utilise le réseau de l'interface de l'hôte</para> + </listitem> + + <listitem> + <para>Hôtes Mac OS X : ajout du signalement de l'état ACPI de l'alimentation + de l'hôte</para> + </listitem> + + <listitem> + <para>API : révision de la forme de stockage avec une meilleure + généralisation</para> + </listitem> + + <listitem> + <para>API : possibilité de connecter un disque dur à plus d'une VM à la + fois</para> + </listitem> + + <listitem> + <para>API : ajout de méthodes pour renvoyer les informations sur la + configuration réseau du système hôte</para> + </listitem> + + <listitem> + <para>Dossiers partagés : corrections de performances et de stabilité + pour les invités Windows (Applications Microsoft Office)</para> + </listitem> + + </itemizedlist> + </sect1> + + <sect1> + <title>Version 2.0.8 (10-03-2009)</title> + + <para>C'est une version de maintenance. Les éléments suivants ont été corrigés et/ou + ajoutés :</para> + + <itemizedlist> + + <listitem> + <para>VMM : correction d'accrocs de l'invité lors de la restauration des + états sauvegardés/instantanés en VT-x ou AMD-V</para> + </listitem> + + <listitem> + <para>VMM : correction de problèmes d'affectation de mémoire pouvant + provoquer des échecs de démarrage d'une VM avec une erreur + VERR_PGM_MAPPING_CONFLICT</para> + </listitem> + + <listitem> + <para>VMM : correction d'accrocs/plantages de l'hôte sur certains + systèmes Windows 32 bits lors de l'exécution d'invités Linux + (bogues #1606, #2269, #2763)</para> + </listitem> + + <listitem> + <para>XPCOM/Principal : correction d'un bogue de synchronisation causé + par des conflits de touches semaphore SYSV</para> + </listitem> + + <listitem> + <para>ATA : correction d'un verrou quand on met une VM en pause, à cause + de problèmes de disque virtuel (comme le disque plein, cible iSCSI + indisponilable)</para> + </listitem> + + <listitem> + <para>iSCSI : correction d'un plantage possible lors de la mise en pause + d'une VM</para> + </listitem> + + <listitem> + <para>iSCSI : correction de lavérification de la validité PDU et de + la détection de la fiabilité PDU en définitive</para> + </listitem> + + <listitem> + <para>VBoxHeadless : ne démarre véritablement pas les services X11 + (service presse-papier, accélération 3D ; hôtes Solaris & Darwin + seulement ; bogue #3199)</para> + </listitem> + + <listitem> + <para>Réseau : correction d'un problème où une VM pourrait perdre sa + connectivité après un redémarrage</para> + </listitem> + + <listitem> + <para>Hôtes Linux : correction de bizarreries occasionnelles du noyau + (bogue #2556)</para> + </listitem> + + <listitem> + <para>Hôtes Solaris : correction d'un forte charge du processeur pendant + le fonctionnement de nombreux invités en parallèle</para> + </listitem> + + <listitem> + <para>Hôtes Solaris : correction d'une impossibilité de démarrer plus de + 128 VMs</para> + </listitem> + + <listitem> + <para>Solaris/Services Web : correction du script SMF pour définir correctement + le dossier personnel</para> + </listitem> + + <listitem> + <para>Suppléments Linux : correction d'une occasionnelle de + fichier lorsqu'on écrit des fichiers en mode <emphasis>O_APPEND</emphasis> + dans un dossier partagé (bogue #2844)</para> + </listitem> + + </itemizedlist> + </sect1> + + <sect1> + <title>Version 2.0.6 (21-11-2008)</title> + + <para>C'est une version de maintenance. Les éléments suivants ont été corrigés et/ou + ajoutés :</para> + + <itemizedlist> + + <listitem> + <para>VMM : correction d'une Guru meditation lors de l'exécution des + invités Windows 64 bits (bogue #2220)</para> + </listitem> + + <listitem> + <para>VMM : correction d'accrocs au démarrage de Solaris 10U6 + (VT-x et AMD-V) bogue #2565)</para> + </listitem> + + <listitem> + <para>VMM : correction d'accrocs au redémarrage de Solaris 10U6 (AMD-V + seulement ; bogue #2565)</para> + </listitem> + + <listitem> + <para>GUI : la touche hôte n'était pas toujours bien affichée (hôtes + Windows seulement, bogue #1996)</para> + </listitem> + + <listitem> + <para>GUI : le focus du clavier était perdu après avoir minimisé et restauré + la fenêtre de la VM avec la barre des tâches de Windows (bogue #784)</para> + </listitem> + + <listitem> + <para>VBoxManage : affichage correct des disques SATA lors de l'affichage + des informations sur la VM (bogue #2624)</para> + </listitem> + + <listitem> + <para>SATA : correction de l'accès si la taille du tampon n'est pas + alignée sur les secteurs (bogue #2024)</para> + </listitem> + + <listitem> + <para>SATA : amélioration des performances</para> + </listitem> + + <listitem> + <para>SATA : correction de la fonction des instantanés avec ports>1 (bogue #2510)</para> + </listitem> + + <listitem> + <para>E1000 : correction de plantages dans de rares circuonstances</para> + </listitem> + + <listitem> + <para>USB : correction du support des périphériques iPhone et Nokia (hôtes + Linux : bogues #470 & #491)</para> + </listitem> + + <listitem> + <para>Installeur sur hôte Windows : ajout d'une bonne gestion des applications + VirtualBox libres lors de la mise à jour de l'installation</para> + </listitem> + + <listitem> + <para>Installeur sur hôte Windows : correction du répertoire d'installation + par défaut en 64 bits sur les nouvelles installations (bogue #2501)</para> + </listitem> + + <listitem> + <para>Hôtes Linux/Solaris/Darwin : vérification des droits dans + <computeroutput>/tmp/vbox-$USER-ipc</computeroutput></para> + </listitem> + + <listitem> + <para>Hôtes Linux : correction d'une déclaration assertion sur les + fortes charges réseaux (hôtes AMD64 correction pour les distributions + Linux ayant glibc 2.6 et supérieur (bogue #616)</para> + </listitem> + + <listitem> + <para>Hôtes Linux : ne plante pas à l'extinction avec des ports sçrie + connectés à un périphérique de l'hôte</para> + </listitem> + + <listitem> + <para>Hôtes Solaris : correction d'une incompatibilité entre IPSEC et + le réseau d'interface de l'hôte</para> + </listitem> + + <listitem> + <para>Hôtes Solaris : correction d'une race condition rare lors de + l'extinction des VMs avec les interfaces réseaux de l'hôte</para> + </listitem> + + <listitem> + <para>Hôtes Solaris : correction de VBoxSDL sur Solaris 10 en incluant + la bibliothèque SDL requise (bogue #2475)</para> + </listitem> + + <listitem> + <para>Suppléments Windows : correction de l'affichage des utilisateurs + identifiés avec les propriétés invité lorsqu'on utilise une connexion + native RDP</para> + </listitem> + + <listitem> + <para>Suppléments Windows : correction de plantages de Vista quand + on accède à des dossiers partagés dans certaines circonstances (bogue #2461)</para> + </listitem> + + <listitem> + <para>Suppléments Windows : correction de l'accès aux dossiers partagés + avec MS-Office (bogue #2591)</para> + </listitem> + + <listitem> + <para>Suppléments Linux : correction de la compilation ode vboxvfs.ko + pour les invités 64 bits (bogue #2550)</para> + </listitem> + + <listitem> + <para>SDK : ajout de la mise en cache du port JAX-WS pour accélérer + les connexions</para> + </listitem> + + </itemizedlist> + </sect1> + + <sect1> + <title>Version 2.0.4 (24-10-2008)</title> + + <para>C'est une version de maintenance. Les éléments suivants ont été corrigés et/ou + ajoutés :</para> + + <itemizedlist> + <listitem> + <para>VMM : meilleur affichage des erreurs de VT-x</para> + </listitem> + + <listitem> + <para>VMM : pas d'encombrement du journal par des messages PATM (bogue #1775)</para> + </listitem> + + <listitem> + <para>VMM : correction de la restauration d'un état sauvegardé en + mode réel (virtualisation logicielle seulement)</para> + </listitem> + + <listitem> + <para>GUI : contournement d'un bogue de Qt sur Mac OS X (bogue #2321)</para> + </listitem> + + <listitem> + <para>GUI : installation correcte du greffon accessible de Qt4 (bogue #629)</para> + </listitem> + + <listitem> + <para>SATA : message d'erreur au démarrage d'une VM où le VMDK est connecté + à un port SATA (bogue #2182)</para> + </listitem> + + <listitem> + <para>SATA : correction d'une Guru mediation au démarrage d'OpenSolaris/64 ; + s'applique très probablement également aux autres invités (bogue #2292)</para> + </listitem> + + <listitem> + <para>Réseau : ne plante pas quand on change d'état de la connexion + de l'adaptateur si aucun pilote de l'hôte n'est connecté (bogue #2333)</para> + </listitem> + + <listitem> + <para>VHD : correction d'un bogue qui empêche de démarrer à partir d'images + VHD supérieures à 4Go (bogue #2085)</para> + </listitem> + + <listitem> + <para>VRDP : correction d'un problème d'affichage quand la résolution de + l'invité n'était pas égale à celle du client</para> + </listitem> + + <listitem> + <para>Presse-papier : ne plante pas quand l'initialisation du service de + l'hôte met plus de temps que prévu (hôtes Linux seulement ; bogue #2001)</para> + </listitem> + + <listitem> + <para>Hôtes Windows : plantage de VBoxSVC.exe (bogue #2212)</para> + </listitem> + + <listitem> + <para>Hôtes Windows : fuite de mémoire de VBoxSVC.exe à cause d'une fuite + de mémoire de Windows WMI (Vista seulement) (bogue #2242)</para> + </listitem> + + <listitem> + <para>Hôtes Windows : VBoxSVC.exe rallonge le démarrage de la GUI</para> + </listitem> + + <listitem> + <para>Hôtes Linux : gestion du dépassement du compteur de temps (la VM + plante après 300 secondes de fonctionnement de l'hôte ; bogue #2247)</para> + </listitem> + + <listitem> + <para>Hôtes Solaris : correction de l'immobilisation réseau côté hôte et + invité quand on utilise l'interface réseau de l'hôte (bogue #2474)</para> + </listitem> + + <listitem> + <para>Hôtes Solaris : ajout du support de l'utilisation d'interfaces + réseaux non actives et des Crossbow Virtual + Network Interfaces (VNICs) avec l'interface réseau de l'hôte</para> + </listitem> + + <listitem> + <para>Hôtes Solaris : un nouveau travail du modèle de threading améliore + les performances de l'interface réseau hôte</para> + </listitem> + + <listitem> + <para>Suppléments Windows : correction d'un plantage lors de l'accès + aux structures profondes d'un répertoire dans un dossier partagé</para> + </listitem> + + <listitem> + <para>Suppléments Windows : amélioration de la résolution des noms de + dossiers partagés (bogue #1728)</para> + </listitem> + + <listitem> + <para>Suppléments Windows : correction d'un plantage à l'extinction de + Windows 2000 (bogue #2254)</para> + </listitem> + + <listitem> + <para>Suppléments Windows : correction du code d'erreur de + <computeroutput>MoveFile()</computeroutput> si la cible existe (bogue #2350)</para> + </listitem> + + <listitem> + <para>Suppléments Linux : correction de <computeroutput>seek()</computeroutput> + pour des fichiers de plus de 2Go (bogue #2379)</para> + </listitem> + + <listitem> + <para>Suppléments Linux : support d'Ubuntu 8.10</para> + </listitem> + + <listitem> + <para>Suppléments Linux : correction du presse-papier (bogue #2015)</para> + </listitem> + + <listitem> + <para>Services Web : amélioration de la documentation et correction des + examples (bogue #1642)</para> + </listitem> + + </itemizedlist> + + </sect1> + + <sect1> + <title>Version 2.0.2 (12-09-2008)</title> + + <para>C'est une version de maintenance. Les éléments suivants ont été corrigés et/ou + ajoutés :</para> + + <itemizedlist> + + <listitem> + <para>VMM : correction de l'impossibilité de lancer plus d'une VM en + parallèle (AMD-V sur des processeurs avec l'erratum 170 seulement ; bogue #2167)</para> + </listitem> + + <listitem> + <para>VMM : corrections de stabilité de VT-x (bogue #2179 and others)</para> + </listitem> + + <listitem> + <para>VMM : correction de plantages du noyau Linux 2.6.26+ (utilisé par + Ubuntu 8.10 Alpha, Fedora 10 Alpha ; bogue #1875) </para> + </listitem> + + <listitem> + <para>VMM : correction de plantages du noyau Linux 2.6.26 64 bits (Debian) </para> + </listitem> + + <listitem> + <para>VMM : correction d'un plantage de l'invité Vista (32 bits) pendant + le démarrage quand PAE et NX sont activés (s'applique seulement aux hôtes 64 bits + où VT-x est activé) </para> + </listitem> + + <listitem> + <para>VMM : correction de plantages des invités OS/2 au démarrage (AMD-V ; bogue #2132) </para> + </listitem> + + <listitem> + <para>GUI : correction d'un plantage quand on essaie de libçrer une + image inaccessible dans le gestionnaire de disques virtuels</para> + </listitem> + + <listitem> + <para>GUI : correction d'un message d'erreur invalide disant que le + chemin d'instantané a changé, même si ce chemin n'a pas changé (bogue #2064)</para> + </listitem> + + <listitem> + <para>GUI : correction d'un plantage à la création d'une nouvelle image + de disque dur (bogue #2060)</para> + </listitem> + + <listitem> + <para>GUI : correction d'un plantage à l'ajout d'un disque dur dans les + paramètres d'une VM (bogue #2081)</para> + </listitem> + + <listitem> + <para>GUI : correction d'un bogue où VirtualBox ne fonctionne pas avec + le nouveau greffon QGtkStyle (bogue #2066)</para> + </listitem> + + <listitem> + <para>GUI : correction d'une boîte de dialogue de fermeture de la VM en + mode transparent (hôtes Mac OS X seulement ; bogue #2067)</para> + </listitem> + + <listitem> + <para>GUI : correction des entrées de menu standards pour les versions + NLS (hôtes Mac OS X seulement)</para> + </listitem> + + <listitem> + <para>GUI : désactivation du paramètre de VT-x/AMD-V quand il n'est pas + supporté par le processeur (ou sur les hôtes Mac OS X) </para> + </listitem> + + <listitem> + <para>VBoxManage : correction d'un plantage pendant + <computeroutput>internalcommands createrawvmdk</computeroutput> + (bogue #2184)</para> + </listitem> + + <listitem> + <para>VBoxManage : correction de la sortie de + <computeroutput>snapshot showvminfo</computeroutput> (bogue #698)</para> + </listitem> + + <listitem> + <para>Propriétés invité : ajout d'informations sur les interfaces + réseaux de l'invité (invités Windows seulement)</para> + </listitem> + + <listitem> + <para>Dossiers partagés : correction d'une régression faisant planter + les invités Windows</para> + </listitem> + + <listitem> + <para>API : correction du nombre de processeurs installés (hôtes Solaris + seulement)</para> + </listitem> + + <listitem> + <para>VRDP : possibilité pour un client de se reconnecter à une session + existante sur le serveur VRDP en repoussant la connexion existante + (configurable et désactivé par défaut ; pertinent seulement quand + le mode multiconnexions est désactivé) </para> + </listitem> + + <listitem> + <para>VRDP : correction d'un problème de réaffichage de l'image</para> + </listitem> + + <listitem> + <para>Hôtes Linux : correction d'un bogue dans vboxdrv.ko qui + pourrait corrompre la mémoire du noyau et entraîner un kernel panic + (bogue #2078) + </para> + </listitem> + + <listitem> + <para>Hôtes Linux : corrections de compilation du module du noyau sur + Linux 2.6.27</para> + </listitem> + + <listitem> + <para>Hôtes Mac OS X : ajout du support de Python</para> + </listitem> + + <listitem> + <para>Suppléments : correction d'un accroc possible dans la communication + HGCM après le redémarrage d'une VM</para> + </listitem> + + <listitem> + <para>Suppléments Windows : ajout du support de Windows XP 64 bits (bogue #2117)</para> + </listitem> + + <listitem> + <para>Suppléments Linux : désactivation du redimensionnement dynamique + sur les invités Linux où le serveur X est bogué</para> + </listitem> + + <listitem> + <para>Suppléments Linux : support des invités Ubuntu 8.10 et des invités + Fedora 9 (désactivation du redimensionnement dynamique pour la toute dernière)</para> + </listitem> + + <listitem> + <para>Suppléments Linux : ajout de la vérification par l'installeur de + l'architecture du système</para> + </listitem> + + <listitem> + <para>Suppléments Linux : correction de chemin des modules Xorg pour + certaines distributions Linux (bogue #2128)</para> + </listitem> + + <listitem> + <para>VMDK : plus de libéralisme avec les parties ambigues de la spécification + du format et acceptation de plus de variantes de format (bogue #2062)</para> + </listitem> + + <listitem> + <para>VHD : correction d'un bogue de la fondation VHD qui lui faisait + lire de fausses données (bogue #2085)</para> + </listitem> + + <listitem> + <para>Hôtes Solaris : correction d'un kernel panic sur certaines machines + au démarrage des VMs avec les interfaces réseaux de l'hôte (bogue #2183)</para> + </listitem> + + <listitem> + <para>Hôtes Solaris : correction d'une impossibilité d'accéder aux + partages NFS de l'hôte quand l'interface réseau de l'hôte est activée</para> + </listitem> + + <listitem> + <para>Hôtes Solaris : l'installeur détecte et signale maintenant s'il + s'installe dans la mauvaise architecture</para> + </listitem> + + <listitem> + <para>Hôtes Solaris : correction d'un renforcement de la sécurité qui + empêchait de démarrer des VMs à partir de zones non globales même en + tant qu'administrateur (bogue #1948)</para> + </listitem> + + <listitem> + <para>Suppléments Solaris : combinaison de l'installeur des suppléments + 32 bits et 64 bits dans un seul paquet</para> + </listitem> + + <listitem> + <para>Hôtes Mac OS X : support expérimental de la connexion d'un vrai + port série à l'invité </para> + </listitem> + + </itemizedlist> + + </sect1> + + <sect1> + <title>Version 2.0.0 (04-09-2008)</title> + + <para>Cette version est une mise à jour majeure. Les nouvelles fonctions + majeures suivantes ont été ajoutées :<itemizedlist> + + <listitem> + <para>Support des invités 64 bits (hôtes 64 bits seulement) </para> + </listitem> + + <listitem> + <para>Nouvel interface utilisateur natif Leopard sur les hôtes Mac OS X</para> + </listitem> + + <listitem> + <para>L'interface graphique a été convertie de Qt3 à Qt4 avec de + nombreuses améliorations d'affichage</para> + </listitem> + + <listitem> + <para>Notification des nouvelles versions</para> + </listitem> + + <listitem> + <para>Interface d'informations des propriétés invité</para> + </listitem> + + <listitem> + <para>Host Interface Networking (interface réseau de l'hôte) sur les + hôtes Mac OS X</para> + </listitem> + + <listitem> + <para>Nouvelle Host Interface Networking sur les hôtes Solaris</para> + </listitem> + + <listitem> + <para>Support de la pagination imbriquée sur les processeurs AMD modernes + (amélioration majeure des performance)</para> + </listitem> + + <listitem> + <para>Environnement pour récupérer les données de performances et d'utilisation + des ressources (mesures)</para> + </listitem> + + <listitem> + <para>Ajout de l'E/S asynchrone SATA (NCQ: Native Command Queuing) + lors de l'accès à des disques/partitions bruts (gain majeur de + performances)</para> + </listitem> + + <listitem> + <para>Intégration du presse-papier aux invités OS/2</para> + </listitem> + + <listitem> + <para>Création d'un composant SDK séparé intégrant une nouvelle interface + de programmation pour Python sur les hôtes Linux et Solaris</para> + </listitem> + + <listitem> + <para>Support des images de disque VHD</para> + </listitem> + + </itemizedlist></para> + + <para>De plus, les éléments suivants ont été corrigés et/ou ajoutés :</para> + + <itemizedlist> + + <listitem> + <para>VMM : corrections VT-x</para> + </listitem> + + <listitem> + <para>AHCI : amélioration des performances</para> + </listitem> + + <listitem> + <para>GUI : corrections pour le clavier</para> + </listitem> + + <listitem> + <para>Installeur Linux : désinstallation correcte du paquet même si le + désenregistrement du module DKMS échoue</para> + </listitem> + + <listitem> + <para>Suppléments Linux : la résolution de l'écran de l'invité est + restaurée correctement</para> + </listitem> + + <listitem> + <para>Réseau : ajout du support des cadres jumbo (> 1536 octets)</para> + </listitem> + + <listitem> + <para>Dossiers partagés : correction d'un plantage de l'invité avec + Windows Media Player 11</para> + </listitem> + + <listitem> + <para>Mac OS X : Ctrl+bouton gauche de la souris ne simule plus un clic + droit de souris dans l'invité. La touche hôte+clic gauche fait l'émulation + d'un clic gauche de souris. (bogue #1766)</para> + </listitem> + + </itemizedlist> + + </sect1> + + <sect1> + <title>Détails du anciennes changements</title> + <para>Avec VirtualBox 3.2, les informations d'historique des changements + pour les versions inférieures à la 2.0 ont été supprimées pour gagner de la + place. Pour accéder à ces informations, merci de consulter le manuel de + l'utilisateur de VirtualBox version 3.1 ou inférieur.</para> + </sect1> + +</chapter> diff --git a/doc/manual/fr_FR/user_Frontends.xml b/doc/manual/fr_FR/user_Frontends.xml new file mode 100644 index 00000000..982f398c --- /dev/null +++ b/doc/manual/fr_FR/user_Frontends.xml @@ -0,0 +1,824 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" +"http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd"> +<chapter> + <title>Machines virtuelles distantes</title> + + <sect1 id="vrde"> + <title>Affichage distant (VRDP support)</title> + + <para>VirtualBox peut afficher les machines virtuelles à distance, ce qui + signifie qu'une machine virtuelle peut s'exécuter sur un ordinateur alors que + la machine sera affichée sur un deuxième ordinateur, et la machine sera + contrôlée également à partir de là, comme si la machine virtuelle fonctionnait + sur ce deuxième ordinateur.</para> + + <para>Pour une flexibilité maximum, à partir de VirtualBox 4.0, VirtualBox + implémente l'affichage distant d'une machine par une interface d'extension + générique, le VirtualBox Remote Desktop Extension (VRDE). Le paquet libre + de base VirtualBox ne fournit pas cette interface, tandis que les implémentations + peuvent être offerts par des tiers avec les paquets d'extension de VirtualBox + qui doivent être installés séparément du paquet. Voir <xref + linkend="intro-installing" /> pour plus d'informations.</para> + + <para>Oracle fournit un support pour le <emphasis role="bold">VirtualBox + Remote Display Protocol (VRDP)</emphasis> dans ce paquet d'extension de + VirtualBox. Quand on installe ce paquet, les versions de VirtualBox et + 4.0 et supérieur supportent VRDP de la même façon que les versions binaires + (non libre)) de VirtualBox avant 4.0.</para> + + <para>VRDP est une extension rétro-compatible au Remote + Desktop Protocol (RDP) de Microsoft. Dès lors, vous pouvez utiliser n'importe + quel client RDP standard pour contrôler la VM distante.</para> + + <para>Même quand l'extension est installée, le serveur VRDP est désactivé par + défaut. On peut l'activer facilement pour chaque VM, soit dans le gestionnaire + VirtualBox des paramètres d'"Affichage" (voir <xref + linkend="settings-display" />), soit avec + )s <computeroutput>VBoxManage</computeroutput>:<screen>VBoxManage modifyvm "nom VM" --vrde on</screen></para> + + <para>Si vous utilisez <computeroutput>VBoxHeadless</computeroutput> (décrit + plus loin en détails), le support VRDP sera automatiquement activé puisque + VBoxHeadless n'a aucun autre moyen de sortie.</para> + + <para>Par défaut, le serveur VRDP utilise le port TCP + <computeroutput>3389</computeroutput>. Vous devrez modifier le port par + défaut si vous exécutez plus d'un serveur VRDP, vu que le port ne peut être + utilisé que par un serveur à la fois. Il se pourrait aussi que vous deviez + le modifier sur les hôtes Windows car le port par défaut pourrait être + déjà utilisé par le serveur RDP + intégré à Windows lui-même. Les ports 5000 à 5050 sont le plus souvent + inusités et pourraient être un bon choix.</para> + + <para>Vous pouvez modifier le port soit dans les paramètres "Affichage" de + l'interface graphique, soit via l'option <computeroutput>--vrdeport</computeroutput> + de la commande <computeroutput>VBoxManage modifyvm</computeroutput>. Vous + pouvez indiquer une liste séparée par des virgules de ports ou de plages de + ports. Utilisez un tiret entre deux numéros de ports pour indiquer une plage. + Le serveur VRDP s'appuiera sur <emphasis role="bold">un</emphasis> des + ports disponibles au sein de la liste spécifiée. Par exemple, <computeroutput>VBoxManage modifyvm "nom + VM" --vrdeport 5000,5010-5012</computeroutput> configurera le + serveur pour s'appuyer sur un des ports parmi le 5000, 5010, 5011 ou 5012. + Voir <xref + linkend="vboxmanage-modifyvm-vrde" /> pour des détails.</para> + + <para>Vous pouvez savoir le port utilisé au final par une VM en fonction + avec la commande <computeroutput>VBoxManage showvminfo</computeroutput>, + vous pouvez aussi le voir dans l'interface graphique sous l'onglet "En cours + d'exécution" de la "Boîte de dialogue d'informations sur la session", accessible + depuis le menu "Machine" de la fenêtre de la VM.</para> + + <para>Le support d'IPv6 a été implémenté dans VirtualBox 4.3. Si l'OS hôte + supporte l'IPv6, le serveur VRDP écoutera automatiquement les connexions IPv6 + en plus de celles IPv4.</para> + + <sect2 id="rdp-viewers"> + <title>Visualiseurs RDP tiers classiques</title> + + <para>Comme VRDP est rétro-compatible avec RDP, vous pouvez utiliser n'importe + quel visualiseur RDP standard pour vous connecter à une machine virtuelle + distante (des exemples figurent ci-dessous). Pour que cela fonctionne, vous + devez spécifier <emphasis role="bold">l'adresse IP</emphasis> de votre + système <emphasis>hôte</emphasis> (pas celle de la machine virtuelle !) + l'adresse du serveur auquel se connecter, ainsi que le + <emphasis role="bold">numéro du port</emphasis> qu'utilise le serveur RDP.</para> + + <para>Voici des exemples de visualiseurs RDP les plus courants :<itemizedlist> + <listitem> + <para>Sur Windows, vous pouvez utiliser le Microsoft Terminal Services + Connector (<computeroutput>mstsc.exe</computeroutput>) inclu dans + Windows. Vous pouvez le lancer depuis la boîte de dialogue "Exécuter" + (appuyez sur la touche Windows et "R") en tapant "mstsc". Vous pouvez + également le trouver dans "Démarrer" -> "Tous les Programmes" -> "Accessoires" + -> "Connexion bureau distant". Si vous utilisez la boîte de dialogue + "Exécuter", vous pouvez y entrer des options directement :<screen>mstsc 1.2.3.4:3389</screen></para> + + <para>Remplacez <computeroutput>1.2.3.4</computeroutput> par l'adresse IP de l'hôte et + <computeroutput>3389</computeroutput> par un + autre port si nécessaire.</para> + + <note> + <para>Il faut entourer les adresses IPv6 de crochets pour spécifier + un port. Par exemple, <computeroutput>mstsc [fe80::1:2:3:4]:3389</computeroutput></para> + </note> + + <note> + <para>Lors d'une connexion à localhost pour tester la connexion, les + adresses <computeroutput>localhost</computeroutput> et + <computeroutput>127.0.0.1</computeroutput> pourraient ne pas + fonctionner en utilisant + <computeroutput>mstsc.exe</computeroutput>. L'adresse + <computeroutput>127.0.0.2[:3389]</computeroutput> doit être utilisée à la place.</para> + </note> + </listitem> + + <listitem> + <para>Sur les autres systèmes, vous pouvez utiliser le programme + libre standard <computeroutput>rdesktop</computeroutput>. Celui-ci + est inclu avec la plupart des distributions Linux, mais VirtualBox + est fourni avec une variante modifiée de rdesktop pour un support de + l'USB à distance (voir <xref + linkend="usb-over-rdp" /> ci-dessous).</para> + + <para>Avec rdesktop, utilisez une ligne telle que celle-ci :<screen>rdesktop -a 16 -N 1.2.3.4:3389</screen></para> + + <para>Comme indiqué pour le visualiseur Microsoft ci-dessus, remplacez <computeroutput>1.2.3.4</computeroutput> + par l'adresse IP de l'hôte et <computeroutput>3389</computeroutput> par un autre port si nécessaire. + L'option <computeroutput>-a 16</computeroutput> demande que la résolution + soit de 16 bits par pixel, ce qui est recommandé. + (Pour de meilleures performances, après l'installation du système + d'exploitation invité, vous devriez définir sa profondeur d'affichage + des couleurs à la même valeur). + L'option <computeroutput>-N</computeroutput> permet d'utiliser + les touches du pavé numérique.</para> + </listitem> + + <listitem> + <para>Si vous lancez le bureau KDE, vous pourriez préférer + <computeroutput>krdc</computeroutput>, le visualiseur RDP de KDE. + La ligne de commande ressemblerait à ceci :<screen>krdc rdp://1.2.3.4:3389</screen></para> + + <para>De nouveau, remplacez <computeroutput>1.2.3.4</computeroutput> + par l'adresse IP de l'hôte et <computeroutput>3389</computeroutput> par un port différent si nécessaire. Le champ "rdp://" est + requis avec krdc pour qu'il passe en mode RDP.</para> + </listitem> + + <listitem> + <para>Avec les clients Sun Ray thin, vous pouvez utiliser + <computeroutput>uttsc</computeroutput>, qui fait partie du paquet + Sun Ray Windows Connector. Voir la documentation correspondante pour + des détails.</para> + </listitem> + </itemizedlist></para> + </sect2> + + <sect2 id="vboxheadless"> + <title>VBoxHeadless, le serveur de bureau distant</title> + + <para>Si toutes les VM lancées dans le gestionnaire VirtualBox sont capables + de lancer des machines virtuelles à distance, ce n'est pas pratique de + lancer l'interface graphique full-fledged si vous ne voulez jamais avoir + de VMs affichées en local au premier plan. En particulier, si vous lancez + un serveur matériel dont le seul objectif est d'héberger des VMs et où + toutes les VMs sont supposées se lancer à distance via VRDP, il est inutile + d'avoir une interface graphique quelconque sur le serveur -- surtout + que sur un hôte Linux ou Solaris, le gestionnaire VirtualBox est fourni + avec les dépendances des bibliothèques Qt et SDL. C'est un inconvénient si + ne voulez pas du tout avoir de système X Window sur votre serveur.</para> + + <para>VirtualBox est donc fourni avec une autre interface appelée + <computeroutput>VBoxHeadless</computeroutput>, qui ne produit aucune + sortie visible sur l'hôte, mais qui produit des données VRDP. Cette interface + n'a aucune dépendance du système X Window sur Linux et des hôtes + Solaris.<footnote> + <para>Avant VirtualBox 1.6, le serveur headless s'appelait + <computeroutput>VBoxVRDP</computeroutput>. Toujours pour des raisons de + rétro-compatibilité, l'installation de VirtualBox installe toujours un + exécutable avec ce nom.</para> + </footnote></para> + + <para>Pour démarrer une machine virtuelle avec <computeroutput>VBoxHeadless</computeroutput>, + vous avez trois options :</para> + + <itemizedlist> + <listitem> + <para>Vous pouvez utiliser <screen>VBoxManage startvm "nom VM" --type headless</screen>L'option + supplémentaire <computeroutput>--type</computeroutput> amène VirtualBox + à utiliser <computeroutput>VBoxHeadless</computeroutput> en tant qu'interface + avec le moteur de virtualisation interne plutôt que l'interface Qt.</para> + </listitem> + + <listitem> + <para>Une alternative est d'utiliser + <computeroutput>VBoxHeadless</computeroutput> directement, comme + suit :<screen>VBoxHeadless --startvm <uuid|name></screen></para> + + <para>Cette manière de démarrer la VM aide au dépannage des problèmes + signalés par <computeroutput>VBoxManage startvm ...</computeroutput> + car vous pouvez voir parfois des messages d'erreur plus détaillés, + surtout pour les échecs imtervenant avant que l'exécution de la VM + ne commence. Dans des situations normales, on préfère + <computeroutput>VBoxManage startvm</computeroutput> car il lance la VM + directement comme tâche de fond, ce qui doit se faire explicitement lors + du démarrage direct de + <computeroutput>VBoxHeadless</computeroutput>.</para> + </listitem> + <listitem> + <para>L'autre alternative est de démarrer <computeroutput>VBoxHeadless</computeroutput> + à partir de l'interface graphique du gestionnaire de VirtualBox, en + maintenant appuyée la touche Majuscule au démarrage de la machine.</para> + </listitem> + </itemizedlist> + + <para>Remarquez que quand vous utilisez + <computeroutput>VBoxHeadless</computeroutput> pour démarrer une VM, comme + le serveur headless n'a aucun autre moyen d'affichage, le serveur VRDP + sera <emphasis>toujours</emphasis> activé, indépendamment du fait que vous + ayez activé le serveur VRDP dans les paramètres de la VM ou pas. Si vous + n'en voulez pas (par exemple parce que vous voulez accéder à la VM via + <computeroutput>ssh</computeroutput> only), démarrez la VM comme + ceci :<screen>VBoxHeadless --startvm <uuid|name> --vrde off</screen>Pour + activer le serveur VRDP en fonction de la configuration de la VM, comme le + feraient les autres interfaces, utilisez ceci :<screen>VBoxHeadless --startvm <uuid|name> --vrde config</screen></para> + + <para>Si vous démarrez la VM avec <computeroutput>VBoxManage startvm ...</computeroutput>, + les paramètres de configuration de la VM sont toujours utilisés.</para> + </sect2> + + <sect2> + <title>Pas à pas : créer une machine virtuelle sur un serveur headless</title> + + <para>Les instructions suivantes peuvent vous donner une idée de la façon + de créer une machine virtuelle sur un serveur headless via une connexion + réseau. Nous allons créer une machine virtuelle, établir une connexion RDP + et installer un système d'exploitation invité -- tout ceci sans devoir + toucher au serveur headless. Tout ce dont vous avez besoin est ce qui suit :</para> + + <para><orderedlist> + <listitem> + <para>VirtualBox sur une machine serveur avec un système d'exploitation + hôte supporté. La pack d'extension de VirtualBox du serveur VRDP doit + être installé (voir la section précédente). Pour l'exemple suivant, + nous supposerons un serveur Linux.</para> + </listitem> + + <listitem> + <para>Un fichier ISO accessible depuis le serveur, contenant les + données d'installation du système invité pour installer (nous supposons + que c'est Windows XP dans l'exemple suivant).</para> + </listitem> + + <listitem> + <para>Une connexion en terminal à l'hôte par lequel vous pouvez accéder + à une ligne de commande (par exemple via + <computeroutput>ssh</computeroutput>).</para> + </listitem> + + <listitem> + <para>Un visualiseur RDP sur le client distant ; voir <xref + linkend="rdp-viewers" /> ci-dessus pour des exemples.</para> + </listitem> + </orderedlist>Remarquez encore que sur la machine serveur, comme nous + n'allons utiliser que le serveur headless, ni Qt ni SDL ni le système + X Window ne seront nécessaires.</para> + + <para><orderedlist> + <listitem> + <para>Sur le serveur headless, créez une nouvelle machine virtuelle :</para> + + <screen>VBoxManage createvm --name "Windows XP" --ostype WindowsXP --register</screen> + + <para>Remarquez que si vous ne spécifiez pas + <computeroutput>--register</computeroutput>, vous devrez utiliser + manuellement la commande <computeroutput>registervm</computeroutput> + plus tard.</para> + + <para>Remarquez aussi que vous n'avez pas besoin de spécifier + <computeroutput>--ostype</computeroutput>, mais en le faisant, cela + sélectionne des valeurs par défaut apropriées pour certains paramètres + de la VM, par exemple la taille de la RAM et le type de périphérique + réseau virtuel. Pour avoir la liste complète des systèmes d'exploitation + supportés, vous pouvez utiliser</para> + + <screen>VBoxManage list ostypes</screen> + </listitem> + + <listitem> + <para>Assurez-vous que les paramètres de la VM sont adaptés au système + d'exploitation invité que nous allons installer. Par exemple :<screen>VBoxManage modifyvm "Windows XP" --memory 256 --acpi on --boot1 dvd --nic1 nat</screen></para> + </listitem> + + <listitem> + <para>Créez un disque dur virtuel pour la VM (dans ce cas, 10Go de + taille) :<screen>VBoxManage createhd --filename "WinXP.vdi" --size 10000</screen></para> + </listitem> + + <listitem> + <para>Ajoutez un contrôleur IDE à la nouvelle VM :<screen>VBoxManage storagectl "Windows XP" --name "IDE Controller" + --add ide --controller PIIX4</screen></para> + </listitem> + + <listitem> + <para>Mettez le fichier VDI créé ci-dessus comme premier disque dur + virtuel de la nouvelle VM :<screen>VBoxManage storageattach "Windows XP" --storagectl "IDE Controller" + --port 0 --device 0 --type hdd --medium "WinXP.vdi"</screen></para> + </listitem> + + <listitem> + <para>Attachez le fichier ISO contenant l'installeur du système + d'exploitation que vous voudrez installer plus tard sur la + machine virtuelle, pour que la machine puisse démarrer dessus :<screen>VBoxManage storageattach "Windows XP" --storagectl "IDE Controller" + --port 0 --device 1 --type dvddrive --medium /full/path/to/iso.iso</screen></para> + </listitem> + + <listitem> + <para>Démarrez la machine virtuelle en utilisant VBoxHeadless:<screen>VBoxHeadless --startvm "Windows XP"</screen></para> + + <para>Si tout s'est bien passé, vous devriez voir un message de + copyright. Si vous êtes renvoyé en ligne de commande, quelque chose + n'a pas fonctionné.</para> + </listitem> + + <listitem> + <para>Sur la machine client, ouvrez le visualiseur RDP et essayez + de vous connecter au serveur (voir <xref linkend="rdp-viewers" /> + ci-dessus pour voir comment utiliser les divers visualiseurs RDP + classiques).</para> + + <para>Vous devriez voir maintenant le processus d'installation + de votre système d'exploitation invité, à distance dans le visualiseur RDP.</para> + </listitem> + </orderedlist></para> + </sect2> + + <sect2 id="usb-over-rdp"> + <title>USB distant</title> + + <para>Une fonction très spéciale du support VRDP de VirtualBox est qu'il + supporte les périphériques USB distants également via le réseau. C'est-à-dire que + l'invité de VirtualBox en fonction sur l'ordinateur peut accéder à des + périphériques USB de l'ordinateur distant sur lequel sont affichées les données + VRDP de la même manière que des périphériques USB connectés à l'hôte actuel. + Cela permet d'exécuter des machines virtuelles sur un hôte VirtualBox qui + agit comme serveur, où un client peut se connecter de n'importe où avec + simplement un adaptateur réseau et un dispositif d'affichage capable de + lancer un visualiseur RDP. Quand on branche des périphériques USB + dans le client, le serveur VirtualBox distant peut y accéder.</para> + + <para>Pour ces périphériques USB distants, les mêmes règles de filtres + s'appliquent, comme pour d'autres périphériques USB, comme décrit au + <xref linkend="settings-usb" />. Tout ce que vous devez faire est de spécifier + "Remote" (ou "Any") en définissant ces règles.</para> + + <para>L'accès à des périphériques USB n'est possible que si le client RDP + supporte cette extension. Sur les hôtes Linux et Solaris, l'installation + de VirtualBox fournit un client VRDP convenable appelé + <computeroutput>rdesktop-vrdp</computeroutput>. Les versions récentes de + <computeroutput>uttsc</computeroutput>, un client taillé pour être utilisé + avec des clients Sun Ray thin et qui supporte l'accès aux périphériques + USB distants. Les clients RDP pour d'autres plateformes seront fournis dans de + futures versions de VirtualBox.</para> + + <para>Pour rendre disponible un périphérique USB distant pour une VM, vous + devriez démarrer <computeroutput>rdesktop-vrdp</computeroutput> comme + suit :<screen>rdesktop-vrdp -r usb -a 16 -N my.host.address</screen> + Merci de vous reporter au <xref linkend="ts_usb-linux" /> pour des + détails supplémentaires sur la manière de régler correctement les droits + des périphériques USB. De plus, il est conseillé de désactiver le chargement automatique d'un pilote + de l'hôte, depuis l'hôte distant qui serait lu sur des périphériques + USB, pour vous assurer que les périphériques seront accessibles au client + RDP. Si vous avez bien fait le paramétrage sur l'hôte distant, les + événements de branchement/débranchement sont visibles dans le fichier + VBox.log de la VM.</para> + </sect2> + + <sect2 id="vbox-auth"> + <title>Authentification RDP</title> + + <para>Pour chaque machine virtuelle accessible à distance via RDP, vous + pouvez déterminer individuellement si les connexions du client sont + authentifiées et comment. Pour cela, utilisez la commande + <computeroutput>VBoxManage modifyvm</computeroutput> avec l'option + <computeroutput>--vrdeauthtype</computeroutput> ; voir <xref + linkend="vboxmanage-modifyvm" /> pour une présentation générale. Trois + méthodes d'authentification sont disponibles :<itemizedlist> + <listitem> + <para>La méthode "null" signifie qu'il n'y a pas d'authentification + du tout ; n'importe quel client peut se connecter au serveur + VRDP et, ainsi, à la machine virtuelle. C'est, bien sûr, très peu + sécurisé et cela ne doit être recommandé que sur des réseaux privés.</para> + </listitem> + + <listitem> + <para>La méthode "external" fournit une authentification externe via + une bibliothèque d'authentification spéciale. VirtualBox inclut + deux bibliothèques d'authentification :<orderedlist> + <listitem> + <para>La bibliothèque d'authentification par défaut, + <computeroutput>VBoxAuth</computeroutput>, authentifie en fonction + des droits de l'utilisateur sur l'hôte. Selon la plateforme hôte, + cela signifie :<itemizedlist> + <listitem> + <para>Sur les hôtes Linux, + <computeroutput>VBoxAuth.so</computeroutput> + authentifie les utilisateurs à partir du système PAM de + l'hôte.</para> + </listitem> + + <listitem> + <para>Sur les hôtes Windows, + <computeroutput>VBoxAuth.dll</computeroutput> + authentifie les utilisateurs à partir du système WinLogon + de l'hôte.</para> + </listitem> + + <listitem> + <para>Sur les hôtes Mac OS X, + <computeroutput>VBoxAuth.dylib</computeroutput> + authentifie les utilisateurs à partir du service répertoire + de l'hôte.<footnote> + <para>Le support pour Mac OS X a été ajouté dans + la version + 3.2.</para> + </footnote></para> + </listitem> + </itemizedlist></para> + + <para>En d'autres termes, la méthode "external" par défaut + réalise l'authentification par les comptes utilisateurs existant + sur le système hôte. Tout utilisateur ayant des autorisations + d'authentification valides est accepté, c'est-à-dire que le nom + d'utilisateur n'a pas besoin de correspondre à l'utilisateur + qui lance la VM.</para> + </listitem> + + <listitem> + <para>Une bibliothèque supplémentaire qui s'appelle + <computeroutput>VBoxAuthSimple</computeroutput> réalise + l'authentification à partir des autorisations configurées + dans la section "extradata" du fichier XML des paramètres d'une machine + virtuelle. C'est probablement la méthode la plus simple pour + s'authentifier, qui ne dépend pas d'un invité en fonction et + supporté (voir ci-dessous). Les étapes suivantes sont + nécessaires :<orderedlist> + <listitem> + <para>Activer + <computeroutput>VBoxAuthSimple</computeroutput> avec la + commande suivante :</para> + + <para><screen>VBoxManage setproperty vrdeauthlibrary "VBoxAuthSimple"</screen></para> + </listitem> + + <listitem> + <para>Pour activer la bibliothèque pour une VM en particulier, + vous devez passer en authentification externe :<screen>VBoxManage modifyvm "nom VM" --vrdeauthtype external</screen></para> + + <para>Remplacez + <computeroutput>"nom VM"</computeroutput> par le nom + ou l'UUID de la VM.</para> + </listitem> + + <listitem> + <para>Vous devrez alors configurer les utilisateurs et + les mots de passe en écrivant ces éléments dans les + extradata de la machine. Comme le fichier XML des paramètres + de la machine, dans lequel il faut écrire le mot de + passe à la section "extradata", est un fichier en texte + brut, VirtualBox utilise le hachage pour chiffrer les + mots de passe. Il faut utiliser la commande suivante :<screen>VBoxManage setextradata "nom VM" "VBoxAuthSimple/users/<utilisateur>" <hash></screen></para> + + <para>Remplacez + <computeroutput><vm></computeroutput> par le nom + ou l'UUID de la VM, + <computeroutput><utilisateur></computeroutput> par + le nom d'utilisateur qui devrait être autorisé à se connecter + et + <computeroutput><hash></computeroutput> par le mot + de passe chiffré. Par exemple, pour avoir la valeur + hachée du mot de passe "secret", vous pouvez utiliser la + commande suivante :<screen>VBoxManage internalcommands passwordhash "secret"</screen></para> + + <para>Ceci affichera + <screen>2bb80d537b1da3e38bd30361aa855686bde0eacd7162fef6a25fe97bf527a25b</screen> + Vous pouvez alors utiliser VBoxManage setextradata pour + stocker cette valeur dans la section "extradata" de la + machine.</para> + + <para>Un exemple des deux ensemble, pour définir le mot + de passe de l'utilisateur "john" sur la machine "Ma VM" + en "secret", utilisez cette commande :<screen>VBoxManage setextradata "Ma VM" "VBoxAuthSimple/users/john" + 2bb80d537b1da3e38bd30361aa855686bde0eacd7162fef6a25fe97bf527a25b</screen></para> + </listitem> + </orderedlist></para> + </listitem> + </orderedlist></para> + </listitem> + + <listitem> + <para>Enfin, la méthode d'authentification "guest" réalise + l'authentification par un composant spécial fourni avec les suppléments + invité ; il s'en suit que l'authentification ne s'effectue pas + sur l'hôte mais via les comptes utilisateurs + <emphasis>de l'invité</emphasis>.</para> + + <para>Cette méthode est actuellement en test et pas encore + supportée.</para> + </listitem> + </itemizedlist></para> + + <para>Outre les méthodes décrites ci-dessus, vous pouvez remplacer la méthode + d'authentification "external" par défaut par n'importe quel autre module. + Pour cela, VirtualBox offre une interface claire qui vous permet d'écrire + votre propre module d'authentification. Ceci est décrit en détails dans + le manuel de référence du Kit de développement logiciel de VirtualBox ; + merci de voir <xref + linkend="VirtualBoxAPI" /> pour des détails.</para> + </sect2> + + <sect2 id="vrde-crypt"> + <title>Chiffrement RDP</title> + + <para>Le chiffrement du flux de données des fonctions RDP se base sur le + chiffrage symétrique RC4 (avec des clés jusqu'à 128bit). Les clés RC4 + sont remplacées à intervalles réguliers (tous les 4096 paquets).</para> + + <para>RDP fournit différentes méthodes d'authentification :<orderedlist> + <listitem> + <para>Historiquement, on utilisait l'authentification RDP4, avec + laquelle le client RDP ne réalise aucun contrôle pour vérifier + l'identité du serveur auquel il se connecte. Comme on peut obtenir les + autorisations de l'utilisateur en utilisant une attaque "man in the + middle" (MITM) (personne initiée), l'authentification RDP4 n'est pas + sécurisée et vous ne devriez en général pas l'utiliser.</para> + </listitem> + + <listitem> + <para>L'authentification RDP5.1 utilise un certificat serveur pour + lequel le client possède la clé publique. De cette façon, vous avez la + garantie que le serveur possède la clé privée correspondante. Cependant, + comme cette clé privée codée en dur a été publiée il y a quelques + années, l'authentification RDP5.1 n'est pas sécurisée.</para> + </listitem> + + <listitem> + <para>L'authentification RDP5.2 utilise la sécurité RDP améliorée, + ce qui veut dire qu'un protocole de sécurité externe est utilisé pour + sécuriser la connexion. RDP4 et RDP5.1 utilisent la sécurité RDP + Standard. Le serveur VRDP supporte la sécurité renforcée RDP avec + le protocole TLS et, faisant partie du handshake TLS, il envoie + le certificat du serveur au client.</para> + + <para>La propriété VRDE <computeroutput>Security/Method</computeroutput> + définit la méthode de sécurité souhaitée qui est utilisée pour une + connexion. Les valeurs valides sont :<itemizedlist> + <listitem> + <para> + <computeroutput>Negotiate</computeroutput> - les connexions + sécurisées améliorées (TLS) et RDP standards sont autorisées. + La méthode de sécurité se négocie avec le client. C'est le réglage + par défaut. + </para> + </listitem> + + <listitem> + <para> + <computeroutput>RDP</computeroutput> - seule la sécurité QDP + Standard est acceptée.</para> + </listitem> + + <listitem> + <para> + <computeroutput>TLS</computeroutput> - seule la sécurité RDP + améliorée est acceptée. Le client doit supporter TLS.</para> + </listitem> + </itemizedlist> + Par exemple la commande suivante autorise un client à utiliser une + connexion sécurisée soit par RDP Standard, soit par RDP améliorée : + <screen>vboxmanage modifyvm "nom VM" --vrdeproperty "Security/Method=negotiate"</screen> + </para> + + <para>Si la propriété <computeroutput>Security/Method</computeroutput> + est réglée sur <computeroutput>Negotiate</computeroutput> ou + <computeroutput>TLS</computeroutput>, le protocole TLS sera automatiquement + utilisé par le serveur si le client supporte TLS. Cependant, pour + utiliser TLS, le serveur doit posséder le certificat du serveur, la + clé privée du serveur et l'autorité du certificat (Certificate + Authority (CA)). L'exemple suivant montre comment générer un + certificat de serveur.<orderedlist> + <listitem> + <para>Créez un certificat CA auto-signé : + <screen>openssl req -new -x509 -days 365 -extensions v3_ca \ + -keyout ca_key_private.pem -out ca_cert.pem</screen></para> + </listitem> + + <listitem> + <para>Générez une clé privée du serveur et une demande de signature : + <screen>openssl genrsa -out server_key_private.pem +openssl req -new -key server_key_private.pem -out server_req.pem</screen></para> + </listitem> + + <listitem> + <para>Générez le certificat du serveur : + <screen>openssl x509 -req -days 365 -in server_req.pem \ + -CA ca_cert.pem -CAkey ca_key_private.pem -set_serial 01 -out server_cert.pem</screen></para> + </listitem> + </orderedlist> + Le serveur doit être configuré pour accéder aux fichiers requis : + <screen>vboxmanage modifyvm "nom VM" \ + --vrdeproperty "Security/CACertificate=path/ca_cert.pem"</screen> + <screen>vboxmanage modifyvm "nom VM" \ + --vrdeproperty "Security/ServerCertificate=path/server_cert.pem"</screen> + <screen>vboxmanage modifyvm "nom VM" \ + --vrdeproperty "Security/ServerPrivateKey=path/server_key_private.pem"</screen> + </para> + </listitem> + </orderedlist></para> + + <para>Comme le client qui se connecte au serveur détermine le type de chiffrement + qui sera utilisé, avec rdesktop, le visualiseur RDP de Linux, utilisez + les options <computeroutput>-4</computeroutput> ou + <computeroutput>-5</computeroutput>.</para> + </sect2> + + <sect2 id="vrde-multiconnection"> + <title>Connexions multiples au serveur VRDP</title> + + <para>Le serveur VRDP de VirtualBox supporte plusieurs connexions simultanées + à une VM en fonction à partir de différents clients. Tous les clients + connectés voient la même sortie d'écran et partagent le pointeur de souris + et le focus du clavier. Cela revient à ce que plusieurs personnes utilisent + le même ordinateur en même temps, chacun leur tour devant le clavier.</para> + + <para>La commande suivante active le mode connexions multiples : <screen>VBoxManage modifyvm "nom VM" --vrdemulticon on</screen></para> + </sect2> + + <sect2 id="vrde-multimonitor"> + <title>Avoir plusieurs moniteurs distants</title> + + <para>Pour accéder à deux ou plusieurs moniteurs de VM distants, vous + devez activer le mode multiconnexion VRDP (voir la <xref + linkend="vrde-multiconnection" />).</para> + + <para>Le client RDP peut sélectionner le numéro du moniteur virtuel auquel + se connecter en utilisant le paramètre d'identification <computeroutput>domain</computeroutput> + (<computeroutput>-d</computeroutput>). Si le paramètre se termine par + <computeroutput>@</computeroutput> suivi d'un numéro, VirtualBox + interprète ce numéro comme l'index des écrans. On sélectionne l'écran invité + primaire avec <computeroutput>@1</computeroutput>, le premier écran secondaire + avec <computeroutput>@2</computeroutput>, etc.</para> + + <para>Le client Microsoft RDP6 ne pous permet pas de sécifier un nom de + domaine distinct. Utilisez plutôt + <computeroutput>domaine\nom_utilisateur</computeroutput> dans le champ + <computeroutput>Nom d'utilisateur :</computeroutput> -- par exemple, + <computeroutput>@2\name</computeroutput>. + <computeroutput>nom</computeroutput> doit être renseigné et il doit être + le nom utilisé pour vous identifier si le serveur VRDP est configuré pour + demander une autorisation. Sinon, vous pouvez utiliser n'importe quel texte + comme nom d'utilisateur.</para> + </sect2> + + <sect2 id="vrde-videochannel"> + <title>Redirection graphique VRDP</title> + + <para>À partir de VirtualBox 3.2, le serveur VRDP peut rediriger les flux + graphiques de l'hôte vers le client RDP. Les frames graphiques sont + compressés en utilisant l'algorithme JPEG, ce qui permet un ratio de compression + plus fort que les méthodes de compression bitmap RDP standards. Il est + possible d'augmenter le ratio de compression en diminuant la qualité de l'image.</para> + + <para>Le serveur VRDP détecte automatiquement les flux vidéos dans un + invité au fur et à mesure que les zones rectangulaires se mettent à jour + fréquemment. Il s'en suit que cette méthode fonctionne avec n'importe quel + système d'exploitation invité, sans devoir installer de logiciels supplémentaires + dans l'invité ; en particulier, les suppléments invité ne sont pas + requis.</para> + + <para>Par contre, côté client, seul le client de connexion Connexion bureau + à distance de Windows 7 supporte actuellement cette fonctionnalité. Si un + client ne supporte pas la redirection graphique, le serveur VRDP se rabat + sur le rafraîchissement régulier des bitmap.</para> + + <para>La commande suivante active la redirection graphique : <screen>VBoxManage modifyvm "nom VM" --vrdevideochannel on</screen></para> + + <para>La qualité de l'image se définit par une valeur entre 10 et 100 + pour cent, ce qui représente un niveau de compression JPEG (où les nombres + les plus bas signifient une qualité plus faibles mais une compression plus + forte). Vous pouvez modifier la qualité en utilisant la commande suivante : + <screen>VBoxManage modifyvm "nom VM" --vrdevideochannelquality 75</screen></para> + </sect2> + + <sect2 id="vrde-customization"> + <title>Personnalisation du VRDP</title> + + <para>Avec VirtualBox 4.0, il est possible de désactiver l'affichage, + l'entrée souris et clavier, le son, l'USB distant ou le presse-papier, + de façon individuelle dans le serveur VRDP.</para> + + <para>Les commandes suivantes modifient les paramètres correspondant du + serveur :</para> + + <screen>VBoxManage modifyvm "nom VM" --vrdeproperty Client/DisableDisplay=1 +VBoxManage modifyvm "nom VM" --vrdeproperty Client/DisableInput=1 +VBoxManage modifyvm "nom VM" --vrdeproperty Client/DisableUSB=1 +VBoxManage modifyvm "nom VM" --vrdeproperty Client/DisableAudio=1 +VBoxManage modifyvm "nom VM" --vrdeproperty Client/DisableClipboard=1 +VBoxManage modifyvm "nom VM" --vrdeproperty Client/DisableUpstreamAudio=1</screen> + + <para>Pour réactiver une fonction, utilisez une commande identique sans + l'argument 1. Par example : <screen>VBoxManage modifyvm "nom VM" --vrdeproperty Client/DisableDisplay=</screen></para> + + <para>Ces propriétés ont été ajoutées avec VirtualBox 3.2.10. Cependant, + dans la série 3.2.x, il était nécessaire d'utiliser les commandes + suivantes pour modifier les paramètres :</para> + + <screen>VBoxManage setextradata "nom VM" "VRDP/Feature/Client/DisableDisplay" 1 +VBoxManage setextradata "nom VM" "VRDP/Feature/Client/DisableInput" 1 +VBoxManage setextradata "nom VM" "VRDP/Feature/Client/DisableUSB" 1 +VBoxManage setextradata "nom VM" "VRDP/Feature/Client/DisableAudio" 1 +VBoxManage setextradata "nom VM" "VRDP/Feature/Client/DisableClipboard" 1</screen> + + <para>Pour réactiver une fonction, utilisez une commande identique + sans l'argument 1. Par exemple : <screen>VBoxManage setextradata "nom VM" "VRDP/Feature/Client/DisableDisplay"</screen></para> + </sect2> + </sect1> + + <sect1 id="teleporting"> + <title>Téléportation</title> + + <para>À partir de la version 3.1, VirtualBox supporte la "téléportation" -- + à savoir qu'il peut déplacer une machine sur un réseau d'un hôte VirtualBox + à l'autre, pendant que la machine est en fonction. Cela fonctionne indépendamment + du système d'exploitation hôte : vous pouvez téléporter des machines + virtuelles entre, par exemple, des hôtes Solaris et Mac.</para> + + <para>La téléportation exige qu'une machine soit en fonction sur un + hôte, qu'on appelle alors la <emphasis role="bold">"source"</emphasis>. + L'hôte sur lequel la machine virtuelle sera téléportée s'appellera alors la + <emphasis role="bold">"cible"</emphasis> ; la machine sur la cible est + alors configurée pour attendre que la source la contacte. + L'état en fonction de la machine sera transféré de la source à la cible en + un temps nimimum.</para> + + <para>La téléportation est possible sur n'importe quel réseau TCP/IP ; + la source et la cible n'ont besoin que de s'entendre sur un port TCP/IP + spécifié dans les paramètres de téléportation.</para> + + <para>Cependant, pour l'instant, il y a quelques prérequis pour que cela + fonctionne :<orderedlist> + <listitem> + <para>Sur l'hôte cible, vous devez configurer une machine virtuelle dans + VirtualBox avec exactement les mêmes paramètres matériels que la machine + sur la source que vous voulez téléporter. Cela ne s'applique pas aux + paramètres purement descriptifs tels que le nom de la VM, mais bien sûr, + pour que la téléportation fonctionne, la machine cible doit avoir la + même quantité de mémoire et les autres paramètres matériels. Sans cela, + la téléportation échouera avec un message d'erreur.</para> + </listitem> + + <listitem> + <para>Les deux machines virtuelles sur la source et la cible doivent + partager le même stockage (images de disques durs et de lecteur amovible + et CD/DVD). Cel signifie qu'elles utilisent soit la même cible iSCSI, + soit le stockage se trouve quelque part sur le réseau et les deux hôtes + y ont accès via NFS ou SMB/CIFS.</para> + + <para>Cela veut dire aussi que ni la machine source ni la machine + cible ne peuvent avoir d'instantanés.</para> + </listitem> + </orderedlist></para> + + <para>Puis, suivez les étapes suivantes :<orderedlist> + <listitem> + <para>Sur l'hôte <emphasis>cible</emphasis>, configurez la machine + virtuelle pour attendre qu'une demande de téléportation arrive quand + elle sera démarrée, plutôt que d'essayer de démarrer réellement la machine. + Cela se fait avec la commande VBoxManage suivante :<screen>VBoxManage modifyvm <nomvmcible> --teleporter on --teleporterport <port></screen></para> + + <para>où <computeroutput><nomvmcible></computeroutput> est le + nom de la machine virtuelle de l'hôte cible et + <computeroutput><port></computeroutput> est un numéro de port + TCP/IP à utiliser sur les hôtes source et cible. Par + exemple, utilisez le 6000. Pour les détails, voir <xref + linkend="vboxmanage-modifyvm-teleport" />.</para> + </listitem> + + <listitem> + <para>Démarrez la VM sur l'hôte cible. Vous verrez qu'au lieu de démarrer, + elle affichera une boîte de dialogue de progression indiquant qu'elle + attend une demande de téléportation.</para> + </listitem> + + <listitem> + <para>Démarrez la machine sur l'hôte <emphasis>source</emphasis> comme + d'habitude. Quand elle est en fonction et quand vous voulez la téléporter, lancez + la commande suivante sur l'hôte source :<screen>VBoxManage controlvm <nomvmsource> teleport --host <hôtecible> --port <port></screen></para> + + <para>où <computeroutput><nomvmsource></computeroutput> est le + nom de la machine (irtuelle sur l'hôte source (la machine actuellement en + fonction) et <computeroutput><hôtecible></computeroutput> est + le nom ou l'IP de l'hôte cible où une demande de téléportation par la + machine est attendue, et <computeroutput><port></computeroutput> + doit être le même numéro que celui spécifié dans la commande sur l'hôte + cible. Pour les détails, voir <xref + linkend="vboxmanage-controlvm" />.</para> + </listitem> + </orderedlist></para> + + <para>Pour tester, vous pouvez aussi téléporter des machines sur le même hôte ; + dans ce cas, utilisez "localhost" comme nom d'hôte sur l'hôte source et + cible.<note> + <para>Dans de rares cas, si les processeurs de la source et de la cible + sont très différents, la téléportation peut échouer avec un message d'erreur + ou la cible peut planter. Cela peut arriver surtout si la VM exécute des + logiciels très optimisés pour fonctionner sur un processeur particulier + sans vérifier correctement que certaines fonctions du processeur sont + bien présentes. VirtualBox filtre les capacités du processeur présenté + au système d'exploitation invité. Les utilisateurs avancés peuvent essayer de + restreindre les possibilités de ces processeurs virtuels avec la commande + <computeroutput>VBoxManage --modifyvm + --cpuid</computeroutput> ; voir <xref + linkend="vboxmanage-modifyvm-teleport" />.</para> + </note></para> + </sect1> +</chapter> diff --git a/doc/manual/fr_FR/user_Glossary.xml b/doc/manual/fr_FR/user_Glossary.xml new file mode 100644 index 00000000..f698b8c8 --- /dev/null +++ b/doc/manual/fr_FR/user_Glossary.xml @@ -0,0 +1,494 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" +"http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd"> +<glossary id="Glossary"> + <glossdiv> + <title>A</title> + + <glossentry> + <glossterm>ACPI</glossterm> + + <glossdef> + <para>Advanced Configuration and Power Interface, une + spécification de l'industrie pour BIOS et extensions matérielles pour configurer + le matériel PC et gérer l'alimentation. Windows 2000 et ultérieur ainsi que + Linux 2.4 et ultérieur supportent ACPI. Windows ne peut activer/désactiver + le support ACPI qu'à l'installation.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>AHCI</glossterm> + + <glossdef> + <para>Advanced Host Controller Interface, l'interface qui supporte + les périphériques SATA tel que les disques durs. Voir <xref + linkend="harddiskcontrollers" />.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>AMD-V</glossterm> + + <glossdef> + <para>La capacité de virtualisation matérielle implémentée dans les + processeurs AMD récents. Voir <xref linkend="hwvirt" />.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>API</glossterm> + + <glossdef> + <para>Application Programming Interface.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>APIC</glossterm> + + <glossdef> + <para>Advanced Programmable Interrupt Controller, une version plus récente + de l'ancienne PIC (programmable interrupt controller). La plupart des + CPUs récents incorporent un APIC ("local APIC"). Beaucoup de systèmes intègrent + aussi un I/O APIC (input output APIC) dans une puce à part qui fournit plus de + 16 IRQs. Windows 2000 et ultérieur utilise un noyau différent si il est + détecté un I/O APIC à l'installation. De ce fait un I/O APIC ne doit pas être + supprimé après l'installation.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>ATA</glossterm> + + <glossdef> + <para>Advanced Technology Attachment, un standard de l'industrie pour les + interfaces de disques durs (synonyme de IDE). Voir <xref + linkend="harddiskcontrollers" />.</para> + </glossdef> + </glossentry> + </glossdiv> + + <glossdiv> + <title>B</title> + + <glossentry> + <glossterm>BIOS</glossterm> + + <glossdef> + <para>Basic Input/Output System, le firmware intégré à la plupart des ordinateurs + personnels qui est chargé d'initialiser le matériel après que la machine + ait été allumée et qui alors démarre le système d'exploitation. + VirtualBox est livré avec son propre BIOS virtuel qui se lance quand une + machine est démarrée.</para> + </glossdef> + </glossentry> + </glossdiv> + + <glossdiv> + <title>C</title> + + <glossentry> + <glossterm>COM</glossterm> + + <glossdef> + <para>Microsoft Component Object Model, une infrastructure de programmation + pour logiciels modulaires. COM permet aux applications de fournir une interface + de programmation qui peut être accédée depuis divers autres langages de + programmation et applications. VirtualBox utilise COM en interne et + en externe pour fournir une API complète aux développeurs externes + .</para> + </glossdef> + </glossentry> + </glossdiv> + + <glossdiv> + <title>D</title> + + <glossentry> + <glossterm>DHCP</glossterm> + + <glossdef> + <para>Dynamic Host Configuration Protocol. Ceci donne la faculté à un périphérique + de réseau d'obtenir automatiquement son adresse IP (et autres informations du réseau) + , afin d'éviter d'avoir à configurer tous les périphériques + d'un réseau avec des adresses IP fixes. VirtualBox a un serveur + DHCP incorporé qui octroie une adresse IP à une machine virtuelle + quand le réseau est configuré en mode NAT ; voir <xref + linkend="networkingdetails" />.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>DKMS</glossterm> + + <glossdef> + <para>Dynamic Kernel Module Support. Un environnement qui simplifie + l'installation et la mise à jour des modules externes de noyau sur les machines Linux ; voir + <xref linkend="externalkernelmodules" />.</para> + </glossdef> + </glossentry> + </glossdiv> + + <glossdiv> + <title>E</title> + + <glossentry> + <glossterm>EFI</glossterm> + + <glossdef> + <para>Extensible Firmware Interface, un firmware intégré aux ordinateurs + qui a pour but de remplacer le BIOS dépassé. À l'origine conçu par + Intel, la plupart des systèmes peuvent maintenant démarrer une machine qui + a EFI au lieu de BIOS ; voir <xref + linkend="efi" />.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>EHCI</glossterm> + + <glossdef> + <para>Enhanced Host Controller Interface, l'interface qui + implémente l'USB 2.0 standard.</para> + </glossdef> + </glossentry> + </glossdiv> + + <glossdiv> + <title>G</title> + + <glossentry> + <glossterm>GUI</glossterm> + + <glossdef> + <para>Graphical User Interface. Communément employé en opposition à + "interface en ligne de commande", dans le contexte VirtualBox, nous nous + référons au programme graphique principal de + <computeroutput>VirtualBox</computeroutput> en tant que "GUI", pour le + différencier de l'interface <computeroutput>VBoxManage</computeroutput> + .</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>GUID</glossterm> + + <glossdef> + <para>Voir UUID.</para> + </glossdef> + </glossentry> + </glossdiv> + + <glossdiv> + <title>I</title> + + <glossentry> + <glossterm>IDE</glossterm> + + <glossdef> + <para>Integrated Drive Electronics, un standard de l'industrie pour une interface + de disque dur. Voir <xref linkend="harddiskcontrollers" />.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>I/O APIC</glossterm> + + <glossdef> + <para>Voir APIC.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>iSCSI</glossterm> + + <glossdef> + <para>Internet SCSI; voir <xref linkend="storage-iscsi" />.</para> + </glossdef> + </glossentry> + </glossdiv> + + <glossdiv> + <title>M</title> + + <glossentry> + <glossterm>MAC</glossterm> + + <glossdef> + <para>Media Access Control, un élément d'une carte Ethernet. Une adresse MAC + est un nombre de 6 octets qui identifie une carte réseau. C'est typiquement + écrit en héxadecimal où les octets sont séparés par ":", tel que + <computeroutput>00:17:3A:5E:CB:08</computeroutput>.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>MSI</glossterm> + + <glossdef> + <para>Message Signaled Interrupts, supporté par les circuits récents + tel que le ICH9; voir <xref linkend="settings-motherboard" />. + Contrairement aux traditionnelles interruptions pin-based, avec MSI, une petite + quantité de données peut accompagner le véritable message d'interruption. Ceci réduit la + quantité requise de broches sur le matériel, permet plus d'interruptions avec de + meilleures performances.</para> + </glossdef> + </glossentry> + </glossdiv> + + <glossdiv> + <title>N</title> + + <glossentry> + <glossterm>NAT</glossterm> + + <glossdef> + <para>Network Address Translation. Une technique pour partager les interfaces + réseau par laquelle une interface modifie l'adresse IP source et/ou cible + des paquets réseau selon des règles spécifiques. Couramment + employé par routeurs et pare-feux pour séparer un réseau interne + de l'Internet, VirtualBox peut utiliser NAT pour facilement partager un équipement réseau + physique de l'hôte avec ses machines virtuelles. Voir <xref + linkend="network_nat" />.</para> + </glossdef> + </glossentry> + </glossdiv> + + <glossdiv> + <title>O</title> + + <glossentry> + <glossterm>OVF</glossterm> + + <glossdef> + <para>Open Virtualization Format, un standard de l'industrie inter-platforme + pour échanger des briques logicielles virtuelles entre produits de virtualisation; voir + <xref linkend="ovf" />.</para> + </glossdef> + </glossentry> + </glossdiv> + + <glossdiv> + <title>P</title> + + <glossentry> + <glossterm>PAE</glossterm> + + <glossdef> + <para>Physical Address Extension. Ceci permet l'accès à plus de 4 GB + de RAM même en environnement 32-bit ; voir <xref + linkend="settings-general-advanced" />.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>PIC</glossterm> + + <glossdef> + <para>Voir APIC.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>PXE</glossterm> + + <glossdef> + <para>Preboot Execution Environment, un standard de l'industrie pour démarrer + des systèmes PC à distance. Cela inclue DHCP pour la configuration IP + et TFTP pour le transfert de fichier. Avec UNDI, est disponible une pile de pilote de matériel + indépendant pour accéder la carte réseau par le code d'amorce + .</para> + </glossdef> + </glossentry> + </glossdiv> + + <glossdiv> + <title>R</title> + + <glossentry> + <glossterm>RDP</glossterm> + + <glossdef> + <para>Remote Desktop Protocol, un protocole développé par Microsoft en + extension des protocoles ITU T.128 et T.124 de vidéo conference. Avec + RDP, un système PC peut être contrôllé à distance en utilisant une connection + réseau à travers laquelle les données sont transférées dans les 2 directions. + Typiquement les événements graphiques et audio sont envoyés depuis la machine à distance + et les événements clavier et souris sont envoyés depuis le client. Un paquet d'extension + VirtualBox d'Oracle fournit VRDP, une implementation améliorée du standard approprié qui est + largement compatible avec le RDP Microsoft. Voir <xref linkend="vrde" /> pour le + detail.</para> + </glossdef> + </glossentry> + </glossdiv> + + <glossdiv> + <title>S</title> + + <glossentry> + <glossterm>SAS</glossterm> + + <glossdef> + <para>Serial Attached SCSI, un standard de l'industrie pour les interfaces + de disques durs. Voir <xref linkend="harddiskcontrollers" />.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>SATA</glossterm> + + <glossdef> + <para>Serial ATA, un standard de l'industrie pour les interfaces de disques durs. Voir + <xref linkend="harddiskcontrollers" />.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>SCSI</glossterm> + + <glossdef> + <para>Small Computer System Interface. Un standard de l'industrie pour + le transfer de données entre périphériques, de stockage particulièrement. Voir <xref + linkend="harddiskcontrollers" />.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>SMP</glossterm> + + <glossdef> + <para>Symmetrical Multiprocessing, indique que les ressources d'une + machine sont partagées entre différents processeurs. Ceci peut être soit + plusieurs puces processeur ou, le plus courant dans le matériel récent, + plusieurs coeurs CPU dans le processeur.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>SSD</glossterm> + + <glossdef> + <para>Solid-state drive, utilise des micropuces pour stocker les données système d'une + machine. Comparé aux classiquex disques durs ils n'ont pas de composants mécaniques + comme les plateaux tournants. + </para> + </glossdef> + </glossentry> + </glossdiv> + + <glossdiv> + <title>T</title> + + <glossentry> + <glossterm>TAR</glossterm> + + <glossdef> + <para>Un format de fichier largement répandu pour l'archivage. À l'origine + pour "Tape ARchive", était déjà supporté par les premières versions d'Unix + pour sauvegarder les données sur bande. Le format de fichier est toujours largement + utilisé, par exemple, avec les archives OVF (avec l'extension de fichier + <computeroutput>.ova</computeroutput>) ; voir <xref + linkend="ovf" />.</para> + </glossdef> + </glossentry> + </glossdiv> + + <glossdiv> + <title>U</title> + + <glossentry> + <glossterm>UUID</glossterm> + + <glossdef> + <para>Un identifiant unique universel (Universally Unique Identifier) -- souvent aussi appelé GUID + (Globally Unique Identifier) -- est une chaîne de nombres et lettres + qui peut être calculée dynamiquement et qui garantie son unicité. + En général, c'est utilisé comme un identifiant global d'un composant. + VirtualBox emploie les UUIDs pour identifier les VMs, les images de disque virtuel + (fichiers VDI) et autres composants.</para> + </glossdef> + </glossentry> + </glossdiv> + + <glossdiv> + <title>V</title> + + <glossentry> + <glossterm>VM</glossterm> + + <glossdef> + <para>Machine virtuelle -- un ordinateur virtuel que VirtualBox fait tourner + dans la véritable machine. Voir <xref + linkend="virtintro" /> pour le detail.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>VMM</glossterm> + + <glossdef> + <para>Virtual Machine Manager -- le composant de VirtualBox qui + contrôle l'exécution des VMs. Voir <xref linkend="technical-components" /> pour + une liste de composants VirtualBox.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>VRDE</glossterm> + + <glossdef> + <para>VirtualBox Remote Desktop Extension. Cette interface est intégrée + à VirtualBox pour permettre aux paquets d'extension VirtualBox de fournir + aux machines virtuelles un accès à distance. Un paquet d'extension de VirtualBox + d'Oracle implémente VRDP; voir <xref linkend="vrde" /> pour le + detail.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>VRDP</glossterm> + + <glossdef> + <para>Voir RDP.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>VT-x</glossterm> + + <glossdef> + <para>La capacité de virtualisation matérielle implémentée dans les processeurs Intel + récents. Voir <xref linkend="hwvirt" />.</para> + </glossdef> + </glossentry> + </glossdiv> + + <glossdiv> + <title>X</title> + + <glossentry> + <glossterm>XML</glossterm> + + <glossdef> + <para>eXtensible Markup Language, un métastandard pour toute sorte + d'information textuelle. XML spécifie seulement comment les données dans un document sont + organisées en général et ne préscrit pas la manière d'organiser + le contenu sémantiquement.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>XPCOM</glossterm> + + <glossdef> + <para>Mozilla Cross Platform Component Object Model, un environnement + de programmation développé par le projet de navigateur Mozilla qui est + similaire au COM de Microsoft et permet aux applications de fournir une interface + de programmation modulaire. VirtualBox emploie XPCOM sur Linux à la fois + en interne et en externe pour fournir une API complète aux développeurs + externes.</para> + </glossdef> + </glossentry> + </glossdiv> +</glossary> diff --git a/doc/manual/fr_FR/user_GuestAdditions.xml b/doc/manual/fr_FR/user_GuestAdditions.xml new file mode 100644 index 00000000..f1d21ebd --- /dev/null +++ b/doc/manual/fr_FR/user_GuestAdditions.xml @@ -0,0 +1,1915 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" +"http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd"> +<chapter id="guestadditions"> + <title>Les suppléments invité</title> + + <para>Le chapitre précédent traitait de la manière de commencer avec VirtualBox + et d'installer des systèmes d'exploitation dans une machine virtuelle. Pour une + utilisation interactive et sérieuse, les suppléments invité de VirtualBox vous + faciliteront beaucoup la vie, en offrant une intégration approfondie entre + l'hôte et l'invité et en améliorant la performance d'interactivité des systèmes + invités. Ce chapitre décrit en détail les suppléments invité.</para> + + <sect1> + <title>Introduction</title> + + <para>Comme indiqué au <xref linkend="virtintro" />, les suppléments invité + sont conçus pour s'installer <emphasis>à l'intérieur</emphasis> d'une + machine virtuelle après qu'un système d'exploitation ait été installé. Il s'agit + de pilotes de périphériques et d'applications système qui optimisent le + système d'exploitation invité pour une meilleure performance et plus + d'utilisabilité. Merci de voir <xref + linkend="guestossupport" /> pour des détails sur les systèmes d'exploitation + entièrement supportés avec les suppléments invité par VirtualBox.</para> + + <para>Les suppléments invité de VirtualBox pour tous les systèmes d'exploitation + invités supportés sont fournis sous forme d'un fichier unique d'image de + CD-ROM qui s'appelle + <computeroutput>VBoxGuestAdditions.iso</computeroutput>. Ce fichier image se + trouve dans le répertoire d'installation de VirtualBox. Pour installer les + suppléments invité sur une VM en particulier, vous montez ce fichier ISO dans + votre VM comme un CD-ROM virtuel et vous installez à partir de là.</para> + + <para>Les suppléments invité offrent les fonctions suivantes :<glosslist> + <glossentry> + <glossterm>Intégration du pointeur de souris</glossterm> + + <glossdef> + <para>Pour dépasser la limite du support de la souris décrite au + <xref linkend="keyb_mouse_normal" />, ceci vous offre un support + de la souris transparent. Vous n'aurez qu'un pointeur de souris et + l'appui sur la touche hôte n'est plus nécessaire pour "libérer" la + souris de sa capture par l'OS invité. Pour que cela fonctionne, un + pilote de souris spécial est installé dans l'invité pour communiquer + avec le pilote de la "vraie" souris de votre hôte et il déplace le + pointeur de la souris de l'invité en conséquence.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>Dossiers partagés</glossterm> + + <glossdef> + <para>Ceci fournit une manière facile d'échanger des fichiers entre + l'hôte et l'invité. Tout comme le voisinage réseau Windows ordinaire, + vous pouvez dire à VirtualBox de traiter un répertoire particulier + de l'hôte comme un dossier partagé et VirtualBox le rendra disponible + pour le système d'exploitation invité en tant que partage réseau, + que l'invité ait ou non un réseau. Pour les détails, merci de vous + reporter à <xref + linkend="sharedfolders" />.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>Meilleur support graphique</glossterm> + + <glossdef> + <para>Si la carte graphique virtuelle émulée par VirtualBox pour tous + les systèmes d'exploitation invités offre toutes les fonctions de + base, les pilotes graphiques personnalisés installés avec les suppléments + invité vous offrent ces modes graphiques supplémentaires élevés et + non standards ainsi qu'une performance graphique accélérée.</para> + + <para>De plus, avec les invités Windows, Linux et Solaris, vous + pouvez redimensionner la fenêtre de la machine virtuelle si les suppléments + invité sont installés. La résolution graphique de l'invité sera + automatiquement ajustée (comme si vous aviez entré à la main une + résolution de votre choix dans les paramètres d'affichage de + l'invité). Merci de voir aussi <xref + linkend="intro-resize-window" />.</para> + + <para>Enfin, si les suppléments invité sont installés, les graphismes + 3D et 2D des applications invités peuvent être accélérés ; voir + <xref linkend="guestadd-video" />.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>Fenêtres transparentes</glossterm> + + <glossdef> + <para>Avec cette fonctionnalité, les fenêtres individuelles affichées + sur le bureau de la machine virtuelle peuvent se placer sur le bureau + de l'hôte comme si l'application à leur origine fonctionnait vraiment + sur l'hôte. Voir <xref linkend="seamlesswindows" /> pour les + détails.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>Canaux de communication hôte/invité génériques</glossterm> + + <glossdef> + <para>Les suppléments invité vous permettent de contrôler et de surveiller + l'exécution de l'invité autrement que comme indiqué ci-dessus. Ce + qu'on appelle les "propriétés invité" fournit un mécanisme générique + à base de chaînes pour échanger des bits de données entre un invité + et un hôte, certains d'entre eux ayant des significations spéciales + pour contrôler et surveiller l'invité ; voir + <xref linkend="guestadd-guestprops" /> pour les détails.</para> + + <para>En outre, des applications peuvent être démarrées dans l'invité + à partir de l'hôte ; voir <xref linkend="guestadd-guestcontrol" />.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>Synchronisation du temps</glossterm> + + <glossdef> + <para>Quand les suppléments invité sont installés, VirtualBox peut + s'assurer que l'horloge système de l'invité est mieux synchronisée avec + celle de l'hôte.</para> + + <para>Pour plusieurs raisons, il se peut que l'horloge de l'invité + tourne à un rythme légèrement plus lent que celle de l'hôte. L'hôte + pourrait recevoir des mises à jour par NTP et sa propre horloge + pourrait ne pas tourner de manière rectiligne. Une VM pourrait aussi + être mise en pause, ce qui arrête le cours du temps dans l'invité + pendant une durée plus ou moins longue. Quand le temps des horloges + séparées entre l'invité et l'hôte ne diffère que légèrement, le service de + synchronisation du temps essaie d'ajuster progressivement et + doucement l'heure de l'invité, par petites accélérations, soit pour + "rattraper", soit pour "perdre" du temps. Quand la différence est trop + importante (par exemple si la VM a été mise en pause pendant des + heures puis restaurée d'un état sauvegardé), l'heure de l'invité est + modifiée immédiatement sans ajustement progressif.</para> + + <para>Les suppléments invité resynchroniseront l'heure régulièrement. + Voir <xref linkend="changetimesync" /> pour savoir comment configurer + les paramètres du mécanisme de synchronisation du temps.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>Presse-papier partagé</glossterm> + + <glossdef> + <para>Quand les suppléments invité sont installés, le presse-papier + du système d'exploitation invité peut être éventuellement partagé + avec votre système d'exploitation hôte ; voir + <xref linkend="generalsettings" />.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>Connexions automatiques (passer des droits)</glossterm> + + <glossdef> + <para>Pour les détails, merci de voir <xref linkend="autologon" />.</para> + </glossdef> + </glossentry> + </glosslist></para> + + <para>Chaque version de VirtualBox, même celles mineures, inclut sa propre + version des suppléments invité. Si les interfaces par lesquelles le cœur + de VirtualBox communique avec les suppléments invité sont stables pour que + les suppléments invité déjà installés dans une VM continuent de fonctionner, + quand VirtualBox est mis à jour sur l'hôte, pour de meilleurs résultats, il + est recommandé d'avoir des suppléments invité de la même version.</para> + + <para>À partir de VirtualBox 3.1, les suppléments invité pour Windows et Linux + vérifient donc automatiquement s'ils doivent être mis à jour. Si l'hôte fait + tourner une version plus récente de VirtualBox que celle des suppléments + invité, une notification avec des instructions complémentaires s'affiche dans + l'invité.</para> + + <para>Pour désactiver cette vérification des mises à jour des suppléments invité + dans une machine virtuelle donnée, définissez la valeur de la propriété + invité + <computeroutput>/VirtualBox/GuestAdd/CheckHostVersion</computeroutput> + à <computeroutput>0</computeroutput> ; voir <xref + linkend="guestadd-guestprops" /> pour des détails.</para> + </sect1> + + <sect1> + <title>Installer et maintenir les suppléments invité</title> + + <para>Les suppléments invité sont disponibles pour les machines virtuelles + faisant fonctionner Windows, Linux, Solaris ou OS/2. Les sections suivantes + décrivent en détail les spécificités de chaque variante.</para> + + <sect2 id="additions-windows"> + <title>Suppléments invité pour Windows</title> + + <para>Les suppléments invité de VirtualBox pour Windows sont conçus + pour s'installer dans une machine virtuelle exécutant un système d'exploitation + Windows. Les versions suivantes des invités Windows sont supportées :</para> + + <itemizedlist> + <listitem> + <para>Microsoft Windows NT 4.0 (tous les packs service)</para> + </listitem> + + <listitem> + <para>Microsoft Windows 2000 (tous les packs service)</para> + </listitem> + + <listitem> + <para>Microsoft Windows XP (tous les packs service)</para> + </listitem> + + <listitem> + <para>Microsoft Windows Server 2003 (tous les packs service)</para> + </listitem> + + <listitem> + <para>Microsoft Windows Server 2008</para> + </listitem> + + <listitem> + <para>Microsoft Windows Vista (toutes les éditions)</para> + </listitem> + + <listitem> + <para>Microsoft Windows 7 (toutes les éditions)</para> + </listitem> + + <listitem> + <para>Microsoft Windows 8 (toutes les éditions)</para> + </listitem> + + <listitem> + <para>Microsoft Windows Server 2012</para> + </listitem> + + </itemizedlist> + + <sect3 id="mountingadditionsiso"> + <title>Installation</title> + + <para>Dans le menu "Périphériques" de la barre de menu de la machine + virtuelle, VirtualBox a un élément de menu tout prêt nommé "Insérer l'image + du CD des suppléments invité", qui monte le fichier ISO des suppléments invité + dans votre machine virtuelle. L'invité Windows devrait alors démarrer + automatiquement l'installeur des suppléments invité qui installe les + suppléments invité dans votre invité Windows. Les autres systèmes + d'exploitation invités (ou si le démarrage automatique d'un logiciel sur + CD est désactivé) exigent un démarrage manuel de l'installeur.</para> + + <note> + <para>Pour que l'accélération Direct3D de base fonctionne dans un + invité Windows, vous devez installer les suppléments invité en "Mode + sans échec". Cela <emphasis role="bold">ne vaut pas</emphasis> pour + le pilote graphique expérimental WDDM Direct3D disponible pour les invités + Vista and Windows 7, voir <xref linkend="KnownIssues" /> pour les + détails.<footnote><para>Le pilote expérimental WDDM a été ajouté avec + VirtualBox 4.1.</para></footnote></para> + </note> + + <para>Si vous préférez monter les suppléments à la main, vous pouvez + suivre les étapes suivantes :</para> + + <orderedlist> + <listitem> + <para>Démarrez la machine virtuelle dans laquelle vous avez installé + Windows.</para> + </listitem> + + <listitem> + <para>Sélectionnez "Monter un CD/DVD-ROM" dans le menu "Périphériques" + de la barre de menus de la machine virtuelle, puis "image CD/DVD-ROM". + Ceci ouvre le gestionnaire de médias virtuels décrit au <xref + linkend="vdis" />.</para> + </listitem> + + <listitem> + <para>Dans le gestionnaire de médias virtuels, appuyez sur le bouton + "Ajouter" et parcourez le système de fichiers de votre hôte pour + trouver le fichier + <computeroutput>VBoxGuestAdditions.iso</computeroutput> :<itemizedlist> + <listitem> + <para>Sur un hôte Windows, vous pouvez trouver ce fichier + dans le répertoire d'installation de VirtualBox (en général + sous <computeroutput>C:\Program + files\Oracle\VirtualBox</computeroutput> ).</para> + </listitem> + + <listitem> + <para>Sur les hôtes Mac OS X, vous pouvez trouver ce fichier + dans le groupe de l'application VirtualBox. (Effectuez un clic + droit sur l'icône de VirtualBox dans Finder et choisissez + <emphasis>Afficher le contenu du paquet</emphasis>. S'y trouve + le fichier, dans le dossier + <computeroutput>Contents/MacOS</computeroutput>.)</para> + </listitem> + + <listitem> + <para>Sur un hôte Linux, vous pouvez trouver ce fichier dans + le dossier + <computeroutput>additions</computeroutput> sous lequel vous avez + installé VirtualBox (normalement, + <computeroutput>/opt/VirtualBox/</computeroutput>).</para> + </listitem> + + <listitem> + <para>Sur les hôtes Solaris, vous pouvez trouver ce fichier + dans le dossier + <computeroutput>additions</computeroutput> sous lequel vous avez + installé VirtualBox (normalement + <computeroutput>/opt/VirtualBox</computeroutput>).</para> + </listitem> + </itemizedlist></para> + </listitem> + + <listitem> + <para>De retour dans le gestionnaire de médias virtuels, sélectionnez + ce fichier ISO et appuyez sur le bouton "Sélectionner". Ceci montera + le fichier ISO et le présentera à votre invité Windows comme un + CD-ROM.</para> + </listitem> + </orderedlist> + + <para>Sauf si vous avez désactivé la fonction "Exécution automatique" de + votre invité Windows, Windows démarrera automatiquement le programme + d'installation des suppléments invité de VirtualBox depuis l'ISO + Additions. Si vous avez désactivé la fonction d'exécution automatique, + choisissez + <computeroutput>VBoxWindowsAdditions.exe</computeroutput> dans le lecteur + CD/DVD dans l'invité pour démarrer l'installeur.</para> + + <para>L'installeur ajoutera plusieurs pilotes de périphériques à la base + de données des pilotes Windows puis appellera l'assistant Nouveau matériel + détecté.</para> + + <para>Selon votre configuration, il pourrait afficher des avertissements + selon lequel les pilotes n'ont pas de signature numérique. Vous devez + les confirmer afin qde continuer l'installation et d'installer correctement + les suppléments.</para> + + <para>Après l'installation, redémarrez votre système d'exploitation + invité pour activer les suppléments.</para> + </sect3> + + <sect3> + <title>Mettre à jour les suppléments invité Windows</title> + + <para>Les suppléments invité Windows peuvent être mis à jour en lançant + de nouveau le programme d'installation comme décrit précédemment. + Ceci remplacera les pilotes des suppléments précédents par des versions + mises à jour.</para> + + <para>Vous pouvez aussi ouvrir le gestionnaire de périphériques de Windows + et sélectionner "Mettre à jour le pilote..." pour deux périphériques :</para> + + <orderedlist> + <listitem> + <para>l'adaptateur graphique de VirtualBox et</para> + </listitem> + + <listitem> + <para>le périphérique système VirtualBox.</para> + </listitem> + </orderedlist> + + <para>Pour chacun d'eux, choisissez de fournir votre propre pilote et + utilisez "Vous avez un disque" pour orienter l'assistant sur le lecteur + de CD-ROM contenant les suppléments invité.</para> + </sect3> + + <sect3> + <title>Installation silencieuse</title> + + <para>Avant d'effectuer une installation sans efforts des suppléments + invité de VirtualBox sur un invité Windows, il doit y avoir absolument + des Oracle CA (Certificate Authority) installés, pour empêcher des + fenêtres d'intervention de l'utilisateur qui contrarieront une + installation silencieuse.</para> + + <para><note><para>Sur certaines versions de Windows comme Windows 2000 + et Windows XP les fenêtres d'intervention de l'utilisateur mentionnées + ci-dessus s'afficheront toujours, même après avoir importé les + certificats d'Oracle.</para></note></para> + + <para>Depuis VirtualBox 4.2, vous pouvez installer ces certificats CA + sur un invité Windows de façon automatisée en utilisant l'outil + <computeroutput>VBoxCertUtil.exe</computeroutput> qui se trouve sur + le CD d'installation des suppléments invité dans le dossier + <computeroutput>cert</computeroutput> :</para> + + <itemizedlist> + <listitem> + <para>Connectez-vous en tant qu'administrateur sur l'invité.</para> + </listitem> + + <listitem> + <para>Montez le .ISO des suppléments invité de VirtualBox.</para> + </listitem> + + <listitem> + <para>Ouvrez une fenêtre de ligne de commande sur l'invité et rendez-vous + dans le dossier <computeroutput>cert</computeroutput> du CD des + suppléments invité de VirtualBox.</para> + </listitem> + + <listitem> + <para>Faites <screen>VBoxCertUtil add-trusted-publisher oracle-vbox.cer --root oracle-vbox.cer</screen></para> + <para>Cela installera les certificats dans le stockage des certificats. + Si on installe les mêmes certificats plus d'une fois, une erreur + circonstanciée s'affichera.</para> + </listitem> + </itemizedlist> + + <para>Avant VirtualBox 4.2, il faut importer les certificats CA d'Oracle + de manière plus manuelle en utilisant l'outil + <computeroutput>certutil.exe</computeroutput> inclu depuis Windows + Vista. Pour des versions de Windows antérieures à Vista, vous devez + télécharger et installer <computeroutput>certutil.exe</computeroutput> + à la main. Les certificats n'étant pas sur le CD-ROM des suppléments + invité de VirtualBox précédant la 4.2, vous devez les extraire préalablement + d'un exécutable de VirtualBox signé.</para> + + <para>Dans l'exemple suivant, les ertificats nécessaires seront extraits + de l'installeur des suppléments invité pour Windows sur le CD-ROM :</para> + + <glosslist> + <glossentry> + <glossterm>VeriSign Code Signing CA</glossterm> + <glossdef> + <para>Dans l'explorateur Windows, faites un clic droit sur + VBoxWindowsAdditions-<Architecture>.exe, cliquez sur + "Propriétés"</para> + <itemizedlist> + <listitem> + <para>Allez sur l'onglet "Signatures numériques", choisissez + "Oracle Corporation" et cliquez sur "Détails"</para> + </listitem> + <listitem> + <para>Dans l'onglet "Général" cliquez sur "Afficher le Certificat"</para> + </listitem> + <listitem> + <para>Dans l'onglet "Chemin de Certification", sélectionnez + "VeriSign Class 3 Public Primary CA"</para> + </listitem> + <listitem> + <para>Cliquez sur "Afficher le certificat"</para> + </listitem> + <listitem> + <para>Dans l'onglet "Détails" cliquez sur "Copier vers le fichier..."</para> + </listitem> + <listitem> + <para>Dans l'assistant qui apparaît, choisissez "DER encoded binary (binaire + encodé DER X.509 (.CER)" et enregistrez le fichier du certificat + dans un chemin local, puis terminez l'assistant</para> + </listitem> + <listitem> + <para>Fermez la boîte de dialogue du certificat "Verisign Class 3 Code Signing + 2010 CA"</para> + </listitem> + </itemizedlist> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>Oracle Corporation</glossterm> + <glossdef> + <para>Dans l'explorateur Windows, effectuez un clic droit sur + VBoxWindowsAdditions-<Architecture>.exe, cliquez sur + "Propriétés"</para> + <itemizedlist> + <listitem> + <para>Allez sur l'onglet "Signatures numériques", choisissez + "Oracle Corporation" et cliquez sur "Détails"</para> + </listitem> + <listitem> + <para>Dans l'onglet "Général", cliquez sur "Afficher le Certificat"</para> + </listitem> + <listitem> + <para>Dans l'onglet "Détails" cliquez sur "Copier vers le fichier ..."</para> + </listitem> + <listitem> + <para>Dans l'assistant qui apparaît, choisissez "DER encoded binary X.509 (.CER)" + et enregistrez le fichier du certificat dans un chemin local, terminez + l'assistant</para> + </listitem> + <listitem> + <para>Fermez la boîte du dialogue du certificat "Oracle Corporation"</para> + </listitem> + </itemizedlist> + </glossdef> + </glossentry> + </glosslist> + + <para>Après avoir exporté les deux certificats ci-dessus, vous pouvez + les importer dans le trousseau des certificats en utilisant l'outil + <computeroutput>certutil.exe</computeroutput> :</para> + + <para><computeroutput>certutil -addstore -f Root "<Chemin du fichier + du certificat exporté>"</computeroutput></para> + + <para>Afin de permettre des installations invité entièrement sans efforts, + vous pouvez spécifier un paramètre en ligne de commande au lanceur de + l'installation :</para> + + <screen>VBoxWindowsAdditions.exe /S</screen> + + <para>Ceci installe automatiquement les bons fichiers et les bons pilotes + pour la plateforme correspondante (32 ou 64 bits).</para> + + <para><note><para>Par défaut, sur une installation sans efforts sur un invité + Windows 7 ou 8, un pilote graphique XPDM va s'installer. Ce pilote + graphique ne supporte pas Windows Aero / Direct3D de l'invité - il faut + donc installer à la place le pilote graphique expérimental WDDM. Pour + sélectionner ce pilote par défaut, ajoutez le paramètre + <computeroutput>/with_wddm</computeroutput> de la ligne de commande quand + vous appelez l'installeur des suppléments invité Windows.</para></note></para> + + <para><note><para>Pour que Windows Aero fonctionne correctement sur un invité, + la taille de la mémoire graphique de l'invité doit être configurée pour + être d'au moins 128 Mo.</para></note></para> + + <para>Pour plus d'options concernant les installations d'invité sans efforts, + consultez l'aide en ligne de commande en utilisant la commande :</para> + + <screen>VBoxWindowsAdditions.exe /?</screen> + </sect3> + + <sect3 id="windows-guest-file-extraction"> + <title>Extraction manuelle du fichier</title> + + <para>Si vous souhaitez installer les fichiers et les pilotes à la main, + vous pouvez extraire les fichiers des suppléments invité Windows en + tapant :</para> + + <screen>VBoxWindowsAdditions.exe /extract</screen> + + <para>Pour extraire explicitement les suppléments invité Windows pour + une autre plateforme que celle où vous êtes (par exemple des fichiers 64 + bits sur une plateforme 32 bits), vous devez exécuter l'installeur pour + la plateforme adéquate + (<computeroutput>VBoxWindowsAdditions-x86.exe</computeroutput> ou + <computeroutput>VBoxWindowsAdditions-amd64.exe</computeroutput>) avec + le paramètre <computeroutput>/extract</computeroutput>.</para> + </sect3> + + </sect2> + + <sect2> + <title>Suppléments invité pour Linux</title> + + <para>Comme les suppléments invité Windows, les suppléments invité de + VirtualBox pour Linux sont un ensemble de pilotes de périphérique et + d'applications système qui s'installent dans le système d'exploitation invité.</para> + + <para>Les distributions Linux suivantes sont supportées officiellement :</para> + + <itemizedlist> + <listitem> + <para>Oracle Linux à partir de la version 5, y compris les noyaux UEK ;</para> + </listitem> + <listitem> + <para>Fedora à partir de Fedora Core 4;</para> + </listitem> + + <listitem> + <para>Redhat Enterprise Linux à partir de la version 3;</para> + </listitem> + + <listitem> + <para>SUSE et openSUSE Linux à partir de la version 9;</para> + </listitem> + + <listitem> + <para>Ubuntu à partir de la version 5.10.</para> + </listitem> + </itemizedlist> + + <para>Beaucoup d'autres distributions sont connues pour fonctionner avec + les suppléments invité.</para> + + <para>La version du noyau Linux fournie par défaut dans SUSE et + openSUSE 10.2, dans Ubuntu 6.10 (toutes les versions) et Ubuntu 6.06 + (édition serveur) contient un bogue qui peut le faire planter au démarrage + quand il tourne sur une machine virtuelle. Les suppléments invité fonctionnent + dans ces distributions.</para> + + <para>Remarquez que certaines distributions Linux sont déjà fournies avec + tout ou partie des suppléments invité VirtualBox. Vous pouvez choisir + de garder la version des suppléments invité de votre distribution, mais + ils sont souvent obsolètes et limités dans leurs fonctionnalités, donc nous + recommandons de les remplacer par les + suppléments invité fournis avec VirtualBox. L'installeur des suppléments + invité de VirtualBox pour Linux essaie de détecter l'installation existante + et de les remplacer, mais selon la façon dont votre distribution intègre + les suppléments invité, cela peut exiger un peu d'intervention manuelle. + Il est fortement + recommandé de prendre un instantané de la machine virtuelle avant de + remplacer les suppléments invité préinstallés.</para> + + <sect3> + <title>Installer les suppléments invité pour Linux</title> + + <para>Les suppléments invité VirtualBox pour Linux sont fournis sur + le même fichier de CD-ROM virtuel que les suppléments invité pour Windows + décrits ci-dessus. Ils sont également fournis avec un programme d'installation + qui vous guide à travers le processus de paramétrage bien que du fait des + différences significatives entre les distributions Linux, l'installation + peut être légèrement plus complexe.</para> + + <para>L'nstallation implique généralement les étapes suivantes :</para> + + <orderedlist> + <listitem> + <para>Avant d'installer les suppléments invité, vous devrez + préparer votre système invité à construire les modules externes du + noyau. Ceci fonctionne comme décrit au <xref + linkend="externalkernelmodules" />, sauf que cette étape doit être + maintenant effectuée dans votre <emphasis>invité</emphasis> Linux + et non sur un système hôte Linux , comme décrit ici.</para> + + <para>De nouveau, comme avec les hôtes Linux, nous recommandons + d'utiliser DKMS s'il est disponible pour le système invité. S'il n'est + pas installé, utilisez cette commande pour les systèmes Ubuntu/Debian : + <screen>sudo apt-get install dkms</screen> + ou, pour les systèmes Fedora : <screen>yum install dkms</screen></para> + + <para>Assurez-vous d'installer DKMS <emphasis>avant</emphasis> + d'installer les suppléments invité Linux. Si DKMS n'est pas disponible + ou pas installé, il faudra recréer à la main les modules noyau de + l'invité à chaque fois que le noyau invité sera mis à jour en utilisant + la commande <screen>/etc/init.d/vboxadd setup</screen> en tant + qu'administrateur. + </para> + </listitem> + + <listitem> + <para>Insérez le fichier de CD + <computeroutput>VBoxGuestAdditions.iso</computeroutput> dans le lecteur + CD-ROM virtuel de votre système invité, exactement de la même façon + que ce qui est décrit pour un invité Windows dans <xref + linkend="mountingadditionsiso" />.</para> + </listitem> + + <listitem> + <para>Rendez-vous dans le répertoire où est monté votre lecteur CD-ROM + et exécutez, en tant qu'administrateur :</para> + + <screen>sh ./VBoxLinuxAdditions.run</screen> + + </listitem> + </orderedlist> + + <para>Pour votre confort, nous fournissons les + instructions pas à pas suivantes pour les copies fraîchement installées + des versions récentes des distributions Linux les plus populaires. + Après ces étapes préparatoires, vous pouvez + exécuter l'installeur des suppléments invité VirtualBox comme décrit + ci-dessus.</para> + + <sect4> + <title>Ubuntu</title> + + <para><orderedlist> + <listitem> + <para>Afin de mettre à jour complètement votre système invité, ouvrez un + terminal et lancez <screen>apt-get update</screen> en tant qu'administrateur + suivi de <screen>apt-get upgrade</screen></para> + </listitem> + + <listitem> + <para>Installez DKMS en utilisant <screen>apt-get install dkms</screen></para> + </listitem> + + <listitem> + <para>Redémarrez votre système invité afin d'activer les mises à + jour puis poursuivez comme décrit ci-dessus.</para> + </listitem> + </orderedlist></para> + </sect4> + + <sect4> + <title>Fedora</title> + + <para><orderedlist> + <listitem> + <para>Afin de mettre à jour complètement votre système invité, ouvrez un + terminal et lancez <screen>yum update</screen> en tant qu'administrateur.</para> + </listitem> + + <listitem> + <para>Installez DKMS et le compilateur GNU C en utilisant + <screen>yum install dkms</screen> suivi de + <screen>yum install gcc</screen></para> + </listitem> + + <listitem> + <para>Redémarrez votre système invité afin d'activer les + mises à jour puis poursuivez comme décrit ci-dessus.</para> + </listitem> + </orderedlist></para> + </sect4> + + <sect4> + <title>openSUSE</title> + + <para><orderedlist> + <listitem> + <para>Afin de mettre à jour complètement votre système invité, ouvrez un + terminal et lancez <screen>zypper update</screen> en tant + qu'administrateur.</para> + </listitem> + + <listitem> + <para>Installez l'outil make et le compilateur GNU C en utilisant + <screen>zypper install make gcc</screen></para> + </listitem> + + <listitem> + <para>Redémarrez votre système invité afin d'activer les + mises à jour.</para> + </listitem> + + <listitem> + <para>Cherchez le noyau que vous exécutez en utilisant <screen>uname -a</screen> + Un exemple serait + <computeroutput>2.6.31.12-0.2-default</computeroutput> qui renvoie + au noyau "par défaut". Puis installez le bon paquet de + développement du noyau. Dans l'exemple ci-dessus, il s'agirait de + <screen>zypper install kernel-default-devel</screen></para> + </listitem> + + <listitem> + <para>Assurez-vous que votre noyau actuel + (<computeroutput>uname -a</computeroutput>) et les paquets du + noyau que vous avez installés (<computeroutput>rpm -qa + kernel\*</computeroutput>) ont exactement le même numéro de version. + Continuez l'installation comme décrit ci-dessus.</para> + </listitem> + </orderedlist></para> + </sect4> + + <sect4> + <title>SuSE Linux Enterprise Desktop (SLED)</title> + + <para><orderedlist> + <listitem> + <para>Afin de mettre à jour complètement votre système invité, ouvrez un + terminal et lancez <screen>zypper update</screen> en tant + qu'administrateur.</para> + </listitem> + + <listitem> + <para>Installez le compilateur the GNU C en utilisant + <screen>zypper install gcc</screen></para> + </listitem> + + <listitem> + <para>Redémarrez votre système invité afin d'activer les + mises à jour.</para> + </listitem> + + <listitem> + <para>Cherchez le noyau que vous exécutez en utilisant <screen>uname -a</screen> + Un exemple serait + <computeroutput>2.6.27.19-5.1-default</computeroutput> qui renvoie + au noyau "par défaut". Puis installez le bon paquet de + développement du noyau. Dans l'exemple ci-dessus, il s'agirait de + <screen>zypper install kernel-syms kernel-source</screen></para> + </listitem> + + <listitem> + <para>Assurez-vous que votre noyau actuel + (<computeroutput>uname -a</computeroutput>) et les paquets du + noyau que vous avez installés (<computeroutput>rpm -qa + kernel\*</computeroutput>) ont exactement le même numéro de version. + Continuez l'installation comme décrit ci-dessus.</para> + </listitem> + </orderedlist></para> + </sect4> + + <sect4> + <title>Mandrake</title> + + <para><orderedlist> + <listitem> + <para>Mandrake inclut des suppléments invité VirtualBox qui seront + remplacés si vous suivez ces étapes.</para> + </listitem> + + <listitem> + <para>Afin de mettre à jour complètement votre système invité, ouvrez un + terminal et lancez <screen>urpmi --auto-update</screen> + en tant qu'administrateur.</para> + </listitem> + + <listitem> + <para>Redémarrez le système afin d'activer les mises à jour.</para> + </listitem> + + <listitem> + <para>Installez DKMS en utilisant <screen>urpmi dkms</screen> + et assurez-vous de choisir le bon paquet kernel-devel quand + l'installeur vous le demande (utilisez <computeroutput>uname -a</computeroutput> + pour comparer).</para> + </listitem> + </orderedlist></para> + </sect4> + + <sect4> + <title>Oracle Linux, Red Hat Enterprise Linux et CentOS</title> + + <para><orderedlist> + <listitem> + <para>Pour les versions antérieures à 6, ajoutez + <computeroutput>divider=10</computeroutput> aux options de démarrage + du noyau dans + <computeroutput>/etc/grub.conf</computeroutput> pour réduire la + charge du processeur actif.</para> + </listitem> + + <listitem> + <para>Afin de mettre à jour complètement votre système invité, ouvrez un + terminal et lancez <screen>yum update</screen> en tant + qu'administrateur.</para> + </listitem> + + <listitem> + <para>Installez le compilateur GNU C et les paquets de développement + du noyau en utilisant <screen>yum install gcc</screen> suivi de + <screen>yum install kernel-devel</screen> Pour les noyaux + Oracle UEK, utilisez <screen>yum install kernel-uek-devel</screen> + pour installer les en-têtes du noyau UEK.</para> + </listitem> + + <listitem> + <para>Redémarrez votre système invité afin d'activer les + mises à jour puis poursuivez comme décrit ci-dessus.</para> + </listitem> + + <listitem> + <para>Si Oracle Linux ne trouve pas les paquets requis, + soit vous devez les installer à partir d'une autre source (comme + un DVD), soit utilisez le serveur public Yum d'Oracle + qui se troupe sur <ulink + url="http://public-yum.oracle.com/">http://public-yum.oracle.com</ulink>.</para> + </listitem> + </orderedlist></para> + </sect4> + + <sect4> + <title>Debian</title> + + <para><orderedlist> + <listitem> + <para>Afin de mettre à jour complètement votre système invité, ouvrez un + terminal et lancez <screen>apt-get update</screen> en tant qu'administrateur + suivi de <screen>apt-get upgrade</screen></para> + </listitem> + + <listitem> + <para>Installez l'outil make et le compilateur GNU C en utilisant + <screen>apt-get install make gcc</screen></para> + </listitem> + + <listitem> + <para>Redémarrez votre système invité afin d'activer les + mises à jour.</para> + </listitem> + + <listitem> + <para>Déterminez la version exacte de votre noyau en utilisant + <computeroutput>uname -a</computeroutput> et installez la bonne + version du paquete linux-headers, par exemple en utilisant + <screen>apt-get install linux-headers-2.6.26-2-686</screen></para> + </listitem> + </orderedlist></para> + </sect4> + </sect3> + + <sect3> + <title>Intégration graphique de la souris</title> + + <para>Dans les invités Linux et Solaris, l'intégration graphique de la + souris de VirtualBox passe par le système X Window. VirtualBox peut + utiliser la variante X.Org du système (ou XFree86 version 4.3 qui est + identique à la première version de X.Org). Au cours du processus + d'installation, le serveur d'affichage X.Org sera paramétré pour utiliser + les pilotes graphiques et de souris fournis avec les suppléments invité.</para> + + <para>Après l'installation des suppléments invité dans une installation + neuve d'une distribution Linux ou d'un système Solaris supportés, (beaucoup + de systèmes non supportés fonctionneront correctement aussi), le mode + graphique de l'invité changera pour s'adapter à la taille de la fenêtre + VirtualBox et de l'hôte lorsqu'elle est redimensionnée. Vous pouvez aussi + demander au système invité de passer à une résolution en particulier en + envoyant une "suggestion de mode graphique" en utilisant l'outil + <computeroutput>VBoxManage</computeroutput>.</para> + + <para>Plusieurs écrans invités sont supportés dans les invités utilisant + le serveur X.Org version 1.3 (qui fait partie de la version 7.3 du + système X Window version 11) ou une version supérieure. La présentation + des écrans invités peut être ajustée au besoin en utilisant les outils + fournis avec le système d'exploitation invité.</para> + + <para>Si vous voulez mieux comprendre les détails de la manière dont les pilotes + X.Org sont paramétrés (en particulier si vous souhaitez les utiliser dans + un réglage non géré correctement par notre installeur), vous devriez lire + <xref linkend="guestxorgsetup" />.</para> + </sect3> + + <sect3> + <title>Metter à jour les suppléments invité Linux</title> + + <para>Les suppléments invité peuvent être mis à jour simplement en refaisant + la procédure d'installation avec une image de CD-ROM mise à jour. Ceci + remplacera les pilotes par des versions mises à jour. Vous devriez + redémarrer après avoir mis à jour les suppléments invité.</para> + </sect3> + + <sect3> + <title>Désinstaller les suppléments invité Linux</title> + + <para>Si vous avez une version des suppléments invité installée sur + votre machine virtuelle et si vous souhaitez l'enlever sans en installer + d'autres, vous pouvez le faire en insérant l'image CD des suppléments + invité dans le lecteur de CD-ROM virtuel comme décrit ci-dessus et en + lançant l'installeur des suppléments invité actuels avec le paramètre + "uninstall" à partir de l'endroit où est monté l'image du CD sur + l'invité : <screen>sh ./VBoxLinuxAdditions.run uninstall</screen></para> + + <para>Si cela fonctionnera en principe sans problème, il se peut que vous + deviez faire certains nettoyages à la main sur l'invité (en particulier + du fichier XFree86Config ou xorg.conf) dans certains cas, surtout si la + version installée des suppléments ou le système d'exploitation invité + étaient très anciens ou si vous avez fait vos propres modifications du + paramétrage des suppléments invité après les avoir installé.</para> + + <para>À partir de la version 3.1.0, vous pouvez désinstaller les + suppléments en appelant <screen>/opt/VBoxGuestAdditions-@VBOX_VERSION_STRING@/uninstall.sh</screen>Merci + de remplacer + <computeroutput>/opt/VBoxGuestAdditions-@VBOX_VERSION_STRING@</computeroutput> + par le bon répertoire d'installation des suppléments invité.</para> + </sect3> + </sect2> + + <sect2> + <title>Suppléments invité pour Solaris</title> + + <para>Comme les suppléments invité pour Windows, les suppléments invité + de VirtualBox pour Solaris incluent un ensemble de pilotes de périphériques + et d'applications système qui peuvent s'installer dans le système d'exploitation + invité.</para> + + <para>Les distributions Solaris suivantes sont officiellement + supportées :</para> + + <itemizedlist> + <listitem> + <para>Solaris 11 y compris Solaris 11 Express;</para> + </listitem> + + <listitem> + <para>Solaris 10 (u5 et supérieur);</para> + </listitem> + </itemizedlist> + + <para>Il se peut que d'autres distributions fonctionnent si elles se basent + sur des versions des logiciels comparables.</para> + + <sect3> + <title>Installer les suppléments invité Solaris</title> + + <para>Les suppléments invité de VirtualBox pour Solaris sont fournis + sur le même ISO de CD-ROM que les suppléments pour Windows et Linux + décrits ci-dessus. Ils sont aussi fournis avec un programme d'installation + qui vous guide à travers le processus d'initialisation.</para> + + <para>L'installation implique les étapes suivantes :</para> + + <orderedlist> + <listitem> + <para>Monter le fichier + <computeroutput>VBoxGuestAdditions.iso</computeroutput> comme votre + lecteur de CD-ROM virtuel de votre invité Solaris, exactement comme + expliqué pour un invité Windows au <xref + linkend="mountingadditionsiso" />.</para> + + <para>Au cas où le lecteur de CD-ROM de l'invité ne se monte pas + (ce qu'on a constaté avec certaines versions de Solaris 10), exécutez + en tant qu'administrateur :</para> + + <screen>svcadm restart volfs</screen> + </listitem> + + <listitem> + <para>Rendez-vous dans le répertoire où votre lecteur de CD-ROM est + monté et exécutez en tant qu'administrateur :</para> + + <screen>pkgadd -G -d ./VBoxSolarisAdditions.pkg</screen> + </listitem> + + <listitem> + <para>Choisissez "1" et confirmez l'installation du paquet des + suppléments invité. Après la fin de l'installation, reconnectez-vous + au serveur X de votre invité pour activer suppléments invité de X11.</para> + </listitem> + </orderedlist> + </sect3> + + <sect3> + <title>Désinstaller les suppléments invité Solaris</title> + + <para>Les suppléments invité Solaris peuvent être supprimés en toute + sécurité en retirant de l'invité le paquet. Ouvrez une session de terminal + administrateur et exécutez :</para> + + <para><screen>pkgrm SUNWvboxguest</screen></para> + </sect3> + + <sect3> + <title>Mettre à jour les suppléments invité</title> + + <para>Les suppléments invité devraient être mis à jour en désinstallant + d'abord les suppléments invité existants puis en installant les nouveaux. + Essayer d'installer de nouveaux suppléments invité sans supprimer ceux + existant n'est pas possible.</para> + </sect3> + </sect2> + + <sect2> + <title>Suppléments invité pour OS/2</title> + + <para>VirtualBox inclut aussi un jeu de pilotes qui améliore l'exécution + d'OS/2 dans une machine virtuelle. À cause de restrictions d'OS/2 lui-même, + cette variante des suppléments invité a un jeu de fonctionnalités limité ; voir <xref + linkend="KnownIssues" /> pour les détails.</para> + + <para>Les suppléments invité OS/2 sont fournis sur la même ISO de CD-ROM + que ceux des autres plateformes. Donc, montez l'ISO dans OS/2 comme décrit + précédemment. Les suppléments invité OS/2 se trouvent dans + directory <computeroutput>\32bit\OS2</computeroutput>.</para> + + <para>Comme on ne fournit pas pour le moment d'installeur automatique, + merci de vous reporter au fichier <computeroutput>readme.txt</computeroutput> + de ce répertoire, qui décrit la façon d'installer les suppléments invité + OS/2 à la main.</para> + </sect2> + </sect1> + + <sect1 id="sharedfolders"> + <title>Dossiers partagés</title> + + <para>Avec la fonction "dossiers partagés", de VirtualBox, vous pouvez + accéder à des fichiers de votre système hôte depuis votre système invité. + Cela est identique à utiliser des partages réseau dans des réseaux Windows -- + sauf que les dossiers partagés ne nécessitent pas de réseau mais seulement + les suppléments invité. Les dossiers partagés sont supportés avec les invités + Windows (2000 ou plus récent), Linux et Solaris.</para> + + <para>Les dossiers partagés doivent être présents physiquement sur + <emphasis>l'hôte</emphasis> et sont alors partagés avec l'invité qui utilise + un pilote de système de fichiers spécial des suppléments invité pour dialoguer + avec l'hôte. Pour les invités Windows, les dossiers partagés sont implémentés + comme un redirecteur pseudo-réseau ; pour les invités Linux et Solaris, + les suppléments invité fournissent un système de fichiers virtuel.</para> + + <para>Pour partager un dossier hôte avec une machine virtuelle de VirtualBox, + indiquer le chemin vers ce dossier et choisir pour lui un "nom partagé" + que l'invité peut utiliser pour y accéder. D'où: créez tout d'abord le dossier + partagé sur l'hôte, puis dans l'invité, connectez-vous-y.</para> + + <para>Il existe plusieurs façons de paramétrer des dossiers partagés pour + une machine virtuelle en particulier :<itemizedlist> + <listitem> + <para>Dans la fenêtre d'une VM en fonction, vous pouvez sélectionner + "Dossiers partagés" du menu "Périphériques" ou cliquer sur l'icône de + dossier dans la barre d'état dans le coin en bas à droite.</para> + </listitem> + + <listitem> + <para>Si une VM est en fonction, vous pouvez configurer des dossiers + partagés dans chaque boîte de dialogue "Paramètres" d'une machine virtuelle.</para> + </listitem> + + <listitem> + <para>En ligne de commande, vous pouvez créer des dossiers partagés en + utilisant VBoxManage, comme suit : <screen>VBoxManage sharedfolder add "nom VM" --name "sharename" --hostpath "C:\test"</screen></para> + + <para>Voir <xref linkend="vboxmanage-sharedfolder" /> pour les + détails.</para> + </listitem> + </itemizedlist></para> + + <para>Il existe deux types de partages :</para> + + <orderedlist> + <listitem> + <para>Les partages de VM disponibles seulement pour la VM pour laquelle + ils ont été définis ;</para> + </listitem> + + <listitem> + <para>Partages inter-VM, qui peuvent être ajoutés et supprimés pendant + l'exécution et qui ne durent pas après l'arrêt d'une VM ; ajoutez + pour eux l'option <computeroutput>--transient</computeroutput> à la ligne + de commande ci-dessus.</para> + </listitem> + </orderedlist> + + <para>Les dossiers partagés donnent par défaut un accès en lecture/écriture + aux fichiers de l'emplacement de l'hôte. Pour restreindre l'invité à un + accès en lecture seule, créez un dossier partagé en lecture seule. Cela peut + se faire soit en interface graphique, soit mettant l'option + <computeroutput>--readonly</computeroutput> lors de la création du dossier + partagé avec VBoxManage.</para> + + <para>À partir de la version 4.0, les dossiers partagés de VirtualBox supportent + aussi les liens symboliques (<emphasis role="bold">symlinks</emphasis>), dans + les conditions suivamtes :<orderedlist> + <listitem> + <para>Le système d'exploitation hôte doit supporter les liens symboliques + (donc, un hôte Mac, Linux ou Solaris est requis).</para> + </listitem> + + <listitem> + <para>Actuellement, seuls les suppléments invité pour Linux et Solaris + supportent les liens symboliques.</para> + </listitem> + <listitem> + <para>Pour des raisons de sécurité, l'OS invité n'est pas autorisé par + défaut à créer des liens symboliques. Si vous faites confiance à l'OS + invité pour ne pas abuser de la fonction, vous pouvez autoriser la + création de liens symboliques pour "nomdupartage" avec : + <screen>VBoxManage setextradata "VM name" VBoxInternal2/SharedFoldersEnableSymlinksCreate/sharename 1</screen></para> + </listitem> + </orderedlist></para> + + <sect2 id="sf_mount_manual"> + <title>Montage manuel</title> + + <para>Vous pouvez monter des dossiers partagés depuis l'intérieur d'une VM + de la même façon que vous monteriez un partage réseau ordinaire :</para> + + <para><itemizedlist> + <listitem> + <para>Dans un invité Windows, on peut naviguer dans les dossiers + partagés qui apparaissent donc dans l'explorateur Windows. Donc, + pour connecter un dossier partagé à votre invité Windows, ouvrez + l'explorateur Windows et cherchez-le dans "Favoris réseaux" -> + "Tout le réseau" -> "Dossier partagé VirtualBox". En effectuant + un clic droit sur un dossier partagé et en sélectionnant "Connecter + un lecteur réseau" dans le menu qui apparaît, vous pouvez affecter + une lettre de lecteur à ce dossier partagé.</para> + + <para>Sinon, sur la ligne de commande Windows, utilisez ce qui suit :</para> + + <screen>net use x: \\vboxsvr\sharename</screen> + + <para>Si <computeroutput>vboxsvr</computeroutput> est un nom figé + (remarquez que <computeroutput>vboxsrv</computeroutput> fonctionnerait + aussi), remplacez "x:" par la lettre de lecteur que vous voulez utiliser + pour le partage, et <computeroutput>sharename</computeroutput> par le + nom du partage spécifié avec <computeroutput>VBoxManage</computeroutput>.</para> + </listitem> + + <listitem> + <para>Dans un invité Linux, utilisez la commande suivante :</para> + + <screen>mount -t vboxsf [-o OPTIONS] sharename mountpoint</screen> + + <para>Pour monter un dossier partagé au moment du démarrage, ajoutez + l'entrée suivante à /etc/fstab :</para> + + <screen>sharename pointmontage vboxsf defaults 0 0</screen> + </listitem> + + <listitem> + <para>Dans un invité Solaris, utilisez la commande suivante :</para> + + <screen>mount -F vboxfs [-o OPTIONS] nompartage mountpoint</screen> + + <para>Remplacez <computeroutput>nompartage</computeroutput> (utilisez + des minuscules) par le nom du partage spécifié avec + <computeroutput>VBoxManage</computeroutput> ou par l'interface graphique, + et <computeroutput>pointmontage</computeroutput> par l'endroit de l'invité où + vous voulez monter le partage (par exemple + <computeroutput>/mnt/share</computeroutput>). Les règles habituelles + de montage s'appliquent, c'ept-à-dire créer d'abord un répertoire s'il + n'existe pas déjà.</para> + + <para>Voici un exemple de montage d'un dossier partagé pour l'utilisateur + "jack" sur Solaris :</para> + + <screen>$ id +uid=5000(jack) gid=1(other) +$ mkdir /export/home/jack/mount +$ pfexec mount -F vboxfs -o uid=5000,gid=1 jackshare /export/home/jack/mount +$ cd ~/mount +$ ls +sharedfile1.mp3 sharedfile2.txt +$</screen> + + <para>Par-delà les options standard fournies par la commande + <computeroutput>mount</computeroutput>, celles suivantes sont + disponibles :</para> + + <screen>iocharset CHARSET</screen> + + <para>pour définir l'encodage utilisé pour les opérations d'E/S. + Remarquez que sur les invités Linux, si vous ne spécifiez pas l'option + "iocharset", le pilote des suppléments invité essaiera d'utiliser + l'encodage spécifié par l'option CONFIG_NLS_DEFAULT du noyau. + Si cette option n'est pas définie, UTF-8 sera utilisé. En outre,</para> + + <screen>convertcp CHARSET</screen> + + <para>est disponible pour définir l'encodage utilisé pour le nom du dossier partagé + (utf8 par défaut) et</para> + + <para>Les options de montage génériques (documentées dans la page de + manuel de mount) s'appliquent aussi. Celles particulièrement utiles + sont <computeroutput>uid</computeroutput>, + <computeroutput>gid</computeroutput> et + <computeroutput>mode</computeroutput>, car elles permettent un accès + par des utilisateurs ordinaires (en mode lecture/écriture selon les réglages) + même si l'administrateur a monté le système de fichiers.</para> + </listitem> + </itemizedlist></para> + </sect2> + + <sect2 id="sf_mount_auto"> + <title>Montage automatique</title> + + <para>À partir de la version 4.0, VirtualBox peut monter automatiquement + des dossiers partagés avec vos options. Si le montage automatique est activé + pour un dossier partagé spécifique, les suppléments invité monteront + automatiquement ce dossier dès qu'un utilisateur se connecte à l'OS invité. Les + détails dépendent du type d'OS invité :<itemizedlist> + <listitem> + <para>Avec des <emphasis role="bold">invités Windows,</emphasis>, + tout dossier monté automatiquement aura sa propre lettre de lecteur + (comme <computeroutput>E:</computeroutput>) selon les lettres de + lecteur disponibles dans l'invité.</para> + + <para>Si aucune lettre de lecteur n'est libre, le montage automatique + échouera ; donc le nombre de lecteurs montés automatiquement est + limité en général à 22 ou moins avec des invités Windows.</para> + </listitem> + + <listitem> + <para>Avec des <emphasis role="bold">invités Linux,</emphasis>, les + dossiers partagés montés automatiquement sont montés dans + le répertoire <computeroutput>/media</computeroutput>, avec le préfixe + <computeroutput>sf_</computeroutput>. Par exemple, le dossier partagé + <computeroutput>myfiles</computeroutput> serait monté dans + <computeroutput>/media/sf_myfiles</computeroutput> sur + Linux et dans <computeroutput>/mnt/sf_myfiles</computeroutput> sur + Solaris.</para> + + <para>La propriété invité + <computeroutput>/VirtualBox/GuestAdd/SharedFolders/MountPrefix</computeroutput> + détermine le préfixe utilisé. Modifiez cette propriété invité en une + valeur différente de "sf" pour changer ce préfixe ; voir <xref + linkend="guestadd-guestprops" /> pour les détails.<note> + <para>L'accès aux dossiers partagés montés automatiquement n'est + autorisé que pour le groupe utilisateur + <computeroutput>vboxsf</computeroutput>, créé par l'installeur des + suppléments invité de VirtualBox. Donc les utilisateurs de l'invité + doivent être membres de ce groupe pour avoir un accès en lecture/écriture + ou en lecture seule si le dossier n'est pas inscriptible.</para> + </note></para> + + <para>Pour modifier le répertoire de montage en autre chose que + <computeroutput>/media</computeroutput>, vous pouvez régler la propriété + invité <computeroutput>/VirtualBox/GuestAdd/SharedFolders/MountDir</computeroutput>.</para> + </listitem> + + <listitem> + <para>Les <emphasis role="bold">invités Solaris</emphasis> se comportent + comme les invités Linux, sauf que <computeroutput>/mnt</computeroutput> + est utilisé comme répertoire de montage par défaut au lieu de + <computeroutput>/media</computeroutput>.</para> + </listitem> + </itemizedlist></para> + + <para>Pour effectuer des changements sur les dossiers partagés montés + automatiquement pendant qu'une VM est en fonction, l'OS invité doit être + relancé. (Cela ne vaut que pour les dossiers partagés montés automatiquement, + pas pour coux montés à la main.)</para> + </sect2> + </sect1> + + <sect1 id="guestadd-dnd"> + <title>Glisser/Déplacer</title> + + <para>À partir de la version 4.4, VirtualBox supporte le glisser/déplacer + d'un contenu de l'hôte à l'invité et vice versa. Pour que cela fonctionne + les derniers suppléments invité doivent être installés sur l'invité.</para> + + <para>Le glisser/déplacer vous permet de façon transparente de copier ou + d'ouvrir des fichiers, des répertoires, et même certains formats de presse-papiers + entre eux (de l'hôte à l'invité ou de l'invité à l'hôte). Vous pouvez + ainsi effectuer des opérations de glisser/déplacer entre vhôte et une VM + comme si c'était un glisser/déplacer ordinaire sur l'OS de l'hôte.</para> + + <para>Pour le moment, le glisser/déplacer est implémenté sur les systèmes Windows + et X-Windows, tant côté invité que côté hôtes. Comme X-Windows supporte + différents protocoles de glisser/déplacer, seul celui le plus utilisé, XDND,, + est supporté actuellement. Les applications qui utilisent d'autres protocoles + (telles que Motif ou OffiX) ne seront pas reconnues par VirtualBox.</para> + + <para>Dans un contexte d'utilisation de glisser/déplacer, l'origine des + données s'appelle <emphasis role="bold">source</emphasis>, c'est-à-dire, le + point spécifié d'où viennent les données. De l'autre côté, il y a la + <emphasis role="bold">cible</emphasis>, qui désigne là où devraient aller les + données de la source. Le transfert de données de la source à la cible peut + se faire de plusieurs manières, comme en copiant, déplaçant ou créant des + liens.<footnote><para>Pour le + moment, seule la copie de données est supportée. Le déplacement ou la création + de liens n'est pas encore implémenté.</para></footnote></para> + + <para>Quand on transfère des données de l'hôte à l'OS invité, l'hôte est + dans ce cas la source, alors que l'OS invité est la cible. En revanche, quand + dans l'autre sens, à savoir lors d'un transfert de données de l'OS invité + vers l'hôte, l'OS invité devient cette fois la source et l'hôte est la cible.</para> + + <para>Pour des raisons de sécurité, le glisser/déplacer peut se configurer + lors de l'exécution, individuellement pour chaque VM, en utilisant soit + l'élément "Glisser/déplacer" du menu "Périphériques" de la machine virtuelle + ou VBoxManage. Les quatre modes suivants sont disponibles :</para> + +<para><mediaobject> + <imageobject> + <imagedata align="center" fileref="images/dnd-modes.png" + width="10cm" /> + </imageobject> + </mediaobject></para> + + <itemizedlist> + <listitem> + <para><emphasis role="bold">Disabled</emphasis> désactive complètement + le glisser/déplacer. C'est le réglage par défaut à la création de + nouvelles VMs.</para> + </listitem> + <listitem> + <para><emphasis role="bold">Host To Guest</emphasis> active le + glisser/déplacer de vhôte vers l'invité seulement.</para> + </listitem> + <listitem> + <para><emphasis role="bold">Guest To Host</emphasis> active le + glisser/déplacer de l'invité à l'hôte seulement.</para> + </listitem> + <listitem> + <para><emphasis role="bold">Bidirectional</emphasis> active le + glisser/déplacer dans les deux sens, de l'hôte vers l'invité et + vice versa.</para> + </listitem> + </itemizedlist> + + <note><para>Le support du glisser/déplacer dépend de l'interface + utilisée ; pour le moment, seule celle du gestionnaire VirtualBox offre + cette fonctionnalité.</para></note> + + <para>Pour utiliser VBoxManage pour contrôler le mode actuel du glisser/déplacer, + voir <xref + linkend="vboxmanage" />. Les commandes <computeroutput>modifyvm</computeroutput> + et <computeroutput>controlvm</computeroutput> permettent de définir le mode + glisser/déplacer d'une VM en ligne de commande.</para> + + <sect2 id="guestadd-dnd-formats"> + <title>Formats supportés</title> + + <para>Comme VirtualBox peut fonctionner sur divers OS hôtes et il supporte + une large gamme d'invités, certains formats de données doivent être + traduits après un transfert pour que l'OS cible (c'est-à-dire la partie qui + reçoit les données) puisse les gérer de la bonne manière.</para> + + <note><para>Cependant, quand vous glissez des fichiers, on ne fait aucune + conversion de données, ainsi quand vous transférez un fichier d'un invité + Linux vers un hôte Windows, les ajouts spécifiques à Linux ne seront pas + convertis en ajouts Linux.</para></note> + + <para>Les formats suivants sont gérés par le service glisser/déplacer de + VirtualBox : + <itemizedlist> + <listitem> + <para><emphasis role="bold">Text brut</emphasis>, issu d'applications + telles un éditeur de texte, des navigateurs internet et des fenêtres + de terminal</para> + </listitem> + <listitem> + <para><emphasis role="bold">Fichiers</emphasis>, issus de gestionnaires + de fichiers comme l'explorateur Windows, Nautilus et Finder</para> + </listitem> + <listitem> + <para><emphasis role="bold">Répertoires</emphasis>, où la même + chose que pour les fichiers s'applique</para> + </listitem> + </itemizedlist> + </para> + </sect2> + + </sect1> + + <sect1 id="guestadd-video"> + <title>L'accélération graphique matérielle</title> + + <sect2 id="guestadd-3d"> + <title>Accélération 3D matérielle (OpenGL and Direct3D 8/9)</title> + + <para>Les suppléments invité de VirtualBox contiennent un support 3D + matériel expérimental pour les invités Windows, Linux et Solaris.<footnote> + <para>Le support OpenGL pour les invités Windows a été ajouté avec + VirtualBox 2.1 ; le support pour Linux et Solaris a suivi avec + VirtualBox 2.2. Avec VirtualBox 3.0, le support Direct3D 8/9 a été + ajouté pour les invités Windows. OpenGL 2.0 est maintenant supporté + aussi. Avec VirtualBox 4.1, le support du thème Windows Aero a été ajouté + pour les invités Windows Vista et Windows 7 (expérimental)</para> + </footnote></para> + + <para>Avec cette fonction, si une application de votre machine virtuelle + utilise des fonctions 3D via les interfaces de programmation OpenGL ou + Direct3D 8/9, plutôt qu'une émulation logicielle (qui serait lente), + VirtualBox essaiera d'utiliser le matériel 3D de votre hôte. Cela fonctionne + pour toutes les plateformes hôtes supportées (Windows, Mac, Linux, Solaris), + pourvu que votre système d'exploitation hôte puisse utiliser votre accélération + 3D matérielle au premier plan.</para> + + <para>L'accélération 3D suppose actuellement les conditions suivantes :<orderedlist> + <listitem> + <para>elle n'est disponible que pour certains invités Windows, Linux + et Solaris. En particulier :<itemizedlist> + <listitem> + <para>L'accélération 3D des invités Windows exige Windows + 2000, Windows XP, Vista ou Windows 7. OpenGL et Direct3D 8/9 + (pas avec Windows 2000) sont supportés + (expérimental).</para> + </listitem> + + <listitem> + <para>OpenGL sur Linux exige un noyau 2.6.27 et supérieur et + le serveur X.org version 1.5 et supérieur. Ubuntu 10.10 + et Fedora 14 ont été testées et confirmées comme opérationnelles.</para> + </listitem> + + <listitem> + <para>OpenGL sur les invités Solaris exige le serveur X.org + version 1.5 et supérieur.</para> + </listitem> + </itemizedlist></para> + </listitem> + + <listitem> + <para>Les suppléments invité doivent être installés.<note> + <para>Pour l'accélération Direct3D de base fonctionne avec + les invités Windows, VirtualBox a besoin de remplacer des + fichiers système de Windows dans la machine virtuelle. Donc, le + programme d'installation suppléments invité offre l'accélération + Direct3D en option que vous devez activer explicitement. De plus, + vous devez installer les suppléments invité en mode "Sans échec". + Cela <emphasis role="bold">ne s'applique pas</emphasis> au pilote + graphique expérimental WDDM Direct3D disponible pour les invités + Vista et Windows 7, voir <xref linkend="KnownIssues" /> + pour les détails.</para></note> + </para> + </listitem> + + <listitem> + <para>Le support 3D étant pour l'instant expérimental, il est désactivé par + défaut et il faut <emphasis role="bold">l'activer à la main</emphasis> + dans les paramètres de la VM (voir <xref + linkend="generalsettings" />).<note> + <para> + Les systèmes invité douteux ne devraient pas être autorisés à utiliser + les fonctions d'accélération 3D de VirtualBox tout comme les logiciels + douteux de l'hôte ne devraient pas être autorisés à utiliser + l'accélération 3D. Les pilotes du matériel 3D sont en général trop + complexes pour être parfaitement sécurisés et tout logiciel + autorisé à y accéder peut être en mesure de compromettre le système + d'exploitation qui les exécute. En outre, l'activation de l'accélération + 3D donne à l'invité un accès direct à une grande étendue de code + informatique supplémentaire du processus hôte de VirtualBox, donc + il pourrait être concevable de l'utiliser pour planter la machine + virtuelle. + </para> + </note></para> + </listitem> + </orderedlist></para> + + <para>Avec VirtualBox 4.1, le support du thème Windows Aero est ajouté pour + les invités Windows Vista et Windows. Pour activer le support du thème + Aero, le pilote graphique expérimental WDDM de VirtualBox doit être installé, + il est disponible avec l'installation des suppléments invité. Comme le pilote + graphique WDDM est pour l'instant expérimental, il n'est pas installé par + défaut et il faut <emphasis role="bold">le sélectionner à la main</emphasis> + dans l'installeur des suppléments invité en répondant "Non" dans la boîte + de dialogue "Voulez-vous installer le support Direct3D de base" qui s'affiche + quand la fonction Direct3D est sélectionnée.</para> + + <para><note><para>Contrairement au support Direct3D de base actuel, l'installation + du pilote graphique WDDM <emphasis role="bold">n'exige pas</emphasis> + le "Mode sans échec".</para></note></para> + + <para>Le thème Aero n'est pas activé par défaut. Pour l'activer + <itemizedlist> + <listitem> + <para>Dans l'invité Windows Vista, effectuez un clic droit sur le + bureau, dans le menu contextuel, sélectionnez "Personnaliser" et sélectionnez + "Couleur de fenêtre et Apparance" dans la fenêtre "Personnalisation", + dans la boîte de dialogue "Paramètres de l'apparence", sélectionnez + "Windows Aero" et appuyez sur "OK"</para> + </listitem> + <listitem> + <para>Dans l'invité Windows 7, effectuez un clic droit sur le bureau, + dans le menu contextuel, sélectionnez "Personnaliser" et sélectionnez + un thème Aero dans la fenêtre "Personnalisation"</para> + </listitem> + </itemizedlist> + </para> + + <para>Techniquement, VirtualBox implémente cela en installant un pilote 3D + matériel supplémentaire dans votre invité quand les suppléments invité sont + installés. Ce pilote agit comme un pilote 3D matériel et signale au + système d'exploitation invité que le matériel (virtuel) est capable de faire + de l'accélération matérielle 3D. Quand une application de l'invité demande + alors l'accélération matérielle via les interfaces de programmation OpenGL ou + Direct3D, elles sont envoyées vers l'hôte par un tunnel de communication + spécial fourni par VirtualBox, puis <emphasis>l'hôte</emphasis> effectue + l'opération 3D demandée via les interfaces de programmation de l'hôte.</para> + </sect2> + + <sect2 id="guestadd-2d"> + <title>L'accélération matérielle 2D pour les invités Windows</title> + + <para>À partir de la version 3.1, les suppléments invité de VirtualBox + contiennent le support expérimental de l'accélération graphique 2D matériel + pour les invités Windows.</para> + + <para>Avec cette fonctionnalité, si une application (comme un lecteur de + vidéos) de votre VM Windows utilise les couches graphiques 2D pour lire un clip + vidéo, VirtualBox essaiera d'utiliser l'accélération graphique matérielle de + votre hôte plutôt que de faire de l'interprétation de couches ni conversion + de couleurs dans le logiciel (ce qui serait lent). Cela fonctionne actuellement + avec les plateformes hôtes Windows, Linux et Mac, pourvu que votre système + d'exploitation hôte puisse utiliser l'accélération graphique 2D au premier plan.</para> + + <para>L'accélération graphique 2D est possible aujourd'hui sous les + conditions suivantes :<orderedlist> + <listitem> + <para>Elle n'est disponible que pour des invités Windows (XP ou + supérieur).</para> + </listitem> + + <listitem> + <para>Les suppléments invité doivent être installés.</para> + </listitem> + + <listitem> + <para>Le support 2D étant pour l'instant expérimental, il est désactivé + par défaut et il faut <emphasis role="bold">l'activer à la main</emphasis> + dans les paramètres de la VM (voir <xref + linkend="generalsettings" />).</para> + </listitem> + </orderedlist></para> + + <para>Techniquement, VirtualBox implémente ceci en montrant les possibilités + DirectDraw de la couche vidéo dans le pilote graphique des suppléments invité. + Le pilote envoie toutes les commandes de la couche à l'hôte via un tunnel + de communication spécial implémenté par VirtualBox. Côté hôte, OpenGL est + alors utilisé pour implémenter la transformation des couleurs et l'échelonage</para> + </sect2> + </sect1> + + <sect1 id="seamlesswindows"> + <title>Fenêtres transparentes</title> + + <para>Avec la fonction "fenêtres transparentes", de VirtualBox, vous pouvez + afficher vos fenêtres d'une machine virtuelle côte à côte près des fenêtres + de votre hôte. Cette fonctionnalité est supportée pour les systèmes d'exploitation + invités suivants (si les suppléments invité sont installés) :<itemizedlist> + <listitem> + <para>Les invités Windows (support ajouté à VirtualBox 1.5);</para> + </listitem> + + <listitem> + <para>Les invités supportés Linux ou Solaris exécutant le système X + Window (ajouté avec VirtualBox 1.6).</para> + </listitem> + </itemizedlist></para> + + <para>Après que les fenêtres transparentes ait été activées (voir ci-dessous), VirtualBox + supprime l'affichage de l'arrière-plan du bureau de votre invité, ce qui + vous permet de lancer les fenêtres de votre système d'exploitation invité + de manière transparente à côté des fenêtres de votre hôte :</para> + + <para><mediaobject> + <imageobject> + <imagedata align="center" fileref="images/seamless.png" width="14cm" /> + </imageobject> + </mediaobject>Pour activer le mode transparent, après avoir démarré la + machine virtuelle, appuyez sur Touche hôte (en principe contrôle droit) et + "L" simultanément. Ceci agrandira la taille de l'affichage de la VM jusqu'à + la taille de l'écran hôte et masquera l'arrière-plan du système d'exploitation + invité. Pour revenir à l'affichage normal de la VM (donc pour désactiver les + fenêtres transparentes), appuyez de nouveau sur Touche hôte et "L".</para> + </sect1> + + <sect1 id="guestadd-guestprops"> + <title>Propriétés invité</title> + + <para>À partir de la version 2.1, VirtualBox permet de demander certaines + propriétés depuis un invité existant, si les suppléments invité de VirtualBox + sont installés et si la VM est en fonction. C'est intéressant pour deux + choses :<orderedlist> + <listitem> + <para>Un certain nombre de caractéristiques prédéfinies de la VM sont maintenues + automatiquement par VirtualBox et peuvent être répercutées sur l'hôte, + par exemple, pour gérer les performances de la VM et les statistiques.</para> + </listitem> + + <listitem> + <para>De plus, des chaînes de données peuvent être échangées entre l'invité + et l'hôte. Cela fonctionne dans les deux sens.</para> + </listitem> + </orderedlist></para> + + <para>Pour faire cela, VirtualBox établit un canal de communication privé + entre les suppléments invité de VirtualBox et l'hôte, et les logiciels des + deux côtés peuvent utiliser ce canal pour échanger des chaînes de données pour + des objectifs de votre choix. Les propriétés invité ne sont que des clés de + chaîne auxquelles est rattachée une valeur. Elles peuvent être définies (donc + éditées) soit par l'hôte, soit par l'invité, et on peut les lire des deux + côtés.</para> + + <para>En plus d'établir le mécanisme général de lecture et d'écriture de + valeurs, un ensemble de propriétés invité prédéfinies est maintenu automatiquement + par les suppléments invité de VirtualBox pour permettre de récupérer des données + intéressantes de l'invité telles que le système exact de l'invité et le niveau + du service pack, la version installée des suppléments invité, les utilisateurs + connectés à l'OS invité, les statistiques réseau et davantage. Ces propriétés + prédéfinies ont toutes pour préfixe + <computeroutput>/VirtualBox/</computeroutput> et sont organisées en arborescence + hiérarchique de clés.</para> + + <para>Certaines informations de l'exécution s'affichent quand vous sélectionnez + "Boîte de dialogue d'informations sur la session" du menu "Machine" de la + machine virtuelle.</para> + + <para>Une manière plus flexible d'utiliser ce canal est de passer par la commande + <computeroutput>VBoxManage guestproperty</computeroutput> ; voir + <xref linkend="vboxmanage-guestproperty" /> pour les détails. Par exemple, + pour voir <emphasis>toutes</emphasis> les propriétés invité disponible pour + une Vm donnée en fonction, listées avec leurs valeurs respectives, utilisez + ceci :<screen>$ VBoxManage guestproperty enumerate "Windows Vista III" +VirtualBox Command Line Management Interface Version @VBOX_VERSION_MAJOR@.@VBOX_VERSION_MINOR@.@VBOX_VERSION_BUILD@ +(C) 2005-@VBOX_C_YEAR@ @VBOX_VENDOR@ +All rights reserved. + +Name: /VirtualBox/GuestInfo/OS/Product, value: Windows Vista Business Edition, + timestamp: 1229098278843087000, flags: +Name: /VirtualBox/GuestInfo/OS/Release, value: 6.0.6001, + timestamp: 1229098278950553000, flags: +Name: /VirtualBox/GuestInfo/OS/ServicePack, value: 1, + timestamp: 1229098279122627000, flags: +Name: /VirtualBox/GuestAdd/InstallDir, + value: C:/Program Files/Oracle/VirtualBox + suppléments invité, timestamp: 1229098279269739000, flags: +Name: /VirtualBox/GuestAdd/Revision, value: 40720, + timestamp: 1229098279345664000, flags: +Name: /VirtualBox/GuestAdd/Version, value: @VBOX_VERSION_MAJOR@.@VBOX_VERSION_MINOR@.@VBOX_VERSION_BUILD@, + timestamp: 1229098279479515000, flags: +Name: /VirtualBox/GuestAdd/Components/VBoxControl.exe, value: @VBOX_VERSION_MAJOR@.@VBOX_VERSION_MINOR@.@VBOX_VERSION_BUILD@r40720, + timestamp: 1229098279651731000, flags: +Name: /VirtualBox/GuestAdd/Components/VBoxHook.dll, value: @VBOX_VERSION_MAJOR@.@VBOX_VERSION_MINOR@.@VBOX_VERSION_BUILD@r40720, + timestamp: 1229098279804835000, flags: +Name: /VirtualBox/GuestAdd/Components/VBoxDisp.dll, value: @VBOX_VERSION_MAJOR@.@VBOX_VERSION_MINOR@.@VBOX_VERSION_BUILD@r40720, + timestamp: 1229098279880611000, flags: +Name: /VirtualBox/GuestAdd/Components/VBoxMRXNP.dll, value: @VBOX_VERSION_MAJOR@.@VBOX_VERSION_MINOR@.@VBOX_VERSION_BUILD@r40720, + timestamp: 1229098279882618000, flags: +Name: /VirtualBox/GuestAdd/Components/VBoxService.exe, value: @VBOX_VERSION_MAJOR@.@VBOX_VERSION_MINOR@.@VBOX_VERSION_BUILD@r40720, + timestamp: 1229098279883195000, flags: +Name: /VirtualBox/GuestAdd/Components/VBoxTray.exe, value: @VBOX_VERSION_MAJOR@.@VBOX_VERSION_MINOR@.@VBOX_VERSION_BUILD@r40720, + timestamp: 1229098279885027000, flags: +Name: /VirtualBox/GuestAdd/Components/VBoxGuest.sys, value: @VBOX_VERSION_MAJOR@.@VBOX_VERSION_MINOR@.@VBOX_VERSION_BUILD@r40720, + timestamp: 1229098279886838000, flags: +Name: /VirtualBox/GuestAdd/Components/VBoxMouse.sys, value: @VBOX_VERSION_MAJOR@.@VBOX_VERSION_MINOR@.@VBOX_VERSION_BUILD@r40720, + timestamp: 1229098279890600000, flags: +Name: /VirtualBox/GuestAdd/Components/VBoxSF.sys, value: @VBOX_VERSION_MAJOR@.@VBOX_VERSION_MINOR@.@VBOX_VERSION_BUILD@r40720, + timestamp: 1229098279893056000, flags: +Name: /VirtualBox/GuestAdd/Components/VBoxVideo.sys, value: @VBOX_VERSION_MAJOR@.@VBOX_VERSION_MINOR@.@VBOX_VERSION_BUILD@r40720, + timestamp: 1229098279895767000, flags: +Name: /VirtualBox/GuestInfo/OS/LoggedInUsers, value: 1, + timestamp: 1229099826317660000, flags: +Name: /VirtualBox/GuestInfo/OS/NoLoggedInUsers, value: false, + timestamp: 1229098455580553000, flags: +Name: /VirtualBox/GuestInfo/Net/Count, value: 1, + timestamp: 1229099826299785000, flags: +Name: /VirtualBox/HostInfo/GUI/LanguageID, value: C, + timestamp: 1229098151272771000, flags: +Name: /VirtualBox/GuestInfo/Net/0/V4/IP, value: 192.168.2.102, + timestamp: 1229099826300088000, flags: +Name: /VirtualBox/GuestInfo/Net/0/V4/Broadcast, value: 255.255.255.255, + timestamp: 1229099826300220000, flags: +Name: /VirtualBox/GuestInfo/Net/0/V4/Netmask, value: 255.255.255.0, + timestamp: 1229099826300350000, flags: +Name: /VirtualBox/GuestInfo/Net/0/Status, value: Up, + timestamp: 1229099826300524000, flags: +Name: /VirtualBox/GuestInfo/OS/LoggedInUsersList, value: username, + timestamp: 1229099826317386000, flags:</screen></para> + + <para>To query the value of a single property, use the "get" subcommand + like this:<screen>$ VBoxManage guestproperty get "Windows Vista III" + "/VirtualBox/GuestInfo/OS/Product" +VirtualBox Command Line Management Interface Version @VBOX_VERSION_MAJOR@.@VBOX_VERSION_MINOR@.@VBOX_VERSION_BUILD@ +(C) 2005-@VBOX_C_YEAR@ @VBOX_VENDOR@ +All rights reserved. + +Value: Windows Vista Business Edition</screen></para> + + <para>Pour ajouter ou modifier des propriétés invité depuis l'invité, utilisez l'outil + <computeroutput>VBoxControl</computeroutput>. Cet outil est inclu dans les + suppléments invité de VirtualBox 2.2 ou supérieur. S'il est lancé avec un + invité Linux, cet outil exige les privilèges administrateur pour des raisons + de sécurité :<screen>$ sudo VBoxControl guestproperty enumerate +VirtualBox suppléments invité Command Line Management Interface Version @VBOX_VERSION_MAJOR@.@VBOX_VERSION_MINOR@.@VBOX_VERSION_BUILD@ +(C) 2009-@VBOX_C_YEAR@ @VBOX_VENDOR@ +All rights reserved. + +Name: /VirtualBox/GuestInfo/OS/Release, value: 2.6.28-18-generic, + timestamp: 1265813265835667000, flags: <NULL> +Name: /VirtualBox/GuestInfo/OS/Version, value: #59-Ubuntu SMP Thu Jan 28 01:23:03 UTC 2010, + timestamp: 1265813265836305000, flags: <NULL> + ...</screen></para> + + <para>Pour des besoins plus complexes, vous pouvez utiliser l'interface de + programmation de VirtualBox ; voir <xref linkend="VirtualBoxAPI" />.</para> + </sect1> + + <sect1 id="guestadd-guestcontrol"> + <title>Contrôle de l'invité</title> + + <para>À partir de la version 3.2, les suppléments invité de VirtualBox + permettent de démarrer les applications d'une VM à partir du système hôte.</para> + + <para>Pour que cela fonctionne, l'application doit être installée dans l'invité ; + pas besoin de logiciels supplémentaires sur l'hôte. De plus, une sortie en + mode texte (sur stdout et stderr) peut s'afficher sur l'hôte pour un traitement + ultérieur avec des options pour spécifier les droits des utilisateurs et + une valeur de timeout (en millisecondes) pour limiter le temps où l'application + peut s'exécuter.</para> + + <para>Cette fonctionnalité peut être utilisée pour automatiser le déploiement + d'un logiciel dans l'invité.</para> + + <para>À partir de la version 4.0, les suppléments invité pour Windows permettent + une mise à jour automatique (seulement si les suppléments invité 4.0 ou + supérieurs sont déjà installés). En outre, la copie de fichiers de l'hôte vers + l'invité ainsi que la création à distance de répertoires invités est disponible.</para> + + <para>Pour utiliser ces fonctionnalités, utilisez la ligne de commande de + VirtualBox, voir <xref + linkend="vboxmanage-guestcontrol" />.</para> + </sect1> + + <sect1> + <title>Transfert de mémoire</title> + + <para>Dans des environnements serveur ayant beaucoup de VMs ; les suppléments invité + peuvent être utilisés pour partager de la mémoire physique de l'hôte entre + plusieurs VMs, réduisant la quantité totale de mémoire utilisée par les VMs. + Si l'utilisation de la mémoire est le facteur limitatif et que des ressources + processeur sont encore disponibles, cela peut aider à empaqueter davantage + de VMs sur chaque hôte.</para> + + <sect2 id="guestadd-balloon"> + <title>Faire du ballon avec la mémoire</title> + + <para>À partir de la version 3.2, les suppléments invité de VirtualBox + peuvent changer la quantité de mémoire hôte utilisée par une VM pendant + que la machine est en fonction. Vu comme cette fonction est implémentée, + elle s'appelle le "jeu de ballon de mémoire".</para> + + <note> + <para>VirtualBox ne supporte le jeu de ballons avec la mémoire que sur + les hôtes 64 bits et il n'est pas supporté sur les hôtes Mac OS X.</para> + </note> + + <para>En principe, pour changer la quantité de mémoire affectée à une + machine virtuelle, il faut éteindre la machine virtuelle complètement + et modifier ses paramètres. Avec le jeu de ballon de mémoire, la mémoire + affectée à une machine virtuelle peut être donnée à une autre machine + virtuelle sans devoir arrêter la machine.</para> + + <para>Quand on veut faire du ballon avec la mémoire, les suppléments invité + de VirtualBox (qui tournent dans l'invité) affectent de la mémoire physique + du système d'exploitation invité au niveau noyau et il verrouille cette + mémoire dans l'invité. Cela garantit que l'invité n'utilisera plus cette + mémoire : aucune application de l'invité ne peut l'affecter, et le + noyau invité ne l'utilisera pas non plus. VirtualBox peut alors réutiliser + cette mémoire et la donner à une autre machine virtuelle.</para> + + <para>La mémoire rendue disponible par ce jeu de ballon n'est pas disponible + pour être réutilisée par VirtualBox. Elle <emphasis>n'est pas</emphasis> + rendue sous forme de mémoire libre à l'hôte. Jouer au ballon avec la mémoire + à partir d'un invité en fonction n'augmentera pas la taille de la mémoire + libre non affectée de l'hôte. En effet, le jeu de ballon avec la mémoire + est donc un mécanisme de transfert de mémoire entre plusieurs machines virtuelles + pendant leur fonctionnement. Cela peut servir pour démarrer temporairement + une autre machine, ou, dans des environnements plus compliqués, pour une + gestion sophistiquée de la mémoire de nombreuses machines virtuelles en fonction + en parallèle, selon la façon dont la mémoire est utilisée par les invités.</para> + + <para>Pour l'instant, le jeu de ballon avec la mémoire n'est supporté + que via VBoxManage. Utilisez la commande suivante pour agrandir ou réduire + la taille du ballon de mémoire dans une machine virtuelle en fonction où + les suppléments invité sont installés: <screen>VBoxManage controlvm "nom VM" guestmemoryballoon <n></screen>où + <computeroutput>"nom VM"</computeroutput> est le nom ou l'UUID de la machine + virtuelle en question et <computeroutput><n></computeroutput> est + la quantité de mémoire à affecté à partir de l'invité, en mégaoctets. Voir <xref + linkend="vboxmanage-controlvm" /> pour plus d'informations.</para> + + <para>Vous pouvez aussi définir un ballon par défaut qui sera automatiquement + récupéré sur la VM à chaque fois qu'elle démarrera avec la commande + suivante : <screen>VBoxManage modifyvm "nom VM" --guestmemoryballoon <n></screen></para> + + <para>Par défaut, aucun ballon de mémoire n'est affecté. C'est un paramètre + de VM comme les autres paramètres de <computeroutput>modifyvm</computeroutput> + et donc, on ne peut les définir que quand la machine est éteinte ; voir <xref + linkend="vboxmanage-modifyvm" />.</para> + </sect2> + + <sect2 id="guestadd-pagefusion"> + <title>Fusion de page</title> + + <para>Alors que le jeu de ballon avec la mémoire réduit simplement la + quantité de RAM disponible pour une VM, la fusion de page fonctionne différemment : + elle évite les doublons de mémoire entre plusieurs VMs identiques et en + fonction.</para> + + <para>Dans un environnement serveur qui exécute plusieurs VMs identiques + (comme avec des systèmes d'exploitation identiques) sur le même hôte, + beaucoup de pages de mémoire sont identiques. La technologie de fusion + de page de VirtualBox, introduite avec VirtualBox 3.2, est une technique + pour identifier efficacement ces pages de mémoire identiques et les + nouvelle de partage entre plusieurs VMs.<note> + <para>VirtualBox ne supporte la fusion de page que sur des hôtes 64 bits + et il n'est pas supporté sur les hôtes Mac OS X. La fusion de page + ne fonctionne aujourd'hui qu'avec des invités Windows (2000 et + supérieur).</para> + </note></para> + + <para>Plus les VMs se ressemblent sur un hôte donné, plus la fusion de page + peut réduire efficacement la quantité de mémoire hôte utilisée. Il fonctionne + donc mieux si toutes les VMs d'un hôte exécutent des systèmes d'exploitation + identiques (par exemple Windows XP Pack Service 2). Plutôt que d'avoir une + copie complète de chaque système d'exploitation dans chaque VM, la fusion de + page identifie les pages mémoire identiques utilisées par les systèmes + d'exploitation et elle élimine les doublons, partageant la mémoire de l'hôte + entre plusieurs machines ("deduplication"). Si une VM essaie de modifier + une page partagée avec d'autres VMs, une nouvelle page est de nouveau affectée + pour cette VM avec une copie de la page partagée ("copie à l'écriture"). + Tout ceci est entièrement transparent pour la machine virtuelle.</para> + + <para>Il se peut que vous soyez familier de ce genre de transfert de mémire + via d'autres produits d'hypervision qui appellent cette fonction le "partage + de page" ou le "fusion d'une même page". Cependant, la fusion de page est + très différente des autres solutions, dont les approches ont plusieurs + inconvénients :<orderedlist> + <listitem> + <para>Les hyperviseurs traditionnels analysent <emphasis>toute</emphasis> + la mémoire invité et calculent les sommes de contrôle (hachages) pour + chaque page de mémoire individuelle. Puis ils cherchent des endroits + avec des hachages identiques et comparent tout le contenu + de ces pages ; si deux pages donnent le même hachage, il est très + probable que les pages soient identiques par leur contenu. Cela peut, + bien sûr, prendre du temps, surtout si le système n'est pas inactif. + La mémoire supplémentaire ne devient donc disponibles qu'après une + durée importante (cela peut prendre des heures voire des jours !). Pire, + ce genre d'algorithme de partage de page consomme en général beaucoup + de ressources et augmente la consommation par la + virtualisation jusqu'à 20%.</para> + + <para>La fusion de page dans VirtualBox utilise une logique des + suppléments invité de VirtualBox pour identifier rapidement les cellules + mémoire les plus vraisemblablement identiques dans les VMs. Elle peut + faire la plupart des sauvegardes possibles des partages de pages + presqu'immédiatement et avec pratiquement aucune charge.</para> + </listitem> + + <listitem> + <para>La fusion de page a aussi beaucoup moins de chances d'être + perdue avec de la mémoire identique qu'elle éliminera, pour apprendre + seulement quelques secondes plus tard que la mémoire va maintenant + changer, devant effectuer une réaffectation très gourmande et gênant + souvent le service.</para> + </listitem> + </orderedlist></para> + + <para>Pour l'instant, la fusion de page ne peut être contrôlée qu'avec + VBoxManage et pendant qu'une VM est éteinte. Pour activer la fusion de page + pour une VM, utilisez + la commande suivante:<screen>VBoxManage modifyvm "nom VM" --pagefusion on</screen></para> + + <para>Vous pouvez voir l'opération de fusion de page en utilisant des + métriques. + <computeroutput>RAM/VMM/Shared</computeroutput> affiche la quantité totale + de pages fusionnées, tandis que la métrique par VM + <computeroutput>Guest/RAM/Usage/Shared</computeroutput> renverra la quantité + de mémoire fusionnée d'une VM donnée. Merci de vous reporter à <xref + linkend="metrics" /> pour des informations sur la manière de demander des + métriques.</para> + </sect2> + </sect1> +</chapter> diff --git a/doc/manual/fr_FR/user_Installation.xml b/doc/manual/fr_FR/user_Installation.xml new file mode 100644 index 00000000..c8998bf8 --- /dev/null +++ b/doc/manual/fr_FR/user_Installation.xml @@ -0,0 +1,868 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" +"http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd"> +<chapter id="installation"> + <title>Détails sur l'installation</title> + + <para>Comme l'installation de VirtualBox varie selon votre système d'exploitation + hôte, nous fournissons des instructions d'installation dans quatre chapitres + distincts, respectivement pour Windows, Mac OS X, Linux et Solaris.</para> + + <sect1 id="installation_windows"> + <title>Installation sur des hôtes Windows</title> + + <sect2> + <title>Prérequis</title> + + <para>Pour les différentes versions de Windows que nous supportons en tant + que systèmes d'exploitation hôtes, merci de vous reporter au <xref + linkend="hostossupport" />.</para> + + <para>En outre, l'installeur Windows 1.1 ou supérieur doit être présent sur + votre système. Cela devrait être le cas si vous avez installé les mises + à jour récentes de Windows.</para> + </sect2> + + <sect2> + <title>Effectuer l'installation</title> + + <para>L'installation de VirtualBox peut se lancer <itemizedlist> + <listitem> + <para>soit en cliquant deux fois sur son fichier exécutable (contenant + les architectures 32 et 64 bits)</para> + </listitem> + + <listitem> + <para>soit en entrant <screen>VirtualBox.exe -extract</screen></para> + + <para>sur la ligne de commande. Cela va extraire les deux installeurs + dans un répertoire temporaire où vous trouverez ensuite les fichiers + .MSI habituels. Puis vous pouvez faire un + <screen>msiexec /i VirtualBox-<version>-MultiArch_<x86|amd64>.msi</screen> + pour lancer l'installation.</para> + </listitem> + </itemizedlist></para> + + <para>Dans tous les cas, ceci affichera la boîte de dialogue de bienvenue + dans l'installation et vous permet de choisir où installer VirtualBox et + les composants à installer. Outre l'application VirtualBox, les composants + suivants sont disponibles :<glosslist> + <glossentry> + <glossterm>Support USB</glossterm> + + <glossdef> + <para>Ce paquet contient des pilotes spéciaux pour votre hôte Windows + dont a besoin VirtualBox pour supporter pleinement les périphériques + USB dans vos machines virtuelles.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>Réseau</glossterm> + + <glossdef> + <para>Ce paquet contient les pilotes réseaux supplémentaires pour + votre hôte Windows, dont a besoin VirtualBox pour supporter le + réseau bridge (pour que les cartes réseaux de votre VM soient + accessibles depuis d'autres machines de votre réseau physique).</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>Support Python</glossterm> + + <glossdef> + <para>Ce paquet contient le support de scriptage Python pour l'API + de VirtualBox (voir <xref linkend="VirtualBoxAPI" />). Pour qu'ils + fonctionnent, une installation de Python sur Windows opérationnelle + est requise sur le système.<footnote> + <para>Voir, par exemple, <ulink + url="http://www.python.org/download/windows/">http://www.python.org/download/windows/</ulink>.</para> + </footnote></para> + </glossdef> + </glossentry> + </glosslist></para> + + <para>Selon votre configuration de Windows, il se peut que vous voyez des + avertissements de "pilotes non signés" ou équivalent. Merci d sélectionner + "Continuer" sur ces avertissements, sans quoi VirtualBox pourrait ne pas + fonctionner correctement après l'installation.</para> + + <para>L'installeur va créer un groupe "VirtualBox" dans le menu "Démarrer" + de Windows qui vous permet de lancer l'application et d'accéder à sa + documentation.</para> + + <para>Avec des paramètres standards, VirtualBox sera installé pour tous + les utilisateurs du système local. Si ce n'est pas ce que vous voulez, + vous devez appeler l'installeur en l'extrayant d'abord via <screen>VirtualBox.exe -extract</screen> + puis en faisant comme suit : <screen>VirtualBox.exe -msiparams ALLUSERS=2</screen> + ou <screen>msiexec /i VirtualBox-<version>-MultiArch_<x86|amd64>.msi ALLUSERS=2</screen> + sur les fichiers .MSI extraits. Ceci n'installera VirtualBox que pour + l'utilisateur actuel.</para> + + <para>Si vous ne voulez pas installer toutes les fonctionnalités de VirtualBox, + vous pouvez régler le paramètre <computeroutput>ADDLOCAL</computeroutput> + en option pour nommer explicitement les fonctionnalités à installer. Les + fonctionnalités suivantes sont disponibles : <glosslist> + <glossentry> + <glossterm>VBoxApplication</glossterm> + + <glossdef> + <para>Binaires principaux de VirtualBox.<note> + <para>Il ne faut pas que cette fonctionnalité soit absente car + elle contient l'ensemble de fichiers minimum pour que + l'installation de VirtualBox fonctionne.</para> + </note></para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>VBoxUSB</glossterm> + + <glossdef> + <para>Support USB.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>VBoxNetwork</glossterm> + + <glossdef> + <para>Tout le support réseau ; y compris les fonctionnalités + VBoxNetworkFlt et VBoxNetworkAdp (voir ci-dessous).</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>VBoxNetworkFlt</glossterm> + + <glossdef> + <para>Support du réseau bridgé.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>VBoxNetworkAdp</glossterm> + + <glossdef> + <para>Support du réseau Host-only.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>VBoxPython</glossterm> + + <glossdef> + <para>Support Python.</para> + </glossdef> + </glossentry> + </glosslist>Par exemple, pour n'installer que le support USB avec les + binaires principaux, faites un : <screen>VirtualBox.exe -msiparams ADDLOCAL=VBoxApplication,VBoxUSB</screen> + ou un <screen>msiexec /i VirtualBox-<version>-MultiArch_<x86|amd64>.msi ADDLOCAL=VBoxApplication,VBoxUSB</screen></para> + </sect2> + + <sect2> + <title>Désinstallation</title> + + <para>Comme VirtualBox utilise l'installeur standard de Microsoft Windows, + vous pouvez désinstaller VirtualBox en sécurité n'importe quand en choisissant + l'entrée du programme dans le menu "Ajouter/supprimer des programmes" du + panneau de configuration de Windows.</para> + </sect2> + + <sect2> + <title>Installation sans efforts</title> + + <para>Vous pouvez effectuer des installations sans efforts en utilisant + le support MSI standard.</para> + </sect2> + </sect1> + + <sect1> + <title>Installation sur des hôtes Mac OS X</title> + + <sect2> + <title>Effectuer l'installation</title> + + <para>Pour les hôtes Mac OS X, VirtualBox est dans un fichier image de + disque (<computeroutput>dmg</computeroutput>). Effectuez les étapes + suivantes : <orderedlist> + <listitem> + <para>Cliquez deux fois sur ce fichier pour monter son contenu.</para> + </listitem> + + <listitem> + <para>Une fenêtre s'ouvrira, vous disant de cliquer deux fois + sur le fichier de l'installeur + <computeroutput>VirtualBox.mpkg</computeroutput> affiché dans cette + fenêtre.</para> + </listitem> + + <listitem> + <para>Ceci démarrera l'installeur, qui vous permettra de + sélectionner où installer VirtualBox.</para> + </listitem> + </orderedlist></para> + + <para>Après l'installation, vous pouvez voir une icône VirtualBox dans le + dossier "Applications" du Finder.</para> + </sect2> + + <sect2> + <title>Désinstallation</title> + + <para>Pour désinstaller VirtualBox, réouvrez le fichier image de disque (dmg) + et cliquez deux fois sur l'icône Désinstaller dedans.</para> + </sect2> + + <sect2> + <title>Installation non interactive</title> + + <para>Pour effectuer une installation non interactive de VirtualBox, vous + pouvez utiliser la version en ligne de commande de l'installeur.</para> + + <para>Montez le fichier image du disque (dmg) comme décrit dans + l'installation normale. Ouvrez ensuite une session de terminal et exécutez :</para> + + <screen>sudo installer -pkg /Volumes/VirtualBox/VirtualBox.mpkg \ + -target /Volumes/Macintosh\ HD</screen> + </sect2> + </sect1> + + <sect1 id="install-linux-host"> + <title>Installing sur des hôtes Linux</title> + + <sect2> + <title>Prérequis</title> + + <para>Pour les diverses versions de Linux que nous supportons comme systèmes + d'exploitation hôtes, merci de vous reporter au <xref + linkend="hostossupport" />.</para> + + <para>Vous devrez installer les paquets suivants sur votre système Linux + avant de commencer l'installation (certains systèmes feront cela pour + vous automatiquement quand vous installerez VirtualBox) :</para> + + <itemizedlist> + <listitem> + <para>Qt 4.6.2 ou supérieur ;</para> + </listitem> + + <listitem> + <para>SDL 1.2.7 ou supérieur (cette bibliothèque graphique s'appelle + en général <computeroutput>libsdl</computeroutput> ou équivalent).</para> + </listitem> + </itemizedlist> + + <note> + <para>Pour être précis, ces paquets ne sont requis que si voulez lancer + les interfaces graphiques de VirtualBox. En particulier, + <computeroutput>VirtualBox</computeroutput>, le gestionnaire graphique + de VirtualBox, a besoin de Qt et de SDL ; + <computeroutput>VBoxSDL</computeroutput>, notre interface graphique + simplifiée, exige seulement SDL. Inversement, si vous ne voulez que + <computeroutput>VBoxHeadless</computeroutput>, ni Qt ni SDL ne sont + requis.</para> + </note> + </sect2> + + <sect2 id="externalkernelmodules"> + <title>Le module noyau de VirtualBox</title> + + <para>VirtualBox utilise un module spécial du noyau appelé + <computeroutput>vboxdrv</computeroutput> pour effectuer des affectations de + mémoire physique et contrôler le processeur pour exécuter les systèmes + invités. Sans ce module du noyau, vous pouvez utiliser le gestionnaire + de VirtualBox pour configurer des machines virtuelles mais elles ne démarreront + pas. En outre, il existe des modules noyau + <computeroutput>vboxnetflt</computeroutput> et + <computeroutput>vboxnetadp</computeroutput> requis pour les fonctionnalités + réseau plus avancées de VirtualBox.</para> + + <para>Le module noyau de VirtualBox est automatiquement installé sur votre + système quand vous installez VirtualBox. Pour le maintenir avec les futures + mises à jour du noyau, pour les distributions Linux qui le permettent -- + la plupart de celles actuelles -- nous recommandons d'installer + Dynamic Kernel Module Support + (DKMS)<footnote> + <para>Voir <ulink + url="http://en.wikipedia.org/wiki/Dynamic_Kernel_Module_Support">http://en.wikipedia.org/wiki/Dynamic_Kernel_Module_Support</ulink> + pour une introduction.</para> + </footnote>. Cet environnement vous aide à construire et à mettre à jour + les modules du noyau.</para> + + <para>Si DKMS n'est pas déjà installé, exécutez une des procédures suivantes : + <itemizedlist> + <listitem> + <para>Sur un système Ubuntu :</para> + + <screen>sudo apt-get install dkms</screen> + </listitem> + + <listitem> + <para>Sur un système Fedora :<screen>yum install dkms</screen></para> + </listitem> + + <listitem> + <para>Sur un système Mandriva ou Mageia :<screen>urpmi dkms</screen></para> + </listitem> + </itemizedlist></para> + + <para>Si DKMS est disponible et installé, le module du noyau VirtualBox + devrait toujours fonctionner automatiquement et il sera automatiquement + reconstruit si vous mettez à jour le noyau de votre hôte.</para> + + <para>Sinon, il n'y a que deux situations où vous devrez vous préoccuper + du module noyau :<orderedlist> + <listitem> + <para>L'installation échoue dès le départ. Cela signifie probablement + que votre système Linux n'est pas prêt à construire des modules noyau + externes.</para> + + <para>La plupart des distributions Linux peuvent être paramétrées + simplement en installant les bons paquets - en principe il s'agit + du compilateur GNU (GCC), GNU Make (make) et des paquets contenant + les fichiers d'en-tête de votre noyau - et en s'assurant que toutes + les mises à jour du système sont installées et que le système + exécute le noyau le plus récent proposé par la distribution. + <emphasis>Les numéros de version des paquets des fichiers d'en-tête + doivent être les mêmes que celui du noyau que vous utilisez.</emphasis></para> + + <itemizedlist> + <listitem> + <para>Avec les versions Debian et Ubuntu, vous devez installer + la bonne version de + <computeroutput>linux-headers</computeroutput> et s'il existe, + le paquet <computeroutput>linux-kbuild</computeroutput>. Les + versions actuelles d'Ubuntu devraient avoir installé les bons + paquets par défaut.</para> + </listitem> + + <listitem> + <para>Dans les versions de Debian et d'Ubuntu encore plus anciennes, + vous devez installer la bonne version du paquet + <computeroutput>kernel-headers</computeroutput>.</para> + </listitem> + + <listitem> + <para>Sur les systèmes Fedora et Redhat, le paquet est + <computeroutput>kernel-devel</computeroutput>.</para> + </listitem> + + <listitem> + <para>Sur SUSE et openSUSE Linux, vous devez installer les bonnes + versions des paquets <computeroutput>kernel-source</computeroutput> + et <computeroutput>kernel-syms</computeroutput>.</para> + </listitem> + + <listitem> + <para>Si vous avez construit votre propre noyau, vous devrez + vous assurer d'avoir installé toutes les en-têtes requises et + d'autres fichiers au bon endroit pour construire les modules externes. + Les détails sur la manière de faire cela dépendent de la façon + dont vous avez construit votre noyau et si vous n'êtes pas sûr, + vous devriez consulter la documentation que vous avez suivie pour + le construire.</para> + </listitem> + </itemizedlist> + </listitem> + + <listitem> + <para>Le noyau de votre hôte Linux a été mis à jour et DKMS n'est + pas installé. Dans ce cas, le module du noyau devra être + réinstallé en exécutant (en tant qu'administrateur) :</para> + + <screen>/etc/init.d/vboxdrv setup</screen> + </listitem> + </orderedlist></para> + </sect2> + + <sect2> + <title>Effectuer l'installation</title> + + <para>VirtualBox est disponible de base dans un certain nombre de formats + de paquet pour diverses distributions Linux classiques (voir <xref linkend="hostossupport" /> + pour les détails). En outre, un installeur générique alternatif + (.run) devrait fonctionner sur la plupart des distributions Linux.</para> + + <sect3> + <title>Installer VirtualBox à partir d'un paquet Debian/Ubuntu</title> + + <para>Tout d'abord, téléchargez le paquet adapté à votre distribution. + Les exemples suivants supposent que vous installez sur un système + Ubuntu Raring 32 bits. Utilisez <computeroutput>dpkg</computeroutput> + pour installer le paquet Debian :</para> + + <screen>sudo dpkg -i VirtualBox-4.3_@VBOX_VERSION_STRING@_Ubuntu_raring_i386.deb</screen> + + <para>On vous demandera d'accepter la licence d'utilisation Personelle + et d'évaluation de VirtualBox. Sauf si vous répondez "oui" l'installation + sera annulée.</para> + + <para>L'installeur cherchera aussi un module noyau VirtualBox adapté à + votre noyau. Le paquet comprend des modules précompilés pour la plupart + des configurations de noyau classiques. Si aucun module noyau adapté + n'est trouvé, le script d'installation essaie de construire un module + lui-même. Si le processus de construction ne réussit pas, on vous affichera + un avertissement et le paquet ne sera pas configuré. Merci de jeter un + œil sur <computeroutput>/var/log/vbox-install.log</computeroutput> + pour voir pourquoi la compilation a échoué. Il se peut que vous deviez installer + les en-têtes de Linux appropriées (voir <xref + linkend="externalkernelmodules" />). Après avoir corrigé les problèmes, + faites <screen>sudo /etc/init.d/vboxdrv setup</screen>Ceci + démarrera un nouvel essai de construction du module.</para> + + <para>Si un module de noyau convenable a été trouvé dans le paquet, ou + si le module a été construit avec succès, le script d'installation + essaiera de charger ce module. Si ceci échoue, merci de voir <xref + linkend="ts_linux-kernelmodule-fails-to-load" /> pour plus + d'informations.</para> + + <para>Une fois que VirtualBox s'est installé et configuré avec succès, + vous pouvez le démarrer en sélectionnant "VirtualBox" dans votre menu + démarrer ou en ligne de commande (voir <xref linkend="startingvboxonlinux" />).</para> + </sect3> + + <sect3> + <title>Utiliser l'installeur alternatif (VirtualBox.run)</title> + + <para>L'installeur alternatif effectue les étapes suivantes :</para> + + <itemizedlist> + <listitem> + <para>Il déballe les fichiers de l'application dans le répertoire + cible, <screen>/opt/VirtualBox/</screen> qu'on ne peut pas modifier.</para> + </listitem> + + <listitem> + <para>Il construit les modules noyau de VirtualBox + (<computeroutput>vboxdrv</computeroutput>, + <computeroutput>vboxnetflt</computeroutput> et + <computeroutput>vboxnetadp</computeroutput>) et il les installe.</para> + </listitem> + + <listitem> + <para>Il crée + <computeroutput>/etc/init.d/vboxdrv</computeroutput>, un script + d'installation pour démarrer le module noyau de VirtualBox.</para> + </listitem> + + <listitem> + <para>Il crée un nouveau groupe système appelé + <computeroutput>vboxusers</computeroutput>.</para> + </listitem> + + <listitem> + <para>Il crée des liens symboliques + <computeroutput>/usr/bin</computeroutput> vers un script shell + (<computeroutput>/opt/VirtualBox/VBox</computeroutput>) qui fait + des vérifications de propreté et qui répartit les exécutables finaux, + <computeroutput>VirtualBox</computeroutput>, + <computeroutput>VBoxSDL</computeroutput>, + <computeroutput>VBoxVRDP</computeroutput>, + <computeroutput>VBoxHeadless</computeroutput> et + <computeroutput>VBoxManage</computeroutput></para> + </listitem> + + <listitem> + <para>Il crée + <computeroutput>/etc/udev/rules.d/60-vboxdrv.rules</computeroutput>, + un fichier de description pour udev, s'il est présent, pour rendre les + périphériques USB accessibles par tous les utilisateurs du groupe + <computeroutput>vboxusers</computeroutput>.</para> + </listitem> + + <listitem> + <para>Il écrit le répertoire d'installation + <computeroutput>/etc/vbox/vbox.cfg</computeroutput>.</para> + </listitem> + </itemizedlist> + + <para>L'installeur doit être exécuté en tant qu'administrateur, soit avec + <computeroutput>install</computeroutput> soit avec + <computeroutput>uninstall</computeroutput>, en premier + paramètre.</para> + + <screen>sudo ./VirtualBox.run install</screen> + + <para>Ou si vous n'avez pas de commande "sudo" disponible, lancez ceci plutôt + en tant qu'administrateur :<screen>./VirtualBox.run install</screen></para> + + <para>Après cela, vous devez mettre tous les utilisateurs qui devraient + pouvoir accéder à des périphériques USB depuis des invités VirtualBox + dans le groupe <computeroutput>vboxusers</computeroutput>, soit + via les outils de gestion graphiques, soit en lançant la commande + suivante en tant qu'administrateur :</para> + + <screen>sudo usermod -a -G vboxusers username</screen> + + <para><note> + <para>La commande <computeroutput>usermod</computeroutput> de + certaines anciennes distributions Linux ne supporte pas l'option + <computeroutput>-a</computeroutput> (qui ajoute l'utilisateur au groupe + donné sans affecter l'appartenance aux autres groupes). Dans ce cas, cherchez + les groupes actuels du user avec la commande + <computeroutput>groups</computeroutput> et ajoutez tous ces + groupes dans une liste séparée par des virgules à la ligne de + commande dans l'option + <computeroutput>-G</computeroutput>, comme ceci : + <computeroutput>usermod -G group1,group2,vboxusers + username</computeroutput>.</para> + </note></para> + </sect3> + + <sect3> + <title>Effectuer une installation manuelle</title> + + <para>Si, pour une raison quelconque, vous ne pouvez pas utiliser l'installeur + en script shell décrit précédemment, vous pouvez aussi effectuer une + installation manuelle. Appelez l'installeur comme ceci :</para> + + <screen>./VirtualBox.run --keep --noexec</screen> + + <para>Ceci déballera tous les fichiers nécessaires à l'installation dans le + répertoire <computeroutput>install</computeroutput> sous le répertoire + actuel. Les fichiers de l'application VirtualBox sont contenus dans + <computeroutput>VirtualBox.tar.bz2</computeroutput> que vous pouvez + déballer dans n'importe quel répertoire de votre système. Par exemple :</para> + + <screen>sudo mkdir /opt/VirtualBox +sudo tar jxf ./install/VirtualBox.tar.bz2 -C /opt/VirtualBox</screen> + + <para>ou en tant qu'administrateur :<screen>mkdir /opt/VirtualBox +tar jxf ./install/VirtualBox.tar.bz2 -C /opt/VirtualBox</screen></para> + + <para>Les sources du module noyau de VirtualBox sont fournies dans le + répertoire <computeroutput>src</computeroutput>. Pour construire le + module, allez dans le répertoire et lancez</para> + + <screen>make</screen> + + <para>Si tout se construit correctement, lancez la commande suivante pour + installer le module dans le bon répertoire de modules :</para> + + <screen>sudo make install</screen> + + <para>Si vous m'avez pas sudo, passez en compte administrateur et lancez + <screen>make install</screen></para> + + <para>Le module de noyau VirtualBox a besoin d'un nœud de périphérique + pour fonctionner. La commande make ci-dessus vous dira comment créer + le nœud de périphérique selon votre système Linux. La procédure + est légèrement différente pour une installation Linux classique avec le + répertoire <computeroutput>/dev</computeroutput>, un système avec + <computeroutput>devfs</computeroutput>, maintenant obsolète, et un + système Linux moderne avec <computeroutput>udev</computeroutput>.</para> + + <para>Sur certaines distributions Linux, vous pourriez rencontrer des + difficultés pour construire le module. Vous devrez analyser les messages + d'erreur du système de construction pour trouver la cause des problèmes. + En général, assurez-vous que les sources du noyau Linux actuel sont + utilisées pour le processus de construction.</para> + + <para>Remarquez que le nœud de périphérique + <computeroutput>/dev/vboxdrv</computeroutput> du module noyau doit appartenir + à root:root et n'être autorisé en lecture/écriture que pour l'utilisateur.</para> + + <para>Ensuite, vous devrez installer le script d'initialisation du système + pour le module du noyau :<screen>cp /opt/VirtualBox/vboxdrv.sh /etc/init.d/vboxdrv</screen>(en supposant que + vous avez installé VirtualBox dans le répertoire + <computeroutput>/opt/VirtualBox</computeroutput>) et activé le script + d'initialisation en utilisant la méthode adaptée à votre distribution. + Vous devriez créer un fichier de configuration pour VirtualBox :<screen>mkdir /etc/vbox +echo INSTALL_DIR=/opt/VirtualBox > /etc/vbox/vbox.cfg</screen>et, par commodité, +créer les liens symboliques suivants :</para> + + <screen>ln -sf /opt/VirtualBox/VBox.sh /usr/bin/VirtualBox +ln -sf /opt/VirtualBox/VBox.sh /usr/bin/VBoxManage +ln -sf /opt/VirtualBox/VBox.sh /usr/bin/VBoxHeadless +ln -sf /opt/VirtualBox/VBox.sh /usr/bin/VBoxSDL</screen> + </sect3> + + <sect3> + <title>Mettre à jour et désinstaller VirtualBox</title> + + <para>Avant de mettre à jour ou de désinstaller VirtualBox, vous devez + fermer toutes les machines virtuelles actuellement en fonction et quitter + les applications VirtualBox ou VBoxSVC. Pour mettre à jour VirtualBox, + lancez simplement l'installeur de la version à jour. Pour désinstaller + VirtualBox, appelez l'installeur comme ceci : <screen>sudo ./VirtualBox.run uninstall</screen> + ou, en tant qu'administrateur<screen>./VirtualBox.run uninstall</screen>. + À partir de la version 2.2.2, vous pouvez désinstaller le paquet .run en + appelant <screen>/opt/VirtualBox/uninstall.sh</screen>Pour désinstaller + VirtualBox à la main, inversez simplement les étapes de l'installation + manuelle.</para> + </sect3> + + <sect3> + <title>Installation automatique des paquets Debian</title> + + <para>Les paquets Debian solliciteront une intervention de l'utilisateur + lors de la première installation. On utilise le système debconf pour + effectuer cette tâche. Pour empêcher toute intervention de l'utilisateur + pendant l'installation, vous pouvez définir des valeurs par défaut. Un + fichier <computeroutput>vboxconf</computeroutput> peut contenir les + paramètres de debconf suivants : <screen>virtualbox virtualbox/module-compilation-allowed boolean true +virtualbox virtualbox/delete-old-modules boolean true</screen>La première ligne + + permet la compilation du module noyau vboxdrv si aucun module n'a été trouvé + pour le noyau actuel. La deuxième ligne permet au paquet d'effacer + les anciens modules vboxdrv compilés par des installations précédentes.</para> + + <para>Ces paramètres par défaut peuvent être appliqués avec + <screen>debconf-set-selections vboxconf</screen> avant l'installation du + paquet Debian VirtualBox.</para> + + <para>De plus, il existe des options de configuration classiques que vous + pouvez définir avant l'installation, décrites au <xref + linkend="linux_install_opts" />.</para> + </sect3> + + <sect3> + <title>Installation automatique des paquets .rpm</title> + + <para>Le format .rpm n'offre pas de système de configuration comparable + au système debconf. Voir <xref + linkend="linux_install_opts" /> pour savoir comment définir cartaines + options d'installation classiques fournies par VirtualBox.</para> + </sect3> + + <sect3 id="linux_install_opts"> + <title>Options d'installation automatique</title> + + <para>Pour configurer le processus d'installation de nos paquets .deb et + .rpm, vous pouvez créer un fichier de réponses appelé + <computeroutput>/etc/default/virtualbox</computeroutput>. La génération + automatique de la règle udev peut être empêchée par le paramètre suivant : + <screen>INSTALL_NO_UDEV=1</screen> La création du groupe vboxusers peut + être empêchée avec <screen>INSTALL_NO_GROUP=1</screen> + Si la ligne <screen>INSTALL_NO_VBOXDRV=1</screen> est spécifiée, l'installeur + du paquet n'essaiera pas de construire le module noyau + <computeroutput>vboxdrv</computeroutput> si aucun module adapté au noyau + actuel n'a été trouvé.</para> + </sect3> + </sect2> + + <sect2> + <title>Le groupe vboxusers</title> + + <para>Les installeurs pour Linux créent le groupe d'utilisateurs système + <computeroutput>vboxusers</computeroutput> pendant l'installation. Tous les + utilisateurs du szstème qui vont utiliser les périphériques USB depuis des + invités VirtualBox doivent être membres de ce groupe. Un utilisateur peut + devenir membre du groupe + <computeroutput>vboxusers</computeroutput> via l'outil graphique de gestion + des utilisateurs/groupes ou en ligne de commande avec</para> + + <screen>sudo usermod -a -G vboxusers nomutilisateur</screen> + + </sect2> + <sect2 id="startingvboxonlinux"> + <title>Démarrer VirtualBox sur Linux</title> + + <para>La façon la plus simple de démarrer un programme VirtualBox est de + lancer le programme de votre choix (<computeroutput>VirtualBox</computeroutput>, + <computeroutput>VBoxManage</computeroutput>, + <computeroutput>VBoxSDL</computeroutput> ou + <computeroutput>VBoxHeadless</computeroutput>) à partir d'un terminal. Ce + sont des liens symboliques vers <computeroutput>VBox.sh</computeroutput> + qui démarrent pour vous le programme nécessaire.</para> + + <para>Les instructions détaillées suivantes ne devraient vous intéresser que + si vous souhaitez exécuter VirtualBox sans l'installer préalablement. Vous + devriez commencer par compiler le module noyau + <computeroutput>vboxdrv</computeroutput> (voir ci-d:ssus) et l'insérer dans + le noyau Linux. VirtualBox consiste en un démon de service (<computeroutput>VBoxSVC</computeroutput>) + et plusieurs applications. Le démon est démarré automatiquement si nécessaire. + Toutes les applications VirtualBox communiqueront avec le démon par les + sockets du démon local d'Unix. Il peut y avoir plusieurs + instances de démon sous différents comptes utilisateurs et les applications + peuvent ne communiquer qu'avec le démon en fonction sous le compte utilisateur + en tant qu'application. La socket de domaine locale réside dans un + sous-répertoire du répertoire des fichiers temporaires de votre ystème, + appelé <computeroutput>.vbox-<username>-ipc</computeroutput>. En cas + de problèmes de communication ou de problèmes au démarrage du serveur, vous + pouvez essayer de supprimer ce répertoire.</para> + + <para>Toutes les applications de VirtualBox + (<computeroutput>VirtualBox</computeroutput>, + <computeroutput>VBoxSDL</computeroutput>, + <computeroutput>VBoxManage</computeroutput> et + <computeroutput>VBoxHeadless</computeroutput>) exigent que le répertoire + de VirtualBox soit dans le chemin de la bibliothèque :</para> + + <screen>LD_LIBRARY_PATH=. ./VBoxManage showvminfo "Windows XP"</screen> + </sect2> + </sect1> + + <sect1 id="install-solaris-host"> + <title>Installation sur les hôtes Solaris</title> + + <para>Pour les versions spécifiques de Solaris que nous supportons comme + systèmes d'exploitation hôtes, merci de vous reporter au <xref + linkend="hostossupport" />.</para> + + <para>Si vous avez déjà une instance installée de VirtualBox sur votre hôte + Solaris, merci de la désinstaller avant d'installer une nouvelle instance. + Reportez-vous à <xref linkend="uninstall-solaris-host" /> pour les + instructions de désinstallation.</para> + + <sect2> + <title>Effectuer l'installation</title> + + <para>VirtualBox est disponible en paquet Solaris standard. Téléchargez + le paquet SunOS VirtualBox qui comprend les versions 32 et 64 bits de + VirtualBox. <emphasis>L'installation dojt se faire en tant qu'administrateur + et depuis l'espace global</emphasis> car l'installeur de VirtualBox charge + des pilotes noyau qui ne peuvent pas l'être depuis des espaces non globaux. + Pour vérifier là où vous êtes actuellement, lancez la commande + <computeroutput>zonename</computeroutput>. Exécutez les + commandes suivantes :</para> + + <screen>gunzip -cd VirtualBox-@VBOX_VERSION_STRING@-SunOS.tar.gz | tar xvf -</screen> + + <para>À partir de VirtualBox 3.1, le paquet noyau de VirtualBox n'est plus + distinct et il a été intégré au paquet principal. + Installez le paquet VirtualBox en utilisant :</para> + + <screen>pkgadd -d VirtualBox-@VBOX_VERSION_STRING@-SunOS.pkg</screen> + + <note> + <para>Si vous utilisez les Espaces Solaris, pour n'installer VirtualBox + que dans celui actuel et pas dans une autre, utilisez + <computeroutput>pkgadd -G</computeroutput>. Pour plus d'informations, + reportez-vous au manuel de <computeroutput>pkgadd</computeroutput> ; + voir aussi <xref linkend="solaris-zones" />.</para> + </note> + + <para>L'installeur vous demandera alors d'entrer le paquet que vous voulez + installer. Choisissez "1" ou "tous" et poursuivez. Ensuite, l'installeur + vous demandera si vous voulez autoriser l'exécution du script postinstall. + Choisissez "y" et poursuivez, car il est fondamental d'exécuter ce script + qui installe le module noyau de VirtualBox. Suite à cette confirmation, + l'installeur installra VirtualBox et exécutera le script de paramétrage + postinstall.</para> + + <para>Une fois que le script postinstall a été exécuté, votre installation + est maintenant terminée. Vous pouvez maintenant effacer en toute sécurité + de votre système le paquet décompressé et les fichiers + <computeroutput>autoresponse</computeroutput>. + VirtualBox devrait être installé dans + <computeroutput>/opt/VirtualBox</computeroutput>.</para> + </sect2> + + <sect2> + <title>Le groupe vboxuser</title> + + <para>À partir de VirtualBox 4.1, l'installeur crée un groupe d'utilisateurs + système <computeroutput>vboxuser</computeroutput> pendant l'installation + sur les hôtes Solaris qui supportent les fonctionnalités USB exigées par + VirtualBox. Tous les utilisateurs système qui vont utiliser des périphériques + USB à partir des invités dans VirtualBox doivent faire partie de ce groupe. + Un utilisateur peut devenir membre de ce + groupe avec les outils de gestion graphiques des utilisateurs/groupes ou, + en ligne de commande, en exécutant en tant qu'administrateur :</para> + + <screen>usermod -G vboxuser username</screen> + + <para>Remarquez que l'ajout d'un utilisateur actif à ce groupe exigera que + l'utilisateur se déconnecte et se reconnecte. Vous devriez faire cela à la + main après avoir installé avec succès le paquet.</para> + </sect2> + + <sect2> + <title>Démarrer VirtualBox sur Solaris</title> + + <para>La façon la plus simple de démarrer un programme VirtualBox est de + lancer le programme de votre choix (<computeroutput>VirtualBox</computeroutput>, + <computeroutput>VBoxManage</computeroutput>, + <computeroutput>VBoxSDL</computeroutput> ou + <computeroutput>VBoxHeadless</computeroutput>) à partir d'un terminal. Ce + sont des liens symboliques vers <computeroutput>VBox.sh</computeroutput> + qui démarre pour vous le programme requis.</para> + + <para>Vous pouvez aussi appeler directement les programmes souhaités depuis + <computeroutput>/opt/VirtualBox</computeroutput>. L'utilisation des liens + fournis est plus facile car vous n'êtes pas obligé de taper le chemin complet.</para> + + <para>Vous pouvez configurer certains éléments de l'interface graphique + <computeroutput>VirtualBox</computeroutput> en Qt tels que la police et + les couleurs en exécutant <computeroutput>VBoxQtconfig</computeroutput> + à partir du terminal.</para> + </sect2> + + <sect2 id="uninstall-solaris-host"> + <title>Désinstallation</title> + + <para>La désinstallation de VirtualBox sur Solaris qécessite les droits + d'administrateur. Pour effectuer la désinstallation, démarrez une session + administrateur en terminal et exécutez :</para> + + <screen>pkgrm SUNWvbox</screen> + + <para>Après confirmation, ceci supprimera VirtualBox de votre système.</para> + + <para>Si vous désinstallez VirtualBox version 3.0 ou inférieur, vous devez + supprimer le paquet d'interface noyau VirtualBox, exécutez :</para> + + <para><screen>pkgrm SUNWvboxkern</screen></para> + </sect2> + + <sect2> + <title>Installation sans efforts</title> + + <para>Pour effectuer une installation non interactive de VirtualBox, + nous avons créé un fichier de réponses appelé + <computeroutput>autoresponse</computeroutput> qu'utilisera l'installeur pour + répondre à ses questions plutôt que de vous les poser.</para> + + <para>Extrayez le paquet tar.gz comme décrit dans l'installation normale. + Puis ouvrez une session administrateur en terminal et exécutez :</para> + + <screen>pkgadd -d VirtualBox-@VBOX_VERSION_STRING@-SunOS-x86 -n -a autoresponse SUNWvbox</screen> + + <para>Pour effectuer une désinstallation non interactive, ouvrez une session + administrateur en terminal et exécutez :</para> + + <screen>pkgrm -n -a /opt/VirtualBox/autoresponse SUNWvbox</screen> + </sect2> + + <sect2 id="solaris-zones"> + <title>Configurer un espace pour exécuter VirtualBox</title> + + <para>En supposant que VirtualBox a déjà été installé dans votre espace, + vous devez donner au nœud de périphérique de VirtualBox un accès à la + zone. Ceci se fait en effectuant les étapes suivantes. Démarrez une + session administrateur en terminal et exécutez :</para> + + <screen>zonecfg -z vboxzone</screen> + + <para>Remplacez "vboxzone" par le nom de la zone où vous souhaitez lancer + VirtualBox.</para> + + <para>Dans l'invite <computeroutput>zonecfg</computeroutput>, ajoutez la + ressource <computeroutput>device</computeroutput> et les propriétés + <computeroutput>match</computeroutput> à l'espace. Voici comment on peut + faire :</para> + + <screen>zonecfg:vboxzone>add device +zonecfg:vboxzone:device>set match=/dev/vboxdrv +zonecfg:vboxzone:device>end +zonecfg:vboxzone>add device +zonecfg:vboxzone:device>set match=/dev/vboxdrvu +zonecfg:vboxzone:device>end +zonecfg:vboxzone>verify +zonecfg:vboxzone>exit</screen> + + <para>Si vous exécutez VirtualBox 2.2.0 ou supérieur sur des hôtes Solaris + 11 ou supérieur, vous pouvez aussi ajouter un périphérique pour + <computeroutput>/dev/vboxusbmon</computeroutput>, identique à ce qui est + indiqué ci-dessus. Cela ne s'applique pas aux hôtes Solaris 10 à cause de + l'absence du support USB.</para> + + <para>Ensuite, redémarrez l'espace en utilisant + <computeroutput>zoneadm</computeroutput> et vous devriez pouvoir lancer + VirtualBox depuis l'espace configuré.</para> + </sect2> + </sect1> +</chapter> diff --git a/doc/manual/fr_FR/user_Introduction.xml b/doc/manual/fr_FR/user_Introduction.xml new file mode 100644 index 00000000..285dc040 --- /dev/null +++ b/doc/manual/fr_FR/user_Introduction.xml @@ -0,0 +1,1906 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" +"http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd"> +<chapter id="Introduction"> + <title>Premiers pas</title> + + <para>Bienvenue à @VBOX_PRODUCT@!</para> + + <para>VirtualBox est une application de virtualisation de plateformes croisées. + Qu'est-ce que cela veut dire ? D'une part, il s'installe sur vos ordinateurs + ordinateurs existant basés sur Intel ou AMD, qu'ils soient sous les systèmes + d'exploitation Windows, Mac, Linux ou Solaris. D'autre part, il augmente la + capacité de votre ordinateur existant pour qu'il puisse lancer plusieurs + systèmes d'exploitation en même temps (dans plusieurs machines virtuelles). + Donc, vous pouvez par exemple lancer Windows et Linux sur votre Mac, + lancer Windows Server 2008 sur votre serveur Linux, lancer Linux sur votre + PC Windows et ainsi de suite pour toutes vos applications. Vous pouvez + installer et lancer autant de machines virtuaelles que vous voulez -- la seule + limite pratique étant votre espace disque et la mémoire.</para> + + <para>VirtualBox est résolument simple bien que très puissant. Il peut se lancer + partout, depuis de petits systèmes embarqués jusqu'aux machines de bureau en + passant par des déploiements en datacenter ou même des environnements en nuages.</para> + + <para>L'impression d'écran suivante vous montre la manière dont VirtualBox lance + Windows 7 dans la fenêtre d'une machine virtuelle en étant installé sur un Mac :</para> + + <para><mediaobject> + <imageobject> + <imagedata align="center" fileref="images/vm-vista-running.png" + width="14cm" /> + </imageobject> + </mediaobject></para> + + <para>Dans ce manuel de l'utilisateur, nous allons simplement commencer par une + introduction rapide à la virtualisation et sur la façon de lancer votre première + machine virtuelle avec l'interface graphique de VirtualBox, facile à utiliser. + Les chapitres suivants entreront beaucoup plus dans le détail en traitant + d'outils et de fonctionnalités plus puissants, mais heureusement, il n'est pas + nécessaire de lire tout le manuel de l'utilisateur avant de pouvoir utiliser + VirtualBox.</para> + + <para>Vous pouvez trouver un résumé des possibilités de VirtualBox au <xref + linkend="features-overview" />. Pour ceux qui utilisent déjà VirtualBox et qui + voudraient seulement voir les nouveautés de cette version, une liste détaillée + existe au <xref + linkend="ChangeLog" />.</para> + + <sect1> + <title>À quoi sert la virtualisation ?</title> + + <para>Les techniques et les fonctionnalités offertes par VirtualBox servent dans + plusieurs scenarii :</para> + + <itemizedlist> + <listitem> + <para><emphasis role="bold">Lancer plusieurs systèmes d'exploitation en + même temps.</emphasis> VirtualBox vous permet d'exécuter plus d'un + système d'exploitation en même temps. De cette façon, vous pouvez + lancer des logiciels écrits pour un système d'exploitation dans un autre + (par exemple un logiciel Windows sur Linux ou Mac) sans devoir + redémarrer pour l'utiliser. Comme vous pouvez + configurer les types de matériels "virtuels" connectés à chaque système + d'exploitation, vous pouvez installer un vieux système d'exploitation tel que + DOS ou OS/2 même si le matériel de votre machine physique n'est plus + supporté par ce système d'exploitation.</para> + </listitem> + + <listitem> + <para><emphasis role="bold">Installation plus facile de logiciels.</emphasis> + Les éditeurs de logiciels peuvent utiliser des machines virtuelles pour + y mettre des configurations de logiciels. Par exemple, installation d'une + solution complète de serveur de messagerie sur une vraie machine peut + être une tâche très fastidieuse. Avec VirtualBox, vous pouvez emballer + une configuration aussi complexe (appelé alors souvent un environnement + applicatif) dans une machine virtuelle. L'installation et l'exécution + d'un serveur de messagerie devient aussi facile que d'importer un + environnement applicatif dans VirtualBox.</para> + </listitem> + + <listitem> + <para><emphasis role="bold">Tester et réparer en cas d'accident.</emphasis> + Une fois installés, on peut considérer une machine virtuelle et ses + disques durs virtuels comme un "conteneur" qu'on peut, au choix, geler, + réveiller, copier, sauvegarder et transporter entre hôtes.</para> + + <para>Au-delà de cela, en utilisant une autre fonctionnalité de VirtualBox + appelé les "instantanés", vous pouvez sauvegarder un état en particulier + d'une machine virtuelle et revenir à cet état si nécessaire. De cette + manière, vous pouvez librement essayer un environnement informatique. Si + quelque chose ne va pas (par exemple, si un logiciel ne se comporte pas + bien après l'installation ou si un invité a un virus), on peut facilement + revenir à un instantané récent et éviter de sauvegarder et de + restaurer fréquemment.</para> + + <para>On peut créer autant d'instantanés que vous voulez, ce qui permet + de voyager dans le temps des machines virtuelles en arrière et en avant. + Vous pouvez effacer des instantanés alors qu'une machine virtuelle est + en fonction pour gagner de l'espace disque.</para> + </listitem> + + <listitem> + <para><emphasis role="bold">Consolider une infrastructure.</emphasis> + La virtualisation peut réduire significativement les coûts en matériel + et électricité. La plupart du temps, les ordinateurs actuels n'utilisent + qu'une partie de leur puissance potentielle et tournent avec une faible + charge système moyenne. On gaspille donc beaucoup de ressources + matérielles et énergétiques. Au lieu de lancer autant d'ordinateurs physiques, + qui ne sont que partiellement utilisés, on peut emballer de nombreuses + machines virtuelles sur quelques hôtes puissants et équilibrer les + charges entre elles.</para> + </listitem> + </itemizedlist> + </sect1> + + <sect1 id="virtintro"> + <title>Un peu de terminologie</title> + + <para>Quand on parle de virtualisation (mais aussi pour comprendre les + chapitres suivants de cette documentation), acquérir un peu de terminologie + fondamentale aide, en particulier les termes suivants :</para> + + <glosslist> + <glossentry> + <glossterm>Système d'exploitation hôte (OS hôte).</glossterm> + + <glossdef> + <para>C'est le système d'exploitation de l'ordinateur physique sur + lequel VirtualBox a été installé. Il existe des versions de VirtualBox + pour des hôtes Windows, Mac OS X, Linux et Solaris ; pour des + détails, merci de voir le + <xref linkend="hostossupport" />.</para> + + <para>La plupart du temps, ce manuel de l'utilisateur traite de toutes + les versions de VirtualBox ensemble. Il peut y avoir des différences + entre les plateformes, nous les soulignerons là où il faut.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>Système d'exploitation invité (OS invité).</glossterm> + + <glossdef> + <para>C'est le système d'exploitation en fonction dans la machine + virtuelle. En théorie, VirtualBox peut lancer tous les systèmes + d'exploitation x86 (DOS, Windows, OS/2, FreeBSD, OpenBSD), mais + pour s'approcher le plus possible de la performance d'origine du code + invité sur votre machine, nous avons dû faire beaucoup d'optimisations + qui sont spécifiques à certains systèmes d'exploitation. Donc si votre + système d'exploitation favori + <emphasis>peut</emphasis> être un invité, nous en supportons et optimisons + officiellement quelques-uns sélectionnés (cependant, cela inclut ceux + les plus courants).</para> + + <para>Voir le <xref linkend="guestossupport" /> pour des détails.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>Machine virtuelle (VM).</glossterm> + + <glossdef> + <para>C'est l'environnement spécial créé par VirtualBox pour votre + système d'exploitation invité qui s'exécute. Autrement dit, vous + lancer votre système d'exploitation invité "dans" une VM. Normalement, + une VM apparaîtra sur le bureau de votre ordinateur comme une fenêtre, + mais elle peut être affichée en mode plein écran, ou à distance sur un + autre ordinateur, selon les interfaces de VirtualBox que vous utilisez.</para> + + <para>De manière plus abstraite, en interne, VirtualBox conçoit une VM + comme un ensemble de paramètres qui déterminent son comportement. + Parmi eux, on a les paramètres matériels (combien de mémoire devrait + avoir la VM, quels disques durs devrait virtualiser VirtualBox via + quels fichiers conteneurs, quels CDs, lesquels sont montés, etc.) + ainsi que des informations d'état (si la machine est en fonction, + sauvegardée, ses instantanés, etc.). Ces paramètres apparaissent dans + la fenêtre du gestionnaire de VirtualBox ainsi que par le programme + en ligne de commande + <computeroutput>VBoxManage</computeroutput> ; + voir le <xref linkend="vboxmanage" />. Autrement dit, une VM est + aussi ce que vous pouvez voir dans la boîte de dialogue de ses paramètres.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>Suppléments Invité.</glossterm> + + <glossdef> + <para>Ceci renvoie aux paquets logiciels spéciaux qui sont inclus + avec VirtualBox mais conçus pour être installés + <emphasis>à l'intérieur</emphasis> d'une VM pour améliorer les + performances de l'OS invité et pour ajouter des fonctionnalités + supplémentaires. C'est décrit en détails au <xref + linkend="guestadditions" />.</para> + </glossdef> + </glossentry> + </glosslist> + </sect1> + + <sect1 id="features-overview"> + <title>Aperçu des fonctionnalités</title> + + <para>Voici un bref résumé des principales fonctionnalités de VirtualBox :</para> + + <itemizedlist> + <listitem> + <para><emphasis role="bold">Portabilité.</emphasis> VirtualBox se + lance sur un grand nombre de systèmes d'exploitation hôtes 32 et 64 bits + (de nouveau, voir + <xref linkend="hostossupport" /> pour les détails).</para> + + <para>VirtualBox est ce qu'on appelle un hyperviseur "hébergé" + (parfois désigné comme un hyperviseur de "type 2"). Alors qu'un hyperviseur + "bare-metal" ou de "type 1" se lancerait directement sur le matériel, + VirtualBox exige l'installation d'un système d'exploitation. Il peut alors + lancer toutes les applications sur cet hôte.</para> + + <para>Dans une très large mesure, VirtualBox est fonctionellement + identique sur toutes les plateformes hôtes et on peut utiliser les mêmes + formats de fichiers et d'images. Ceci vous permet de lancer des machines + virtuelles créées sur un hôte sur un autre hôte ayant un système + d'exploitation hôte différent ; par exemple, vous pouvez créer une + machine virtuelle sur Windows puis la lancer sous Linux.</para> + + <para>En outre, on peut facilement importer et exporter des machines + virtuelles en utilisant le format ouvert de virtualisation (OVF, voir + <xref + linkend="ovf" />), un standard industriel créé dans ce but. Vous pouvez + même importer des OVFs qui ont été créés avec un logiciel de virtualisation + différent.</para> + </listitem> + + <listitem> + <para><emphasis role="bold">Aucune virtualisation matérielle requise. + </emphasis> Pour de nombreux scenarii, VirtualBox n'exige pas la construction, + dans le processeur, des fonctionnalités récentes du matériel telles que + Intel VT-x ou AMD-V. Contrairement à beaucoup d'autres solutions de + virtualisation, vous pouvez donc utiliser VirtualBox même sur du vieux + matériel où ces fonctionnalités ne sont pas présentes. Les détails techniques + sont expliqués a <xref + linkend="hwvirt" />.</para> + </listitem> + + <listitem> + <para><emphasis role="bold">Suppléments invité : dossiers partagés, + fenêtres transparentes (seamless), virtualisation 3D.</emphasis> Les + suppléments invité de VirtualBox sont des paquets logiciels qu'on peut + installer + <emphasis>à l'intérieur</emphasis> des systèmes invités supportés pour + améliorer leurs performances et effectuer une intégration et une + communication accrues avec le système hôte. Après avoir installé les + suppléments invité, une machine virtuelle supportera l'ajustement + automatique des résolutions graphiques, les fenêtres transparentes, + la vidéo 3D accélérée et davantage. Les suppléments invité sont décrits + en détails au <xref + linkend="guestadditions" />.</para> + + <para>Notamment, les suppléments invité offrent les "dossiers partagés", + ce qui vous permet d'accéder aux fichiers depuis l'intérieur d'une + machine invitée. Les dossiers partagés sont décrits au <xref + linkend="sharedfolders" />.</para> + </listitem> + + <listitem> + <para><emphasis role="bold">Bon support matériel.</emphasis> Entre autres, + VirtualBox supporte :</para> + + <itemizedlist> + <listitem> + <para><emphasis role="bold">Le multiprocesseur invité + (SMP).</emphasis> VirtualBox peut montrer jusqu'à 32 processeurs + virtuels à chaque machine virtuelle, indépendamment du nombre de + cœurs présents sur votre hôte physiquement.</para> + </listitem> + + <listitem> + <para><emphasis role="bold">Support des périphériques USB.</emphasis> + VirtualBox implémente un contrôleur USB virtuel et vous permet de + connecter des périphériques USB de votre choix à vos machines + virtuelles sans devoir installer de pilotes spécifiques sur l'hôte. + Le support USB n'est pas limité à certaines catégories de périphériques. + Pour des détails, voir + <xref linkend="settings-usb" />.</para> + </listitem> + + <listitem> + <para><emphasis role="bold">compatibilité matérielle.</emphasis> + VirtualBox virtualise une vaste gamme de périphériques virtuels, + parmi lesquels beaucoup sont en général fournis par d'autres + plateformes de virtualisation. Ceci inclut les contrôleurs de disques + IDE, SCSI et SATA, plusieurs cartes son et réseau virtuelles, les + ports série et parallèle virtuels, ainsi qu'un contrôleur d'interruptions + entrée/sortie programmable avancé (I/O APIC), ce qu'on trouve dans + de nombreux systèmes PC modernes. Cela facilite le clonage d'images + de PC depuis des machines réelles et l'importation de machines virtuelles + tierces dans VirtualBox.</para> + </listitem> + + <listitem> + <para><emphasis role="bold">Support complet de l'ACPI.</emphasis> + L'Advanced Configuration and Power Interface (ACPI) est complètement + supportée par VirtualBox. Cela facilite le clonage d'images + de PC depuis des machines réelles et l'importation de machines virtuelles + tierces dans VirtualBox. Avec son + <emphasis role="bold">support d'état d'énergie de l'ACPI</emphasis> + unique, VirtualBox peut même signaler aux systèmes d'exploitation + supportant l'ACPI l'état de l'alimentation de l'hôte. Pour les + systèmes mobiles sur batterie, le système invité peut ainsi activer + l'économie d'énergie et signaler à l'utilisateur le temps restant + (par exemple en mode plein écran).</para> + </listitem> + + <listitem> + <para><emphasis role="bold">résolutions sur plusieurs écrans.</emphasis> + Les machines virtuelles VirtualBox supportent les résolutions d'écran + sur autant d'écrans que d'écrans physiques, ce qui leur permet de + s'étaler sur une grande variété d'écrans reliés au système hôte.</para> + </listitem> + + <listitem> + <para><emphasis role="bold">Support iSCSI construit en dur.</emphasis> + Cette fonctionnalité unique vous permet de connecter une machine + virtuelle directement à un serveur de stockage iSCSI sans passer par + le système hôte. La VM accède à la cible iSCSI directement, sans + l'intermédiaire requis pour virtualiser des disques virtuels dans + les fichiers conteneurs. Pour des détails, voir le <xref + linkend="storage-iscsi" />.</para> + </listitem> + + <listitem> + <para><emphasis role="bold">Amorçage par le réseau PXE.</emphasis> + Les cartes réseaux virtuelles intégrées de VirtualBox supportent + complètement l'amorçage à distance via Preboot Execution Environment (PXE).</para> + </listitem> + </itemizedlist> + </listitem> + + <listitem> + <para><emphasis role="bold">Multigénération d'instantanés en branches. + </emphasis> VirtualBox peut sauvegarder des instantanés de votre choix de + l'état de la machine virtuelle. Vous pouvez revenir dans le passé et + rétablir l'état de la machine virtuelle à n'importe quel instantané, puis + démarrer une autre configuration de VM à partir de là, ce qui crée de fait + une arborescence d'instantanés complète. Pour les + détails, voir le <xref linkend="snapshots" />. Vous pouvez créer et + effacer des instantanés alors que la machine virtuelle est en fonction.</para> + </listitem> + <listitem> + <para><emphasis role="bold">Groupes de VMs.</emphasis> VirtualBox offre + une fonction de groupes permettant à l'utilisateur d'organiser les + machines virtuelles en groupe ou individuellement. Outre les groupes + classiques, il est également possible pour une VM d'être dans plus d'un + groupe et pour des groupes d'être classés dans une hiérarchie - c'est-à-dire + des groupes de groupes. Les opérations faisables sur les groupes sont + généralement les mêmes que celles applicables aux VMs individuelles, + à savoir le démarrage, la pause, la réinitialisation, la fermeture (état sauvegardé, envoyer une extinction, + couper), désactiver l'état sauvegardé, afficher dans le système de + fichiers, trier.</para> + </listitem> + <listitem> + <para><emphasis role="bold">Architecture propre ; une modularité + sans précédent.</emphasis> VirtualBox a un aspect extrêmement modulaire + avec des interfaces de programmation internes bien définies et une + séparation propre du code client et serveur. Cela facilite son contrôle + par plusieurs interfaces à la fois : par exemple, vous pouvez + démarrer une VM en cliquant simplement sur un bouton de l'interface + graphique de VirtualBox, puis contrôler cette machine à partir de la ligne + de commande, voire même à distance. Voir le + <xref linkend="frontends" /> pour les détails.</para> + + <para>Du fait de son architecture modulaire, VirtualBox peut également + présenter toutes ses fonctionnalités et sa flexibilité de configuration + dans un + <emphasis role="bold">kit de développement logiciel (SDK),</emphasis> + cohérent qui permet d'intégrer tous les aspects de VirtualBox à d'autres + logiciels. Merci de voir le <xref linkend="VirtualBoxAPI" /> pour les + détails.</para> + </listitem> + + <listitem> + <para><emphasis role="bold">Affichage de machines à distance.</emphasis> La + VirtualBox Remote Desktop Extension (VRDE) permet un accès distant et + en haute performance à une machine virtuelle en fonction. Cette + extension supporte le protocole de bureau distant (VRDP), construit au + départ dans Microsoft Windows, avec des suppléments spéciaux pour + un support complet de l'USB sur le client.</para> + + <para>Le VRDE ne se base pas sur le serveur RDP construit dans + Microsoft Windows ; mais il est inclu directement dans la couche de + virtualisation. Il s'en suit qu'il fonctionne avec les systèmes + d'exploitation hôte différents de Windows (même en mode texte) et il + n'a pas besoin non plus d'un support applicatif dans la machine + virtuelle. Le VRDE est décrit en détail au <xref linkend="vrde" />.</para> + + <para>En plus de cette possibilité, VirtualBox vous + offre les fonctionnalités uniques :<itemizedlist> + <listitem> + <para><emphasis role="bold">Authentification RDP Extensible.</emphasis> + VirtualBox supporte déjà Winlogon + sur Windows et PAM sur Linux pour l'anthentification RDP. + En outre, il inclut un SDK facile à utiliser qui vous permet de + créer des interfaces de votre choix pour d'autres méthodes + d'authentification ; voir + <xref linkend="vbox-auth" /> pour des détails.</para> + </listitem> + + <listitem> + <para><emphasis role="bold">USB via RDP.</emphasis> Via le support + RDP de canaux virtuels, VirtualBox vous permet aussi de connecter + des périphériques USB de votre choix en local sur une machine + virtuelle en fonction à distance sur un serveur RDP VirtualBox ; + voir le <xref + linkend="usb-over-rdp" /> pour les détails.</para> + </listitem> + </itemizedlist></para> + </listitem> + </itemizedlist> + </sect1> + + <sect1 id="hostossupport"> + <title>Systèmes d'exploitation hôtes supportés</title> + + <para>Actuellement, VirtualBox fonctionne sur les systèmes d'exploitation + hôtes suivants :</para> + + <itemizedlist> + <listitem> + <para>Hôtes <emphasis role="bold">Windows</emphasis> :<itemizedlist> + <listitem> + <para>Windows XP, tous les packs service (32 bits)</para> + </listitem> + + <listitem> + <para>Windows Server 2003 (32 bits)</para> + </listitem> + + <listitem> + <para>Windows Vista (32 bits et 64 bits<footnote> + <para>Le support pour Windows 64 bits a été ajouté avec VirtualBox + 1.5.</para> + </footnote>).</para> + </listitem> + + <listitem> + <para>Windows Server 2008 (32 bits et 64 bits)</para> + </listitem> + <listitem> + <para>Windows Server 2008 R2 (64 bits)</para> + </listitem> + + <listitem> + <para>Windows 8 (32 bits et 64 bits)</para> + </listitem> + + <listitem> + <para>Windows 8.1 (32 bits et 64 bits)</para> + </listitem> + + <listitem> + <para>Windows Server 2012 (64 bits)</para> + </listitem> + + <listitem> + <para>Windows Server 2012 R2 (64 bits)</para> + </listitem> + + </itemizedlist></para> + </listitem> + + <listitem> + <para>Hôtes <emphasis role="bold">Mac OS X</emphasis> :<footnote> + <para>Le support préliminaire de Mac OS X (étape beta) a été ajouté + avec VirtualBox 1.4, le support complet avec 1.6. Le support pour + Mac OS X 10.4 (Tiger) a été supprimé avec VirtualBox 3.1.</para> + </footnote></para> + + <itemizedlist> + <listitem> + <para>10.6 (Snow Leopard, 32 bits et 64 bits)</para> + </listitem> + + <listitem> + <para>10.7 (Lion, 32 bits et 64 bits)</para> + </listitem> + + <listitem> + <para>10.8 (Mountain Lion, 64 bits)</para> + </listitem> + <listitem> + <para>10.9 (Mavericks, 64 bits)</para> + </listitem> + + </itemizedlist> + + <para>Du matériel Intel est requis ; merci de voir aussi le <xref + linkend="KnownIssues" />.</para> + </listitem> + + <listitem> + <para>Hôtes <emphasis role="bold">Linux</emphasis> (32 bits et + 64 bits<footnote> + <para>Le support pour Linux 64 bits a été ajouté avec VirtualBox + 1.4.</para> + </footnote>). Cela inclut entre autres :<itemizedlist> + <listitem> + <para>Ubuntu 10.04 ("Lucid Lynx"), 10.10 ("Maverick Meerkat), + 11.04 ("Natty Narwhal"), 11.10 ("Oneiric Oncelot"), + 12.04 ("Precise Pangolin"), 12.10 ("Quantal Quetzal"), + 13.04 ("Raring Ringtail"), 13.10 ("Saucy Salamander"), + 14.04 ("Trusty Tahr")</para> + </listitem> + + <listitem> + <para>Debian GNU/Linux 6.0 ("squeeze") et 7.0 ("wheezy")</para> + </listitem> + + <listitem> + <para>Oracle Enterprise Linux 5, Oracle Linux 6</para> + </listitem> + + <listitem> + <para>Redhat Enterprise Linux 5 et 6</para> + </listitem> + + <listitem> + <para>Fedora Core 6 à 20</para> + </listitem> + + <listitem> + <para>Gentoo Linux</para> + </listitem> + + <listitem> + <para>openSUSE 11.0, 11.1, 11.2, 11.3, 11.4, 12.1, 12.2, 13.1</para> + </listitem> + + <listitem> + <para>Mandriva 2011</para> + </listitem> + </itemizedlist></para> + + <para>On devrait pouvoir utiliser VirtualBox sur la plupart des systèmes + basés sur un noyau Linux 2.6 ou 3.x, soit en utilisant l'installeur de + VirtualBox, soit en faisant une installation manuelle ; voir + le <xref linkend="install-linux-host" />. Cependant, les distributions + Linux formellement testées et supportées sont celles pour lesquelles + nous offrons un paquet dédié.</para> + + <para>Remarquez qu'à partir de VirtualBox 2.1, les systèmes d'exploitation + hôtes Linux basés sur le noyau 2.4 ne sont plus supportés.</para> + </listitem> + + <listitem> + <para>Les hôtes <emphasis role="bold">Solaris</emphasis> (64 bits seulement) + sont supportés avec les restrictions listées au <xref + linkend="KnownIssues" /> :<itemizedlist> + <listitem> + <para>Solaris 11 y compris Solaris 11 Express</para> + </listitem> + + <listitem> + <para>Solaris 10 (u8 et supérieur)</para> + </listitem> + </itemizedlist></para> + </listitem> + </itemizedlist> + <para>Remarquez que la liste ci-dessus est informelle. Le support Oracle + pour les clients ayant un contrat d'assistance est limité aux systèmes d'exploitation + hôtes précités. En outre, les fonctionnalités marquées comme <emphasis + role="bold">experimental</emphasis> ne sont pas supportées. Les retours et les + suggestions sur ces fonctionnalités sont bienvenues.</para> + </sect1> + + <sect1 id="intro-installing"> + <title>Installer VirtualBox et les packs d'extension</title> + + <para>VirtualBox est fourni dans de nombreux paquets et son installation + dépend de votre système d'exploitation hôte. Si vous avez déjà installé ce + logiciel, l'installation devrait être facile : pour chaque plateforme hôte, + VirtualBox utilise la méthode d'installation la plus facile possible. + Si vous avez un problème ou des besoins particuliers, reportez vous à la + <xref linkend="installation" /> pour des détails sur les différentes + méthodes d'installation.</para> + + <para>À partir de la version 4.0, VirtualBox est divisé en plusieurs + composants.<orderedlist> + <listitem> + <para>Le paquet de base contient tous les composants libres et il est + sous licence GNU General Public License V2.</para> + </listitem> + + <listitem> + <para>Des packs d'extension supplémentaires peuvent être téléchargés, + qui rajoutent des fonctionnalités au paquet de base de VirtualBox. + Pour l'instant, Oracle fournit un seul pack d'extension, qu'on peut + trouver sur <ulink + url="http://www.virtualbox.org">http://www.virtualbox.org</ulink> et + qui offre les fonctionnalités supplémentaires suivantes :<orderedlist> + <listitem> + <para>Périphériques virtuels USB 2.0 (EHCI) ; voir le <xref + linkend="settings-usb" />.</para> + </listitem> + + <listitem> + <para>Support de VirtualBox Remote Desktop Protocol (VRDP) ; + voir le + <xref linkend="vrde" />.</para> + </listitem> + + <listitem> + <para>Webcam hôte passthrough; voir le chapitre <xref + linkend="webcam-passthrough" />.</para> + </listitem> + <listitem> + <para>Amorçage Intel PXE ROM.</para> + </listitem> + + <listitem> + <para>Support expérimental pour passthrough PCI sur les hôtes + Linux ; + voir le <xref linkend="pcipassthrough" />.</para> + </listitem> + </orderedlist></para> + + <para>Les packs d'extension VirtualBox ont une extension de nom de fichiers + <computeroutput>.vbox-extpack</computeroutput>. + Pour installer une extension, double-cliquez simplement sur le fichier + du paquet et une fenêtre de gestion des opérations réseaux apparaîtra, + vous guidant à travers les étapes nécessaires.</para> + + <para>Pour voir les paquets d'extension actuellement installés, + merci de démarrer le gestionnaire VirtualBox (voir la prochaine section). + Dans le menu "Fichier", merci de sélectionner "Paramètres". Dans + la fenêtre qui apparaît, allez à la catégorie "Extensions" qui + affiche les extensions actuellement installées et vous permet de + supprimer un paquet ou d'en ajouter un.</para> + + <para>Vous pouvez aussi utiliser VBoxManage en ligne de commande : + voir le + <xref linkend="vboxmanage-extpack" /> pour des détails.</para> + </listitem> + </orderedlist></para> + + <note><para>Quand vous serez familier de l'utilisation des assistants, + songez à utiliser le mode expert disponible dans certains assistants. Quand + il est disponible, on peut le sélectionner en cliquant sur un bouton et cela + accélère les processus de l'utilisateur pour utiliser l'assistant.</para> + </note> + + </sect1> + + <sect1> + <title>Démarrer VirtualBox</title> + + <para>Après l'installation, vous pouvez démarrer VirtualBox comme suit :<itemizedlist> + <listitem> + <para>Sur un hôte Windows, dans le menu standard "Programmes", cliquez + sur l'élément du groupe "VirtualBox". Sur Vista ou Windows 7, vous + pouvez aussi taper "VirtualBox" dans la zone de recherche du menu + "Démarrer".</para> + </listitem> + + <listitem> + <para>Sur un hôte Mac OS X, dans la zone de recherche, cliquez deux + fois sur l'élément "VirtualBox" du dossier "Applications". (Il se + peut que vous vouliez mettre cet élément sur votre Dock.)</para> + </listitem> + + <listitem> + <para>Sur un hôte Linux ou Solaris, selon votre environnement de + bureau, une icône "VirtualBox" peut avoir été mise soit dans le groupe + "Système" soit dans "Outils système" de votre menu "Applications". Sinon + vous pouvez taper + <computeroutput>VirtualBox</computeroutput> dans un terminal.</para> + </listitem> + </itemizedlist></para> + + <para>Quand vous démarrez VirtualBox pour la première fois, une fenêtre comme + celle suivante devrait apparaître :</para> + + <para><mediaobject> + <imageobject> + <imagedata align="center" fileref="images/virtualbox-main-empty.png" + width="10cm" /> + </imageobject> + </mediaobject>Cette fenêtre s'appelle le <emphasis + role="bold">"gestionnaire VirtualBox".</emphasis>. À gauche, vous pouvez voir + un panneau qui listera, plus tard, toutes vos machines virtuelles. Comme vous + n'en avez pas créées, la liste est vide. Une ligne de boutons au-dessus + vous permet de créer de nouvelles VMs et de travailler sur celles existantes, + lorsque vous en avez. Le panneau à droite affiche les propriétés de la + machine virtuelle actuellement sélectionnée s'il y en a une. De nouveau, + comme vous n'avez pas encore de machine, le panneau affiche un message de + bienvenue.</para> + + <para>Pour vous donner une idée de ce à quoi pourrait ressembler VirtualBox + plus tard, après que vous avez créé des machines, voici un autre exemple :</para> + + <para><mediaobject> + <imageobject> + <imagedata align="center" fileref="images/virtualbox-main.png" + width="10cm" /> + </imageobject> + </mediaobject></para> + </sect1> + + <sect1 id="gui-createvm"> + <title>Créer votre première machine virtuelle</title> + + <para>Cliquez sur le bouton "Nouveau" en haut de la fenêtre du gestionnaire + VirtualBox. Un assistant apparaîtra pour vous guider à travers le paramétrage + d'une nouvelle machine virtuelle (VM) :</para> + + <para><mediaobject> + <imageobject> + <imagedata align="center" fileref="images/create-vm-1.png" + width="10cm" /> + </imageobject> + </mediaobject>Sur les écrans suivants, l'assistant vous demandera le + minimum d'informations dont il a besoin pour créer une VM, en + particulier :<orderedlist> + <listitem> + <para>Le <emphasis role="bold">nom de la VM</emphasis> sera plus + tard affiché dans la liste des VMs de la fenêtre du gestionnaire + VirtualBox, et il sera utilisé pour les fichiers de la VM sur le disque. + Si vous pouvez utiliser n'importe quel nom, gardez en tête qu'après + avoir créé quelques VMs, vous apprécierez d'avoir donné à vos VMs des + noms parlants ; ainsi "Ma VM" serait moins utile que "Windows XP + SP2 avec OpenOffice".</para> + </listitem> + + <listitem> + <para>Pour le <emphasis role="bold">"Type de système d'exploitation",</emphasis> + sélectionnez le système d'exploitation que vous voudrez installer plus + tard. Les systèmes d'exploitation supportés sont ici regroupés ; + si vous voulez installer une chose très rare et non listé, sélectionnez + "Autre". Selon votre sélection, VirtualBox activera ou désactivera + certains paramètres de VM dont peut avoir besoin votre système d'exploitation invité. + C'est particulièrement important pour les invités 64 bits (voir le <xref + linkend="intro-64bitguests" />). Il est donc recommandé de toujours + paramétrer la bonne valeur.</para> + </listitem> + + <listitem> + <para>Sur la page suivante, sélectionnez la <emphasis role="bold">mémoire + (RAM)</emphasis> que VirtualBox devra affecter à chaque fois que la + machine virtuelle sera démarrée. La quantité de mémoire indiquée ici sera + soustraite de celle de votre machine hôte et attribuée au système d'exploitation invité, + lequel verra cette mémoire comme RAM installée sur l'ordinateur (virtuel).</para> + + <para><note> + <para>Choisissez avec prudence ce paramètre ! La mémoire + donnée à la VM ne sera pas disponible pour votre OS hôte pendant + que la VM sera en fonction, donc ne spécifiez pas plus que vous ne + pouvez donner. Par exemple, si votre machine hôte a 1 Go de RAM + et si vous entrez 512 Mo de RAM pour une machine virtuelle en + particulier, pendant l'exécution de cette VM, vous n'aurez plus + que 512 Mo pour tous les autres logiciels de votre hôte. Si vous + lancez deux VMs en même temps, encore plus de mémoire sera affectée + à la deuxième VM (qui peut même ne pas démarrer si la mémoire n'est + pas disponible). D'un autre côté, vous devriez spécifier autant que + votre système d'exploitation invité (et vos applications) ont besoin + pour s'exécuter correctement.</para> + </note></para> + + <para>Un invité Windows XP exigera au moins quelques centaines de Mo + de RAM pour fonctionner correctement, et Windows Vista refusera même de + s'installer avec moins de 512 Mo. Bien sûr, si vous voulez lancer des + applications gourmandes en ressources graphiques dans votre VM, vous + pouvez avoir besoin de plus de RAM.</para> + + <para>La règle d'or est donc que si vous avez 1 Go de RAM voire plus + dans votre ordinateur hôte, il est sûr d'affecter 512 Mo à chaque + VM. Mais dans tous les cas, assurez-vous d'avoir au moins 256 à 512 + Mo de RAM sur votre système d'exploitation hôte. Sinon, il se peut que + l'OS hôte fasse un usage excessif de l'espace d'échange sur votre disque + dur, ce qui peut conduire à un plantage de votre système hôte.</para> + + <para>Comme avec les autres paramètres, vous pourrez modifier ce + réglage plus tard après avoir créé la VM.</para> + </listitem> + + <listitem> + <para>Ensuite vous devez spécifier un <emphasis role="bold">disque dur + virtuel</emphasis> pour votre VM.</para> + + <para>Il existe de nombreuses façons, potentiellement compliquées, de + fournir de l'espace de disque dur à une VM avec + VirtualBox (voir le <xref + linkend="storage" /> pour les détails), mais la manière la plus + courante est d'utiliser un gros fichier image sur votre "vrai" disque + dur, dont VirtualBox présente le contenu à votre VM comme si c'était un + disque dur normal. Ce fichier représente un disque dur complet donc vous + pouvez même le copier vers un autre hôte et l'utiliser avec une autre + installation VirtualBox.</para> + + <para>L'assistant affiche la fenêtre suivante :</para> + + <para><mediaobject> + <imageobject> + <imagedata align="center" fileref="images/create-vm-2.png" + width="10cm" /> + </imageobject> + </mediaobject></para> + + <para>Vous avez alors les choix suivants :</para> + + <itemizedlist> + <listitem> + <para>Pour créer un nouveau disque dur virtuel vierge, appuyez + sur le bouton <emphasis role="bold">"Nouveau"</emphasis>.</para> + </listitem> + + <listitem> + <para>Vous pouvez utiliser un fichier image de disque <emphasis + role="bold">existant</emphasis>.</para> + + <para>La <emphasis role="bold">boîte à liste déroulante</emphasis> + affichée dans la fenêtre contient toutes les images de disque + dont se souvient VirtualBox, probablement parce qu'elles sont + actuellement attachées à une machine virtuelle (ou elles l'ont + jadis été).</para> + + <para>Vous pouvez aussi cliquer sur le petit bouton<emphasis + role="bold">dossier</emphasis> à côté de la boîte à liste + déroulante pour ouvrir une boîte de dialogue de fichier standard + qui vous permet de choisir un fichier image de disque sur le + disque de votre hôte.</para> + </listitem> + </itemizedlist> + + <para>Vraisemblablement, si vous utilisez VirtualBox pour la première + fois, vous voudrez créer une nouvelle image de disque. Appuyez donc + sur le bouton "Nouveau".</para> + + <para>Ceci ouvre une nouvelle fenêtre, celle <emphasis + role="bold">"Assistant Créer un nouveau disque virtuel",</emphasis> + qui vous aide à créer un nouveau fichier image de disque dans le + dossier de la nouvelle machine virtuelle.</para> + + <para>VirtualBox supporte deux types de fichiers image :<itemizedlist> + <listitem> + <para>Un <emphasis role="bold">fichier rempli dynamiquement + </emphasis> ne grossira que lorsque l'invité stockera des données + sur son disque dur virtuel. Il sera donc petit au départ sur le + disque dur hôte et ne grossira que plus tard jusqu'à la taille indiquée, + au fur et à mesure que des données le rempliront.</para> + </listitem> + + <listitem> + <para>Un <emphasis role="bold">fichier à taille fixe</emphasis> + occupera immédiatement l'espace spécifié même si seule une partie + de l'espace disque virtuel est en réalité utilisée. Si il occupe + beaucoup plus de place, un fichier à taille fixe connaît moins de + latence et il va donc légèrement plus vite qu'un fichier rempli + dynamiquement.</para> + </listitem> + </itemizedlist></para> + + <para>Pour des détails sur les différences, merci de vous reporter au + <xref + linkend="vdidetails" />.</para> + + <para>Pour empêcher votre disque dur physique de tourner à plein, + VirtualBox limite la taille du fichier image. Là encore il doit y avoir + assez de place pour le contenu de votre système d'exploitation et les + applications que vous voulez installer - pour un invité Windows ou + Linux modernes, vous aurez probablement besoin de plusieurs gigaoctets pour + une utilisation sérieuse :</para> + + <mediaobject> + <imageobject> + <imagedata align="center" fileref="images/create-vdi-1.png" + width="10cm" /> + </imageobject> + </mediaobject> + + <para>Après avoir sélectionné ou créé votre fichier image, appuyez de + nouveau sur <emphasis role="bold">"Suivant"</emphasis> pour passer à + la page suivante.</para> + </listitem> + + <listitem> + <para>Après avoir cliqué sur <emphasis role="bold">"Créer"</emphasis>, + votre nouvelle machine virtuelle sera créée. Vous la verrez alors + dans la liste à gauche de la fenêtre du gestionnaire, avec le nom + que vous avez entré au départ.</para> + </listitem> + </orderedlist></para> + </sect1> + + <sect1> + <title>Lancer votre machine virtuelle</title> + + <para>Pour démarrer une machine virtuelle, vous avez plusieurs choix :<itemizedlist> + <listitem> + <para>Cliquez deux fois sur son entrée dans la liste dans la fenêtre du + gestionnaire ou</para> + </listitem> + + <listitem> + <para>sélectionnez son entrée dans la liste de la fenêtre + du gestionnaire et appuyez sur le bouton "Démarrer" en bas ou</para> + </listitem> + + <listitem> + <para>pour les machines virtuelles créées avec VirtualBox 4.0 ou + supérieur, allez au dossier "VirtualBox VMs" dans le dossier personnel + de votre système, cherchez le sous-répertoire de la machine que vous + voulez démarrer et cliquez deux fois sur le fichier de paramètres de la + machine (ayant une extension de fichier + <computeroutput>.vbox</computeroutput>).</para> + </listitem> + </itemizedlist></para> + + <para>Ceci ouvre une nouvelle fenêtre et la machine virtuelle que vous avez + sélectionnée va démarrer. Tout ce que vous verriez sur l'écran d'un système + normal apparaît dans la fenêtre, comme vous pouvez le voir sur l'image du + <xref linkend="virtintro" />.</para> + + <para>En général, vous pouvez utiliser la machine virtuelle presqu'exactement + comme vous utiliseriez un vrai ordinateur. Deux points gagnent à être + mentionnés quand même.</para> + + <sect2> + <title>Démarrage d'une nouvelle VM pour la première fois</title> + + <para>Quand on démarre une VM pour la première fois, un autre assistant + <emphasis role="bold">"Assistant premier démarrage"</emphasis> -- apparaîtra + pour vous aider à sélectionner un + <emphasis role="bold">média d'installation</emphasis>. Comme la VM est + créée vierge, agissant exactement comme un vrai ordinateur sans système + d'exploitation installé, elle ne fera rien et affichera un message d'erreur + selon lequel aucun système d'exploitation n'a été trouvé.</para> + + <para>C'est pourquoi l'assistant vous aide à sélectionner un média à + partir duquel vous pouvez installer un système d'exploitation.</para> + + <itemizedlist> + <listitem> + <para>Si vous avez un CD ou un DVD physique à partir duquel vous voulez + installer votre système d'exploitation invité (par exemple un CD ou un + DVD d'installation de Windows), mettez-le dans le lecteur CD ou DVD de + votre hôte.</para> + + <para>Puis dans la liste déroulante des médias d'installation de + l'assistant, + sélectionnez <emphasis role="bold">"Lecteur hôte"</emphasis> avec + la bonne lettre de lecteur (ou, en cas d'hôte Linux, le fichier de + périphérique). Ceci permettra à votre VM d'accéder au média dans votre + lecteur hôte et vous pouvez poursuivre l'installation à partir de là.</para> + </listitem> + + <listitem> + <para>Si vous avez téléchargé un média d'installation sur Internet + sous forme d'un fichier image ISO (en général pour une distribution + Linux), vous pourriez graver ce fichier sur un CD ou un DVD + vierge et poursuivre comme on vient de décrire. Mais avec VirtualBox, + vous pouvez passer cette étape et monter le fichier ISO directement. + VirtualBox présentera ce fichier comme un lecteur de CD ou de DVD-ROM + à la machine virtuelle, comme il le fait avec une image de disque dur virtuel.</para> + + <para>Dans ce cas, la liste déroulante de l'assistant contient la liste + des médias d'installation qui ont été précédemment utilisés avec VirtualBox.</para> + + <para>Si votre média n'est pas dans la liste (surtout si vous utilisez + VirtualBox pour la première fois), sélectionnez la petite icône de dossier + à côté de la liste déroulante pour afficher une boîte de dialogue de + fichiers standard dans laquelle vous pouvez choisir le fichier image + sur vos disques hôtes.</para> + </listitem> + </itemizedlist> + + <para>Dans les deux cas, après avoir fait vos choix dans l'assistant, vous + pourrez installer votre système d'exploitation.</para> + </sect2> + + <sect2 id="keyb_mouse_normal"> + <title>Capturer et rendre le clavier et la souris</title> + + <para>À partir de la version 3.2, VirtualBox offre aux nouvelles machines + virtuelles une tablette USB virtuelle à travers laquelle les événements + de la souris sont transmis au système d'exploitation invité. Il s'en suit + que si vous lancez un système d'exploitation invité moderne qui peut gérer + de tels périphériques, il se peut que le support de la souris fonctionne + sans que la souris ne soit "capturée" comme décrit ci-dessous ; + voir <xref linkend="settings-motherboard" /> pour plus + d'informations.</para> + + <para>Sinon, si la machine virtuelle ne voit que la souris et le clavier + PS/2 standards, car le système d'exploitation de la machine virtuelle ne + "sait" pas qu'il ne fonctionne pas sur un vrai ordinateur, il attend à + avoir un contrôle exclusif de votre clavier et de votre souris. Ce n'est + cependant pas le cas puisque, sauf si vous lancez votre VM en mode plein + écran, votre VM doit partager le clavier et la souris avec d'autres + applications et éventuellement d'autres VMs sur l'hôte.</para> + + <para>Il s'en suit qu'immédiatement après l'installation d'un système + d'exploitation invité, et avant que vous installiez les Suppléments invité + (nous expliquerons cela dans une minute), seule une des deux -- votre VM ou + le reste de votre ordinateur -- peut "détenir" le clavier et la souris. + Vous verrez un + <emphasis>deuxième</emphasis> pointeur de souris qui sera toujours enfermé + dans la fenêtre de la VM. De base, vous activez la VM en + cliquant dedans.</para> + + <para>Pour rendre le clavier et la souris à votre système d'exploitation + hôte, VirtualBox réserve une touche spéciale de votre clavier pour + lui : la <emphasis role="bold">"touche hôte".</emphasis> Par défaut, + c'est la <emphasis>touche Contrôle droit</emphasis> de votre clavier ; + sur un hôte Mac, la touche hôte par défaut est la touche de commande + gauche. Vous pouvez modifier ce réglage par défaut dans les paramètres + globaux de VirtualBox, voir <xref linkend="globalsettings" />. Dans tous + les cas, le paramétrage actuel de la + touche hôte est toujours affiché <emphasis>en bas à droite de la fenêtre + de la VM,</emphasis> au cas où vous l'auriez oublié :</para> + + <para><mediaobject> + <imageobject> + <imagedata align="center" fileref="images/vm-hostkey.png" + width="7cm" /> + </imageobject> + </mediaobject>En détail, tout se traduit comme suit :</para> + + <para><itemizedlist> + <listitem> + <para>Votre <emphasis role="bold">clavier</emphasis> appartient à la + VM si la fenêtre de la VM du bureau hôte contient le focus + du clavier (et si vous avez beaucoup de fenêtres ouvertes dans votre + système d'exploitation invité, la fenêtre contenant le focus dans votre + VM). Cela veut dire que si vous voulez taper quelque chose dans votre + VM, cliquez d'abord sur la barre de titre de la fenêtre de votre VM.</para> + + <para>Pour rendre la propriété du clavier, appuyez sur la touche hôte + (comme expliqué ci-dessus, en général la touche Contrôle droit).</para> + + <para>Remarquez que si la VM possède le clavier, certaines séquences + de touches (comme Alt-Tab par exemple) ne seront plus vues par l'hôte, + mais iront plutôt à l'invité. Après avoir appuyé sur la touche hôte + pour réactiver le clavier hôte, tous les appuis iront de nouveau à + l'hôte pour que les séquences comme Alt-Tab ne touchent plus l'invité. + Pour des raisons techniques, il se peut qu'il ne soit pas possible, + pour une VM, de récupérer toutes les entrées du clavier même si elle + possède ce dernier. Par exemples, la séquence Alt-Ctrl-Suppr sur les + hôtes Windows ou des touches uniques utilisées par certaines applications + sur les hôtes X11 comme la fonction "La touche Contrôle souligne le + pointeur de la souris" du bureau GNOME.</para> + </listitem> + + <listitem> + <para>Votre <emphasis role="bold">souris</emphasis> n'appartient à + la VM qu'après avoir cliqué de nouveau dans la fenêtre de la VM. Le + pointeur de souris de l'hôte disparaîtra et votre souris maniera + le pointeur de l'invité au lieu de votre pointeur de souris normal.</para> + + <para>Remarquez que l'appartenance de la souris ne dépend pas de + celle du clavier, même après avoir cliqué sur la barre de titre pour + pouvoir taper dans la fenêtre de la VM, votre souris n'appartient pas + nécessairement à la VM.</para> + + <para>Pour rendre l'appartenance de votre souris à la VM, appuyez + sur la touche hôte.</para> + </listitem> + </itemizedlist></para> + + <para>Comme ce comportement peut être gênant, VirtualBox offre un ensemble + d'outils et de pilotes de périphériques pour les systèmes invités, appelé + les "Suppléments invité VirtualBox", qui rendent beaucoup transparentes + les opérations du clavier et de la souris de la VM. Très important, + les suppléments vous débarrasserons du deuxième pointeur de souris de + "l'invité" et fera fonctionner la souris de votre hôte directement dans + l'invité.</para> + + <para>On décrira ceci plus tard au <xref + linkend="guestadditions" />.</para> + </sect2> + + <sect2 id="specialcharacters"> + <title>Taper des caractères spéciaux</title> + + <para>Les systèmes d'exploitation prévoient certaines combinaisons de touches + pour lancer certaines procédures. Certaines de ces combinaisons de touches + peuvent être difficiles à faire dans une machine virtuelle ; car il y + a trois candidats à la réception de l'entrée clavier : le système + d'exploitation hôte, VirtualBox ou le système d'exploitation invité. + Le récepteur de l'appui sur les touches dépend d'un certain nombre de facteurs + comprenant la touche elle-même.</para> + + <itemizedlist> + <listitem> + <para>Les systèmes d'exploitation hôte réservent certaines combinaisons + de touches pour eux. C'est par exemple impossible de faire + <emphasis + role="bold">Ctrl+Alt+Supp</emphasis> si vous voulez redémarrer le + système d'exploitation invité de votre machine virtuelle, car cette + combinaison de touches est en général rattachée en dur à l'OS hôte + (Windows comme Linux l'interceptent), et l'appui sur cette combinaison + de touches redémarrera donc votre <emphasis>hôte</emphasis>.</para> + + <para>De plus, sur les systèmes Linux et Solaris, qui utilise le + système X Window, la combinaison de touches <emphasis + role="bold">Ctrl+Alt+Effacement</emphasis> redémarrent en général le + serveur X (pour relancer toute interface graphique en cas de problème). + Comme le serveur X intercepte cette combinaison, l'appui sur ces touches + relancera en général votre interface graphique <emphasis>hôte</emphasis> + (et tuera tous les programmes, dont VirtualBox, dans l'opération).</para> + + <para>Par ailleurs, sur les hôtes Linux qui supportent les terminaux + virtuels, la combinaison de touches <emphasis role="bold">Ctrl+Alt+Fx</emphasis> + (où Fx est une touche de fonctions entre F1 et F12) permet en principe + de basculer entre des terminaux virtuels. Comme avec Ctrl+Alt+Supp, + ces combinaisons sont interceptées par le système d'exploitation hôte + et elles basculent donc toujours entre les terminaux de + <emphasis>l'hôte</emphasis>.</para> + + <para>Si vous voulez plutôt envoyer ces combinaisions de touches au + système d'exploitation <emphasis>invité</emphasis> de la machine + virtuelle, vous devrez utiliser une des méthodes suivantes :</para> + + <itemizedlist> + <listitem> + <para>Utiliser les icônes du menu "Machine" de la fenêtre de la + machine virtuelle. Vous y trouverez "Insérer Ctrl+Alt+Supp" et + "Ctrl+Alt+Effacement" ; cette dernière n'ayant toutefois + d'effet qu'avec les invités Linux ou Solaris.</para> + </listitem> + + <listitem> + <para>Appuyer sur des combinaisons de touches spéciales avec la + touche hôte (en principe, la touche contrôle droit), alors VirtualBox + traduira, pour la machine virtuelle :<itemizedlist> + <listitem> + <para><emphasis role="bold">Touche hôte + Supp</emphasis> + envoie Ctrl+Alt+Supp pour redémarrer l'invité);</para> + </listitem> + + <listitem> + <para><emphasis role="bold">Touch hôte + + Effacement</emphasis> pour envoyer Ctrl+Alt+Effacement (pour + redémarrer l'interface graphique d'un invité Linux ou Solaris) ;</para> + </listitem> + + <listitem> + <para><emphasis role="bold">Touche hôte + F1</emphasis> (ou + autres touches de fonction) pour simuler Ctrl+Alt+F1 (ou + d'autres touches de fonction, pour basculer entre les + terminaux virtuels d'un invité Linux).</para> + </listitem> + </itemizedlist></para> + </listitem> + </itemizedlist> + </listitem> + + <listitem> + <para>Pour d'autres combinaisons de touches telles que <emphasis + role="bold">Alt-Tab</emphasis> (pour basculer entre des fenêtres + ouvertes), VirtualBox vous permet de configurer si ces combinaisons + concerneront l'hôte ou l'invité, si la machine virtuelle a + le focus. C'est un paramètre global de toutes les machines virtuelles + qui se trouve dans "Fichier" -> "Préférences" -> "Entrée" -> + "Capture automatique du clavier".</para> + </listitem> + </itemizedlist> + </sect2> + + <sect2> + <title>Changer de média amovible</title> + + <para>Pendant qu'une machine virtuelle fonctionne, vous pouvez changer de + média amovible dans le menu "Périphériques" de la fenêtre de la VM. + Vous pouvez y sélectionner en détail ce que VirtualBox présente à votre + VM en tant que CD, DVD, ou disquette.</para> + + <para>Les paramètres sont les mêmes que ceux disponibles pour la VM dans + la boîte de dialogue "Paramètres" de la fenêtre principale de VirtualBox, + mais vu que la boîte de dialogue est désactivée quand la machine est + dans l'état "en fonction" ou "sauvegardée", ce menu supplémentaire vous + évite d'éteindre et de redémarrer la VM à chaque fois que vous voulez + changer de média.</para> + + <para>Dès lors, dans le menu "Périphériques", VirtualBox vous permet + d'attacher le lecteur hôte à l'invité ou de sélectionner une image de + DVD ou de disquette en utilisant le gestionnaire d'images de disque, tout + comme décrit à la <xref + linkend="configbasics" />.</para> + </sect2> + + <sect2 id="intro-resize-window"> + <title>Redimensionner la fenêtre de la machine</title> + + <para>Vous pouvez redimensionner la fenêtre de la machine virtuelle quand + elle fonctionne. Dans un tel cas, une des choses suivantes arrivera :<orderedlist> + <listitem> + <para>Si vous avez activé le <emphasis role="bold">"mode échelle"</emphasis>, + l'écran de la machine virtuelle sera adapté à la taille de la + fenêtre. Ceci peut être utile si vous avez de nombreuses machines + en fonction et si vous voulez les visualiser en fonction en + arrière-plan. Sinon, il pourrait être utile d'agrandir la fenêtre si + l'écran d'affichage de la fenêtre est très petit, par exemple car + vous y exécutez un vieux système d'exploitation.</para> + + <para>Pour activer le mode échelle, appuyez sur <emphasis role="bold">touche + hôte + C</emphasis>, ou sélectionnez "Mode échelle" du menu "Machine" + dans la fenêtre de la VM. Pour désactiver le mode échelle, appuyez + de nouveau sur la touche hôte + C.</para> + + <para>Les valeurs d'affichage de l'écran de l'invité sont préservées + lorsque vous redimensionnez la fenêtre. Pour ignorer ces valeurs + d'affichage, appuyez sur Majuscule pendant l'opération de + redimensionnement.</para> + + <para>Merci de voir <xref linkend="KnownIssues" /> pour des + remarques supplémentaires.</para> + </listitem> + + <listitem> + <para>Si vous avez installé les Suppléments invité et s'ils supportent + le <emphasis role="bold">redimensionnement</emphasis> automatique, + les suppléments invité ajusteront automatiquement la résolution de + l'écran du système d'exploitation invité. Par exemple, si vous + exécutez un invité Windows avec une résolution de 1024x768 pixels et + si vous élargissez la fenêtre de la VM de 100 pixels, les suppléments + invité passeront la résolution de l'affichage de Windows en + 1124x768.</para> + + <para>Merci de voir <xref linkend="guestadditions" /> pour plus + d'informations sur les suppléments invité.</para> + </listitem> + + <listitem> + <para>Sinon, si la fenêtre est plus haute que l'écran de la VM, + l'écran sera centré. Si elle est plus petite, les barres de défilement + seront ajoutées à la fenêtre de la machine.</para> + </listitem> + </orderedlist></para> + </sect2> + + <sect2> + <title>Sauvegarder l'état de la machine</title> + + <para>Quand vous cliquez sur le bouton "Fermer" de la fenêtre de votre + machine virtuelle (en haut à droite de la fenêtre, exactement comme vous + fermeriez n'importe quelle fenêtre de votre système), VirtualBox vous + demande si vous voulez "sauvegarder" ou "couper" la VM. (Vous pouvez + appuyez sur la touche hôte et "Q" simultanément en guise de raccourci.)</para> + + <para><mediaobject> + <imageobject> + <imagedata align="center" fileref="images/vm-close.png" + width="11cm" /> + </imageobject> + </mediaobject>La différence entre ces trois options est cruciale. + Elles signifient :</para> + + <itemizedlist> + <listitem> + <para><emphasis role="bold">Sauvegarder l'état de la machine :</emphasis> + Avec cette option, VirtualBox "gèle" la machine virtuelle en sauvegardant + complètement son état sur votre disque local.</para> + + <para>Quand vous redémarrerez la VM plus tard, vous vous retrouverez avec + la VM exactement là où vous l'avez interrompue. Tous vos programmes + seront encore ouverts et votre ordinateur recommencera ses tâches. La + sauvegarde de l'état d'une machine virtuelle revient, d'une certaine + façon, à mettre en veille prolongée un ordinateur portable (par exemple + en fermant l'écran).</para> + </listitem> + + <listitem> + <para><emphasis role="bold">Envoyer le signal Éteindre.</emphasis> + Ceci enverra un message d'extinction ACPI à la machine virtuelle, + qui a le même effet que si vous aviez appuyé sur le bouton d'alimentation + d'un ordinateur réel. Si la VM exécute un système d'exploitation moderne, + cela devrait provoquer un vrai mécanisme d'extinction de la VM.</para> + </listitem> + + <listitem> + <para><emphasis role="bold">Couper la machine :</emphasis> Avec + cette option, VirtualBox arrête aussi l'exécution de la machine virtuelle, + mais <emphasis>sans</emphasis> sauvegarder son état.<warning> + <para>Cela revient à débrancher le câble d'alimentation d'un + vrai ordinateur sans l'éteindre correctement. Si vous redémarrez + la machine après l'avoir coupée, votre système d'exploitation devra + redémarrer complètement et il se peut qu'il fasse une vérification + de ses disques systèmes (virtuels). Vous ne devriez donc pas le + faire car cela peut conduire à une perte de données ou à un état + incohérent du disque du système invité.</para> + </warning></para> + + <para>Par exception, si votre machine virtuelle a des instantanés (voir + le prochain chapitre), vous pouvez utiliser cette option pour <emphasis + role="bold">restaurer l'instantané actuel</emphasis> de la + machine virtuelle rapidement. Dans ce cas, couper la machine ne dégradera + pas son état mais seules les modifications faites depuis que vous + avez pris l'instantané seront perdues.</para> + </listitem> + </itemizedlist> + + <para>Le bouton <emphasis role="bold">"Oublier"</emphasis> de la fenêtre + du gestionnaire de VirtualBox Manager désactive un état sauvegardé de la + machine virtuelle. Cela a le même effet que de couper la machine, donc les + mêmes avertissements s'appliquent.</para> + </sect2> + </sect1> + + <sect1 id="gui-vmgroups"> + <title>Utiliser des groupes de VMs</title> + + <para>Les groupes de VMs permettent à l'utilisateur de créer des groupes ad + hoc de VMs, et de gérer et d'effectuer des fonctions de façon collective + ou individuelle sur ceux-ci. Il existe un certain nombre de fonctions liées + aux groupes :</para> + + <orderedlist> + <listitem> + <para> + Créer un groupe en utilisant l'option de l'interface graphique 1) + Remontez une VM au-dessus d'une autre VM. + </para> + <para> + Créer un groupe en utilisant l'option 2) Sélectionnez plusieurs VMs + et sélectionnez "Groupe" sur le menu issu du clic droit, comme suit : + </para> + + <para><mediaobject> + <imageobject> + <imagedata align="center" fileref="images/vm-groups.png" + width="10cm" /> + </imageobject> + </mediaobject></para> + + </listitem> + <listitem> + <para> + Option en ligne de commande 1) Créer un groupe et y affecter une VM : + <screen>VBoxManage modifyvm "Fred" --groups "/TestGroup"</screen> + </para> + <para> + Option en ligne de commande 2) Retirer une VM d'un groupe et effacer + le groupe s'il est vide : + <screen>VBoxManage modifyvm "Fred" --groups ""</screen> + </para> + </listitem> + <listitem> + <para> + Plusieurs groupes par exemple : + <screen>VBoxManage modifyvm "Fred" --groups "/TestGroup,/TestGroup2"</screen> + </para> + </listitem> + <listitem> + <para> + Groupes nested -- hiérarchie de groupes comme : + <screen>VBoxManage modifyvm "Fred" --groups "/TestGroup/TestGroup2"</screen> + </para> + </listitem> + <listitem> + <para> + Résumé des commandes de groupes : Démarrer, mettre en pause, + réinitialiser, fermer (sauvegarder l'état, envoyer un signal d'extinction, + couper), désactiver l'état sauvegardé, afficher dans un système de + fichiers, trier. + </para> + </listitem> + </orderedlist> + </sect1> + + <sect1 id="snapshots"> + <title>Instantanés</title> + + <para>Avec les instantanés, vous pouvez sauvegarder un état particulier + d'une machine virtuelle pour une utilisation ultérieure. Plus tard, vous pourrez + rétablir son état même si vous pouvez avoir beaucoup modifié la VM entre temps. + Un instantané de la machine virtuelle est ainsi équivalent à passer une + machine en état "sauvegardé", comme décrit ci-dessus, mais il peut y en avoir + beaucoup, et ces états sauvegardés sont préservés.</para> + + <para>Vous pouvez voir les instantanés d'une machine virtuelle en sélectionnant + d'abord une machine dans le gestionnaire VirtualBox, puis en cliquant sur + le bouton "Instantanés" en haut à droite. Jusqu'à ce que vous preniez un + instantané de la machine, la liste des instantanés restera vide sauf pour + l'icône "état actuel" quc représente le point "Maintenant" du temps de vie + de la machine virtuelle.</para> + + <sect2> + <title>Prendre, restaurer et effacer des instantanés</title> + + <para>Il existe trois opérations liées aux instantanés :<orderedlist> + <listitem> + <para>Vous pouvez <emphasis role="bold">prendre un instantané</emphasis>. + Ceci effectue une copie de l'état actuel de la machine, auquel vous pourrez + revenir plus tard n'importe quand..<itemizedlist> + <listitem> + <para>Si votre VM est en fonction, sélectionnez "Prendre un + instantané" dans le menu déroulant "Machine" de la fenêtre de la + VM.</para> + </listitem> + + <listitem> + <para>Si votre VM est dans l'état "sauvegardée" ou "coupée", + (comme indiqué à côté de la VM dans la fenêtre principale de + VirtualBox), cliquez sur l'onglet "Instantanés" en haut à droite + de la fenêtre principale, puis<itemizedlist> + <listitem> + <para>soit sur la petite icône en appareil photo (pour + "Prendre un instantané"), soit</para> + </listitem> + + <listitem> + <para>effectuez un clic droit sur l'icône "état actuel" + dans la liste et sélectionnez "Prendre un instantané" + dans le menu.</para> + </listitem> + </itemizedlist></para> + </listitem> + </itemizedlist></para> + + <para>Dans tous les cas, une fenêtre apparaîtra et vous demandera un + nom d'instantané. Ce nom a une finalité purement de référence pour + vous aider à vous souvenir de l'état de l'instantané. Par exemple, un nom utile + serait "Installation neuve à partir de rien, pas de suppléments + invité", ou "Pack service à peine installé". Vous pouvez aussi ajouter + un texte plus long dans le champ "Description" si vous le voulez.</para> + + <para>Votre nouvel instantané apparaîtra ensuite dans la liste des instantanés. + Juste dessous votre nouvel instantané, vous verrez une icône appelée + "état actuel", signifiant que l'état actuel de votre VM est une + variante basée sur l'instantané que vous avez pris précédemment. Si + vous prenez plus tard un autre instantané, vous verrez qu'ils seront + affichés en séquences et chaque instantané consécutif dérive d'un + précédent :<mediaobject> + <imageobject> + <imagedata align="center" fileref="images/snapshots-1.png" + width="12cm" /> + </imageobject> + </mediaobject></para> + + <para>VirtualBox n'impose aucune limite quant au nombre d'instantanés + que vous pouvez prendre. La seule limite pratique est l'espace disque + sur votre hôte : chaque instantané stocke l'état de la machine + virtuelle et occupe donc de l'espace disque (voir la prochaine section + pour des détails sur ce qui est stocké exactement dans un instantané.)</para> + </listitem> + + <listitem> + <para>Vous pouvez <emphasis role="bold">restaurer un instantané</emphasis> + en effectuant un clic droit sur un instantané que vous avez pris dans la + liste des instantanés. En restaurant un instantané, vous revenez en arrière (ou + vous reculez) dans le temps : l'état actuel de la machine est + perdu et la machine est restaurée dans l'état exact où elle était + quand vous avez pris l'instantané.<footnote> + <para>La terminologie et la fonctionnalité de restauration d'instantanés + ont toutes deux changé avec VirtualBox 3.1. Avant cette + version, il n'était possible que de revenir au tout dernier instantané + pris -- pas à ceux antérieurs, et l'opération s'appelait "Désactiver + l'état actuel" et non "Restaurer le dernier instantané". La + limite a été dépassée avec la version 3.1. Il est maintenant + possible de restaurer <emphasis>n'importe quel</emphasis> instantané, + revenir en arrière et reculer dans le temps.</para> + </footnote></para> + + <note> + <para>La restauration d'un instantané concernera également les disques + durs connectés à votre VM puisque l'état complet des disques durs + virtuels sera rétabli. Ceci signifie aussi que tous les fichiers + qui ont été créés depuis l'instantané et toutes les autres modifications + de fichiers <emphasis>seront perdues. </emphasis>Afin d'empêcher + une telle perte de données, tout en utilisant la fonctionnalité + des instantanés, il est possible d'ajouter un deuxième disque dur en mode + "write-through" en utilisant l'interface + <computeroutput>VBoxManage</computeroutput> et de l'utiliser pour + stocker vos données. Vu que les disques durs write-through + <emphasis>ne sont pas</emphasis> inclus dans les instantanés, ils restent + inchangés quand une machine est rétablie. Voir le <xref + linkend="hdimagewrites" os="" /> pour des détails.</para> + </note> + + <para>Pour éviter de perdre l'état actuel quand vous restaurez un + instantané, vous pouvez créer un nouvel instantané avant la restauration.</para> + + <para>En restaurant un instantané précédent et en prenant plus d'instantanés + à partir de là, il est même possible de créer une sorte de réalité + alternative et de basculer entre les différentes histoires de la + machine virtuelle. Cela peut donner une arborescence complète + d'instantanés de machine comme le montre l'impression d'écran + ci-dessus.</para> + </listitem> + + <listitem> + <para>Vous pouvez aussi <emphasis role="bold">effacer un instantané</emphasis>, + ce qui ne touchera pas l'état de la machine virtuelle mais seulement + les fichiers du disque qu'utilisait VirtualBox pour stocker les données + de l'instantané, libérant ainsi de l'espace disque. Pour effacer un + instantané, effectuez un clic droit dessus dans l'arborescence des + instantanés et sélectionnez "Effacer". À partir de VirtualBox 3.2, + on peut même effacer des instantanés pendant qu'une machine fonctionne.<note> + <para>Si la prise et la restauration d'instantanés sont des + opérations très rapides, l'effacement d'un instantané peut mettre + un temps considérable car de grandes quantité de données peuvent être + copiées entre plusieurs fichiers images de disques. Il se peut + que les fichiers de disque temporaires aient besoin de beaucoup de + place pendant le déroulement de l'opération.</para> + </note></para> + + <para>Certaines situations ne peuvent pas être gérées pendant qu'une + VM est en fonction et vous aurez un message circonstancié selon lequel + vous devez effectuer cet effacement d'instantané quand la VM sera + éteinte.</para> + </listitem> + </orderedlist></para> + </sect2> + + <sect2> + <title>Contenu d'un instantané</title> + + <para>Voyez un instantané comme un marquage dans le temps que vous avez posé. + De façon plus formelle, un instantané consiste en trois éléments :<itemizedlist> + <listitem> + <para>Il contient une copie complète des paramètres de la VM y compris + la configuration matérielle, afin que quand vous restaurerez un instantané, + les paramètres de la VM soient également restaurés (par exemple, si + vous avez modifié la configuration du disque dur ou les paramètres + système de la VM, ce changement est annulé quand vous restaurez un + instantané.)</para> + + <para>La copie de ces paramètres est stockée dans la configuration + de la machine, fichier texte XML, occupant ainsi très peu de place.</para> + </listitem> + + <listitem> + <para>L'état complet de tous les disques virtuels attachés à la + machine est préservé. Le retour en arrière sur un instantané signifie + que toutes les modifications faites sur les disques de la machine + -- fichier par fichier, bit par bit -- seront toutes annulées. Les + fichiers créés entre-temps disparaîtront, les fichiers effacés seront + restaurés, les modifications de fichiers seront inversées.</para> + + <para>(À proprement parler, ceci n'est vrai que pour les disques durs + virtuels en mode "normal". Comme indiqué ci-dessus, vous pouvez + configurer des disques pour se comporter autrement avec les instantanés (voir + <xref + linkend="hdimagewrites" />. De manière encore plus précise et juste + techniquement, ce n'est pas le disque dur virtuel lui-même qui est + restauré quand on restaure un instantané. En fait, quand on prend + un instantané, VirtualBox crée des images de différenciation contenant + seulement les modifications depuis que l'instantané a été pris, puis + l'instantané est restauré, VirtualBox applique cette image de différenciation, + revenant ainsi en arrière vers l'état précédent. Ceci est non seulement + plus rapide, mais cela utilise moins d'espace disque. Pour les + détails, qui peuvent être complexes, merci de voir le + <xref linkend="diffimages" />.)</para> + + <para>La création d'une telle image de différenciation n'occupe pas + beaucoup de place dès le départ sur le disque hôte, puisque l'image + de différenciation sera vide au départ (et grandira plus tard de façon + dynamique à chaque opération d'écriture sur le disque). Par contre, + plus vous utiliserez la machine après avoir créé l'instantané, plus + l'image de différenciation grossira.</para> + </listitem> + + <listitem> + <para>Enfin, si vous avez pris un instantané pendant que la machine était + en fonction, l'état de la mémoire de la machine est également + sauvegardé dans l'instantané (tout comme la mémoire peut être sauvegardée + quand vous fermez la fenêtre de la VM). Quand vous restaurez un tel + instantané, l'exécution recommence exactement là où elle en était quand + vous avez pris l'instantané.</para> + + <para>Le fichier de l'état de la mémoire peut être aussi gros que la + taille de la mémoire de la machine virtuelle et il occupera donc + lui aussi beaucoup de place sur le disque.</para> + </listitem> + </itemizedlist></para> + </sect2> + </sect1> + + <sect1 id="configbasics"> + <title>Configuration d'une machine virtuelle</title> + + <para>Quand vous sélectionnez une machine virtuelle dans la liste dans la + fenêtre du gestionnaire, vous verrez à droite un résumé des paramètres de + cette machine.</para> + + <para>Un clic sur le bouton "Paramètres" dans la barre d'outils en haut + ouvre une fenêtre détaillée où vous pouvez configurer de nombreuses + propriétés de la VM sélectionnée. Mais attention, bien qu'il soit possible + de modifier tous les paramètres de la VM après avoir installé un système + d'exploitation invité, certaines modifications pourraient empêcher un système + d'exploitation invité de fonctionner correctement après l'installation.</para> + + <note> + <para>Le bouton "Paramètres" est désactivé par défaut quand une VM est soit + dans l'état "en fonction", soit "sauvegardée". Ceci simplement car la boîte + de dialogue des paramètres vous permet de modifier des caractéristiques + fondamentales de l'ordinateur virtuel créé pour votre système d'exploitation + invité, et ce système d'exploitation peut ne pas bien supporter cela quand, + par exemple, la moitié de sa mémoire lui est coupée sous les pieds. Il s'en + suit que si le bouton "Paramètres" est désactivé, éteignez d'abord la VM + actuelle.</para> + </note> + + <para>VirtualBox offre pléthore de paramètres qu'on peut changer pour une + machine virtuelle. Tous les paramètres modifiables dans la fenêtre "Paramètres" + sont décrits en détails au <xref + linkend="BasicConcepts" />. Encore plus de paramètres sont disponibles avec + l'interface en ligne de commande de VirtualBox ; voir <xref + linkend="vboxmanage" />.</para> + </sect1> + + <sect1> + <title>Supprimer des machines vcrtuelles</title> + + <para>Pour supprimer une machine virtuelle dont vous n'avez plus besoin, + effectuez un clic droit sur la liste de VMs du gestionnaire et sélectionnez + "Supprimer" dans le menu contextuel qui apparaît.</para> + + <para>Une fenêtre de confirmation apparaîtra, vous permettant de sélectionner s'il + faut supprimer la machine seulement de la liste des machines ou également les + fichiers associés.</para> + + <para>L'élément "Supprimer" est désactivé quand une machine est en fonction.</para> + </sect1> + + <sect1 id="clone"> + <title>Cloner des machines virtuels</title> + + <para>Pour expérimenter une configuration de VM, tester différents niveaux + d'OS invité ou sauvegarder une VM, VirtualBox peut créer une copie complète + ou liée d'une VM existante.<footnote><para>Le support du clonage a été + introduit avec VirtualBox 4.1.</para></footnote></para> + + <para>Un assistant vous guidera dans le processus de clonage :</para> + + <mediaobject> + <imageobject> + <imagedata align="center" fileref="images/clone-vm.png" + width="10cm" /> + </imageobject> + </mediaobject> + + <para>On peut appeler cet assistant à partir du menu contextuel de la liste + des VMs du gestionnaire (en sélectionnant "Cloner") ou de la vue "Dépôts" + de la VM sélectionnée. Choisissez d'abord un @ouveau nom pour le clone. Quand + vous sélectionnez <emphasis + role="bold">Réinitialiser l'adresse MAC de toutes les cartes réseaux</emphasis>, + toutes les cartes réseaux se voient affecter une nouvelle adresse MAC. Ceci + est utile quand la VM source et celle clonée doivent fonctionner sur le même + réseau. Si vous ne changez rien, toutes les cartes réseaux auront la même + adresse MAC que celle de la VM source. Selon comment vous appelez l'assistant, + vous avez différents choix pour l'opération de clonage. Vous devez d'abord + décider si le clone devrait être lié à la VM source ou être totalement indépendant :</para> + <itemizedlist> + <listitem> + <para><emphasis role="bold">Clone complet :</emphasis> Dans ce mode, + toutes les images de disques dépendantes sont copiées dans le nouveau + dossier de la VM. Le clone peut fonctionner complètement sans la VM + d'origine. + </para> + </listitem> + + <listitem> + <para><emphasis role="bold">Clone lié :</emphasis> Dans ce mode, + de nouvelles images de différenciation du disque sont créées là où + les images de disque parents se trouvent à l'origine. Si vous avez + sélectionné l'état actuel de la VM source comme point de clonage, un + nouvel instantané sera créé implicitement. + </para> + </listitem> + </itemizedlist> + + <para>Après avoir sélectionné le mode de clonage, vous devez décider ce que + vous voulez exactement cloner. Vous pouvez toujours créer un clone de + <emphasis role="italic">l'état actuel</emphasis> seulement, ou de + <emphasis role="italic">tout</emphasis>. Quand vous sélectionnez <emphasis + role="italic">tout</emphasis>, l'état actuel et, également, tous les + instantanés seront clonés. Si vous partez d'un instantané ayant des fils + en plus, vous pouvez également cloner <emphasis role="italic">l'état + actuel et tous ses fils</emphasis>. Ceci crée un clone à partir de + cet instantané et inclut tous les instantanés fils.</para> + + <para>La durée de l'opération de clonage dépend de la taille et du nombre + d'images de disques attachées. Garder aussi en tête que tout instantané a + des images de différenciation de disques rattachées, qu'il faut aussi + cloner.</para> + + <para>L'icône "Cloner" est désactivée quand une machine est en fonction.</para> + + <para>Pour savoir comment cloner une VM en ligne de commande, merci de voir <xref + linkend="vboxmanage-clonevm" />.</para> + </sect1> + + <sect1 id="ovf"> + <title>Importer et exporter des machines virtuelles</title> + + <para>VirtualBox peut importer et exporter des machines virtuelles au + format du standard industriel Open Virtualization Format (OVF).<footnote> + <para>Le support d'OVF a été introduit à l'origine avec VirtualBox 2.2 + et a connu des améliorations essentielles au fur et à mesure des versions + consécutives.</para> + </footnote></para> + + <para>OVF est un standard de plateforme croisée supporté par de nombreux + produits de virtualisation, permettant de créer des machines virtuelles prêtes + à l'emploi importables ensuite dans un virtualiseur tel que VirtualBox. VirtualBox + facilite l'exportation et l'importation d'OVF, en y donnant un accès et un + support depuis la fenêtre du gestionnaire et son interface en ligne de + commande. Cela permet d'empaqueter ce qu'on appelle des + <emphasis role="bold">applicatifs virtuels</emphasis> : des images de + disque et des paramètres de configuration qu'on peut distribuer facilement. + De cette façon, chacun peut donner des logiciels dans un paquet prêt à utiliser + complet (incluant système d'exploitation et applications) qui n'a pas besoin de + configuration ou d'installation autre que l'importation dans VirtualBox.<note> + <para>Le standard OVF est complexe et son support dans VirtualBox est un + processus évolutif. En particulier, nous ne garantissons pas que + VirtualBox supporte tous les applicatifs créés par d'autres logiciels de + virtualisation. Pour une liste des limites connues, merci de voir le + <xref linkend="KnownIssues" />.</para> + </note></para> + + <para>Les applicatifs au format OVF peut apparaître sous deux variantes :<orderedlist> + <listitem> + <para>Ils peuvent être fournis en plusieurs fichiers, comme une ou + plusieurs images de disque, en général au format universel VMDK (voir + <xref + linkend="vdidetails" />) et un fichier de description en texte, au + format XML avec une extension <computeroutput>.ovf</computeroutput>. + Ces fichiers doivent résider dans le même répertoire pour que VirtualBox + puisse les importer.</para> + </listitem> + + <listitem> + <para>Sinon, les fichiers ci-dessus peuvent être empaquetés dans un + seul fichier archive, ayant en général une extension + <computeroutput>.ova</computeroutput>. (De tels fichiers archives + utilisent une variante du format d'archivage TAR et peuvent donc être + déballés hors de VirtualBox avec n'importe quel outil capable de déballer + des fichiers TAR standards.)</para> + </listitem> + </orderedlist></para> + + <para>Pour <emphasis role="bold">importer</emphasis> un applicatif dans l'un des + formats ci-dessus, cliquez simplement deux fois sur le fichier OVF/OVA.<footnote> + <para>À partir de la version 4.0, VirtualBox crée des associations de + types de fichiers pour des fichiers OVF et OVA sur votre système + d'exploitation hôte.</para> + </footnote> Sinon, sélectionnez "Fichier" -> "Importer un applicatif" + à partir de la fenêtre du gestionnaire. Dans la boîte de dialogue de fichier + qui apparaît, allez sur le fichier ayant soit l'extension + <computeroutput>.ovf</computeroutput>, soit + <computeroutput>.ova</computeroutput>.</para> + + <para>Si VirtualBox peut gérer le fichier, une boîte de dialogue ressemblant + à celle suivante apparaîtra :</para> + + <para><mediaobject> + <imageobject> + <imagedata align="center" fileref="images/ovf-import.png" + width="12cm" /> + </imageobject> + </mediaobject>Elle présente les machines virtuelles décrites dans le fichier + OVF et elle vous permet de modifier les paramètres de la machine virtuelle + en cliquant deux fois sur les éléments de description. Une fois que vous + avez cliqué sur <emphasis + role="bold">"Importer"</emphasis>, VirtualBox copiera les images de disque et + créera les machines virtuelles locales ayant les paramètres décrits dans + la boîte de dialogue. Elles apparaîtront alors dans la liste de machines virtuelles + du gestionnaire.</para> + + <para>Remarquez que vu que les images de disque sont souvent grosses, et que + les images VMDK fournis avec les applicatifs virtuels sont en général incluses + dans un format compressé spécial inadapté à l'usage direct par les machines + virtuelles, il faudra d'abord déballer les images et les copier, ce qui peut + prendre quelques minutes.</para> + + <para>Pour savoir comment importer une image en ligne de commande, merci de + voir <xref + linkend="vboxmanage-import" />.</para> + + <para>Inversement, pour <emphasis role="bold">exporter</emphasis> des + machines virtuaelles déjà présentes dans VirtualBox, sélectionnez "Fichier" + -> "Exporter application virtuelle". Une boîte de dialogue apparaîtra vous permettant de + mettre plusieurs machines virtuelles dans un applicatif OVF. Puis, sélectionnez + la destination où stocker les fichiers cibles, le processus de conversion + commence. Cela peut mettre aussi du temps.</para> + + <para>Pour savoir comment exporter une image en ligne de commande, merci de + voir <xref + linkend="vboxmanage-export" />.<note> + <para>OVF ne peut pas décrire d'instantanés pris pour une + machine virtuelle. Il s'en suit que lorsque vous exportez une machine + virtuelle avec des instantanés, seul l'état actuel de la machine sera + exporté et les images de disque de l'export seront dans l'état + "applati", identique à l'état actuel de la machine virtuelle.</para> + </note></para> + </sect1> + + <sect1 id="globalsettings"> + <title>Paramètres globaux</title> + <para>Vous pouvez atteindre la boîte de dialogue des paramètres globaux par + le menu <emphasis role="bold">Fichier</emphasis>, en sélectionnant l'élément + <emphasis role="bold">Préférences...</emphasis> (NdT : ou Paramètres selon la version). Elle offre une sélection + de paramètres qui s'appliquent à toutes les machines virtuelles de l'utilisateur + actuel ou, s'il y a des <emphasis role="bold">Extensions</emphasis>, à tout + le système : + <orderedlist> + <listitem> + <para><emphasis role="bold">Général</emphasis> Permet à l'utilisateur + de spécifier le dossier/répertoire par défaut des fichiers de la VM et + la bibliothèque d'Authentification à RDP.</para> + </listitem> + <listitem> + <para><emphasis role="bold">Entrée</emphasis> Permet à l'utilisateur de + spécifier la touche Hôte. Elle indique la touche qui active si le + curseur est sur le focus de la VM ou dans les fenêtres du système + d'exploitation hôte (voir <xref linkend="keyb_mouse_normal"/>) et + qu'on utilise aussi pour activer certaines actions sur la VM (voir + <xref + linkend="specialcharacters"/>)</para> + </listitem> + <listitem> + <para><emphasis role="bold">Mises à jour</emphasis> Permet à + l'utilisateur de spécifier divers paramètres des mises à jour + automatiques.</para> + </listitem> + <listitem> + <para><emphasis role="bold">Langue</emphasis> Permet à l'utilisateur + de spécifier la langue de l'interface graphique.</para> + </listitem> + <listitem> + <para><emphasis role="bold">Affichage</emphasis> Permet à l'utilisateur + de préciser la résolution de l'écran, sa hauteur et sa largeur.</para> + </listitem> + <listitem> + <para><emphasis role="bold">Réseau</emphasis> Permet à l'utilisateur + de configurer les détails des réseaux Host Only.</para> + </listitem> + <listitem> + <para><emphasis role="bold">Extensions</emphasis> Permet à l'utilisateur + de lister et de gérer les paquets d'extension installés.</para> + </listitem> + <listitem> + <para><emphasis role="bold">Proxy</emphasis> Permet à l'utilisateur + de configurer un serveur proxy HTTP.</para> + </listitem> + </orderedlist></para> + </sect1> + + <sect1 id="frontends"> + <title>Interfaces alternatives</title> + + <para>Comme indiqué brièvement à la <xref linkend="features-overview" />, + VirtualBox possède un concept interne très flexible qui permet d'utiliser + plusieurs interfaces pour contrôler les mêmes machines virtuelles. Pour + illustrer, vous pouvez par exemple démarrer une machine virtuelle avec la fenêtre + du gestionnaire de VirtualBox puis l'arrêter en ligne de commande. Avec le + support de bureau distant (RDP) de VirtualBox, vous pouvez même lancer des + machines virtuelles à distance sur un serveur sans écran et rediriger la sortie + graphique sur le réseau.</para> + + <para>En détails, le paquet standard de VirtualBox inclut les interfaces + suivantes :</para> + + <para><orderedlist> + <listitem> + <para><computeroutput>VirtualBox</computeroutput> est le gestionnaire + VirtualBox. Cette interface graphique utilise l'environnement Qt ; + la plupart de ce manuel de l'utilisateur est consacré à sa description. + S'il est le plus facile à utiliser, certaines fonctionnalités plus + avancées de VirtualBox n'y figurent pas pour garder sa simplicité.</para> + </listitem> + + <listitem> + <para><computeroutput>VBoxManage</computeroutput> est notre interface + en ligne de commande pour avoir un contrôle automatisé et très détaillé + de tous les aspects de VirtualBox. Il est décrit au <xref + linkend="vboxmanage" />.</para> + </listitem> + + <listitem> + <para><computeroutput>VBoxSDL</computeroutput> est une interface graphique + alternative simple, possédant des fonctionnalités volontairement limitées, + conçu pour n'afficher que des machines virtuelles contrôlées en détail + avec <computeroutput>VBoxManage</computeroutput>. C'est intéressant pour + des environnements professionnels où l'affichage de tous les gadgets + graphique n'est pas envisageable. + <computeroutput>VBoxSDL</computeroutput> est décrit au <xref + linkend="vboxsdl" />.</para> + </listitem> + + <listitem> + <para>Enfin, <computeroutput>VBoxHeadless</computeroutput> est encore + une autre interface qui produit une sortie invisible sur l'hôte, mais qui + agit exactement comme un serveur RDP si l'extension de bureau à distance + de VirtualBox (VRDE) est installée. Contrairement aux autres interfaces + graphiques, l'interface sans affichage n'a pas besoin de support + graphique. Cela sert, par exemple, si vous voulez héberger vos machines + virtuelles sur un serveur Linux sans affichage et sans système X + Window installé. Pour les détails, voir <xref + linkend="vboxheadless" />.</para> + </listitem> + </orderedlist>Si les interfaces ci-dessus ne satisfont pas encore vos + besoins particuliers, il est possible de créer d'autres interfaces avec + le moteur de virtualisation complexe au cœur de VirtualBox, car le + cœur de VirtualBox présente ouvertement toutes ses foncitionnalités + dans une API propre ; merci de vous reporter au <xref linkend="VirtualBoxAPI" />.</para> + </sect1> +</chapter> diff --git a/doc/manual/fr_FR/user_KnownIssues.xml b/doc/manual/fr_FR/user_KnownIssues.xml new file mode 100644 index 00000000..144b0a57 --- /dev/null +++ b/doc/manual/fr_FR/user_KnownIssues.xml @@ -0,0 +1,325 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" +"http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd"> +<chapter id="KnownIssues"> + <title>Limites connues</title> + <sect1 id="ExperimentalFeatures"> + <title>Fonctions expérimentales</title> + <para>Certaines fonctions de VirtualBox sont étiquetées comme étant + expérimentales. De telles fonctions sont offertes sur une base "tel quel" + et elles ne sont pas formellement supportées. Cependant, des retours + et les suggestions sur ces fonctions sont bienvenus. Voici une liste complète + des fonctions expérimentales :</para> + <itemizedlist> + <listitem> + <para>Pilote graphique WDDM Direct3D pour les invités Windows</para> + </listitem> + <listitem> + <para>Support de l'accélération matérielle 3D pour les invités Windows, + Linux, et Solaris</para> + </listitem> + <listitem> + <para>Support de l'accélération 2D pour les invités Windows</para> + </listitem> + <listitem> + <para>PCI pass-through (hôtes Linux uniquement)</para> + </listitem> + <listitem> + <para>Invités Mac OS X (hôtes Mac uniquement)</para> + </listitem> + <listitem> + <para>Émulation du chipset ICH9</para> + </listitem> + <listitem> + <para>firmware EFI</para> + </listitem> + <listitem> + <para>Pass-through lecteur CD/DVD de l'hôte</para> + </listitem> + <listitem> + <para>Support d'iSCSI par le réseau interne</para> + </listitem> + <listitem> + <para>Signalement synthétique du processeur</para> + </listitem> + </itemizedlist> + </sect1> + <sect1 id="KnownProblems"> + <title>Problèmes connus</title> + <para>La section suivante décrit les problèmes connus avec VirtualBox + @VBOX_VERSION_STRING@. Sauf autrement spécifié, il est prévu de corriger ces + problèmes dans les prochaines versions.</para> + + <itemizedlist> + <listitem> + <para>Les <emphasis role="bold">limites SMP (multiprocesseur) de + l'invité</emphasis> existent :<itemizedlist> + <listitem> + <para><emphasis role="bold">Faibles performances</emphasis> avec + des invités 32 bits sur des processeurs AMD. Cela concerne + surtout les invités Windows et Solaris, mais aussi probablement + certaines révisions du noyau Linux. Corrigé partiellement dans + la 3.0.6 pour les invités Windows NT, 2000, XP et 2003 32 bits. + Exige l'installation des suppléments invité 3.0.6 ou supérieur.</para> + </listitem> + + <listitem> + <para><emphasis role="bold">Faibles performances</emphasis> avec + les invités 32 bits sur certains modèles de processeurs Intel + qui n'incluent pas le support de l'optimisation matérielle APIC + virtuel. Cela concerne surtout les invités Windows et Solaris, + mais probablement également certaines révisions du noyau Linux. + Corrigé partiellement dans la 3.0.12 pour les invités Windows NT, + 2000, XP et 2003 32 bits. Exige l'installation des suppléments + invité 3.0.12 ou supérieur.</para> + </listitem> + </itemizedlist></para> + </listitem> + + <listitem> + <para><emphasis role="bold">NX (ne s'éxécute pas ou empêche le traitement de + données)</emphasis> ne fonctionne que sur les invités en fonction + sur des hôtes 64 bits ou sur des hôtes 32 bits ayant activé PAE et la + virtualisation matérielle doit être activée.</para> + </listitem> + <listitem> + <para>Pour que le <emphasis role="bold">support Direct3D de base dans + les invités Windows</emphasis> fonctionne, il faut installer les suppléments + invité en mode "sans échec" dans Windows. Appuyez sur F8 quand + l'invité Windows démarre et sélectionnez "Mode sans échec", puis installez + les suppléments invité. Sans cela, le mécanisme de protection des + fichiers de Windows interfèrera dans le remplacement des DLLs + installés par VirtualBox et il restaurera les DLLs du système Windows + d'origine. <note> + <para>Cela <emphasis role="bold">ne s'applique pas</emphasis> au pilote + graphique expérimental Direct3D WDDM disponible pour les invités Vista + et Windows 7 inclu avec VirtualBox 4.1.</para> + </note></para> + </listitem> + + <listitem> + <para><emphasis role="bold">contrôle de l'invité.</emphasis> Sur les + invités Windows, un processus lancé via le support d'exécution du + contrôle de l'invité ne pourra pas afficher d'interface graphique, + <emphasis>sauf</emphasis> si le compte utilisateur sous lequel il est + lancé est connecté et s'il a une session de bureau.</para> + + <para>En outre, pour utiliser des comptes avec ou sans mot de passe + vide, vous devez modifier la politique de groupe de l'invité. Pour ce + faire, ouvrez un éditeur des règles de groupes en ligne de commande + en tapant <computeroutput>gpedit.msc</computeroutput>, ouvrez la clé + <emphasis>Computer Configuration\Windows Settings\Security + Settings\Local Policies\Security Options</emphasis> et passez la + valeur de <emphasis>Accounts: Limit local account use of blank passwords to + console logon only</emphasis> en <emphasis>Disabled</emphasis>.</para> + </listitem> + + <listitem> + <para><emphasis role="bold">La compression d'images de disques virtuels + est limitée aux fichiers VDI.</emphasis> La commande <code>VBoxManage modifyhd --compact</code> + n'est actuellement implémentée que pour les fichiers VDi. Pour l'instant, + la seule façon d'optimiser la taille des images de disques virtuels + dans d'autres formats (VMDK, VHD) est de cloner l'image puis d'utiliser + l'image clonée dans la configuration de la VM.</para> + </listitem> + + <listitem> + <para><emphasis role="bold">import/export d'OVF :</emphasis><itemizedlist> + <listitem> + <para>La particularisation des OVF (plusieurs langues dans un fichier + OVF) n'est pas encore supportée.</para> + </listitem> + + <listitem> + <para>Certaines sections OVF comme StartupSection, + DeploymentOptionSection et InstallSection sont ignorées.</para> + </listitem> + + <listitem> + <para>Les documents d'environnement OVF, y compris leurs + sections de propriétés et la configuration d'applicatifs avec des + images ISO, ne sont pas encore supportés.</para> + </listitem> + + <listitem> + <para>Les fichiers distants avec HTTP ou d'autres mécanismes ne + sont pas encore supportés.</para> + </listitem> + </itemizedlist></para> + </listitem> + + <listitem> + <para>Ni le <emphasis role="bold">mode échelonné</emphasis> ni <emphasis + role="bold">le mode transparent</emphasis> ne fonctionnent bien avec les + invités qui utilisent les fonctions 3D d'OpenGL (telles que celles + avec les gestionnaires de fenêtres ayant activé compiz).</para> + </listitem> + + <listitem> + <para>Le serveur RDP du pack d'extension de VirtualBox ne supporte que + les flux audio au format 22.05kHz stereo 16 bit. Si le client RDP + demande d'autres formats de son, ils ne seront pas sonores.</para> + </listitem> + + <listitem> + <para>La préservation de l'apparence de l'affichage en mode échelonné + ne fonctionne que sur les hôtes Windows et sur les hôtes Mac OS X.</para> + </listitem> + + <listitem> + <para>Sur les <emphasis role="bold">hôtes Mac OS X,</emphasis> les + fonctions suivantes ne sont pas encore implémentées :</para> + + <para><itemizedlist> + <listitem> + <para>Émulation du verrouillage numérique</para> + </listitem> + + <listitem> + <para>Mesure de la fréquence du processeur</para> + </listitem> + + <listitem> + <para>Jeu de ballon avec la mémoire</para> + </listitem> + </itemizedlist></para> + </listitem> + + <listitem> + <para><emphasis role="bold">Invités Mac OS X :</emphasis> + <itemizedlist> + <listitem> + <para>Les invités Mac OS X ne peuvent fonctionner que sur un + certain matériel hôte. Pour des détails sur les limites de la + licence et du matériel hôte, merci de voir <xref linkend="intro-macosxguests" /> + et vérifiez les conditions de la licence logicielle d'Apple.</para> + </listitem> + + <listitem> + <para>VirtualBox n'offre pas de suppléments invité pour Mac OS X + pour l'instant.</para> + </listitem> + + <listitem> + <para>La résolution graphique est par défaut de 1024x768 car + Mac OS X se rabat sur le support d'affichage EFI intégré. Voir + <xref linkend="efividmode" /> pour plus d'informations sur la façon + de modifier les modes graphiques EFI.</para> + </listitem> + <listitem> + <para>Les invités Mac OS X ne fonctionnent qu'avec un processeur + sur une VM. Le support du SMP sera fourni dans une version + future.</para> + </listitem> + + <listitem> + <para>Selon votre système et votre version de Mac OS X, vous pourriez + connaître des plantages de l'invité après quelque temps. Vous + pouvez corriger cela en désactivant l'économie d'énergie (passez + le timeout à "Never" (jamais)) dans les préférences du système.</para> + </listitem> + + <listitem> + <para>Par défaut, l'EFI de VirtualBox active la sortie de débogage + du noyau Mac OS X pour vous aider à diagnostiquer les problèmes + de démarrage. Remarquez qu'il y a de nombreux messages et toutes + les erreurs ne sont pas fatales (elles s'afficheraient aussi + sur votre Mac physique). Vous pouvez désactiver ces messages en + lançant cette commande :<screen>VBoxManage setextradata "nom VM" "VBoxInternal2/EfiBootArgs" " "</screen>Pour + revenir à l'ancien comportement, utilisez :<screen>VBoxManage setextradata "nom VM" "VBoxInternal2/EfiBootArgs" ""</screen></para> + </listitem> + + <listitem> + <para>Il n'est actuellement pas possible de démarrer un invité + Mac OS X en mode sécurité en spécifiant l'option "-x" dans la donnée + externe "VBoxInternal2/EfiBootArgs".</para> + </listitem> + </itemizedlist></para> + </listitem> + + <listitem> + <para><emphasis role="bold">Hôtes Solaris :</emphasis> <itemizedlist> + <listitem> + <para>Il n'y a pas de support des périphériques USB connectés aux + hôtes Solaris 10.</para> + </listitem> + + <listitem> + <para>Le support USB sur les hôtes Solaris exige Solaris version + 11 snv_124 ou supérieur. Les Webcams et les autres périphériques + de temps (isochronous) sont connus pour donner de faibles + performances.</para> + </listitem> + + <listitem> + <para>Le passthrough de la webcam hôte se limite aux résolutions + 640x480 avec 20 images par secondes à cause de limites de l'API + V4L2 de Solaris. Il se peut que cela change dans une future + version de Solaris.</para> + </listitem> + <listitem> + <para>Aucune informations d'ACPI (état de la batterie, source + d'énergie) n'est signalée à l'invité.</para> + </listitem> + + <listitem> + <para>Pas de support des adaptateurs wifi avec le réseau bridgé.</para> + </listitem> + + <listitem> + <para>Le réseau bridgé basé sur Crossbow sur les hôtes Solaris + ne fonctionne pas directement avec les liens agrégés. Cependant, + vous pouvez créer à la main un VNIC (en utilisant + <computeroutput>dladm</computeroutput>) via le lien agrégé et + utilisez-le avec une VM. Cette limite n'exfste pas dans Solaris + 11u1 build 17 et supérieur.</para> + </listitem> + </itemizedlist></para> + </listitem> + + <listitem> + <para><emphasis role="bold">Suppléments invité de la version 4.1, 4.1.2 et 4.1.4 pour Windows</emphasis> + Il se peut que le pilote graphique WDDM de VirtualBox ait été + installé et soit gardé dans le système invité après la désinstallation des + suppléments invité. Cela vient d'un bogue du désinstalleur des suppléments + invité. + + <note> + <para>Cela <emphasis role="bold">ne s'applique pas</emphasis> aux + mises à jour des suppléments invité, c'est-à-dire que l'installation d'une + version des suppléments invité par-dessus une autre fonctionne + correctement.</para> + </note> + Pour résoudre ce problème, vous devriez désinstaller le pilote graphique + WDDM de VirtualBox à la main. Pour cela, ouvrez le gestionnaire de + périphériques et vérifiez si l'adaptateur d'affichage s'appelle + "VirtualBox Graphics Adapter ..". Sinon - il n'y a rien à faire. Si + oui, - faites un clic droit sur VirtualBox Graphics Adapter dans le + gestionnaire de périphériques, sélectionner "Désinstaller", cochez + "Effacer le pilote de ce périphérique" et cliquez sur "OK". Une fois + que la désinstallation est finie - dans le gestionnaire de périphériques, + allez dans le menu "Action" et sélectionnez "Analyser les changements + matériels" pour utiliser le bon pilote (celui par défaut de Windows) + pour l'adaptateur graphique. + </para> + </listitem> + + <listitem> + <para>Ni le pilote <emphasis>virtio</emphasis> ni <emphasis>Intel PRO/1000 + </emphasis> des <emphasis role="bold">invités Windows XP</emphasis> + ne supportent la segmentation hors charge (offloading). Donc, + les invités Windows XP ont des vitesses de transmission plus lentes + que d'autres types d'invités. Reportez-vous à l'article 842264 + du MS Knowledge base pour des informations supplémentaires.</para> + </listitem> + + <listitem> + <para><emphasis role="bold">Suppléments invité pour OS/2.</emphasis> + Les dossiers partagés ne sont pas encore supportés avec les invités + OS/2. De plus, les fenêtres transparentes et le redimensionnement de + l'invité ne seront probablement jamais implémentés à cause de limites + intrinsèques du système graphique d'OS/2.</para> + </listitem> + </itemizedlist> + </sect1> +</chapter> diff --git a/doc/manual/fr_FR/user_Networking.xml b/doc/manual/fr_FR/user_Networking.xml new file mode 100644 index 00000000..a6601ac9 --- /dev/null +++ b/doc/manual/fr_FR/user_Networking.xml @@ -0,0 +1,958 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" +"http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd"> +<chapter id="networkingdetails"> + <title>Le réseau virtuel</title> + <para>Comme indiqué brièvement au <xref linkend="settings-network" />, + VirtualBox fournit jusqu'à huit cartes Ethernet PCI virtuelles pour chaque + machine virtuelle. Pour chaque carte, vous pouvez sélectionner + individuellement<orderedlist> + <listitem> + <para>le matériel virtualisé ainsi que</para> + </listitem> + + <listitem> + <para>le mode de virtualisation effectué par la carte virtuelle par rapport + à votre matériel réseau physique sur l'hôte.</para> + </listitem> + </orderedlist></para> + + <para>Quatre des cartes réseaux peuvent être configurées dans la section + "Réseau" de la boîte de dialogue des paramètres de l'interface graphique de + VirtualBox. Vous pouvez configurer les huit cartes réseaux en ligne de commande + avec VBoxManage modifyvm ; voir <xref linkend="vboxmanage-modifyvm" />.</para> + + <para>Ce chapitre explique les différents paramètres réseaux avec davantage de + détails.</para> + + <sect1 id="nichardware"> + <title>Matériel réseau virtuel</title> + + <para>Pour chaque carte, vous pouvez sélectionner individuellement le type de + <emphasis>matériel</emphasis> qui sera présenté à la machine virtuelle. + VirtualBox peut virtualiser les six types de matériel réseau suivants :<itemizedlist> + <listitem> + <para>AMD PCNet PCI II (Am79C970A) ;</para> + </listitem> + + <listitem> + <para>AMD PCNet FAST III (Am79C973, par défaut) ;</para> + </listitem> + + <listitem> + <para>Intel PRO/1000 MT Desktop (82540EM) ;</para> + </listitem> + + <listitem> + <para>Intel PRO/1000 T Server (82543GC) ;</para> + </listitem> + + <listitem> + <para>Intel PRO/1000 MT Server (82545EM) ;</para> + </listitem> + + <listitem> + <para>Adaptateur réseau paravirtualisé (virtio-net).</para> + </listitem> + </itemizedlist></para> + + <para>PCNet FAST III est celle par défaut parce qu'elle est supportée par + presque tous les systèmes d'exploitation non inclus ainsi que par le chargeur + de démarrage GNU GRUB. Par exception, les adaptateurs de la famille Intel + PRO/1000 ont été choisis pour certains types de systèmes d'exploitation invités + qui n'incluent plus de pilotes pour la carte PCNet, tel que Windows Vista.</para> + + <para>Le type Intel PRO/1000 MT Desktop fonctionne avec Windows Vista et + les versions supérieures. La variante T Server de la carte Intel PRO/1000 + est reconnue par les invités Windows XP sans installer de pilotes supplémentaires. + La variante MT Server facilite les imports d'OVF à partir d'autres plateformes.</para> + + <para><emphasis role="bold">"L'adaptateur réseau paravirtualisé (virtio-net)"</emphasis> + est spécial. Si vous le sélectionnez, VirtualBox <emphasis>ne virtualise pas</emphasis> + du matériel réseau classique (à savoir supporté par les systèmes d'exploitation + invités non intégrés). VirtualBox s'attend alors à ce qu'une interface + logicielle spéciale pour les environnements virtualisés provienne de l'invité, + évitant ainsi la complexité de l'émulation du matériel réseau et de la + performance d'importation du réseau. À partir de la version 3.1, VirtualBox + fournit un support des pilotes réseaux du standard industriel "virtio", qui + font partie du projet libre KVM.</para> + + <para>Les pilotes réseaux "virtio" sont disponibles pour les systèmes + d'exploitation invités suivants :</para> + + <para><itemizedlist> + <listitem> + <para>Les noyaux Linux version 2.6.25 ou supérieur peuvent être configurés + pour fournir le support virtio ; certaines distributions ont + adpaté aussi virtio dans d'anciens noyaux.</para> + </listitem> + + <listitem> + <para>Pour Windows 2000, XP et Vista, les pilotes virtio peuvent être + téléchargés et installés sur la page Web du projet KVM.<footnote> + <para><ulink + url="http://www.linux-kvm.org/page/WindowsGuestDrivers">http://www.linux-kvm.org/page/WindowsGuestDrivers</ulink>.</para> + </footnote></para> + </listitem> + </itemizedlist></para> + + <para>VirtualBox contient aussi un support limité pour ce qu'on appelle + <emphasis role="bold">jumbo frames</emphasis>, c'est-à-dire les paquets + réseaux de plus de 1500 octets de données, si vous utilisez le réseau Intel + de virtualisation bridgé. En d'autres termes, jumbo frames n'est pas + supporté avec les périphériques réseaux AMD ; dans ce cas, les paquets jumbo + seront rejetés en silence tant côté récepteur que transmetteur. + Les systèmes d'exploitation invités qui essaient d'utiliser cette fonctionnalité + verront cela comme une perte de paquets, ce qui peut provoquer un comportement + inattendu de l'application dans l'invité. Cela ne pose pas de problème avec les + systèmes d'exploitation invités dans leur configuration par défaut, vu que + jumbo frames doit être explicitement activé.</para> + </sect1> + + <sect1 id="networkingmodes"> + <title>Introduction aux modes réseaux</title> + + <para>Chacun des huit adaptateurs réseaux peut être configuré séparément + pour agir dans l'un des modes suivants :<glosslist> + <glossentry> + <glossterm>Non attaché</glossterm> + + <glossdef> + <para>Dans ce mode, VirtualBox dit à l'invité qu'une carte réseau est + présente, mais qu'il n'y a pas de connexion -- comme si aucun câble + Ethernet n'était branché dans la carte. De cette façon, il est possible + de "retirer" le câble réseau virtuel Ethernet et de couper la + connexion, ce qui peut être utile pour informer un système d'exploitation + invité qu'aucune connexion réseau n'est disponible et forcer une + reconfiguration.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>Network Address Translation (NAT)</glossterm> + + <glossdef> + <para>Si vous ne voulez que naviguer sur le Web, télécharger des + fichiers et lire des messages dans l'invité, ce mode par défaut devrait + vous suffir et vous pouvez sauter sans souci le reste de cette + section. Merci de remarquer qu'il existe certaines limitations quand + on utilise le partage de fichiers Windows (voir <xref linkend="nat-limitations" /> + pour des détails).</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>Réseau NAT</glossterm> + + <glossdef> + <para>Le réseau NAT est une nouvelle forme de NAT introduite dans + VirtualBox 4.3. Voir + <xref linkend="network_nat_service" xrefstyle="template: %n" /> + pour les détails.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>Réseau avec pont</glossterm> + + <glossdef> + <para>Ceci est pour les besoins réseaux plus avancés tels que des + simulations de réseaux et des exécutions de serveurs dans un + invité. Lorsque vous l'activez, VirtualBox se connecte à une de + vos cartes réseaux installées et il échange des paquets réseaux + directement, dépassant la pile réseau du système d'exploitation de + votre hôte.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>Réseau interne</glossterm> + + <glossdef> + <para>On peut l'utiliser pour créer un type différent de réseau sur + une base logicielle, visible pour les machines sélectionnées, mais pas + pour les applications de l'hôte ou du monde extérieur.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>Réseau Host-only</glossterm> + + <glossdef> + <para>On peut l'utiliser pour créer un réseau contenant l'hôte et un + ensemble de machines virtuelles, sans avoir besoin de l'interface + réseau physique de l'hôte. À la place, une interface réseau virtuelle + (identique à une interface loopback) est créée sur l'hôte, offrant + une connectivité entre les machines virtuelles et l'hôte.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>Réseau générique</glossterm> + + <glossdef> + <para>Mode rarement utilisé, il partage la même interface réseau + générique en permettant à l'utilisateur de sélectionner un pilote qui + peut être inclu dans VirtualBox ou distribué dans un pack d'extension.</para> + + <para>Pour l'instant, il existe potentiellement deux sous-modes + disponibles :</para> + + <para><glosslist> + <glossentry> + <glossterm>Tunnel UDP</glossterm> + + <glossdef> + <para>On peut l'utiliser pour interconnecter directement, + facilement et de manière transparente des machines + virtuelles qui fonctionnent sur différents hôtes, via une + infrastructure réseau existante.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>Réseau VDE (Virtual Distributed Ethernet)</glossterm> + + <glossdef> + <para>Cette option peut être utilisée pour se connecter à + un service Ethernet distribué virtuel sur un hôte Linux ou + FreeBSD. Pour l'instant ceci nécessite de compiler VirtualBox + à partir des sources car les paquets d'Oracle ne l'incluent + pas.</para> + </glossdef> + </glossentry> + </glosslist></para> + </glossdef> + </glossentry> + </glosslist></para> + + <para>Les sections suivantes décrivent les modes réseaux disponibles avec plus de + détails.</para> + </sect1> + + <sect1 id="network_nat"> + <title>Network Address Translation (NAT)</title> + + <para>Network Address Translation (NAT) est la manière la plus simple d'accéder + à un réseau externe à partir d'une machine virtuelle. Habituellement, cela + n'exige aucune configuration sur le réseau hôte ou le système invité. C'est + pourquoi c'est le mode réseau par défaut de VirtualBox.</para> + + <para>Une machine virtuelle où NAT est activé agit exactement comme un vrai + ordinateur qui se connecte à Internet par un routeur. Le "routeur", dans + ce cas, est le moteur réseau de VirtualBox, qui dirige le trafic depuis et + vers la machine virtuelle de façon transparente. Dans VirtualBox, ce routeur + se place entre chaque machine virtuelle et l'hôte. Cette séparation maximise + la sécurité puisque, par défaut, les machines virtuelles ne peuvent pas se + parler.</para> + + <para>L'inconvénient du mode NAT est que, comme dans un réseau privé, + derrière un routeur, la machine virtuelle est invisible et injoignable + depuis le réseau extérieur ; vous ne pouvez pas lancer de serveur de + cette façon, sauf si vous réglez une redirection de ports (décrite ci-dessous).</para> + + <para>Les trames réseaux envoyés par le système d'exploitation invité sont reçus + par le moteur NAT de VirtualBox qui extrait les données TCP/IP et les envoie + en utilisant le système d'exploitation hôte. Pour une application de l'hôte + ou un autre ordinateur du même réseau comme l'hôte, cela fonctionne comme + si des données étaient envoyées par l'application VirtualBox de l'hôte, + en utilisant une adresse IP appartenant à l'hôte. VirtualBox écoute les + réponses aux paquets envoyés et les réempaquète et les renvoie à la machine invitée + sur son réseau privé.</para> + + <para>La machine virtuelle reçoit son adresse et sa configuration réseau + sur le réseau privé à partir d'un serveur DHCP intégré à VirtualBox. L'adresse + IP ainsi affectée à la machine virtuelle se trouve en général sur un réseau + complètement différent de l'hôte. On peut paramétrer l'utilisation de NAT + pour autant de cartes dont dispose la machine virtuelle, la première carte est + connectée au réseau privé sur 10.0.2.0, la deuxième carte sur 10.0.3.0 et + ainsi de suite. Si vous avez besoin de modifier la plage d'adresses affectées + à l'invité pour une raison quelconque, merci de vous reporter à la + <xref linkend="changenat" />.</para> + + <sect2 id="natforward"> + <title>Configurer la redirection de ports avec NAT</title> + + <para>Comme la machine virtuelle est connectée à un réseau privé interne + de VirtualBox et invisible pour l'hôte, les services réseaux de l'invité + ne sont pas accessibles à la machine hôte ou à d'autres ordinateurs du + même réseau. Cependant, comme un routeur physique, VirtualBox peut rendre + disponibles des services sélectionnés pour le monde extérieur à l'invité + via la <emphasis role="bold">redirection de port.</emphasis> Cela veut + dire que VirtualBox écoute certains ports sur l'hôte et renvoie tous les + paquets qui y arrivent vers l'invité, sur le même port ou sur un autre.</para> + + <para>Pour une application de l'hôte ou d'autres machines physiques (ou + virtuelles) du réseau, cela fonctionne comme si les services étaient + derrière un proxy qui tournerait en fait sur l'hôte. Cela signifie également + que vous ne pouvez pas lancer le même service sur les mêmes ports de + l'hôte. Néanmoins, vous pouvez toujours tirer parti de lancer un service + dans une machine virtuelle -- par exemple, les services de la machine hôte + ou d'autres machines virtuelles ne peuvent pas être atteints ou plantés + par une faille ou un bogue du service, et le service peut fonctionner dans + un autre système d'exploitation que le système hôte.</para> + + <para>Pour configurer la redirection de ports, vous pouvez utiliser l'éditeur + graphique de redirection de ports que vous trouverez dans la boîte de + dialogue des paramètres réseaux des adaptateurs réseaux configurés pour + utiliser NAT. Vous pouvez y orienter les ports de l'hôte vers les ports de + l'invité pour permettre au trafic réseau d'être acheminé sur un port + spécifique de l'invité.</para> + + <para>Vous pourriez utiliser un autre outil en ligne de commande, + <computeroutput>VBoxManage</computeroutput> ; pour les détails, merci + de vous reporter au <xref linkend="vboxmanage-modifyvm" />.</para> + + <para>Vous devrez connaître les ports de l'invité utilisés par les services + de l'invité et décider des ports à utiliser sur l'hôte (souvent, mais pas + toujours, vous voudrez utiliser les mêmes ports sur l'invité et sur l'hôte). + Vous pouvez utiliser n'importe quel port de l'hôte qui ne sont pas déjà + utilisés par un service. Par exemple, pour régler les connexions NAT + entrantes pour un serveur <computeroutput>ssh</computeroutput> de + l'invité, utilisez la commande suivante : <screen>VBoxManage modifyvm "nom VM" --natpf1 "guestssh,tcp,,2222,,22"</screen>Avec + l'exemple ci-dessus, tout le trafic TCP arrivant sur le port 2222 de + n'importe quelle interface de l'hôte sera redirigé sur le port 22 de + l'invité. Le nom du protocole <computeroutput>tcp</computeroutput> est un + attribut obligatoire définissant le protocole à utiliser pour + la redirection (on pourrait utiliser <computeroutput>udp</computeroutput>). + Le nom <computeroutput>guestssh</computeroutput> est purement descriptif + et il sera auto-généré si vous n'en mettez pas. Le numéro après + <computeroutput>--natpf</computeroutput> indique la carte réseau, comme + dans d'autres endroits de VBoxManage.</para> + + <para>Pour supprimer de nouveau cette règle de redirection, utilisez + la commande suivante : + <screen>VBoxManage modifyvm "nom VM" --natpf1 delete "guestssh"</screen></para> + + <para>Si, pour une raison quelconque, l'invité utilise une adresse IP + affectée de manière statique non gérée par le serveur DHCP interne, vous devez + spécifier l'IP de l'invité lors de l'enregistrement de la règle de redirection : + <screen>VBoxManage modifyvm "nom VM" --natpf1 "guestssh,tcp,,2222,10.0.2.19,22"</screen>Cet + exemple est identique au précédent, sauf que qu'on dit au moteur NAT qu'il + peut trouver l'invité à l'adresse 10.0.2.19.</para> + + <para>Pour rediriger <emphasis>tout</emphasis> le trafic rentrant depuis + une interface spécifique de l'hôte sur l'invité, spécifiez l'IP de cette + interface de l'hôte comme ceci :<screen>VBoxManage modifyvm "nom VM" --natpf1 "guestssh,tcp,127.0.0.1,2222,,22"</screen>Ceci + redirige tout le trafic TCP arrivant sur l'interface localhost (127.0.0.1) + via le port 2222 sur le port 22 de l'invité.</para> + + <para>Il est possible de configurer les connexions NAT entrantes pendant + que la VM est en fonction, voir <xref linkend="vboxmanage-controlvm"/>.</para> + </sect2> + + <sect2 id="nat-tftp"> + <title>Démarrer avec PXE et NAT</title> + + <para>Le démarrage avec PXE est désormais supporté en mode NAT. Le serveur + DHCP de NAT fournit un fichier d'amorçage dont le nom ressemble à + <computeroutput>nomvm.pxe</computeroutput> si le répertoire + <computeroutput>TFTP</computeroutput> existe dans le répertoire où se trouve + le fichier <computeroutput>VirtualBox.xml</computeroutput> de l'utilisateur. + L'utilisateur est chargé de fournir + <computeroutput>nomvm.pxe</computeroutput>.</para> + </sect2> + + <sect2 id="nat-limitations"> + <title>Limites du NAT</title> + + <para>Il y a quatre <emphasis role="bold">limites</emphasis> du mode + NAT que les utilisateurs devraient connaître :</para> + + <glosslist> + <glossentry> + <glossterm>Limite du protocole ICMP :</glossterm> + + <glossdef> + <para>Certains outils de débogage réseau souvent utilisés (comme + <computeroutput>ping</computeroutput> ou tracerouting) s'appuient + sur le protocole ICMP pour envoyer/recevoir des messages. Si le support + ICMP a été amélioré avec VirtualBox 2.1 + (<computeroutput>ping</computeroutput> devrait maintenant fonctionner), + d'autres outils peuvent ne pas marcher de manière fiable.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>La réception des broadcasts UDP n'est pas fiable :</glossterm> + + <glossdef> + <para>L'invité ne reçoit pas de broadcasts fiables car, pour économiser + des ressources, il n'écoute qu'un certain temps après que l'invité a + envoyé des données UDP sur un port particulier. En conséquence, + la résolution de nom NetBios basée sur les broadcasts ne fonctionne + pas toujours (mais WINS fonctionne toujours). Un contournement est + d'utiliser l'IP numérique du serveur désiré en notation + <computeroutput>\\server\share</computeroutput>.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>Les protocoles tels que GRE ne sont pas supportés :</glossterm> + + <glossdef> + <para>Les protocoles autres que TCP et UDP ne sont pas supportés. + Cela signifie que certains produits VPN (comme PPTP de Microsoft) + ne peuvent pas être utilisés. Il existe d'autres produits VPN qui + utilisent simplement TCP et UDP.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>Redirection des ports de l'hôte < 1024 impossible :</glossterm> + + <glossdef> + <para>Sur les hôtes basés sur Unix, (comme Linux, Solaris, Mac OS X), + il n'est pas possible de trouver des ports en-dessous de 1024 pour + les applications non lancées par <computeroutput>root</computeroutput>. + Il s'en suit que si vous essayez de configurer la redirection de tels + port, la VM refusera de démarrer.</para> + </glossdef> + </glossentry> + </glosslist> + + <para>Ces limites ne concernent normalement pas les utilisations standards + du réseau. Mais la présence de NAT a également des effets subtils qui + peuvent interférer avec des protocoles qui, en principe, fonctionnent. Un + exemple est NFS, où le serveur est souvent configuré pour refuser les + connexions depuis des ports non privilégiés (donc les ports qui ne sont pas + inférieurs à 1024).</para> + </sect2> + </sect1> + + <sect1 id="network_nat_service"> + <title>Network Address Translation Service (expérimental)</title> + + <para>Le service Network Address Translation (NAT) fonctionne comme un + routeur domestique en regroupant les systèmes qui l'utilisent dans un réseau + et en évitant que les systèmes extérieurs accèdent au sein du réseau + tout en permettant aux systèmes qu'il contient de communiquer entre eux et + avec l'extérieur via TCP et UDP en IPv4 et IPv6.</para> + + <para>Un service NAT est rattaché à un réseau interne. Les machines virtuelles + qui doivent l'utiliser devraient être branchées au réseau interne. Le nom du + réseau interne se choisit à la création du service NAT et le réseau interne + sera créé s'il n'existe pas déjà. Voici un exemple de commande pour créer + un réseau NAT : + </para> + <para><screen>VBoxManage natnetwork add -t nat-int-network -n "192.168.15.0/24" -e</screen></para> + <para> + Ici, "nat-int-network" est le nom du réseau interne à utiliser et + "192.168.15.0/24" est l'adresse du réseau et l'interface du masque du service NAT. + Dans cette configuration statique, par défaut, l'adresse affectée à la passerelle sera + 192.168.15.1 (adresse suivant celle de l'interface), bien que cela soit sujet + à changement. Pour connecter un serveur DHCP au réseau interne, nous + modifions l'exemple comme suit :</para> + <para><screen>VBoxManage natnetwork add -t nat-int-network -n "192.168.15.0/24" -e -h on</screen></para> + <para> ou pour ajouter un serveur DHCP au réseau après l'avoir créé :</para> + <para><screen>VBoxManage natnetwork modify -t nat-int-network -h on</screen></para> + <para>Pour le désactiver à nouveau, utilisez :</para> + <para><screen>VBoxManage natnetwork modify -t nat-int-network -h off</screen></para> + <para>Le serveur DHCP fournit la liste des noms de serveurs enregistrés + mais n'identifie pas les serveurs du réseau 127/8.</para> + + <para>Pour démarrer le service NAT, utilisez la commande suivante :</para> + <para><screen>VBoxManage natnetwork start -t nat-int-network</screen></para> + <para>Si un serveur DHCP est connecté au réseau, il démarrera avec le + service réseau NAT.</para> + <para><screen>VBoxManage natnetwork stop -t nat-int-network</screen> arrête + le service réseau NAT ainsi que le serveur DHCP s'il y en a un.</para> + <para>Pour effacer le service réseau NAT, utilisez :</para> + <para><screen>VBoxManage natnetwork remove -t nat-int-network</screen></para> + <para>Cette commande ne supprime pas le serveur DHCP s'il y en a un actif + sur le réseau interne.</para> + <para>La redirection de Ports est supportée (en utilisant le paramètre "-p" + pour + switch for IPv4 et "-P" pour IPv6) :</para> + <para><screen>VBoxManage natnetwork modify -t nat-int-network -p "ssh:tcp:[]:10022:[192.168.15.15]:22"</screen></para> + <para>Ceci ajoute une règle de redirection de pots depuis le 10022 TCP de + l'hôte vers le 22 de l'invité ayant l'adresse IP 192.168.15.15. Pour + effacer la règle, utilisez :</para> + <para><screen>VBoxManage natnetwork modify -t nat-int-network -p delete ssh</screen></para> + <para>Il est possible d'associer un service NAT à l'interface désirée :</para> + <screen>VBoxManage setextradata global "NAT/win-nat-test-0/SourceIp4" 192.168.1.185</screen> + <para>Pour voir la liste des réseaux NAT enregistrés, utilisez :</para> + <para><screen>VBoxManage list natnetworks</screen></para> + </sect1> + + <sect1 id="network_bridged"> + <title>Réseau Bridgé</title> + + <para>Avec le réseau bridgé, VirtualBox utilise un pilote de périphérique + sur votre système <emphasis>hôte</emphasis> qui filtre les données de votre + adaptateur réseau physique. Ce pilote s'appelle donc un pilote "net filter". + Il permet à VirtualBox d'intercepter les données du réseau physique et + d'y envoyer des données, ce qui crée de fait une nouvelle interface réseau + logicielle. Quand un invité utilise une telle interface, cela se passe, + sur le système hôte, comme si l'invité était connecté physiquement à + l'interface réseau en utilisant un câble réseau : l'hôte peut envoyer + des données à l'invité via cette interface et en reçoit des données. Cela + veut dire que vous pouvez régler du routage ou des ponts entre l'invité et le + reste de votre réseau.</para> + + <para>Pour que cela fonctionne, VirtualBox a besoin d'un pilote de périphérique + sur votre système hôte. La manière dont fonctionne le réseau bridgé a été + complètement réécrite avec VirtualBox 2.0 et 2.1, selon le système d'exploitation + hôte. Du point de vue utilisateur, la principale différence est qu'une + configuration complexe n'est plus nécessaire, quel que soit le système + d'exploitation hôte supporté.<footnote> + <para>Pour les hôtes Mac OS X et Solaris, les pilotes net filter étaient + déjà ajoutés à VirtualBox 2.0 (vu que le support de Host Interface + Networking existait à l'origine sur ces plateformes). Avec VirtualBox 2.1, + les pilotes net filter ont été également ajoutés pour les hôtes Windows + et Linux à la place des mécanismes précédemment présents dans VirtualBox + pour ces plateformes ; surtout sur Linux, l'ancienne méthode impliquait + de créer des interfaces TAP et des ponts, ce qui était complexe et + variait d'une distribution à l'autre. Rien de tout cela n'est désormais + nécessaire. Le réseau bridgé s'appelait jadis "Host Interface Networking" + et on l'a renommé avec la version 2.2 sans changer ses fonctionnalités.</para> + </footnote></para> + + <para><note> + <para>Même si TAP n'est plus nécessaire sur Linux avec le réseau bridgé, + vous <emphasis>pouvez</emphasis> toujours utiliser les interfaces TAP + pour certains paramétrages avancés puisque vous pouvez connecter une VM + à n'importe quel interface de l'hôte -- qui pourrait être également une + interface TAP.</para> + </note>Pour activer le réseau bridgé, tout ce que vous devez faire est + d'ouvrir la boîte de dialogue des paramètres d'une machine virtuelle, d'aller + sur l'onglet "Réseau" et de sélectionner "Réseau bridgé" dans la boîte + à liste déroulante du champ "Attaché à". Au départ, sélectionnez l'interface + désirée de l'hôte dans la liste en bas de la fenêtre, qui contient les + interfaces réseaux physiques de vos systèmes. Sur un MacBook physique, par + exemple, cela vous permettra de choisir entre "en1: + AirPort" (qui est l'interface sans fil) et "en0: Ethernet", qui représente + l'interface avec câble réseau.</para> + + <note><para>Créer un pont avec une interface sans fil se fait différemment + d'avec une interface filaire, car la plupart des adaptateurs sans fil ne + supportent pas le mode promiscuous. Tout le trafic doit utiliser l'adresse + MAC de l'adaptateur sans fil de l'hôte, donc VirtualBox doit remplacer + l'adresse MAC source dans l'en-tête Ethernet d'un paquet sortant pour + s'assurer que la réponse sera envoyée à l'interface hôte. Quand VirtualBox + voit un paquet entrant ayant pour adresse IP de destination celle + appartenant à un des adaptateurs d'une machine virtuelle, il remplace + l'adresse MAC de destination dans l'en-tête Ethernet par l'adresse MAC de + l'adaptateur de la VM et il l'envoie. + VirtualBox examine les paquets ARP et DHCP afin de découvrir les adresses + IP des machines virtuelles.</para></note> + + <para>Selon votre système d'exploitation hôte, vous devriez garder en tête + les limites suivantes :<itemizedlist> + <listitem> + <para>Sur les hôtes <emphasis role="bold">Macintosh</emphasis>, + la fonctionnalité est limitée quand on utilise AirPort (le réseau sans + fil de Mac) pour du réseau bridgé. Actuellement, VirtualBox ne supporte + l'IPv4 qu'avec AirPort. Pour les autres protocoles tels qu'IPv6 et IPX, + vous devez choisir une interface filaire.</para> + </listitem> + + <listitem> + <para>Sur les hôtes <emphasis role="bold">Linux</emphasis>, la + fonctionnalité est limitée quand on utilise les interfaces sans fil pour + le réseau bridgé. Actuellement, VirtualBox supporte le sans fil qu'en + IPv4. Pour les autres protocoles tels qu'IPv6 et IPX, vous devez + choisir une interface filaire.</para> + + <para>De plus, le paramétrage du MTU sur moins de 1500 octets sur + les interfaces filaires fournies par le pilote sky2 sur les Marvell Yukon II EC + Ultra Ethernet NIC est connu pour provoquer une perte de paquets dans + certaines conditions.</para> + + <para>Certains adaptateurs nettoient les tags VLAN matériellement. Cela + ne permet pas d'utiliser le troncage de VLAN entre une VM et le réseau + externe avec les noyaux Linux pre-2.6.27, ni avec les systèmes d'exploitation + hôtes autres que Linux.</para> + </listitem> + + <listitem> + <para>Sur les hôtes <emphasis role="bold">Solaris</emphasis>, il n'y + a aucun support pour utiliser les interfaces sans fil. Le filtrage + du trafic de l'invité par IPFilter n'est pas complètement supporté non + plus à cause de restrictions techniques du sous-système réseau de + Solaris. Ces problèmes devraient être résolus dans la future version + Solaris 11.</para> + + <para>À partir de VirtualBox 4.1, sur les hôtes Solaris 11 (construction + 159 et supérieur), il est possible d'utiliser les Crossbow Virtual Network + Interfaces (VNICs) de Solaris directement, avec VirtualBox, sans + configuration dépassant l'exclusivité de chaque VNIC pour chaque + interface réseau de l'invité.</para> + + <para>De VirtualBox 2.0.4 à VirtualBox 4.0, VNICs + peuvent être utilisés, mais avec les précautions suivantes :</para> + + <itemizedlist> + <listitem> + <para>Un VNIC ne peut pas être partagé entre plusieurs + interfaces réseaux invitées, c'est-à-dire que chaque interface réseau + invitée doit avoir son propre et exclusif VNIC.</para> + </listitem> + + <listitem> + <para>Il faut affecter au VNIC et à l'interface réseau invitée qui utilise + VNIC des adresses MAC identiques.</para> + </listitem> + </itemizedlist> + + <para>Quand on utilise des interfaces VLAN avec VirtualBox, il faut + les nommer selon le schéma de nommage PPA-hack (par exemple "e1000g513001"), + sans quoi l'invité pourrait recevoir des paquets dans un + format imprévu.</para> + </listitem> + </itemizedlist></para> + </sect1> + + <sect1 id="network_internal"> + <title>Réseau interne</title> + + <para>Le réseau interne est identique à celui bridgé dans le sens où la VM + peut communiquer directement avec le monde extérieur. Toutefois, le "monde + extérieur" se limite aux autres VMs sur le même hôte et connectées au même + réseau interne.</para> + + <para>Même si, techniquement, on peut faire tout ce qu'on fait avec un réseau interne + sur un réseau bridgé, il présente des avantages de sécurité. En mode réseau + bridgé, tout le trafic passe par l'interface physique du système hôte. Il est + donc possible d'attacher un snifeur de paquets (tel que Wireshark) à + l'interface hôte et d'enregistrer tout le trafic qui y transite. Si, pour + une raison quelconque, vous préférez que deux ou plusieurs VMs sur une même + machine communiquent en privé, en cachant leurs données au système et à + l'utilisateur hôtes, le réseau bridgé n'est donc pas envisageable.</para> + + <para>Les réseaux internes sont créés automatiquement au besoin + c'est-à-dire qu'il n'y a pas de configuration centrale. Chaque réseau interne + est identifié simplement par son nom. Une fois qu'il y a plus d'une carte + réseau virtuelle active avec le même ID réseau interne, le pilote + de VirtualBox "branchera" automatiquement les cartes et agira comme un switch. + Les pilotes de VirtualBox implémentent un switch Ethernet complet + et supportent les frames broadcast/multicast et le mode promiscuous.</para> + + <para>Afin d'attacher la carte réseau d'une VM à un réseau interne, réglez + son mode réseau sur "réseau interne". Il existe 2 manières de + faire cela :</para> + + <para><itemizedlist> + <listitem> + <para>Vous pouvez utiliser une boîte de dialogue "Paramètres" de la VM + dans l'interface graphique de VirtualBox. Dans la catégorie "Réseau" + de la boîte de dialogue des paramètres, sélectionnez "réseau interne" + dans la liste déroulante des modes réseaux. Maintenant, sélectionnez + le nom d'un réseau interne existant dans la liste déroulante en-dessous + ou tapez un nouveau nom dans la zone d'édition.</para> + </listitem> + + <listitem> + <para>Vous pouvez utiliser <screen>VBoxManage modifyvm "nom VM" --nic<x> intnet</screen> + Éventuellement, vous pouvez spécifier un nom de réseau par la commande + <screen>VBoxManage modifyvm "nom VM" --intnet<x> "nom réseau"</screen> + Si vous ne spécifiez pas de nom réseau, la carte réseau sera + attachée au réseau <computeroutput>intnet</computeroutput> par défaut.</para> + </listitem> + </itemizedlist></para> + + <para>Sauf si vous configurez les cartes réseaux (virtuelles) dans les + systèmes d'exploitation invités qui participent au réseau interne pour utiliser + des adresses IP statiques, vous pourriez vouloir utiliser le serveur DHCP + qui est construit dans VirtualBox pour gérer des adresses IP pour le réseau + interne. Merci de voir <xref linkend="vboxmanage-dhcpserver" /> pour des + détails.</para> + + <para>Par mesure de sécurité, l'implémentation Linux du réseau interne + n'autorise que les VMs en fonction sous le même utilisateur à établir + un réseau interne.</para> + </sect1> + + <sect1 id="network_hostonly"> + <title>Réseau Host-only</title> + + <para>Le réseau Host-only est un autre mode réseau qui a été ajouté à la + version 2.2 de VirtualBox. On peut le voir comme un mode hybride entre les + modes réseaux bridgé et interne : comme en réseau bridgé, les machines + virtuelles peuvent se parler entre elles et avec l'hôte comme si elles étaient + connectées à un commutateur Ethernet physique. Au contraire, comme avec un + réseau interne, il faut une interface réseau physique et les machines virtuelles + ne peuvent pas parler au monde extérieur à l'hôte puisqu'elles ne sont pas + connectées à une interface réseau physique.</para> + + <para>Quand on utilise le mode réseau host-only, VirtualBox crée une nouvelle + interface logicielle sur l'hôte qui apparaît alors à côté de vos interfaces + réseaux existantes. En d'autres termes, alors que le réseau bridgé et que + l'interface physique existante sont utilisés pour y attacher des machines virtuelles, + avec le réseau host-only, une nouvelle interface "loopback" est créée sur l'hôte. + Et alors qu'avec le réseau interne, le trafic entre les machines virtuelles + n'est pas visible, le trafic sur l'interface "loopback" de l'hôte peut être + intercepté.</para> + + <para>Le réseau Host-only est particulièrement utile pour les applicatifs + virtuels préconfigués où plusieurs machines virtuelles sont groupées et conçues + pour collaborer. Par exemple, une machine virtuelle peut contenir un + serveur web et une deuxième une base de données, et comme elles sont faites + pour se parler, l'applicatif peut demander à VirtualBox de définir un réseau + host-only pour les deux. Un deuxième réseau (bridgé) connecterait alors le + serveur web au monde extérieur pour offrir des données, mais le monde extérieur + ne peut pas se connecter à la base de données.</para> + + <para>Pour passer l'interface réseau d'une machine virtuelle en mode "host + only" :<itemizedlist> + <listitem> + <para>soit allez sur l'onglet "Réseau" de la boîte de dialogue + des paramètres de la machine virtuelle dans l'interface graphique et + sélectionnez "réseau host-only", soit</para> + </listitem> + + <listitem> + <para>en ligne de commandes, taper <computeroutput>VBoxManage modifyvm + "nom VM" --nic<x> hostonly</computeroutput> ; voir <xref + linkend="vboxmanage-modifyvm" /> pour les détails.</para> + </listitem> + </itemizedlist></para> + + <para>Pour le réseau host-only, comme avec le réseau interne, vous pouvez + trouver utile que le serveur DHCP soit construit dans VirtualBox. Il peut être activé + et donc gérer les adresses IP dans le réseau host-only, puisque sans cela, + vous devriez configurer toutes les adresses IP de manière statique.<itemizedlist> + <listitem> + <para>Dans l'interface graphique de VirtualBox, vous pouvez configurer + tous ces éléments dans les paramètres globaux via "Fichier" -> + "Paramètres" -> "Réseau", qui liste tous les réseaux host-only + qui sont actuellement utilisés. Cliquez sur le nom du réseau puis sur + le bouton "Éditer" à droite, et vous pouvez modifier les paramètres + de l'adaptateur et du DHCP.</para> + </listitem> + + <listitem> + <para>Sinon, vous pouvez utiliser <computeroutput>VBoxManage + dhcpserver</computeroutput> en ligne de commandes ; voir <xref + linkend="vboxmanage-dhcpserver" /> pour des détails.</para> + </listitem> + </itemizedlist></para> + <para><note><para>Sur les hôtes Linux et Mac OS X, le nombre d'interfaces + host-only est limité à 128. Il n'y a pas de telles limites sur les hôtes + Solaris et Windows.</para></note></para> + </sect1> + + <sect1 id="network_udp_tunnel"> + <title>Réseau en tunnel UDP</title> + + <para>Ce mode réseau permet d'interconnecter des machines virtuelles qui + fonctionnent sur des hôtes différents.</para> + + <para>Techniquement, cela se fait en encapsulant des trames Ethernet envoyées + ou reçues par la carte réseau de l'invité dans des datagrammes UDP/IP, et + en les envoyant via n'importe quel réseau disponible sur l'hôte.</para> + + <para>Le mode Tunnel UDP a trois paramètres :<glosslist> + <glossentry> + <glossterm>Port source UDP</glossterm> + + <glossdef> + <para>Le port sur lequel écoute l'hôte. Les datagrammess arrivant + sur ce port depuis n'importe quelle adresse source seront redirigés + vers la partie réceptrice de la carte réseau invitée.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>Adresse de destination</glossterm> + + <glossdef> + <para>L'adresse IP de l'hôte cible des données transmises.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>Port de destination UDP</glossterm> + + <glossdef> + <para>Le numéro du port sur lequel sont envoyées les données transmises.</para> + </glossdef> + </glossentry> + </glosslist></para> + + <para>Quand on interconnecte deux machines virtuelles sur deux hôtes différents, + leurs adresses IP doivent être échangées. Sur un seul hôte, les ports UDP + source et de destination doivent être échangés.</para> + + <para>Dans l'exemple suivant, l'hôte 1 utilise l'adresse IP 10.0.0.1 et l'hôte + 2 utilise l'adresse IP 10.0.0.2. La configuration en ligne de commandes :<screen> VBoxManage modifyvm "VM 01 on host 1" --nic<x> generic + VBoxManage modifyvm "VM 01 on host 1" --nicgenericdrv<x> UDPTunnel + VBoxManage modifyvm "VM 01 on host 1" --nicproperty<x> dest=10.0.0.2 + VBoxManage modifyvm "VM 01 on host 1" --nicproperty<x> sport=10001 + VBoxManage modifyvm "VM 01 on host 1" --nicproperty<x> dport=10002</screen> + et <screen> VBoxManage modifyvm "VM 02 on host 2" --nic<y> generic + VBoxManage modifyvm "VM 02 on host 2" --nicgenericdrv<y> UDPTunnel + VBoxManage modifyvm "VM 02 on host 2" --nicproperty<y> dest=10.0.0.1 + VBoxManage modifyvm "VM 02 on host 2" --nicproperty<y> sport=10002 + VBoxManage modifyvm "VM 02 on host 2" --nicproperty<y> dport=10001</screen></para> + + <para>Bien entendu, vous pouvez toujours interconnecter deux machines virtuelles + sur le même hôte en paramétrant le paramètre Adresse de destination sur + 127.0.0.1 sur les deux. Cela agira de la même façon que le "réseau interne" + dans ce cas, cependant l'hôte peut voir le trafic réseau, ce qui ne pourrait + pas être le cas dans un réseau interne normal.</para> + + <para><note><para> + Sur les hôtes basés sur Unix (comme Linux, Solaris, Mac OS X), il + n'est pas possible de sonder les ports inférieurs à 1024 pour des + applications non lancées par <computeroutput>root</computeroutput>. + Il s'en suit que si vous essayez de configurer un tel port source UDP, + la VM refusera de démarrer. + </para></note></para> + </sect1> + + <sect1 id="network_vde"> + <title>Réseau VDE</title> + + <para>Virtual Distributed Ethernet (VDE<footnote> + <para>VDE est un projet développé par Renzo Davoli, Professeur associé + à l'Université de Bologne, Italie.</para> + </footnote>) est une infrastructure réseau flexible et virtuelle, + qui couvre plusieurs hôtes d'une manière sécurisée. Elle permet de basculer + entre L2/L3, y compris l'émulation du protocole spanning-tree, des VLANs + et de WAN. C'est une partie optionnelle de VirtualBox qui n'est incluse + que dans le code source.</para> + + <para>Les blocs à construire de base de l'infrastructure sont les switches + VDE, les prises VDE et les fils VDE qui inter-connectent les switches.</para> + + <para>Le pilote VDE de VirtualBox prend un paramètre :<glosslist> + <glossentry> + <glossterm>Réseau VDE</glossterm> + + <glossdef> + <para>Le nom du socket du switch du réseau VDE auquel la VM + sera connecté.</para> + </glossdef> + </glossentry> + </glosslist></para> + + <para>L'exemple basique suivant montre la manière de connecter une machine + virtuelle à un switch VDE :</para> + + <para><orderedlist> + <listitem> + <para>Créez un switch VDE : <screen>vde_switch -s /tmp/switch1</screen></para> + </listitem> + + <listitem> + <para>Configuration en ligne de commandes : <screen>VBoxManage modifyvm "nom VM" --nic<x> generic</screen> + <screen>VBoxManage modifyvm "nom VM" --nicgenericdrv<x> VDE</screen> + Pour se connecter automatiquement à un port du switch affecté, utilisez : + <screen>VBoxManage modifyvm "nom VM" --nicproperty<x> network=/tmp/switch1</screen> + Pour se connecter à un port du switch spécifique <n>, utilisez : + <screen>VBoxManage modifyvm "nom VM" --nicproperty<x> network=/tmp/switch1[<n>]</screen> + La dernière option est utile pour les VLANs.</para> + </listitem> + + <listitem> + <para>Éventuellement, reliez le port du switch VDE et le VLAN : + (à partir de la ligne de commande du switch) <screen>vde$ vlan/create <VLAN></screen> <screen>vde$ port/setvlan <port> <VLAN></screen></para> + </listitem> + </orderedlist></para> + + <para>VDE n'est disponible sur les hôtes Linux et FreeBSD que si le + logiciel VDE est la bibliothèque supplément VDE du projet VirtualSquare sont + installées sur le système hôte<footnote> + <para>Pour les hôtes Linux, la bibliothèque partagée libvdeplug.so doit + être disponible dans le chemin de recherche des bibliothèques partagées</para> + </footnote>. Pour plus d'informations sur le paramétrage de réseaux VDE, + merci de voir la documentation accompagnant le logiciel.<footnote> + <para><ulink + url="http://wiki.virtualsquare.org/wiki/index.php/VDE_Basic_Networking">http://wiki.virtualsquare.org/wiki/index.php/VDE_Basic_Networking</ulink>.</para> + </footnote></para> + </sect1> + + <sect1 id="network_bandwidth_limit"> + <title>Limiter la bande passante des E/S réseaux</title> + + <para>À partir de la version 4.2, VirtualBox permet de limiter la bande + passante maximum utilisée pour la transmission réseau. Plusieurs adaptateurs + réseaux d'une VM peuvent partager les limites des groupes de bande passante. + Il est possible d'avoir plus d'une limite.</para> + <note><para>VirtualBox ne gère le t!afic de la VM que dans le sens de la + transmission, en faisant attendre les paquets à envoyer par les machines + virtuelles. Il ne limite pas le trafic reçu par les machines virtuelles.</para> + </note> + + <para>On configure les limites avec <computeroutput>VBoxManage</computeroutput>. L'exemple + ci-dessous crée un groupe de bande passante appelé "Limit", paramètre la + limite à 20 Mo/s et affecte le groupe au premier et au deuxième adaptateurs + de la VM :<screen>VBoxManage bandwidthctl "nom VM" add Limit --type network --limit 20m +VBoxManage modifyvm "nom VM" --nicbandwidthgroup1 Limit +VBoxManage modifyvm "nom VM" --nicbandwidthgroup2 Limit</screen></para> + + <para>Tous les adaptateurs d'un groupe partagent la limite de la bande + passante, ce qui veut dire que dans l'exemple ci-dessus, la bande passante + des deux adaptateurs associés ne peut jamais dépasser 20 + Mo/s. Par contre, si un adaptateur n'a pas besoin de bande passante, l'autre + peut utiliser le reste de bande passante de son groupe.</para> + + <para>On peut modifier les limites de chaque groupe pendant que la VM + est en fonction, les changements étant répercutés immédiatement. + L'exemple ci-dessous montre le passage de la limite du groupe créé dans + l'exemple ci-dessus à 100 Ko/s :<screen>VBoxManage bandwidthctl "nom VM" set Limit --limit 100k</screen></para> + + <para>Pour désactiver complètement l'encadrement du premier adaptateur de la + VM, utilisez la commande suivante : + <screen>VBoxManage modifyvm "nom VM" --nicbandwidthgroup1 none</screen></para> + + <para>Il est également possible de désactiver l'encadrement de tous les + adaptateurs affectés à un groupe de bande passante alors que la VM est en + fonction, en spécifiant la limite zéro pour le groupe. Par exemple, + pour le groupe de bande passante nommé "Limit", utilisez : + <screen>VBoxManage bandwidthctl "nom VM" set Limit --limit 0</screen></para> + </sect1> + <sect1 id="network_performance"> + <title>Améliorer les performances réseaux</title> + + <para>VirtualBox offre une variété d'adaptateurs réseaux virtuels qu'on peut + "attacher" au réseau de l'hôte de diverses manières. Selon les + types d'adaptateurs et d'attachements utilisés, les performances réseaux + seront différentes. Dans une logique de performances, l'adaptateur réseau + <emphasis>virtio</emphasis> est préférable aux adaptateurs + <emphasis>Intel PRO/1000</emphasis> émulés, préférables eux-mêmes à + la famille d'adaptateurs <emphasis>PCNet</emphasis>. Tant les adaptateurs + <emphasis>virtio</emphasis> que <emphasis>Intel PRO/1000 + </emphasis> profitent de la segmentation et de l'offloading de la + vérification de somme. La segmentation offloading est essentielle pour de + hautes performances car elle permet moins de changements de contextes, + augmentant drastiquement les tailles des paquets croisés entre VM et hôte.</para> + <note><para>Ni les pilotes <emphasis>virtio</emphasis>, ni ceux + <emphasis>Intel PRO/1000</emphasis> de Windows XP supportent la segmentation + offloading. Donc, les invités Windows XP n'atteignent jamais les mêmes + vitesses de transmission que les autres types d'invités. Reportez-vous + à la base MS Knowledge article 842264 pour des informations supplémentaires.</para> + </note> + <para>Trois types d'attachements : <emphasis>interne</emphasis>, + <emphasis>bridgé</emphasis> et <emphasis>host-only</emphasis>, ont des + performances presque identiques, le type <emphasis>internal</emphasis> + étant légèrement plus rapide et utilisant moins de cycles processeur puisque + les paquets ne vont jamais dans la pile réseau de l'hôte. L'attachement + <emphasis>NAT</emphasis> est le plus lent (et le plus sûr) de tous les + types d'attachement car il fournit une traduction d'adresse réseau. + L'attachement du pilote générique est spécial et ne peut pas être considéré + comme une alternative à d'autres types d'attachements.</para> + <para>Le nombre de processeurs affectés à la VM n'améliore pas les + performances et, dans certains cas, cela peut les réduire du fait d'une + concurrence dans l'invité.</para> + <para>Voici un petit résumé des choses à vérifier afin d'améliorer les + performances réseau :</para> + <para><orderedlist> + <listitem> + <para>Si possible utilisez l'adaptateur réseau <emphasis>virtio</emphasis>, + ou utilisez un des adaptateurs <emphasis>Intel PRO/1000</emphasis> ;</para> + </listitem> + <listitem> + <para>Utilisez l'attachement <emphasis>bridgé</emphasis> plutôt que + <emphasis>NAT</emphasis>;</para> + </listitem> + <listitem> + <para>Assurez-vous que la segmentation offloading est activée dans + l'OS invité. En général, elle sera activée par défaut. Vous pouvez + vérifier et modifier les paramètres d'offloading en utilisant la commnde + <computeroutput>ethtool</computeroutput> dans les invités Linux.</para> + </listitem> + </orderedlist></para> + </sect1> +</chapter> diff --git a/doc/manual/fr_FR/user_PrivacyPolicy.xml b/doc/manual/fr_FR/user_PrivacyPolicy.xml new file mode 100644 index 00000000..450eed6d --- /dev/null +++ b/doc/manual/fr_FR/user_PrivacyPolicy.xml @@ -0,0 +1,69 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" + "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd"> +<appendix id="privacy"> + <title>Informations sur la confidentialité de VirtualBox</title> + + <para>Politique de confidentialité version 5, 13 déc. 2012</para> + + <para>La politique de confidentialité d'Oracle publiée sur + <ulink url="http://www.oracle.com/html/privacy.html">http://www.oracle.com/html/privacy.html</ulink> + s'applique à vos données personnelles recueillies et utilisées par Oracle. + Les informations suivantes décrivent en détails les informations qui sont + échangées entre l'application VirtualBox et Oracle et celles recueillies par le site Internet virtualbox.org.</para> + + <para><emphasis role="bold">§ 1 virtualbox.org.</emphasis> Le site Internet + "virtualbox.org" enregistre les informations d'utilisation anonymes telles + que votre adresse IP, votre situation géographique, votre navigateur, l'endroit + d'où vous naviguez, la durée de votre visite, le nombre de pages vues pendant + votre visite (collectivement, "données anonymes"). En outre, mais seulement si + vous choisissez de vous enregistrer, le chasseur de bogues du site Internet + et les forums stockent les données que vous choisissez de révéler lors de + l'enregistrement telles que votre nom d'utilisateur et vos informations de + contact.</para> + + <para><emphasis role="bold">§ 2 Cookies.</emphasis> Le site Internet virtualbox.org, + le chasseur de bogues et le forum utilisent des cookies pour identifier et + savoir les navigateurs internet qui nous visitent et, si vous vous êtes + enregistré, pour faciliter votre identification. La plupart des navigateurs + vous permettent de refuser les cookies. Si vous pouvez visiter le site Internet + sans cookies, l'écriture dans le chasseur de bogues et dans les services de + forum ne fonctionnera probablement pas sans eux.</para> + + <para><emphasis role="bold">§ 3 Processus d'enregistrement de VirtualBox.</emphasis> + Il se peut que l'application VirtualBox demande à l'utilisateur, à titre facultatif, + de s'enregistrer auprès d'Oracle. Si vous choisissez de vous enregistrer, + votre nom, votre adresse électronique, votre pays et votre société seront + envoyés à Oracle et stockées avec + l'adresse IP de la personne ainsi que la version du produit et la plateforme + utilisée.</para> + + <para><emphasis role="bold">§ 4 Notifications de mise à jour.</emphasis> Il + se peut que l'application VirtualBox contacte Oracle pour savoir si une + nouvelle version de VirtualBox a été publiée et pour avertir l'utilisateur + si tel est le cas. Dans ce processus, des données anonymes telles que votre + adresse IP et un numéro de comptage non caractéristique, la version du produit + et la plateforme utilisée sont envoyées pour que le serveur sache si une mise + à jour est disponible. Par défaut, cette vérification a lieu une fois par + jour. Pour modifier cet intervalle ou désactiver ces vérifications, allez + dans les préférences de VirtualBox.</para> + + <para><emphasis role="bold">§ 5 Utilisation des informations personnelles.</emphasis> + Oracle peut utiliser ces données anonymes et personnelles recueillies par les + moyens ci-dessus à des fins statistiques ou pour vous informer automatiquement + des nouveaux messages liés au vôtre sur le chasseur de bogues et le forum, + pour administrer le site Internet et pour vous contacter du fait de problèmes + techniques. Oracle peut aussi vous informer de nouvelles versions de produits + liés à VirtualBox.</para> + + <para>Vos données personnelles ne seront en aucun cas transmises à un tiers + sans votre consentement, sauf si cela est demandé à Oracle par une loi ou + dans le cadre de procédures légales.</para> + + <para><emphasis role="bold">§ 6 Mises à jour.</emphasis> Oracle peut mettre + à jour sa politique de confidentialité n'importe quand en en publiant une + nouvelle version sur <ulink url="http://www.oracle.com/html/privacy.html">http://www.oracle.com/html/privacy.html</ulink> + et les informations de confidentialité seront mises à jour dans la documentation + fournie avec l'application VirtualBox. Vous devriez vérifier ces ressources de + temps en temps pour vous assurer que les changements vous conviennent.</para> +</appendix> diff --git a/doc/manual/fr_FR/user_Security.xml b/doc/manual/fr_FR/user_Security.xml new file mode 100644 index 00000000..a733d200 --- /dev/null +++ b/doc/manual/fr_FR/user_Security.xml @@ -0,0 +1,392 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" +"http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd"> +<chapter id="Security"> + <title>Guide de sécurité</title> + + <sect1> + <title>Principes généraux de sécurité</title> + + <para>Les principes suivants sont fondamentaux pour utiliser une application + en toute sécurité. + <glosslist> + <glossentry> + <glossterm>Maintenir à jour le logiciel</glossterm> + <glossdef> + <para> + Une des bonnes pratiques de sécurité est d'avoir des versions de + logiciel et des correctifs à jour. Activez la notification de + mise à jour de VirtualBox pour être averti quand une nouvelle + version de VirtualBox est disponible. Quand vous mettez à jour + VirtualBox, n'oubliez pas de mettre à jour aussi les suppléments + invité. Maintenez à jour le système d'exploitation hôte ainsi + que l'invité. + </para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>Restreindre l'accès réseau des services critiques</glossterm> + <glossdef> + <para> + Utilisez les moyens, tels qu'un pare-feu, pour protéger votre + ordinateur et vo(s) invité(s) de l'extérieur. Choisir le bon mode + de réseau pour les VMs permet de distinguer le réseau de l'hôte + de l'invité et vice versa. + </para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>Suivre le principe du privilège le plus restreint</glossterm> + <glossdef> + <para> + Le principe du privilège le plus restreint dispose qu'il faut + donner aux utilisateurs les privilèges strictement nécessaires + pour accomplir leurs tâches. Exécutez toujours VirtualBox en + tant qu'utilisateur ordinaire. Nous déconseillons fortement + d'exécuter VirtualBox avec des privilèges système. + </para> + <para> + Choisissez des droits restrictifs quand vous créez des fichiers + de configuration, par exemple quand vous créez + /etc/default/virtualbox, voir + <xref linkend="linux_install_opts"/>. Le mode 0600 serait + idéal. + </para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>Surveiller l'activité du système</glossterm> + <glossdef> + <para> + La sécurité du système repose sur trois piliers : de bons + protocoles de sécurité, une bonne configuration du système et + la surveillance du système. L'évaluation et la lecture des + fruits de l'évaluation constituent la troisième exigence. Chaque + composant d'un système a un certain degré de capacité à être + surveillé. Suivez les conseils d'évaluation de ce document et + surveillez régulièrement les fruits de l'évaluation. + </para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>Garder à jour les informations de sécurité</glossterm> + <glossdef> + <para> + Oracle améliore en permanence ses logiciels et sa documentation. + Vérifiez ce passage chaque année pour trouver les révisions. + </para> + </glossdef> + </glossentry> + + </glosslist> + </para> + </sect1> + + <sect1> + <title>Installation et configuration sécurisées</title> + + <sect2> + <title>Aperçu de l'installation</title> + <para> + Vous ne devriez télécharger le paquet de base de VirtualBox qu'à partir d'une + source de confiance, telle que le site Internet officiel + <ulink url="http://www.virtualbox.org">http://www.virtualbox.org</ulink>. + Vous devriez vérifier l'intégrité du paquet avec la somme de contrôle + SHA256 fournie sur le site officiel. + </para> + <para> + Vous pouvez trouver des instructions générales d'installation de VirtualBox + pour les hôtes supportés au <xref linkend="installation"/>. + </para> + <para> + Sur les hôtes Windows, l'installeur permet de désactiver le support USB, + le support du réseau bridgé, le support du réseau host-only et les bindings + du langage Python, voir <xref linkend="installation_windows"/>. Toutes ces + fonctionnalités sont activées par défaut mais la désactivation de certaines + d'entre elles pourrait être adaptée si vous n'avez pas besoin des + fonctionnalités correspondantes sur une machine virtuelle. Les bindings du + langage Python ne sont nécessaires que si vous devez utiliser l'API de + VirtualBox avec des applications Python externes. En particulier, le + support USB et le support des deux modes réseaux nécessitent d'installer + des pilotes du noyau Windows sur l'hôte. Donc, la désactivation de ces + fonctions peut non seulement permettre d'encadrer l'utilisateur dans + certaines fonctionnalités, mais aussi de minimiser le champ d'attaque d'un + pirate potentiel.</para> + <para> + En général, on installe tout le paquet VirtualBox. Il faut faire + l'installation avec les privilèges système. Tous les binaires de VirtualBox + devraient être lancés en tant qu'utilisateur ordinaire et jamais en tant + qu'utilisateur privilégié. + </para> + <para> + Le pack d'extension d'Oracle VM VirtualBox apporte des fonctionnalités + supplémentaires et il doit être téléchargé et installé à part, voir + <xref linkend="intro-installing"/>. Comme pour le paquet de base, vous devriez vérifier + la somme de contrôle SHA256 du pack d'extension. Comme le système d'installation + exige des privilèges systèmes, VirtualBox vous demandera le mot de passe + système pendant l'installation du pack d'extension. + </para> + </sect2> + + <sect2> + <title>Configuration post installation</title> + <para> + Normalement, aucune configuration post installation d'un composant de + VirtualBox n'est nécessaire. Cependant, sur les hôtes Solaris et Linux, + il faut configurer les droits adaptés pour que les utilisateurs exécutent + des VMs et puissent accéder à certaines ressources de l'hôte. Par exemple, + les utilisateurs Linux doivent faire partie du groupe <emphasis>vboxusers</emphasis> + pour pouvoir donner des périphériques USB à un invité. Si vous devriez + accéder à une interface série à partir d'une VM, il faut donner les bons + droits à l'utilisateur pour qu'il puisse accéder à ce périphérique. La + même chose s'applique à d'autres ressources comme la partition brute, les + lecteurs DVD/CD et les périphériques de son. + </para> + </sect2> + </sect1> + + <sect1> + <title>Fonctions de sécurité</title> + <para>Cette section évoque les mécanismes de sécurité spécifiques à + VirtualBox.</para> + + <sect2> + <title>Le modèle de sécurité</title> + <para> + Une des propriétés des gestionnaires de machines virtuels (VMMs) comme + VirtualBox est d'enfermer un invité en l'exécutant dans un environnement + protégé, une machine virtuelle laquelle fonctionne en tant que processus + d'un utilisateur du système d'exploitation hôte. L'invité ne peut pas + communiquer directement avec le matériel hôte ou avec d'autres ordinateurs, + mais uniquement via le VMM. Le VMM offre des ressources physiques et des + périphériques émulés à l'invité, auxquels on accède par le système d'exploitation hôte pour effectuer les + tâches nécessaires. Les paramètres de la VM contrôlent les ressources + fournies à l'invité, par exemple la quantité de mémoire de l'invité ou + le nombre de processeurs invités (voir <xref linkend="generalsettings"/>) + et les fonctionnalités activées pour cet invité (par exemple le contrôle à distance, certains paramètres + d'affichage et autres). + </para> + </sect2> + + <sect2> + <title>Configuration sécurisée des machines virtuelles</title> + <para> + Plusieurs aspects de la configuration d'une machine virtuelle sont sujets + à des considérations de sécurité.</para> + + <sect3> + <title>Le réseau</title> + <para> + Le mode réseau par défaut des VMs est NAT, ce qui signifie que la VM + se comporte comme un ordinateur derrière un routeur, voir + <xref linkend="network_nat"/>. L'invité fait partie d'un sous-réseau + privé appartenant à cette VM et l'adresse IP de l'invité n'est pas visible + de l'extérieur. Ce mode réseau fonctionne sans paramétrage supplémentaire + et il suffit pour la plupart des besoins. + </para> + <para> + Si vous utilisez le réseau bridgé, la VM se comporte comme un ordinateur + dans le même réseau que l'hôte, voir <xref linkend="network_bridged"/>. + Dans ce cas, l'invité a un accès réseau identique à l'hôte et un + pare-feu pourrait être nécessaire pour protéger d'autres ordinateurs + du sous-réseau contre des invités malveillants potentiels et pour + protéger l'invité contre un accès direct par les autres ordinateurs. + Dans certains cas, il est intéressant de songer à utiliser une règle + de redirection pour un port spécifique en mode NAT, plutôt que d'utiliser + le réseau bridgé. + </para> + <para> + Certaines configurations n'ont pas besoin que la VM soit connectée au + réseau public. Le réseau interne (voir <xref linkend="network_internal"/>) + ou le réseau host-only (voir <xref linkend="network_hostonly"/>) suffisent + souvent pour connecter des VMs entre elles ou pour ne connecter des VMs + qu'à l'hôte mais pas au réseau public. + </para> + </sect3> + + <sect3> + <title>Authentification sur un bureau distant (VRDP)</title> + <para>Quand on utilise le pack d'extension de VirtualBox fourni par Oracle + pour accéder à distance (VRDP), on peut éventuellement utiliser + plusieurs méthodes pour configurer l'authentification RDP. La méthode + "null" est très peu sûre, vous devriez l'éviter sur un réseau public. + Voir <xref linkend="vbox-auth" /> pour les détails.</para> + </sect3> + + <sect3 id="security_clipboard"> + <title>Presse-papier</title> + <para> + Le presse-papier partagé permet aux utilisateurs de partager des + données entre l'hôte et l'invité. L'activation du presse-papier en + "mode bidirectionnel" permet à l'invité de lire et d'écrire dans le + presse-papier de l'hôte. Le mode "hôte vers invité" et "Invité vers + hôte" limitent l'accès à un seul sens. Si l'invité peut accéder au + presse-papier de l'hôte, il peut aussi accéder potentiellement à des + données sensibles de l'hôte partagées dans le presse-papier. + </para> + <para> + Si l'invité peut lire et/ou écrire dans le presse-papier de l'hôte, + un utilisateur distant qui se connecte à l'invité par le réseau aura + également cette possibilité, ce qui peut ne pas être souhaitable. Par + conséquent, le presse-papier partagé est désactivé pour les nouvelles + machines. + </para> + </sect3> + + <sect3> + <title>Dossiers partagés</title> + <para>Si un dossier de l'hôte est partagé avec l'invité, n'importe quel utilisateur + connecté à distance à l'invité par le réseau peut accéder aussi à ces + fichiers car le mécanisme de partage des dossiers ne peut pas être désactivé + de manière sélective pour des utilisateurs distants. + </para> + </sect3> + + <sect3> + <title>Accélération graphique 3D</title> + <para>L'activation de la 3D avec les suppléments invité expose l'hôte + à des risques supplémentaires de sécurité ; voir <xref + linkend="guestadd-3d" />.</para> + </sect3> + + <sect3> + <title>CD/DVD passthrough</title> + <para>L'activation du CD/DVD passthrough permet à l'invité d'effectuer + des opérations avancées sur le lecteur CD/DVD, voir <xref linkend="storage-cds"/>. + Cela peut poser un problème de sécurité car un invité pourrait écraser + des données sur un DVD. + </para> + </sect3> + + <sect3> + <title>USB passthrough</title> + <para> + La présentation de périphériques USB à l'invité offre à l'invité un + accès complet à ces périphériques, voir <xref linkend="settings-usb"/>. + Par exemple, outre la lecture et l'écriture du contenu des partitions + d'un disque USB externe, l'invité pourra également lire et écrire la + table de partitions et des données matérielles sur ce disque. + </para> + </sect3> + + </sect2> + + <sect2> + <title>Configurer et utiliser l'authentification</title> + + <para>Les composants suivants de VirtualBox peuvent utiliser des mots de + passe pour l'authentification :<itemizedlist> + + <listitem> + <para>Lors de l'utilisation du stockage iSCSI à distance et si le + serveur de stockage exige une authentification, vous pouvez fournir + un mot de passe d'initiateur avec la commande + <computeroutput>VBoxManage storageattach</computeroutput>. Tant que + vous ne fournissez pas de réglage de mots de passe (l'option + <screen>--settingspwfile</screen> en ligne de commande), ce mot + de passe secret est stocké <emphasis role="bold">sans chiffrement</emphasis> + dans la configuration de la machine et il est donc potentiellement + lisible sur l'hôte. Voir <xref + linkend="storage-iscsi" /> et <xref + linkend="vboxmanage-storageattach" />.</para> + </listitem> + + <listitem> + <para>Quand vous utilisez le service Web de VirtualBox pour contrôler + un hôte VirtualBox à distance, les connexions au service sont authentifiées + de plusieurs façons. Ceci est décrit en détails dans manuel de référence + du kit de développement logiciel de VirtualBox (SDK) ; merci de + voir <xref linkend="VirtualBoxAPI" />.</para> + </listitem> + </itemizedlist></para> + </sect2> + + <!-- + <sect2> + <title>Configurer et utiliser les contrôles d'accès</title> + </sect2> + + <sect2> + <title>Configurer et utiliser l'évaluation de sécurité</title> + </sect2> + + <sect2> + <title>Congigurer et utiliser d'autres fonctions de sécurité</title> + </sect2> + --> + + <sect2> + <title>Opérations potentiellement non sécurisées</title> + + <para>Les fonctions suivantes de VirtualBox peuvent présenter des problèmes + de sécurité :<itemizedlist> + <listitem> + <para>L'activation de la 3D par les suppléments invité expose l'hôte + à des risques de sécurité supplémentaires ; voir <xref + linkend="guestadd-3d" />.</para> + </listitem> + + <listitem> + <para>En téléportant une machine, le flux de données par lequel passe + le contenu de la mémoire de la machine est transféré d'un hôte à l'autre + sans chiffrement. Un tiers ayant un accès au réseau par lequel les + données sont transférées pourrait donc intercepter ces données. On + pourrait utiliser un tunnel SSH pour sécuriser la connexion entre les + deux hôtes. Mais au moment de téléporter une VM par un réseau non fiable, + la première question à vous poser est celle de savoir comment les VMs + peuvent accéder de manière sécurisée à la/aux même(s) image(s) de disque + virtuel avec une performance raisonnable. </para> + </listitem> + + <listitem> + <para>Quand vous utilisez le service Web de VirtualBox pour contrôler + un hôte VirtualBox à distance, les connexions au service (par lesquelles + les appels de l'API sont transférées en SOAP XML) ne sont pas chiffrées, + elles utilisent par défaut le HTTP en clair. C'est un risque potentiel + de sécurité ! Pour des détails sur le service Web, merci de voir + <xref linkend="VirtualBoxAPI" />.</para> + <para>Les services web ne sont pas lancés par défaut. Merci de vous + reporter au <xref linkend="vboxwebsrv-daemon"/> pour voir comment + démarrer ce service et activer le support SSL/TLS. Il faut le démarrer + en tant qu'utilisateur ordinaire et seules les VMs de cet utilisateur + sont contrôlables. Par défaut, le service sonde localhost, empêchant + toute connexion distante.</para> + </listitem> + + <listitem> + <para>Le trafic envoyé par une connexion réseau en tunnel UDP n'est + pas chiffré. Vous pouvez soit le chiffrer au niveau du réseau hôte + (avec IPsec), soit utiliser des protocoles chiffrés dans le réseau + invité (tel que SSH). Les propriétés de sécurité sont similaires à un Ethernet bridgé.</para> + </listitem> + </itemizedlist></para> + </sect2> + + <sect2> + <title>Chiffrement</title> + + <para>Les composants suivants de VirtualBox utilisent le chiffrement pour + protéger les données sensibles :<itemizedlist> + <listitem> + <para>Quand on utilise le pack d'extension de VirtualBox fourni par + Oracle pour le support du bureau distant (VRDP), les données peuvent + être éventuellement chiffrées. Voir <xref linkend="vrde-crypt" /> pour + des détails. Seule la méthode Enhanced RDP Security (RDP5.2) avec le + protocole TLS offre une connexion sécurisée. La Standard RDP Security + (RDP4 et RDP5.1) est vulnérable à une attaque man-in-the-middle.</para> + </listitem> + </itemizedlist></para> + </sect2> + </sect1> + + <!-- + <sect1> + <title>Security Considerations for Developers</title> + </sect1> + --> + +</chapter> diff --git a/doc/manual/fr_FR/user_Storage.xml b/doc/manual/fr_FR/user_Storage.xml new file mode 100644 index 00000000..06049569 --- /dev/null +++ b/doc/manual/fr_FR/user_Storage.xml @@ -0,0 +1,959 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" +"http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd"> +<chapter id="storage"> + <title>Le stockage virtuel</title> + + <para>Comme la machine virtuelle s'attendra, la plupart du temps, à voir un + disque dur construit dans son ordinateur virtuel, VirtualBox doit pouvoir présenter + du "vrai" stockage à l'invité comme un disque dur virtuel. Il existe aujourd'hui + trois méthodes pour faire cela :</para> + + <orderedlist> + <listitem> + <para>Le plus souvent, VirtualBox utilisera de gros fichiers images sur un + vrai disque dur et les présentera à un invité comme des disques durs virtuels. + Cela est décrit au <xref linkend="vdidetails" />.</para> + </listitem> + + <listitem> + <para>Sinon, si vous avez des serveurs de stockage iSCSI, vous pouvez connecter + un tel serveur à VirtualBox comme le décrit le <xref + linkend="storage-iscsi" />.</para> + </listitem> + + <listitem> + <para>Enfin, comme fonction avancée, vous pouvez permettre à une machine + virtuelle d'accéder directement à un des disques durs de votre hôte ; + cette fonction avancée est décrite au <xref linkend="rawdisk" />.</para> + </listitem> + </orderedlist> + + <para>Chaque périphérique virtuel (fichier image, cible iSCSI ou disque physique) + devra être connecté au contrôleur de disque dur virtuel présenté par VirtualBox + à une machine virtuelle. Ceci est expliqué à la prochaine + section.</para> + + <sect1 id="harddiskcontrollers"> + <title>Les contrôleurs de disque dur : IDE, SATA (AHCI), SCSI, SAS</title> + + <para>Dans un vrai PC, les disques durs et les lecteurs de CD/DVD sont + connectés à un périphérique appelé le contrôleur de disque dur, qui pilote les + opérations du disque dur et les transferts de données. VirtualBox peut émuler + les quatre types contrôleurs de disque les plus courants qu'on trouve en + général dans les PCs d'aujourd'hui : IDE, SATA (AHCI), SCSI et + SAS.<footnote> + <para>Le support SATA a été ajouté avec VirtualBox 1.6 ; le support SCSI + expérimental a été ajouté à la 2.1 et complètement implémenté avec la + 2.2. En général, les connexions de stockage ont été rendues beaucoup plus + flexibles avec VirtualBox 3.1 ; voir ci-dessous. Le support pour + le contrôleur LSI Logic SAS a été ajouté avec + VirtualBox 3.2.</para> + </footnote><itemizedlist> + <listitem> + <para>Les contrôleurs <emphasis role="bold">IDE (ATA)</emphasis> sont + une extension très avancée de la rétrocompatibilité du contrôleur de + disque dur dans les PC/AT IBM (1984). Au début, cette interface + ne fonctionnait qu'avec des disques durs mais elle a ensuite été + étendue aussi au support des lecteurs CD-ROM et d'autres types de + médias amovibles. Dans des PCs physiques, ce standard utilise des + nappes de 40 ou 80 fils. Chaque câble peut connecter deux périphériques + à un contrôleur, ce qu'on appelait traditionnellement le "maître" et "l'esclave". + Les PCs classiques avaient deux connecteurs par câbles, le support + jusqu'à quatre périphériques était donc classique.</para> + + <para>Dans VirtualBox, chaque machine virtuelle peut avoir un contrôleur IDE + activé, ce qui vous donne jusqu'à quatre périphériques de stockage virtuels + connectables à la machine. (Par défaut, un des quatre -- le maître + secondaire -) est préconfiguré pour être le lecteur CD/DVD de la + machine virtuelle, mais ceci peut être modifié.<footnote> + <para>L'affectation du lecteur CD/DVD de la machine au maître + secondaire était figé avant VirtualBox 3.1 ; il est maintenant + modifiable et le lecteur peut être sur d'autres slots du contrôleur + IDE et il peut y avoir plus de deux lecteurs.</para> + </footnote>)</para> + + <para>Donc, même si votre système d'exploitation invité ne supporte + pas les périphériques SCSI ou SATA, il devrait toujours pouvoir voir + un contrôleur IDE. + </para> + + <para>Vous pouvez aussi sélectionner le type exact de contrôleur IDE + que VirtualBox devrait matériellement présenter à la machine virtuelle + (PIIX3, PIIX4 ou ICH6). Il n'y a pas de différence en termes de performance, + mais si vous importez une machine virtuelle d'un autre produit de + virtualisation, le système d'exploitation de cette machine peut attendre + un type de contrôleur particulier et planter s'il n'est pas trouvé.</para> + + <para>Après avoir créé une nouvelle machine virtuelle avec l'assistant + "Nouvelle Machine virtuelle" de l'interface graphique, vous verrez généralement + un contrôleur IDE dans les paramètres de "Stockage" de la machine, auquel + le lecteur CD/DVD sera connecté, sur un des quatre + ports du contrôleur.</para> + </listitem> + + <listitem> + <para><emphasis role="bold">Serial ATA (SATA)</emphasis> est un + standard récent introduit en 2003. Par rapport à l'IDE, il supporte + plus de périphériques par contrôleur et à bien plus haute vitesse. De + plus, avec du matériel physique, les périphériques peuvent être ajoutés + et supprimés pendant que le système fonctionne. L'interface standard + des contrôleurs SATA est appelé + Advanced Host Controller Interface (<emphasis + role="bold">AHCI</emphasis>).</para> + + <para>Comme un vrai contrôleur SATA, le contrôleur SATA virtuel de + VirtualBox travaille plus vite et consomme moins de ressources processeur + que le contrôleur IDE virtuel. De plus, il vous permet de connecter + jusqu'à 30 disques durs virtuels à une machine au lieu de seulement + trois comme avec le contrôleur IDE de VirtualBox (avec le lecteur DVD + déjà connecté).</para> + + <para>Pour cette raison, à partir de la version 3.2 et selon le système + d'exploitation invité sélectionné, VirtualBox utilise SATA par défaut + pour les machines virtuelles nouvellement créées. Un contrôleur virtuel + SATA est créé par défaut et le disque par défaut créé avec une nouvelle + VM est connecté à ce contrôleur.<warning> + <para>Tout le contrôleur SATA et les disques virtuels qui s'y connectent + (y compris ceux en mode de compatibilité IDE) ne seront pas vus par + les systèmes d'exploitation n'ayant pas de support périphérique + pour AHCI. En particulier, <emphasis role="bold">il n'y a pas de + support pour AHCI dans Windows avant Windows Vista</emphasis>, donc + Windows XP (même SP3) ne verra pas de tels disques sauf si vous + installez des pilotes supplémentaires. Il est possible de passer + de l'IDE à SATA après l'installation en installant les pilotes SATA + et en changeant le type de contrôleur dans la boîte de dialogue des + paramètres de la VM.<footnote> + <para>VirtualBox recommande les pilotes Intel Matrix Storage + qui sont téléchargeables sur <ulink + url="http://downloadcenter.intel.com/Product_Filter.aspx?ProductID=2101">http://downloadcenter.intel.com/Product_Filter.aspx?ProductID=2101</ulink>.</para> + </footnote></para> + </warning></para> + + <para>Pour ajouter un contrôleur SATA à une machine pour laquelle il n'a + pas été activé par défaut (soit parce qu'elle a été créée par une + version antérieure VirtualBox, soit parce que SATA n'est pas supporté + par défaut par le système d'exploitation invité sélectionné), allez + dans l'onglet "Stockage" de la boîte de dialogue des paramètres de la + machine, cliquez sur le bouton "Ajouter un contrôleur" sous la case + "Arborescence de stockage" puis sélectionnez "Ajouter un contrôleur + SATA". Après quoi, le contrôleur traditionnel apparaîtra comme un + périphérique PCI distinct dans la machine virtuelle et vous pouvez y ajouter + des disques virtuels.</para> + + <para>Pour modifier les paramètres du mode de compatibilité IDE pour + le contrôleur SATA, merci de voir <xref + linkend="vboxmanage-storagectl" />.</para> + </listitem> + + <listitem> + <para><emphasis role="bold">SCSI</emphasis> est un autre standard + industriel signifiant "Small Computer System Interface". + SCSI a été standardisé dès 1986 comme une interface générique pour + transférer des données entre tous les types de périphériques, y compris + ceux de stockage. Aujourd'hui, SCSI est encore utilisé pour connecter + des disques durs et des lecteurs à bandes, mais il est généralement devenu + un matériel de convenance. On l'utilise encore souvent sur des stations + de travail et des serveurs à haute performance.</para> + + <para>En priorité pour des raisons de compatibilité avec d'autres + logiciels de virtualisation, VirtualBox supporte en option les contrôleurs + LSI Logic et BusLogic SCSI, chacun d'entre eux pouvant gérer jusqu'à + 15 disques durs virtuels.</para> + + <para>Pour activer un contrôleur SCSI, sur l'onglet "Stockage" de la + boîte de dialogue des paramètres d'une machine virtuelle, cliquez sur + le bouton "Ajouter un contrôleur" sous la case "Arborescence de + stockage" puis sélectionnez "Ajouter un contrôleur SCSI". Après quoi, + le contrôleur supplémentaire apparaîtra comme périphérique PCI distinct + dans la machine virtuelle.<warning> + <para>Comme avec les autres types de contrôleurs, un contrôleur SCSI + ne sera vu que par les systèmes d'exploitation ayant un support + de ce périphérique. + Windows 2003 et supérieur incluent des pilotes pour le contrôleur + LSI Logic, tandis que Windows NT 4.0 et Windows 2000 incluent + des pilotes pour le contrôleur BusLogic. Windows XP n'inclut + aucun pilote.</para> + </warning></para> + </listitem> + + <listitem> + <para><emphasis role="bold">Serial Attached SCSI (SAS)</emphasis> est + un autre standard de bus qui utilise le jeu de commandes SCSI. Mais + contrairement au SCSI, avec les périphériques physiques, on utilise + des câbles série au lieu de ceux parallèles, ce qui simplifie la + connexion de périphériques physiques. D'une certaine manière, SAS + est donc au SCSI ce que SATA est à l'IDE: il permet des connexions + plus fiables et plus rapides.</para> + + <para>Pour supporter des invités de haut niveau exigeant des contrôleurs + SAS, VirtualBox émule un contrôleur a LSI Logic SAS qui peut être + activé de la même façon qu'un contrôleur SCSI. Pour le moment, on + peut connecter jusqu'à huit périphériques au contrôleur SAS.</para> + + <warning> + <para>Comme avec SATA, le contrôleur SAS ne sera vu que par les systèmes + d'exploitation supportant ce périphérique. En particulier, + <emphasis role="bold">il n'y a pas de support de SAS dans Windows + avant Windows Vista</emphasis>, donc Windows XP (même SP3) ne + verra pas de tels ditques, sauf si vous installez des pilotes supplémentaires.</para> + </warning> + </listitem> + </itemizedlist></para> + + <para>En résumé, VirtualBox vous offre les catégories de connecteur (slot) de stockage + virtuels suivantes :<orderedlist> + <listitem> + <para>quatre slots attachés au contrôleur IDE traditionnel, qui sont + toujours présents (un d'eux est en général un lecteur de CD/DVD + virtuel) ;</para> + </listitem> + + <listitem> + <para>30 slots attachés au contrôleur SATA s'il est activé et si votre + système d'exploitation invité le supporte ;</para> + </listitem> + + <listitem> + <para>15 slots attachés au contrôleur SCSI s'il est activé et si le + système d'exploitation invité peut le voir ;</para> + </listitem> + + <listitem> + <para>huit slots attachés au contrôleur SAS, s'il est activé et si le + système d'exploitation invité peut le voir ;</para> + </listitem> + </orderedlist></para> + + <para>Étant donné le vaste choix de contrôleurs de stockage, il se peut que + vous vous demandiez lequel choisir. En général, vous devriez éviter l'IDE, + à moins que ce soit le seul contrôleur + supporté par votre invité. Que vous utilisiez SATA, SCSI ou SAS ne présente + pas de vraie différence. La variété des contrôleurs n'est fournie par + VirtualBox que pour des raisons de compatibilité avec le matériel existant + et d'autres hyperviseurs.</para> + </sect1> + + <sect1 id="vdidetails"> + <title>Fichiers images de disque (VDI, VMDK, VHD, HDD)</title> + + <para>Les fichiers images de disque résident sur le système hôte sont vus + par les systèmes invités comme des disques durs d'une certaine géométrie. + Quand un système d'exploitation invité lit ou écrit sur un disque dur, + VirtualBox redirige la requête vers le fichier image.</para> + + <para>Comme un disque physique, un disque virtuel est d'une taille (capacité), + qui doit être indiquée quand le fichier image est créé. Mais contrairement + à un disque physique, VirtualBox vous permet d'étendre un fichier image + après l'avoir créé, même s'il contient déjà des données (voir <xref + linkend="vboxmanage-modifyvdi" /> pour les détails.<footnote> + <para>Le redimensionnement d'image a été ajouté avec VirtualBox 4.0.</para> + </footnote></para> + + <para>VirtualBox supporte quatre variantes de fichiers images de disque :<itemizedlist> + <listitem> + <para>Normalement, VirtualBox utilise son propre format de container + pour les disques durs invités -- des fichiers Virtual Disk Image (VDI). + En particulier,ce format sera utilisé quand vous créerez une nouvelle + machine virtuelle avec un nouveau + disque.</para> + </listitem> + + <listitem> + <para>VirtualBox supporte aussi complètement le format de + container VMDK ouvert et populaire, utilisé par de nombreux produits + de virtualisation, en particulier, par VMware.<footnote> + <para>Le premier support du VMDK a été ajouté avec VirtualBox 1.4 ; + depuis la version 2.1, VirtualBox supporte complètement VMDK, + ce qui veut dire que vous pouvez créer des dépôts et utiliser toutes + les autres fonctions avancées décrites ci-dessus pour les images + VDI avec VMDK.</para> + </footnote></para> + </listitem> + + <listitem> + <para>VirtualBox supporte complètement le format VHD utilisé par + Microsoft.</para> + </listitem> + + <listitem> + <para>Les fichiers images de Parallels version 2 (format HDD) sont + aussi supportés.<footnote> + <para>Le support a été ajouté avec VirtualBox 3.1.</para> + </footnote> Par manque de documentation du format, les nouveaux formats + (3 et 4) ne sont pas supportés. Vous pouvez cependant convertir de + tels fichiers images à leur version 2 en utilisant des outils fournis + par Parallels.</para> + </listitem> + </itemizedlist></para> + + <para>Indépendamment de la capacité et du format du disque, comme on l'a + brièvement indiqué au <xref linkend="gui-createvm" />, il y a deux + options sur la façon de créer une image de disque : la taille fixe ou + dynamique..</para> + + <itemizedlist> + <listitem> + <para>Si vous créez une <emphasis role="bold">image à taille fixe + </emphasis>, un fichier image sera créé sur votre système hôte ayant + rigoureusement la même taille que la capacité du disque virtuel. Donc, + pour un disque de 10G, vous aurez un fichier de 10G. Remarquez que la + création d'une image à taille fixe peut prendre du temps selon la taille + de l'image et les performances d'écriture de votre disque dur.</para> + </listitem> + + <listitem> + <para>Pour une gestion du stockage plus flexible, utilisez une <emphasis + role="bold">image dynamique</emphasis>. Elle sera très petite au départ + et n'occupera pas de place pour des secteurs de disque virtuel inutilisés, + mais elle grandira à chaque fois qu'un secteur de disque sera écrit pour + la première fois, jusqu'à ce que le lecteur atteigne la capacité maximale + choisie quand le lecteur a été créé. Si ce format prend moins de place au + départ, le fait que VirtualBox doit étendre le fichier image consomme + des ressources de calcul supplémentaires, donc jusqu'à ce que la taille + du fichier de disque ait été stabilisée, les opérations d'écriture peuvent + être plus lentes qu'avec des disques à taille fixe. Cependant, après + un certain temps, le taux de croissance ralentira et le handicap + moyen des opérations d'écriture deviendra négligeable.</para> + </listitem> + </itemizedlist> + </sect1> + + <sect1 id="vdis"> + <title>Le gestionnaire de médias virtuels</title> + + <para>VirtualBox garde une trace de toutes les images de disque dur, de lecteur + CD/DVD-ROM et de disquette utilisés par les machines virtuelles. On les désigne + souvent comme des "médias connus" et ils proviennent de deux sources :<itemizedlist> + <listitem> + <para>tous les médias actuellement attachés aux machines virtuelles ;</para> + </listitem> + + <listitem> + <para>les médias "enregistrés" pour la compatibilité avec les + versions de VirtualBox inférieures à 4.0. Pour les détails sur les modalités + du changement de l'enregistrement des médias, avec la version 4.0, + merci de vous reporter à <xref + linkend="vboxconfigdata" />.</para> + </listitem> + </itemizedlist></para> + + <para>Vous pouvez visualiser et modifier les médias connus dans le <emphasis + role="bold">gestionnaire de médias virtuels</emphasis>, auquel vous + pouvez accéder à partir du menu "Fichier" de la fenêtre principale de + VirtualBox :</para> + + <para><mediaobject> + <imageobject> + <imagedata align="center" fileref="images/virtual-disk-manager.png" + width="12cm" /> + </imageobject> + </mediaobject>Les médias connus sont regroupés, par commodité, dans trois + onglets pour les trois formats possibles. Ces formats sont :</para> + + <itemizedlist> + <listitem> + <para>Les images de disque dur, soit au format de VirtualBox Virtual Disk + Image(VDI), soit dans des formats tiers listés au chapitre précédent ;</para> + </listitem> + + <listitem> + <para>Les images CD/DVD au format ISO standard ;</para> + </listitem> + + <listitem> + <para>les images de disquette au format standard RAW.</para> + </listitem> + </itemizedlist> + + <para>Comme vous pouvez le voir dans l'impression d'écran ci-dessus, pour + chaque image, le gestionnaire de médias Virtuels vous montre le chemin complet + vers le fichier image et d'autres informations, telles que la machine virtuelle + à laquelle est attachée l'image, s'il y en a.</para> + + <para>Le gestionnaire de média virtuels vous permet de</para> + + <itemizedlist> + <listitem> + <para><emphasis role="bold">supprimer</emphasis> une image du + registre (et effacer éventuellement le fichier image en même temps) ;</para> + </listitem> + + <listitem> + <para><emphasis role="bold">"libérer"</emphasis> une image, c'est-à-dire + la détacher d'une machine virtuelle si elle est rattachée actuellement à + une d'elles en tant que disque dur virtuel.</para> + </listitem> + </itemizedlist> + + <para>À partir de la version 4.0, pour <emphasis role="bold">créer de + nouvelles images de disque,</emphasis> merci d'utiliser l'onglet "Stockage" + dans la boîte de dialogue des paramètres d'une machine virtuelle, car les + images de disque sont désormais stockées par défaut dans le dossier de chaque + machine.</para> + + <para>Vous pouvez copier des fichiers images de disque dur entre systèmes + hôtes et les importer alors dans les machines virtuelles, bien que certains + systèmes invités (surtout Windows 2000 et XP) exigeront que la nouvelle + machine virtuelle soit réglée de façon identique à l'ancienne.<note> + <para>Ne faites pas de simples copies des images de disque dur virtuels. + Si vous importez une seconde copie dans une machine virtuelle, VirtualBox + se plaindra avec une erreur puisque VirtualBox affecte un identifiant + unique (UUID) à chaque image de disque pour garantir qu'elle n'est + utilisée qu'une fois. Voir <xref + linkend="cloningvdis" /> pour des instructions à ce sujet. De plus, si + vous voulez copier une machine virtuelle sur un autre système, VirtualBox + a un outil d'importation/exportation qui pourrait mieux convenir à vos besoins ; + voir <xref linkend="ovf" />.</para> + </note></para> + </sect1> + + <sect1 id="hdimagewrites"> + <title>Modes spéciaux d'écriture d'images</title> + + <para>Pour chaque image de disque dur virtuel supportée par VirtualBox, vous + pouvez déterminer distinctement la façon dont elle peut être touchée par les + opérations d'écriture par une machine virtuelle et les opérations de prise + d'instantanés. Ceci vaut pour tous les formats d'image précités (VDI, VMDK, + VHD ou HDD) et indépendamment du fait qu'une image soit de taille fixe + ou dynamique.</para> + + <para>Par défaut, les images sont en mode "normal". Pour marquer une image + existante avec un des modes non standards listés ci-dessous, utilisez + <computeroutput>VBoxManage modifyhd</computeroutput> ; voir <xref + linkend="vboxmanage-modifyvdi" />. Sinon, utilisez VBoxManage pour attacher + l'image à une VM et utilisez l'argument <computeroutput>--mtype</computeroutput> ; + voir <xref linkend="vboxmanage-storageattach" />.</para> + + <orderedlist> + <listitem> + <para>Avec des <emphasis role="bold">images normales</emphasis> (le + réglage par défaut), il n'y a aucune restriction de lecture et d'écriture + pour les systèmes invités.</para> + + <para>Quand vous prenez un instantané de votre machine virtuelle comme + décrit au <xref linkend="snapshots" />, l'état d'un "disque dur normal" + sera enregistré avec l'instantané et, lors du retour à l'instantané, + son état sera complètement réinitialisé.</para> + + <para>(Techniquement, pour parler rigoureusement, le fichier image lui-même + n'est pas "réinitialisé". Quand un instantané est pris, VirtualBox "gèle" + plutôt le fichier image et n'écrit plus dedans. Pour les opérations d'écriture + de la VM, un deuxième fichier image de "différenciation" est créé, qui + ne reçoit que les modifications de l'image d'origine ; voir la section + suivante pour les détails.)</para> + + <para>Si vous pouvez attacher une même image "normale" à plus d'une + machine virtuelle, une seule de ces machines virtuelles attachée au + même fichier image peut être exécuté en même temps, sans quoi il y aurait + des conflits si plusieurs machines écrivent dans le même fichier image.<footnote> + <para>Cette restriction est plus légère qu'avant + VirtualBox 2.2. Jadis, chaque image de disque "normale" ne pouvait + être <emphasis>attachée</emphasis> qu'à une seule machine. Maintenant, + elle peut être attachée à plus d'une machine du moment qu'une seule + des machines soit en fonction.</para> + </footnote></para> + </listitem> + + <listitem> + <para>À l'opposé, <emphasis role="bold">les disques durs write-through</emphasis> + ne sont absolument pas concernés par les instantanés : leur + état <emphasis>n'est pas</emphasis> sauvegardé quand on prend l'instantané, + et il n'est pas restauré quand on le restaure.</para> + </listitem> + + <listitem> + <para>Les <emphasis role="bold">Disques durs partageables</emphasis> sont + des variantes des disques durs write-through. En principe, ils se + comportent exactement de la même façon, à savoir que leur état + <emphasis>n'est pas</emphasis> sauvegardé quand on prend l'instantané + et il n'est pas restauré quand on le restaure. La + différence n'apparaît que si vous attachez de tels disques à plusieurs + VMs. Les disques partageables peuvent être attachés à plusieurs VMs qui + peuvent fonctionner en même temps. Cela les rend adaptés pour l'utilisation + de systèmes de fichiers cluster entre des VMs et des applications identiques + qui sont explicitement préparés pour accéder en même temps à un + disque. Seules des images de disques fixes peuvent être utilisées dans ce + mode, les images dynamiques sont rejetées.<warning> + <para>C'est une fonctionnalité pour experts, dont la mauvaise utilisation + peut provoquer une perte de données -- les systèmes de fichiers réguliers + ne sont pas préparés à gérer des modifications simultanées par + plusieurs éléments.</para> + </warning></para> + </listitem> + + <listitem> + <para>Ensuite, les <emphasis role="bold">images immuables</emphasis> + ne se souviennent des accès en écriture que de manière temporaire pendant + que la machine est en fonction ; tous les changements sont perdus + quand la machine virtuelle est allumée la fois d'après. Il s'en suit qu'à + l'inverse des images "normales", une même image immuable peut être utilisée + avec plusieurs machines virtuelles sans + restrictions.</para> + + <para>La <emphasis>création</emphasis> d'une image immuable a peu de sens + puisqu'elle serait vide au départ et elle perdrait son contenu à chaque + redémarrage de la machine (sauf si vous voulez vraiment avoir un disque + toujours non formaté quand la machine démarre). Du coup, normalement, + vous créeriez d'abord une image "normale" puis, quand vous estimez son + contenu utile, vous la marquez plus tard comme immuable.</para> + + <para>Si vous prenez l'instantané d'une machine avec des images immuables, + sur chaque machine allumée, ces images sont réinitialisées à leur état du dernier + instantané (actuel) (et non à l'état de l'image immuable d'origine).</para> + + <note> + <para>En guise d'exception particulière, les images immuables + <emphasis>ne sont pas</emphasis> réinitialisées si elles sont attachées + à une machine dont le dernier instantané a été pris pendant que la machine + était en fonction (ce qu'on appelle un instantané "en ligne"). Il s'en + suit que si l'instantané actuel de la machine est "en ligne", + ses images immuables se comportent exactement comme les images "normales" + décrites précédemment. Pour réactiver la réinitialisation automatique + de telles images, effacez l'instantané actuel de la machine.</para> + </note> + + <para>De nouveau, techniquement, VirtualBox n'écrit jamais directement + sur l'image immuable. Toutes les opérations d'écriture de la machine seront + envoyées dans une image de différenciation ; la prochaine fois que + la VM sera allumée, l'image de différenciation sera rétablie à chaque + démarrage de la machine, ses images immuables ont exactement le même + contenu.<footnote> + <para>Ce comportement a aussi changé avec VirtualBox 2.2. Jadis, + les images de différenciation étaient désactivées quand la session + de la machine <emphasis>se terminait</emphasis> ; maintenant, + elles sont désactivées à chaque fois que la machine est allumée.</para> + </footnote> L'image de différenciation n'est réinitialisée que lorsque + la machine est allumée à partir de VirtualBox, pas quand vous redémarrez + en demandant un redémarrage à l'intérieur de la machine. C'est + également pourquoi les images immuables se comportent comme décrit + ci-dessus quand des instantanés sont aussi présents, ce qui utilise + également des images de différenciation.</para> + + <para>Si la désactivation automatique de l'image de différenciation au + démarrage d'une VM ne correspond pas à vos besoins, vous pouvez la + désactiver en utilisant le paramètre + <computeroutput>autoreset</computeroutput> de + <computeroutput>VBoxManage modifyhd</computeroutput> ; voir <xref + linkend="vboxmanage-modifyvdi" /> pour le detail.</para> + </listitem> + + <listitem> + <para>Une image en <emphasis role="bold">mode multiattachée</emphasis> + peut être attachée à plus d'une machine virtuelle en même temps même si + ces machines sont en fonction en même temps. Pour chaque + machine virtuelle à laquelle une image est attachée, une image de + différenciation est créée. Il s'en suit que les données écrites sur un + tel disque dur virtuel par une machine n'est pas vue par les autres machines + auxquelles l'image est attachée ; chaque machine crée son propre + historique des écritures de l'image multiattachée.</para> + + <para>Techniquement, une image "multiattachée" se comporte de la même façon + qu'une image "immuable", sauf que l'image de différenciation n'est pas + réinitialisée à chaque fois que la machine démarre.</para> + </listitem> + + <listitem> + <para>Enfin, <emphasis role="bold">l'image en lecture seule</emphasis> + est utilisée automatiquement pour les images de CD/DVD, vu que les + CDs/DVDs ne sont jamais inscriptibles.</para> + </listitem> + </orderedlist> + + <para>Pour illustrer les différences entre les différents types au + regard des instantanés : supposons que avez installé votre système + d'exploitation hôte dans votre VM et que vous avez pris un instantané. + Imaginons que vous avez accidentellement infecté votre VM avec un virus et + vous voulez revenir à l'instantané. Avec une image de disque dur normale, + vous restaurez simplement l'instantané et l'état antérieur de votre image + de disque dur seront restaurés également (et votre infection virale sera + annulée). Avec un disque dur immuable, il suffit d'éteindre et de rallumer + votre VM et l'infection virale sera désactivée. Par contre, avec une image + write-through, vous ne pouvez pas annuler facilement + l'infection virale par la virtualisation, mais vous devrez désinfecter + votre machine virtuelle comme un vrai ordinateur.</para> + + <para>Là encore, vous pourriez trouver les images write-through utiles si vous + voulez préserver des données critiques indépendamment des instantanés, et + comme vous pouvez attacher plus d'une imafe à une VM, vous pourriez vouloir + avoir une image immuable pour le système d'exploitation et une en write-through + pour vos fichiers de données.</para> + </sect1> + + <sect1 id="diffimages"> + <title>Images de différenciation</title> + + <para>La section précédente portait sur les images de différenciation et la + façon de les utiliser avec des instantanés, des images immuables et + des attachements immuables. Pour l'utilisateur curieux de VirtualBox, cette + section décrit avec plus de détails la façon dont elles fonctionnent.</para> + + <para>Une image de différenciation est une image de disque spéciale qui ne + garde que les différences avec une autre image. En elle-même, une image de + différenciation est inutile, elle doit toujours se référer à une autre image. + On parle donc généralement d'une image de différenciation comme d'un "enfant" + qui garde les différences d'avec son + "parent".</para> + + <para>Quand une image de différenciation est active, elle reçoit toutes les + opérations d'écriture de la machine virtuelle à la place de son parent. L'image + de différenciation ne contient que les secteurs du disque dur virtuel qui + ont changé depuis que l'image de différenciation a été créée. Quand la + machine lit un secteur à partir d'un tel disque dur virtuel, elle regarde + d'abord dans l'image de différenciation. Si le secteur est présent, il est + renvoyé à partir de là ; sinon VirtualBox regarde dans le parent. En + d'autres termes, le parent devient en lecture seule ; on n'écrit plus jamais + dedans mais il est lu si un secteur n'a pas changé.</para> + + <para>On peut enchaîner les images de différenciation. Si une autre image de + différenciation est créée pour un disque virtuel qui a déjà une image de + différenciation, il devient le "petit-fils" du parent d'origine. La première + image de différenciation devient alors également en lecture seule et les + opérations d'écriture ne vont que dans l'image de différenciation du second + niveau. Lors de la lecture à partir d'un disque virtuel, + VirtualBox a besoin de regarder d'abord dans la deuxième image de différenciation, + puis dans la première si le secteur n'a pas été trouvé, puis dans + l'image d'origine.</para> + + <para>Il peut y avoir un nombre illimité d'images de différenciation et + chaque image peut avoir plus d'un enfant. Il s'en suit que les images de + différenciation peuvent constituer une arborescence complexe avec des parents, + des "fratries" et des enfants, en fonction de la complexité de la configuration + de votre machine. Les opérations d'écriture vont toujours dans l'image de + différenciation "active" attachée à la machine, et pour les opérations de + lecture, VirtualBox peut avoir besoin de regarder jusqu'aux parents dans la + chaîne, jusqu'à ce qu'il trouve le secteur en question. Vous pouvez regarder + l'arborescence dans le gestionnaire de médias virtuels :<mediaobject> + <imageobject> + <imagedata align="center" fileref="images/virtual-disk-manager2.png" + width="12cm" /> + </imageobject> + </mediaobject></para> + + <para>Dans toutes ces situations, du point de vue de la machine virtuelle, + le disque dur virtuel se comporte comme n'importe quel autre disque. + Pendant que la machine virtuelle est en fonction, il y a un léger ralentissement + des E/S (overhead) car il se peut que VirtualBox doive regarder des + secteurs plusieurs fois. Cela ne se ressent cependant pas, puisque les tables + d'informations des secteurs sont toujours gardées en mémoire et peuvent être + consultées rapidement.</para> + + <para>On utilise des images de différenciation dans les situations + suivantes :<orderedlist> + <listitem> + <para><emphasis role="bold">Les instantanés.</emphasis> Quand vous + créez un instantané comme expliqué dans la section précédente, VirtualBox + "gèle" les images attachées à la machine virtuelle et crée des + images de différenciation pour chacun d'eux (pour être précis, une + par image qui n'est pas en mode "write-through"). Du point de vue de + la machine virtuelle, les disques virtuels continuent d'agir comme + avant, mais toutes les opérations d'écriture vont dans les images de + différenciation. Chaque fois que vous créez un autre instantané, pour + chaque disque dur attaché, une autre image de différenciation est + créée et attachée, formant une chaîne ou une arborescence.</para> + + <para>Dans l'impression d'écran ci-dessus, vous voyez que l'image du + disque d'origine est maintenant attachée à un instantané, ce qui + représente l'état du disque quand on a pris l'instantané.</para> + + <para>Si vous <emphasis role="bold">restaurez</emphasis> maintenant + un instantané -- à savoir, si vous voulez revenir à l'état exact de + la machine stocké dans le dépôt --, il se produit la chose suivante :<orderedlist> + <listitem> + <para>VirtualBox copie les paramètres de la machine virtuelle + mémorisés dans l'instantané vers la machine virtuelle. Du coup, si + vous avez fait des modifications dans la configuration après avoir + pris l'instantané, elles sont annulées.</para> + </listitem> + + <listitem> + <para>Si vous avez pris l'instantané quand la machine était en + fonction, il contient un état sauvegardé de la machine et cet état + est restauré également ; après la restauration de l'instantané, + la machine sera en état "sauvegardé" et elle reprendra son exécution + là où elle avait été commencée la fois suivante. Sinon, la + machine sera dans l'état "éteint" et elle fera un démarrage complet.</para> + </listitem> + + <listitem> + <para>Pour chaque image de disque attachée, à la machine, l'image de + différenciation contenant les opérations d'écriture depuis que + l'instantané actuel a été pris est supprimée et l'image du parent + originel est réactivée. (Si vous avec restauré l'instantané "racine", + ce sera l'image de disque racine de tous les attachements ; + sinon ce sera d'autres images de différenciation descendantes). + Cela restaure de fait l'ancien état de la machine.</para> + </listitem> + </orderedlist></para> + + <para>Si vous <emphasis role="bold">effacez</emphasis> plus tard un + instantané afin de gagner de l'espace disque, chaque attachement de + disque des images de différenciation devient obsolète. Dans ce cas, + l'image de différenciation du disque ne peut pas être tout simplement + effacée. VirtualBox doit plutôt regarder chaque secteur de l'image de + différenciation et le copier dans le parent ; ceci s'appelle des + images de "synchronisation" et cela peut être une procédure longue + selon la taille de l'image de différenciation. Il se peut qu'il faille + temporairement une importante quantité d'espace disque supplémentaire + avant que l'image de différenciation rendue obsolète par l'opération + de synchronisation ne soit effacée.</para> + </listitem> + + <listitem> + <para><emphasis role="bold">Les images immuables.</emphasis> Quand une + image passe en mode "immuable", une image de différenciation est créée + également. Comme avec les instantanés, l'image parent devient alors en + lecture seule et l'image de différenciation reçoit toutes les + opérations d'écriture. Chaque fois qu'on démarre la machine virtuelle, + toutes les images immuables qui y sont attachées voient leur image de + différenciation spécifique nettoyée, ce qui réinitialise de fait le + disque virtuel de la machine virtuelle à chaque redémarrage.</para> + </listitem> + </orderedlist></para> + </sect1> + + <sect1 id="cloningvdis"> + <title>Cloner des images de disque</title> + + <para>Vous pouvez dupliquer des fichiers images de disque dur sur le même hôte + pour produire rapidement une deuxième machine virtuelle avec la même configuration + de système d'exploitation. Néanmoins, vous devriez ne faire des copies d'images + de disques durs virtuels <emphasis>que</emphasis> en utilisant l'outil fourni + par VirtualBox ; voir <xref + linkend="vboxmanage-clonevdi" />. Ceci car VirtualBox affecte un numéro + d'identifiant unique (UUID) à chaque image de disque, qui est stocké dans + l'image et VirtualBox refusera de fonctionner avec deux images ayant le même + numéro. Si vous essayez, par accident, de réimporter une image de disque + que vous avez copiée normalement, vous pouvez faire une seconde copie en utilisant + l'outil de VirtualBox et l'importer à la place.</para> + + <para>Remarquez que les distributions Linux récentes identifient le disque + dur de démarrage à partir de l'ID du disque. L'ID utilisé par VirtualBox pour + un lecteur est déterminé à partir de l'UUID de l'image du disque dur virtuel. + Donc si vous clonez une image de disque et si vous essayez de démarrer l'image, + copiée il se peut que l'invité ne puisse pas déterminer son propre disque de + démarrage car l'UUID a changé. Dans ce cas, vous devez adapter l'ID du disque + dans le script de votre chargeur de démarrage (par exemple + <computeroutput>/boot/grub/menu.lst</computeroutput>). L'ID d'un disque + ressemble à ceci :<screen>scsi-SATA_VBOX_HARDDISK_VB5cfdb1e2-c251e503</screen></para> + + <para>L'ID de l'image copiée peut être déterminée avec <screen>hdparm -i /dev/sda</screen></para> + </sect1> + + <sect1 id="iocaching"> + <title>Mise en cache des E/S dans l'hôte</title> + + <para>À partir de la version 3.2, VirtualBox peut éventuellement désactiver + la mise en cache de l'E/S qu'effectuerait le système d'exploitation hôte sur + les fichiers images du disque.</para> + + <para>Traditionnellement, VirtualBox ouvrait des fichiers images de disque + comme des fichiers normaux, ce qui faisait qu'ils étaient mis en cache par le + système d'exploitation hôte comme n'importe quel autre fichier. Le principal + avantage en est la vitesse : quand l'OS invité écrit sur le disque + et quand le cache de l'hôte utilise l'écriture différée, l'opération d'écriture + peut être déclarée terminée pour l'OS invité rapidement alors que l'OS hôte + peut effectuer l'opération sans synchronisation. De même, quand vous démarrez + une VM une deuxième fois et si vous avez assez de mémoire disponible pour que + l'OS l'utilise pour la mise en cache, de grandes parties du disque dur virtuel + peuvent aller dans la mémoire du système et la VM peut accéder plus rapidement + aux données.</para> + + <para>Remarquez que cela ne s'applique qu'aux fichiers images ; la + mise en tampon ne fonctionnait jamais pour les disques présents sur des + supports iSCSI distants, ce qui est le + scenario le plus classique dans les paramétrages du type enterprise (voir + <xref linkend="storage-iscsi" />).</para> + + <para>Si la mise en tampon est un paramètre par défaut utile pour virtualiser + quelques machines sur un ordinateur de bureau, elle présente quelques + inconvénients :<orderedlist> + <listitem> + <para>L'écriture différée dans le cache de l'OS hôte est moins + sécurisée. Quand l'OS invité écrit des données, il considère que les + données sont écrites même si elles ne sont pas encore arrivées sur le + disque physique. Si, pour une raison quelconque, l'écriture n'a pas lieu + (problème électrique, plantage de l'hôte), les chances de perdre des + données augmentent.</para> + </listitem> + + <listitem> + <para>Les fichiers images de disque ont tendance à être importantes. + Leur mise en cache utilise donc très vite tout le cache de l'OS hôte. Selon + l'efficacité de la gestion du cache par l'OS hôte, cela peut ralentir + énormément l'hôte, surtout si plusieurs VMs fonctionnent en même temps. + Par exemple, sur des hôtes Linux, la mise en cache de l'hôte peut aboutir + à un report, par Linux, de toutes les écritures jusqu'à ce que le + cache de l'hôte soit presque plein, avant d'écrire tous ces changements + en une fois, ce qui peut suspendre l'exécution d'une VM pendant quelques + minutes. Cel peut donner des erreurs d'E/S dans l'invité car les requêtes + E/S excèderaient le timeout.</para> + </listitem> + + <listitem> + <para>La mémoire physique est souvent gaspillée, car les systèmes + d'exploitation hôtes ont en général leur propre système de mise en cache + des E/S, ce qui aboutit à la mise en cache double des données (à la fois dans + le cache de l'invité et de l'hôte), avec peu d'effet. + </para> + </listitem> + </orderedlist></para> + + <para>Si vous décidez de désactiver la mise en cache des E/S dans l'hôte, + pour les raisons ci-dessus, VirtualBox utilise son propre petit cache pour + mettre les écritures en tampon, mais en général, aucune lecture de ce cache + n'est fait par l'OS invité. De plus, VirtualBox supporte complètement + l'E/S asynchrone pour ses contrôleurs SATA, SCSI et SAS virtuels via plusieurs + files (thread) d'E/S.</para> + + <para>Les E/S asynchrones n'étant pas supportées par les contrôleurs IDE, + pour des raisons de performance, vous pourriez vouloir laisser la mise en + cache de l'hôte pour les contrôleurs IDE virtuels de votre VM.</para> + + <para>Pour cette raison, VirtualBox vous permet de configurer si la mise en cache + des E/S est utilisée pour chaque contrôleur E/S, indépendamment. Soit décochez + la case "Utiliser la mise en cache des E/S de l'hôte" des paramètres de stockage, + d'un contrôleur de stockage donné, soit utilisez la commande VBoxManage + suivante pour désactiver la mise en cache des E/S de l'hôte pour un contrôleur + de stockage virtuel :<screen>VBoxManage storagectl "nom VM" --name <nomcontrôleur> --hostiocache off</screen></para> + + <para>Voir <xref linkend="vboxmanage-storagectl" /> pour les détails.</para> + + <para>Également pour les raisons ci-dessus, VirtualBox utilise maintenant + par défaut des contrôleurs SATA pour les nouvelles machines virtuelles.</para> + </sect1> + + <sect1 id="storage-bandwidth-limit"> + <title>Limiter la bande passante des images de disque</title> + + <para>À partir de la version 4.0, VirtualBox permet de limiter la bande + passante maximale utilisée pour les E/S asynchrones. De plus, il supporte + le partage des limites entre des groupes de bandes passantes pour plusieurs + images. Il est possible d'avoir plus d'une limite.</para> + + <para>Les limites sont configurées via + <computeroutput>VBoxManage</computeroutput>. L'exemple ci-dessous crée un + groupe de bandes passantes nommé "Limit", et pose la limite à 20 Mo/s et + affecte le groupe aux disques attachés à la VM :<screen>VBoxManage bandwidthctl "nom VM" add Limit --type disk --limit 20M +VBoxManage storageattach "nom VM" --storagectl "SATA" --port 0 --device 0 --type hdd + --medium disk1.vdi --bandwidthgroup Limit +VBoxManage storageattach "nom VM" --storagectl "SATA" --port 1 --device 0 --type hdd + --medium disk2.vdi --bandwidthgroup Limit</screen></para> + + <para>Tous les disques d'un groupe partagent la limite de la bande passante, + c'est-à-dire que dans l'exemple ci-dessus,, la bande passante des deux images + combinées ne peut jamais dépasser 20Mo/s. Toutefois, si un disque n'a pas + besoin de bande passante, l'autre peut utiliser la bande passante restante + dans son groupe.</para> + + <para>Les limites pour chaque groupe peuvent être modifiées pendant que la + VM est en fonction, ce qui applique immédiatement les modifications. L'exemple + ci-dessous modifie le groupe créé dans l'exemple ci-dessus en 10 Mo/s:<screen>VBoxManage bandwidthctl "nom VM" set Limit --limit 10M</screen></para> + </sect1> + + <sect1 id="storage-cds"> + <title>Support des CD/DVD</title> + + <para>Le/les lecteur(s) CD/DVD virtuels ne supportent par défaut que la + lecture. Vous pouvez modifier la configuration d'un média pendant l'exécution. + Vous pouvez choisir entre trois options pour présenter les données d'un + média :<itemizedlist> + <listitem> + <para><emphasis role="bold">Lecteur hôte</emphasis> définit que l'invité + peut lire sur un média du lecteur hôte.</para> + </listitem> + + <listitem> + <para><emphasis role="bold">Fichier image</emphasis> (en général un + fichier ISO) donne à l'invité un accès en lecture seule aux données de + l'image.</para> + </listitem> + + <listitem> + <para><emphasis role="bold">Vide</emphasis> signifie un lecteur sans + média dedans.</para> + </listitem> + </itemizedlist></para> + + <para>La modification entre les situations ci-dessus, le changement de + média dans le lecteur hôte ou de fichier image signalera un changement de média + au système d'exploitation invité, lequel peut réagir au changement (par exemple, + en démarrant un programme d'installation).</para> + + <para>Les changements de médias peuvent être empêchés par l'invité et VirtualBox + répercute cela en verrouillant le lecteur hôte si besoin. Vous pouvez forcer + le retrait d'un média en pareilles situations via l'interface graphique de + VirtualBox ou l'outil en ligne de commandes VBoxManage. En fait, cela revient + à une éjection en urgence, ce que supportent de nombreux lecteurs CD/DVD + avec tous les effets colatéraux associés : l'OS invité peut renvoyer + des messages d'erreur comme sur du vrai matériel, les applications invitées peuvent + mal se comporter. Utilisez ceci avec précaution.<note> + <para>La chaîne d'identification du lecteur fournie à l'invité (qui serait + affichée, dans l'invité, par les outils de configuration tels que le + gestionnaire de périphériques de Windows) est toujours "VBOX CD-ROM", + indépendamment de la configuration actuelle du lecteur virtuel. Ceci pour + empêcher la détection d'être faite en retard dans le système d'exploitation + invité à chaque fois que la configuration change.</para> + </note></para> + + <para>L'émulation standard des CD/DVD ne permet de lire que des formats de + CD et de DVD de données standards. Une possibilité supplémentaire, expérimentale, + est de donner un accès direct de l'invité au lecteur CD/DVD de l'hôte en + activant le "Mode direct" (passthrough). Selon le matériel hôte, cela peut potentiellement + faire marcher trois choses :<itemizedlist> + <listitem> + <para>L'écriture sur CD/DVD depuis l'invité, si le lecteur DVD de l'hôte + est un graveur de CD/DVD ;</para> + </listitem> + + <listitem> + <para>la lecture de CDs audio ;</para> + </listitem> + + <listitem> + <para>la lecture de DVDs chiffrés.</para> + </listitem> + </itemizedlist></para> + + <para>Il existe une case à cocher "Mode direct" dans la boîte de dialogue + graphique de configuration du média attaché aux contrôleurs de stockage, ou + vous pouvez utiliser l'option + <computeroutput>--passthrough</computeroutput> de + <computeroutput>VBoxManage storageattach</computeroutput> ; voir <xref + linkend="vboxmanage-storageattach" /> pour les détails.</para> + + <para>Même si passthrough est activé, les commandes non sûres telles que + la mise à jour du firmware du lecteur, seront bloquées. Les formats de CD + vidéo ne sont pas du tout supportés, même pas en mode passthrough, et on + ne peut pas les lire à partir d'une + machine virtuelle.</para> + + <para>Sur les hôtes Solaris, passthrough exige de lancer VirtualBox avec de + vrais droits d'administrateur du fait de mesures de sécurité renforcées par + l'hôte.</para> + </sect1> + + <sect1 id="storage-iscsi"> + <title>Serveurs iSCSI</title> + + <para>iSCSI signifie "Internet SCSI" et c'est un standard qui permet d'utiliser + le protocole SCSI à travers des des connexions Internet. (TCP/IP). En + particulier, avec l'arrivée du Gigabit Ethernet, on peut désormais se permettre + d'attacher des serveurs de stockage iSCSI simplement comme des disques durs + distants à un réseau d'ordinateurs. Dans la terminologie iSCSI, le serveur + fournissant les ressources de stockage s'appelle la "cible iSCSI", tandis + que le client qui se connecte au serveur et qui accède à ses ressources + s'appelle "l'initiateur iSCSIr".</para> + + <para>VirtualBox peut présenter de manière transparente du stockage distant + iSCSI à une machine virtuelle en tant que disque dur. Le système d'exploitation + ne verra pas de différence entre une image de disque virtuel (fichier VDI) + et une cible iSCSI. Pour obtenir cela, VirtualBox comporte un initiateur iSCSI + intégré.</para> + + <para>Le support iSCSI de VirtualBox a été développé selon le standard iSCSI + et il devrait fonctionner avec toutes les cibles iSCSI conformes au standard. + Pour utiliser une cible iSCSI avec VirtualBox, vous devez utiliser la ligne + de commande ; voir <xref linkend="vboxmanage-storageattach" />.</para> + </sect1> +</chapter> diff --git a/doc/manual/fr_FR/user_Technical.xml b/doc/manual/fr_FR/user_Technical.xml new file mode 100644 index 00000000..5b775555 --- /dev/null +++ b/doc/manual/fr_FR/user_Technical.xml @@ -0,0 +1,929 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" +"http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd"> +<chapter id="TechnicalBackground"> + <title>Sous-bassements techniques</title> + + <para>Le contenu de ce chapitre n'est pas indispensable pour utiliser + VirtualBox avec succès. Nous indiquons ce qui suit à titre informatif pour + ceux qui sont plus familiers de la technologie et de l'architecture informatique + et qui veulent en savoir davantage sur la manière dont fonctionne VirtualBox "sous + le capot".</para> + + <sect1 id="vboxconfigdata"> + <title>Où VirtualBox stocke ses fichiers</title> + + <para>Dans VirtualBox, une machine virtuelle et ses paramètres sont + décrits dans un fichier de paramètres de la machine virtuelle, au format + XML. De plus, la plupart des machines virtuelles ont un ou plusieurs + disques durs qui leur sont en général présentés par des images de disque + (comme au format VDI). L'endroit où sont stockés tous ces fichiers + dépend de la version de VirtualBox qui a créé la machine.</para> + + <sect2> + <title>Machines créées par VirtualBox version 4.0 ou supérieur</title> + + <para>À partir de la version 4.0, par défaut, chaque machine virtuelle + dispose d'un répertoire sur votre ordinateur hôte (où tous les fichiers + de cette machine sont stockés -- le fichier des paramètres XML (avec une + extension de fichier <computeroutput>.vbox</computeroutput>) et ses + images de disque.</para> + + <para>Par défaut, ce "dossier machine" se trouve dans un dossier ordinaire + appelé "VirtualBox VMs", créé par VirtualBox dans le dossier personnel + de l'utilisateur du système actuel. L'emplacement de ce répertoire personnel + dépend des conventions du système d'exploitation hôte :</para> + + <itemizedlist> + <listitem> + <para>Sur Windows, il s'agit de + <computeroutput>%HOMEDRIVE%%HOMEPATH%</computeroutput>; en général + quelque chose comme <computeroutput>C:\Documents and + Settings\NomUtilisateur\</computeroutput>.</para> + </listitem> + + <listitem> + <para>Sur Mac OS X, il s'agit de + <computeroutput>/Users/nomutilisateur</computeroutput>.</para> + </listitem> + + <listitem> + <para>Sur Linux et Solaris, il s'agit de + <computeroutput>/home/nomutilisateur</computeroutput>.</para> + </listitem> + </itemizedlist> + + <para>Par simplicité, nous abrègerons cela ci-dessous par + <computeroutput>$HOME</computeroutput>. En utilisant cette convention, le + dossier ordinaire de toutes les machines virtuelles est + <computeroutput>$HOME/VirtualBox VMs</computeroutput>.</para> + + <para>Par exemple, quand vous créez une machine virtuelle qui s'appelle + "VM Exemple", vous verrez que VirtualBox crée<orderedlist> + <listitem> + <para>le dossier <computeroutput>$HOME/VirtualBox VMs/VM Exemple/</computeroutput> + et, dans ce dossier,</para> + </listitem> + + <listitem> + <para>le fichier des paramètres <computeroutput>VM Exemple.vbox</computeroutput> et</para> + </listitem> + + <listitem> + <para>l'image de disque virtuel <computeroutput>VM Example.vdi</computeroutput>.</para> + </listitem> + </orderedlist></para> + + <para>C'est le rangement par défaut si vous utilisez l'assistant "Créer + une nouvelle machine virtuelle" comme décrit au <xref linkend="gui-createvm" />. Une fois que + vous commencez à travailler avec la VM, des fichiers supplémentaires + apparaîtront : vous trouverez des fichiers journaux dans un + sous-dossier qui s'appelle + <computeroutput>Logs</computeroutput>, et une fois que vous aurez pris + des instantanés, ils apparaîtront dans un sous-dossier + <computeroutput>Snapshots</computeroutput>. Pour chaque VM, vous pouvez + modifier l'emplacement de son dossier d'instantanés dans les paramètres + de la VM.</para> + + <para>Vous pouvez changer le dossier machine par défaut en sélectionnant + "Préférences" du menu "Fichier" de la fenêtre principale de VirtualBox. + Puis, dans la fenêtre qui apparaît, cliquez sur l'onglet "Général". Sinon, + utilisez <computeroutput>VBoxManage setproperty + machinefolder</computeroutput> ;; voir le <xref + linkend="vboxmanage-setproperty" />.</para> + </sect2> + + <sect2> + <title>Machines créées par des versions de VirtualBox antérieures à 4.0</title> + + <para>Si vous avez mis à jour vers VirtualBox 4.0 en partant d'une ancienne + version de VirtualBox, vous aurez probablement vos fichiers de paramètres + et les disques selon l'organisation du système de fichiers d'alors.</para> + + <para>Avant la version 4.0, VirtualBox séparait les fichiers de + paramètrage de la machine des images de disque virtuel. Les fichiers de + paramétrage de la machine avaient une extension + <computeroutput>.xml</computeroutput> et se trouvaient dans un dossier + appelé "Machines" dans le répertoire de configuration global de VirtualBox + (voir la prochaine section). Donc, par exemple, sur Linux, il s'agissait + du répertoire caché <computeroutput>$HOME/.VirtualBox/Machines</computeroutput>. + Le dossier par défaut des disques durs s'appelait "HardDisks" et se trouvait + également dans le dossier <computeroutput>.VirtualBox</computeroutput>. + L'utilisateur pouvait changer les deux endroits dans les préférences + globales (le concept de "dossier par défaut des disques durs" a été + abandonné avec VirtualBox 4.0, vu que les images de disque se trouvent + désormais par défaut dans le dossier de chaque machine.)</para> + + <para>L'ancienne organisation avait plusieurs gros inconvénients.<orderedlist> + <listitem> + <para>Il était très difficile de déplacer une machine virtuelle + d'un hôte à l'autre car les fichiers concernés ne se trouvaient pas + dans le même dossier. De plus, les médias virtuels de toutes les + machines étaient enregistrés avec un registre global dans le + fichier des paramètres transversaux de VirtualBox. + (<computeroutput>$HOME/.VirtualBox/VirtualBox.xml</computeroutput>).</para> + + <para>Pour déplacer une machine sur un autre hôte, il n'était donc + pas suffisant de déplacer le fichier des paramètres XML et les images + de disque (qui se trouvaient à des endroits différents), mais + il fallait en plus copier méticuleusement les entrées du disque + dur à partir du XML du registre de médias global, ce qui était + presque impossible si la machine avait des instantanés et, donc, des + images de différenciation.</para> + </listitem> + + <listitem> + <para>Le stockage des images de disque virtuel, qui peuvent beaucoup + grossir, sous le répertoire caché + <computeroutput>.VirtualBox</computeroutput> (au moins sur les hôtes + Linux et Solaris) amenait de nombreux utilisateurs à se demander + ce qu'était devenu leur espace disque.</para> + </listitem> + </orderedlist></para> + + <para>Si les nouvelles VMs créées avec VirtualBox 4.0 ou supérieur + respectent la nouvelle organisation, pour une compatibilité maximum, les + anciennes VMs <emphasis>ne sont pas</emphasis> converties en nouvelle + organisation. Sans cela, les paramètres de la machine seraient immanquablement + cassés si l'utilisateur rétrogradait de la 4.0 à une version plus ancienne + de VirtualBox.</para> + </sect2> + + <sect2> + <title>Données globales de configuration</title> + + <para>Outre les fichiers des machines virtuelles, VirtualBox gère des + données globales de configuration. Sur Linux et Solaris, depuis VirtualBox 4.3 + elles se trouvent dans le répertoire caché <computeroutput>$HOME/.config/VirtualBox</computeroutput> + même si <computeroutput>$HOME/.VirtualBox</computeroutput> sera utilisé + s'il existe pour rester compatible avec les anciennes versions ; sur + un Mac, elles se trouvent + dans <computeroutput>$HOME/Library/VirtualBox</computeroutput>.</para> + + <para>VirtualBox crée automatiquement ce répertoire de configuration si + nécessaire. Vous pouvez éventuellement fournir un répertoire de configuration + alternatif en réglant la variable d'environnement + <computeroutput><literal>VBOX_USER_HOME</literal></computeroutput> ou, + en plus, sur Linux ou Solaris, en utilisant la variable standard + <computeroutput><literal>XDG_CONFIG_HOME</literal></computeroutput> (car le + fichier des paramètres globaux de <computeroutput>VirtualBox.xml</computeroutput> + pointe vers tous les autres fichiers de configuration, ce qui permet + de naviguer entre plusieurs configurations de VirtualBox.</para> + + <para>VirtualBox stocke essentiellement dans ce répertoire son fichier + de paramètres globaux, un autre fichier XML appelé + <computeroutput>VirtualBox.xml</computeroutput>. Cela comprend des + options de configuration globales et la liste des machines virtuelles + enregistrées avec des pointeurs vers leurs fichiers de paramètres XML. + (Ni l'emplacement du fichier ni son répertoire n'ont changé avec + VirtualBox 4.0.)</para> + + <para>Avant VirtualBox 4.0, tous les médias virtuels (fichiers images + de disque) étaient également stockés dans un registre global de ce + fichier de paramètres. Par compatibilité, ce registre de médias existe + toujours si vous mettez à jour VirtualBox et s'il y a des médias + issus de machines créées avec une version inférieure à 4.0. Si vous + n'avez pas de telles machines, il n'y aura pas de registre de médias + global ; avec VirtualBox 4.0, chaque fichier XML d'une machine a + son propre registre de médias.</para> + + <para>De même, avant VirtualBox 4.0, le dossier "Machines" par défaut + et le dossier "HardDisks" par défaut se trouvaient dans le répertoire de + configuration de VirtualBox (par exemple, <computeroutput>$HOME/.VirtualBox/Machines</computeroutput> + sur Linux). Si vous mettez à jour à partir d'une version de VirtualBox + inférieure à la 4.0, les fichiers de ce répertoire ne sont pas déplacés + automatiquement afin de ne pas casser la rétro compatibilité.</para> + </sect2> + + <sect2> + <title>Résumé des modifications de la configuration de 4.0</title> + + <para>La table suivante donne un bref apperçu des changements de configuration + entre les versions anciennes et la 4.0 ou ultérieure :</para> + + <table> + <title>Changements de configuration en 4.0 et ultérieure</title> + + <tgroup cols="3"> + <tbody> + <row> + <entry></entry> + + <entry><emphasis role="bold">Avant 4.0</emphasis></entry> + + <entry><emphasis role="bold">4.0 ou supérieur</emphasis></entry> + </row> + + <row> + <entry>Dossier par défaut des machines</entry> + + <entry><computeroutput>$HOME/.VirtualBox/Machines</computeroutput></entry> + + <entry><computeroutput>$HOME/VirtualBox + VMs</computeroutput></entry> + </row> + + <row> + <entry>Emplacement des images de disque</entry> + + <entry><computeroutput>$HOME/.VirtualBox/HardDisks</computeroutput></entry> + + <entry>Dans chaque dossier de machine</entry> + </row> + + <row> + <entry>Extension des fichiers de paramètres de la machine</entry> + + <entry><computeroutput>.xml</computeroutput></entry> + + <entry><computeroutput>.vbox</computeroutput></entry> + </row> + + <row> + <entry>Registre de médias</entry> + + <entry>Fichier <computeroutput>VirtualBox.xml</computeroutput> + global</entry> + + <entry>Chaque fichier des paramètres d'une machine</entry> + </row> + + <row> + <entry>Enregistrement des médias</entry> + + <entry>Ouverture/fermeture explicite obligatoire</entry> + + <entry>Automatique après la connexion</entry> + </row> + </tbody> + </tgroup> + </table> + </sect2> + + <sect2> + <title>Fichiers XML de VirtualBox</title> + + <para>VirtualBox utilise l'XML tant pour les fichiers des paramètres + de la machine que pour le fichier de configuration global, + <computeroutput>VirtualBox.xml</computeroutput>.</para> + + <para>Tous les fichiers XML de VirtualBox sont versionnés. Quand un nouveau + fichier de paramètres est créé (par exemple parce qu'on crée une nouvelle + machine virtuelle), VirtualBox utilise automatiquement le format des + paramètres de la version actuelle de VirtualBox. Il se peut que ces + fichiers ne soient pas lus si vous rétrogradez à une version plus + ancienne de VirtualBox. Cependant, quand VirtualBox rencontre un fichier + de paramètres d'une ancienne version (comme après une mise à jour de + VirtualBox), il essaie autant que possible de garder le format des + paramètres. Il ne mettra à jour en silence les fichiers des paramètres + que si les paramètres actuels ne peuvent pas être exprimés dans l'ancien + format, par exemple parce que vous avez activé une fonction qui n'était + pas présente dans l'ancienne version de VirtualBox.<footnote> + <para>Par exemple, avant VirtualBox 3.1, il était possible d'activer + /désactiver qu'un seul lecteur DVD dans une machine virtuelle. + S'il a été activé, cela serait toujours possible sur le deuxième + maître du contrôleur IDE. Avec VirtualBox 3.1, on peut connecter + des lecteurs DVD à un slot de son choix sur un contrôleur de son choix, + donc ils pourraient être sur le deuxième esclave d'un contrôleur IDE + ou sur un slot SATA. Si vous avez un fichier de paramètres d'une + machine d'une ancienne version et si vous mettez à jour + VirtualBox vers la 3.1 et si vous déplacez le lecteur DVD de sa + position par défaut, on ne peut pas l'exprimer dans l'ancien format + des paramètres ; le fichier XML de la machine serait écrit dans + le nouveau format et une copie de sauvegarde de l'ancien format serait + gardée.</para> + </footnote> Dans ces cas-là, VirtualBox sauvegarde le fichier des anciens + paramètres dans le répertoire de configuration de la machine virtuelle. + Si vous avez besoin de revenir à une ancienne version de VirtualBox, + vous devrez recopier à la main ces fichiers de sauvegarde.</para> + + <para>Nous ne documentons volontairement pas les spécifications des fichiers + XML de VirtualBox car nous nous réservons le droit de les modifier à l'avenir. + Nous vous suggérons donc fortement de ne pas éditer ces fichiers à la main. + VirtualBox offre un accès complet à ses données de configuration par son + outil en ligne de commande <computeroutput>VBoxManage</computeroutput> + (voir le <xref linkend="vboxmanage" />) et son API (voir le <xref + linkend="VirtualBoxAPI" />).</para> + </sect2> + </sect1> + + <sect1 id="technical-components"> + <title>Exécutables et composants de VirtualBox</title> + + <para>VirtualBox a été conçu pour être modulaire et flexible. Quand on ouvre + l'interface graphique (GUI) de VirtualBox et qu'on démarre une VM, + au moins trois processus fonctionnent :<orderedlist> + <listitem> + <para><computeroutput>VBoxSVC</computeroutput>, le processus du service + de VirtualBox qui fonctionne toujours en tâche de fond. Ce processus + est lancé automatiquement par le processus du premier client + VirtualBox (la GUI, <computeroutput>VBoxManage</computeroutput>, + <computeroutput>VBoxHeadless</computeroutput>, le service web ou + autre) et il s'arrête peu de temps après que le dernier client a + quitté. Le service est responsable d'archiver, maintenir l'état de + toutes les VMs et de la communication entre les composants de VirtualBox. + Cette communication est implémentée via COM/XPCOM.<note> + <para>Quand nous parlons de "clients" ici, nous voulons dire + les clients locaux d'un processus serveur + <computeroutput>VBoxSVC</computeroutput> en particulier, pas les + clients sur un réseau. VirtualBox utilise son propre concept + client/serveur pour permettre à ses processus de coopérer, mais + tous ces processus tournent sous le même compte utilisateur du + système d'exploitation hôte, et c'est entièrement transparent + pour l'utilisateur.</para> + </note></para> + </listitem> + + <listitem> + <para>Le processus de la GUI,, <computeroutput>VirtualBox</computeroutput>, + une application client basée sur la bibliothèque multiplateformes + Qt. Lancée sans l'option <computeroutput>--startvm</computeroutput>, + cette application agit comme un gestionnaire de VirtualBox, en + affichant les VMs et leurs paramètres. Elle communique alors les + paramètres et les changements d'état à <computeroutput>VBoxSVC</computeroutput> + et elle répercute les changements subis par d'autres moyens comme + <computeroutput>VBoxManage</computeroutput>.</para> + </listitem> + + <listitem> + <para>Si on lance l'application client <computeroutput>VirtualBox</computeroutput> + avec l'argument <computeroutput>--startvm</computeroutput>, elle + charge la bibliothèque VMM qui inclut l'hyperviseur proprement dit + et qui lance une machine virtuelle et offre une entrée et une sortie + à l'invité.</para> + </listitem> + </orderedlist></para> + + <para>Toutes les interfaces de VirtualBox (client) communiqueront avec le + processus du service et elles peuvent contrôler et répercuter l'état actuel. + Par exemple, tant le selecteur de VM que la fenêtre de VM ou VBoxManage peuvent + être utilisés pour mettre en pause la VM en fonction, les autres composants + reflèteront toujours le changement d'état.</para> + + <para>La GUI de VirtualBox n'est qu'une des nombreuses interfaces (client) + disponibles. La liste complète comprise dans VirtualBox est :<orderedlist> + <listitem> + <para><computeroutput>VirtualBox</computeroutput>, l'interface Qt + implémentant le gestionnaire et les VMs en fonction ;</para> + </listitem> + + <listitem> + <para><computeroutput>VBoxManage</computeroutput>, une alternative + moins conviviale mais plus puissante, décrite au <xref + linkend="vboxmanage" />.</para> + </listitem> + + <listitem> + <para><computeroutput>VBoxSDL</computeroutput>, une interface graphique + simple basée sur la bibliothèque SDL ; voir <xref + linkend="vboxsdl" />.</para> + </listitem> + + <listitem> + <para><computeroutput>VBoxHeadless</computeroutput>, une interface de + VM qui ne fournit pas directement de sortie graphique et d'entrée + clavier/souris, + mais qui permet une redirection par VirtualBox Remote Desktop Extension; + voir <xref linkend="vboxheadless" />.</para> + </listitem> + + <listitem> + <para><computeroutput>vboxwebsrv</computeroutput>, le processus du + service web de VirtualBox qui permet de contrôler un hôte VirtualBox à + distance. Ceci est décrit en détails dans le manuel de référence + du VirtualBox Software Development Kit (SDK) ; merci de voir le + <xref linkend="VirtualBoxAPI" /> pour des détails.</para> + </listitem> + + <listitem> + <para>Le shell Python de VirtualBox, une alternative en Python à + VBoxManage. Elle est aussi décrite dans le manuel de référence du SDK.</para> + </listitem> + </orderedlist></para> + + <para>En interne, VirtualBox comprend beaucoup plus d'interfaces + séparées. Vous pourriez les rencontrer en analysant les messages d'erreur + internes ou les fichiers journaux. Parmi elles, on compte :</para> + + <itemizedlist> + <listitem> + <para>IPRT, une bibliothèque d'exécution portable qui forme une couche + d'abstraction d'accès aux fichiers, du filage (threading), la manipulation + de chaînes, etc. Chaque fois que VirtualBox accède aux fonctions du + système hôte, il le fait via cette bibliothèque pour une portabilité + multiplateformes.</para> + </listitem> + + <listitem> + <para>VMM (Virtual Machine Monitor), le cœur de l'hyperviseur.</para> + </listitem> + + <listitem> + <para>EM (Execution Manager), contrôle l'exécution d'un code invité.</para> + </listitem> + + <listitem> + <para>REM (Recompiled Execution Monitor), fournit une émulation logicielle + des instructions du processeur.</para> + </listitem> + + <listitem> + <para>TRPM (Trap Manager), intercepte et traite les traps et les + exceptions de l'invité.</para> + </listitem> + + <listitem> + <para>HWACCM (Hardware Acceleration Manager), offre un support pour + VT-x et AMD-V.</para> + </listitem> + + <listitem> + <para>PDM (Pluggable Device Manager), une interface abstraite entre le + VMM et les périphériques émulés qui sépare les implémentations du + périphérique de l'intérieur du VMM et qui facilite l'ajout de nouveaux + périphériques émulés. Par PDM, des développeurs tiers peuvent ajouter + de nouveaux périphériques virtuels à VirtualBox, sans devoir modifier + VirtualBox lui-même.</para> + </listitem> + + <listitem> + <para>PGM (Page Manager), un composant contrôlant la pagination de + l'invité.</para> + </listitem> + + <listitem> + <para>PATM (Patch Manager), corrige le code de l'invité pour améliorer + et accélérer la virtualisation logicielle.</para> + </listitem> + + <listitem> + <para>TM (Time Manager), gère les horloges et tous les aspects de l'heure + des invités.</para> + </listitem> + + <listitem> + <para>CFGM (Configuration Manager), fournit une structure arborescente + qui garde les paramètres de configuration de la VM et tous les périphériques + émulés.</para> + </listitem> + + <listitem> + <para>SSM (Saved State Manager), enregistre et charge l'état d'une VM.</para> + </listitem> + + <listitem> + <para>VUSB (Virtual USB), une couche USB qui sépare les contrôleurs USB + émulés des contrôleurs de l'hôte et des périphériques USB ; ceci + active également l'USB distant.</para> + </listitem> + + <listitem> + <para>DBGF (Debug Facility), un débogueur de VM intégré.</para> + </listitem> + + <listitem> + <para>VirtualBox émule un certain nombre de périphériques pour offrir + l'environnement matériel dont ont besoin divers invités. La plupart de + ces périphériques standards se trouvent dans beaucoup de machines + compatibles PC et sont largement supportés par les systèmes d'exploitation + invités. Pour les périphériques réseaux et de stockage en particulier, + il existe plusieurs options pour que les périphériques émulés accèdent + au matériel sous-jacent. Ces périphériques sont gérés par + PDM.</para> + </listitem> + + <listitem> + <para>Les suppléments invité pour divers systèmes d'exploitation invités. + Il s'agit de code installé dans les machines virtuelles ; voir <xref + linkend="guestadditions" />.</para> + </listitem> + + <listitem> + <para>Le composant "Main" est spécial : il lie tous les modules + ci-dessus et c'est la seule API publique fournie par VirtualBox. Tous + les processus clients listés ci-dessus n'utilisent que cettte API et + n'accèdent jamais directement aux composants de l'hyperviseur. Il s'en + suit que des applications tierces utilisant l'API principale de VirtualBox + peuvent s'appuyer sur le fait qu'elle est toujours bien testée et que + toutes les possibilités de VirtualBox sont complètement présentées. C'est + cette API qui est décrite dans le manuel de référence du SDK de + VirtualBox indiqué ci-dessus (de nouveau, voir le <xref linkend="VirtualBoxAPI" />).</para> + </listitem> + </itemizedlist> + </sect1> + + <sect1 id="hwvirt"> + <title>Virtualisation matérielle vs. logicielle</title> + + <para>VirtualBox permet aux logiciels de la machine virtuelle de s'exécuter + directement sur le processeur de l'hôte, mais il utilise une gamme de + techniques complexes pour intercepter les opérations interférant avec votre + hôte. Chaque fois que l'invité essaie de faire quelque chose de potentiellement + dangereux pour votre ordinateur et ses données, VirtualBox s'interpose et + rentre en action. En particulier, pour beaucoup de matériel auquel croit + avoir accès l'invité, VirtualBox simule un certain environnement "virtuel" + selon la façon dont vous avez configuré une machine virtuelle. Par exemple, + quand l'invité cherche à accéder à un disque dur, VirtualBox redirige ces + requêtes vers ce que vous avez configuré comme étant le disque dur virtuel + de la machine virtuelle -- en principe, un fichier image sur votre hôte.</para> + + <para>Malheureusement, la plateforme x86 n'a jamais été conçue pour + être virtualisée. La détection des + situations où VirtualBox doit contrôler le code invité qui s'exécute, comme + décrit ci-dessus, est difficile. Il existe deux façons de faire cela :<itemizedlist> + <listitem> + <para>Depuis 2006, les processeurs Intel et AMD supportent ce qu'on + appelle la <emphasis role="bold">"virtualisation matérielle"</emphasis>. + Cela signifie que ces processeurs peuvent aider VirtualBox à intercepter + des opérations potentiellement dangereuses que pourrait essayer de + faire le système d'exploitation invité et ils facilitent la présentation + de matériel virtuel à une machine virtuelle.</para> + + <para>Ces fonctionnalités du matériel diffèrent entre les processeurs + Intel et AMD. Intel a appelé sa techno <emphasis + role="bold">VT-x</emphasis> ;; AMD a nommé la leur <emphasis + role="bold">AMD-V</emphasis>. Le support d'Intel et d'AMD de la + virtualisation est très différent dans le détail, mais pas si différent + dans le principe.<note> + <para>Sur de nombreux systèmes, les fonctions de virtualisation + matérielle doivent être préalablement activées dans le BIOS avant + de pouvoir être utilisées par VirtualBox.</para> + </note></para> + </listitem> + + <listitem> + <para>Contrairement aux autres logiciels de virtualisation, pour + de nombreux scénari d'utilisation, VirtualBox <emphasis>n'exige pas</emphasis> + que les fonctions de virtualisation matérielle soient présentes. + Par des techniques sophistiquées, VirtualBox virtualise beaucoup + de systèmes d'exploitation invités complets de manière + <emphasis role="bold">logicielle</emphasis>. Cela signifie que vous + pouvez lancer des machines virtuelles même sur d'anciens processeurs + qui ne supportent pas la virtualisation matérielle.</para> + </listitem> + </itemizedlist></para> + + <para>Même si VirtualBox n'exige pas toujours la virtualisation matérielle, + son activation est <emphasis>nécessaire</emphasis> dans les scénari suivants :<itemizedlist> + <listitem> + <para>Certains systèmes d'exploitation, rares, comme OS/2, utilisent + des instructions processeur très ésotériques qui ne sont pas supportées + par notre virtualisation logicielle. Pour les machines virtuelles + configurées pour contenir un tel système d'exploitation, la + virtualisation matérielle est activée automatiquement.</para> + </listitem> + + <listitem> + <para>Le support des invités 64 bits de VirtualBox (ajouté avec la + version 2.0) et le multiprocessing (SMP, ajouté avec la version 3.0) + exigent tous deux l'activation de la virtualisation matérielle (ce n'est + tout de même pas une grosse limite vu l'immense majorité des processeurs + 64 bits et multi cœurs actuels incluant lavirtualisation matérielle ; + les exceptions à cette règle étant par exemple les anciens processeurs + Intel Celeron et AMD Opteron.)</para> + </listitem> + </itemizedlist></para> + + <warning> + <para>Ne lancez pas d'autres hyperviseurs (produits de virtualisation + open-source ou propriétaires) en même temps que VirtualBox ! Si + plusieurs hyperviseurs peuvent, en principe, être <emphasis>installés</emphasis> + en parallèle, n'essayez pas de <emphasis>lancer</emphasis> plusieurs + machines virtuelles à partir d'hyperviseurs concurrents en même temps. + VirtualBox ne peut pas savoir ce qu'un autre hyperviseur essaie de faire + sur un même hôte, et surtout si plusieurs produits essaient d'utiliser la + virtualisation matérielle, les fonctions telles que VT-x, cela peut planter + tout l'hôte. De plus, dans VirtualBox, vous pouvez mélanger la virtualisation + logicielle et matérielle quand vous lancez plusieurs VMs. Dans certains cas, + une petite perte de performances sera inévitable si vous mélangez des + VMs avec virtualisation VT-x et logicielle. Nous recommandons de ne pas + mélanger les modes de virtualisation si la performance maximum et + une faible surcharge (overhead) sont essentiels. Cela <emphasis>ne s'applique pas</emphasis> + à AMD-V.</para> + </warning> + </sect1> + + <sect1> + <title>Détails sur la virtualisation logicielle</title> + + <para>L'implémentation de la virtualisation sur les processeurs x86 sans + le support de la virtualisation matérielle est une tâche extraordinairement + complexe car l'architecture du processeur n'a pas été conçue pour être + virtualisée. On peut résoudre en général les problèmes, mais au prix de + performances réduites. Ainsi, il existe un conflit constant entre les + performances de virtualisation et la précision.</para> + + <para>Le jeu d'instructions x86 a été conçu au départ dans les années 1970 et + subi des modifications significatives avec l'ajout d'un mode protégé dans + les années 1980s avec l'architecture du processeur 286, puis à nouveau avec + l'Intel 386 et l'architecture 32 bits. Alors que le 386 avait un + support de virtualisation vraiment limité pour les opérations en mode réel, + (le mode V86, utilisé par la "DOS Box" de Windows 3.x et d'OS/2 2.x), aucun + port n'existait pour virtualiser toute l'architecture.</para> + + <para>En théorie, la virtualisation logicielle n'est pas complexe en soi. + Outre les quatre niveaux de privilèges ("rings") fournis par le matériel + (dont en général on n'utilise que deux : ring 0 pour le mode noyau et ring 3 + pour le mode utilisateur), il faut faire la différence entre le "contexte + hôte" et le "contexte invité".</para> + + <para>Dans le "contexte hôte", tout est comme s'il n'y avait pas d'hyperviseur + actif. Cela pourrait être le mode actif si une autre application de votre + hôte consomme du temps processeur ; dans ce cas, il existe un mode + ring 3 hôte et un mode ring 0 hôte. L'hyperviseur n'est pas impliqué.</para> + + <para>Par contre, dans le "contexte invité", une machine virtuelle est active. + Tant que le code invité s'exécute en ring 3, ce n'est pas très problématique + vu qu'un hyperviseur peut paramétrer les tableaux des pages correctement et + exécuter ce code de manière native sur le processeur. Les problèmes arrivent + sur la manière d'intercepter ce que fait le noyau de l'invité.</para> + + <para>Il y a plusieurs solutions possibles à ces problèmes. Une approche + est l'émulation logicielle totale, ce qui implique généralement une recompilation. + A savoir que tout le code qui doit être exécuté par l'invité est analysé, + transformé sous une forme qui n'autorisera pas l'invité à modifier et à + voir l'état réel du processeur, lequel l'exécutera simplement. Ce processus + est bien sûr très complexe et coûteux en termes de performances. (VirtualBox + contient un recompilateur basé sur QEMU qu'on peut utiliser pour une + émulation logicielle pure, mais le recompilateur n'est activé que dans + des situations particulières, décrites ci-dessous.)</para> + + <para>Une autre solution possible est la paravirtualisation, où seuls les + OS invités spécialement modifiés sont autorisés à s'exécuter. De cette manière, + la plupart des accès matériels sont rendus abstraits et toutes les fonctions + qui accèderaient normalement au matériel ou à l'état privilégié du processeur + se basent plutôt sur l'hyperviseur. La paravirtualisation peut donner + de bonnes fonctionnalités et de bonnes performances sur des processeurs + x86 standards, mais cela ne peut marcher que si l'OS invité peut être + modifié, ce qui n'est évidemment pas toujours le cas.</para> + + <para>VirtualBox choisit une approche différente. Quand on démarre une + machine virtuelle par son pilote noyau du support ring-0, VirtualBox a + réglé le système hôte pour qu'il puisse lancer nativement la plupart du + code invité, mais il s'insère lui-même "en bas" de l'image. Il peut alors + supposer le contrôle lorsque c'est nécessaire -- si une instruction privilégiée + est exécutée, l'invité plante (traps) (en particulier car un accès au registre + E/S a été tenté et un périphérique doit être virtualisé) ou car des interruptions se produisent. VirtualBox peut + alors gérer cela et soit acheminer une requête vers un périphérique virtuel, + soit, si possible, déléguer la gestion de tels éléments à l'OS hôte ou + invité. Dans le contexte invité, VirtualBox peut être donc dans un des trois + états :</para> + + <para><itemizedlist> + <listitem> + <para>Le code invité ring 3 s'exécute sans modifications, à pleine + vitesse, autant que possible. Le nombre d'erreurs sera généralement + faible (sauf si l'invité autorise l'E/S du port depuis ring 3, + chose que nous ne pouvons pas faire car nous ne voulons pas que + l'invité puisse accéder aux ports réels). On parle aussi de "mode brut", + car le code ring-3 de l'invité s'exécute sans modifications.</para> + </listitem> + + <listitem> + <para>Pour le code invité en ring 0, VirtualBox utilise une astuce + savoureuse : il reconfigure l'invité pour que son code ring-0 + se lance plutôt en ring 1 (ce qui n'est en principe pas utilisé sur les + systèmes d'exploitation x86). Il s'en suit que lorsque le code ring-0 + de l'invité (qui s'exécute en fait en ring 1) tel que le pilote d'un + périphérique invité, essaie d'écrire sur un registre E/S ou d'exécuter + une instruction non privilégiée, l'hyperviseur de VirtualBox en ring + 0 "réel" peut prendre le dessus.</para> + </listitem> + + <listitem> + <para>L'hyperviseur (VMM) peut être actif. Chaque fois qu'une erreur + survient, VirtualBox regarde l'instruction problématique et il peut + la reléguer à un périphérique virtuel, à l'OS hôte, à l'invité ou + il peut le lancer dans le recompilateur.</para> + + <para>En particulier, on utilise le recompilateur quand le code invité + désactive les interruptions et VirtualBox ne peut pas savoir quand + on y reviendra (dans ces situations, VirtualBox analyse en fait le + code invité en utilisant son propre désassembleur). De plus, certaines + instructions privilégiées telles que LIDT doivent être gérées à part. + Enfin, tout le code en mode réel ou protégé (comme le code du BIOS, + un invité DOS ou un démarrage de système d'exploitation) se lance + complètement dans un recompilateur.</para> + </listitem> + </itemizedlist></para> + + <para>Malheureusement, cela ne fonctionne que dans une certaine mesure. + Entre autres, les situations suivantes nécessitent une gestion spéciale :</para> + + <para><orderedlist> + <listitem> + <para>L'exécution de code ring 0 en ring 1 provoque beaucoup d'erreurs + d'instructions supplémentaires car ring 1 n'est pas autorisé à exécuter + des instructions privilégiées (dont le ring-0 de l'invité en contient + beaucoup). Avec chacune de ces erreurs, le VMM doit s'arrêter et + émuler le code pour obtenir le comportement désiré. Si cela fonctionne, + l'émulation de milliers d'erreurs est très coûteuse et très pénalisante + en performances de l'invité virtualisé.</para> + </listitem> + + <listitem> + <para>Il existe des défauts dans l'implémentation de ring 1 de + l'architecture x86 qui n'ont jamais été corrigés. Certaines instructions + qui <emphasis>planteraient</emphasis> même en ring 1 ne le font pas. + Cela concerne par exemple les paires d'instructions LGDT/SGDT, LIDT/SIDT, + ou POPF/PUSHF. Alors que l'opération "load" est privilégiée et peut + donc planter, l'instruction "store" réussit toujours. Si l'invité est + autorisé à les exécuter, il verra l'état réel du PC et pas celui + virtualisé. L'instruction CPUID a également le même problème.</para> + </listitem> + + <listitem> + <para>Un hyperviseur a en général besoin de réserver certaines parties + de l'espace d'adresse de l'invité (tant l'espace d'adresse liénaire + que les sélecteurs) pour son propre usage. Ce n'est pas complètement + transparent pour l'OS invité et cela peut provoquer des conflits.</para> + </listitem> + + <listitem> + <para>L'instruction SYSENTER (utilisée pour les appels système) exécutée + par une application en fonction dans un OS invité transite toujours + par le ring 0. Mais c'est là où l'hyperviseur se lance et pas l'OS + invité. Dans ce cas, l'hyperviseur doit bloquer et émuler l'instruction + même quand ce n'est pas souhaitable.</para> + </listitem> + + <listitem> + <para>Les registres de segments du processeur contiennent un cache + de descripteur "caché" inaccessible de manière logicielle. L'hyperviseur + ne peut pas lire, enregistrer ou restaurer cet état, mais l'OS invité + peut l'utiliser.</para> + </listitem> + + <listitem> + <para>Certaines ressources doivent (et peuvent) être neutralisées par + l'hyperviseur, mais l'accès est si fréquent que cela crée une perte + significative de performance. Un exemple réside dans le registre + TPR (Task Priority) en mode 32 bits. Les accès à ce registre doivent + être bloqués par l'hyperviseur, mais certains systèmes d'exploitation + invités (en particulier Windows et Solaris) écrivent très souvent + dans ce registre, ce qui porte une atteinte certaine aux performances + de virtualisation.</para> + </listitem> + </orderedlist></para> + + <para>Pour corriger ces problèmes de performances et de sécurité, VirtualBox + contient un gestionnaire d'analyse et de scan de code + (Code Scanning and Analysis Manager (CSAM)), qui désassemble le code invité, + et un gestionnaire de correctifs (Patch Manager (PATM)), qui peut le remplacer + pendant l'exécution.</para> + + <para>Avant d'exécuter du code ring 0, CSAM le scanne de manière récursive + pour trouver des instructions problématiques. PATM le corrige <emphasis>in-situ + </emphasis>, c'est-à-dire qu'il remplace l'instruction par un passage à la + mémoire de l'hyperviseur, où un générateur intégré a mis une implémentation + plus convenable. En réalité, c'est une tâche très complexe car il existe + de nombreuses situations compliquées à trouver et à gérer correctement. Donc, + vu son actuelle complexité, on pourrait dire que PATM est un recompilateur + avancé <emphasis>in-situ</emphasis>.</para> + + <para>De plus, à chaque fois qu'une erreur survient, VirtualBox analyse + le code problématique pour déterminer s'il est possible de le corriger afin + de l'empêcher de provoquer davantage de futures erreurs. Cette approche + fonctionne bien en pratique et améliore de façon drastique les performances + de la virtualisation logicielle.</para> + </sect1> + + <sect1> + <title>Détails sur la virtualisation matérielle</title> + + <para>Avec VT-x d'Intel, il existe deux modes opératoires du processeur : + le mode racine VMM et le mode non-racine.<itemizedlist> + <listitem> + <para>En mode racine, le processeur se comporte beaucoup comme les + anciennes générations de processeurs sans le support VT-x. Il y a quatre + niveaux de privilèges ("rings") et le même jeu d'instructions est + supporté avec, en plus, des instructions spécifiques de virtualisation. + Le mode racine est ce que le système d'exploitation hôte utilise sans + virtualisation, et il est aussi utilisé par l'hyperviseur quand la + virtualisation est active.</para> + </listitem> + + <listitem> + <para>En mode non-racine, le fonctionnement du processeur est très + différent. Il y a toujours quatre niveaux de privilèges et le même + jeu d'instructions, mais une nouvelle structure, qui s'appelle VMCS + (Virtual Machine Control Structure), contrôle désormais le fonctionnement + du processeur et elle détermine la manière dont se comportent certaines + instructions. Le mode non-racine est celui dans lequel les systèmes invités + fonctionnent.</para> + </listitem> + </itemizedlist></para> + + <para>Le passage du mode racine au mode non racine s'appelle "l'entrée VM", + celui en sens inverse s'appelle "Quitter VM". Le VMCS inclut une zone d'état + invité et hôte sauvegardée/restaurée à chaque entrée et sortie en VM. + Surtout, les VMMS contrôlent les opérations de l'invité qui feront quitter + la VM.</para> + + <para>Les VMCS permettent un contrôle très fin via ce que les invités + peuvent et ne peuvent pas faire. Par exemple, un hyperviseur peut autoriser + un invité à écrire certains bits dans des registres de contrôle protégés, + mais pas dans d'autres. Cela permet une virtualisation efficace dans des cas + où les invités peuvent être autorisés à écrire des bits de contrôle sans + gêner l'hyperviseur, tout en les empêchant de modifier les bits de contrôle + dont l'hyperviseur a besoin pour avoir un contrôle total. Le VMMS fournit + aussi un contrôle via l'affichage d'interruptions et les exceptions.</para> + + <para>Chaque fois qu'une instruction ou un événement fait quitter une VM, + le VMCS contient des informations sur les raisons de la sortie, ainsi que, + souvent, des détails environnants. Par exemple, si une écriture dans le + registre CR0 fait quitter, l'instruction en cause est enregistrée, ainsi + que le fait qu'un accès en écriture sur le registre de contrôle a provoqué + la sortie, ainsi que les informations sur le registre source et destination. + L'hyperviseur peut ainsi gérer efficacement la condition sans avoir besoin + de techniques avancées telles que CSAM et PATM décrits ci-dessus.</para> + + <para>VT-x évite intrinsèquement plusieurs problèmes qui se posent avec la + virtualisation logicielle. L'invité a son propre espace d'adresse distinct, + qu'il ne partage pas avec l'hyperviseur, ce qui élimine les plantages + potentiels. De plus, le code du noyau de l'OS invité se lance avec le + privilège ring 0 en mode non racine VMX, rendant inopérants les problèmes + d'exécution de code en ring 0 sur des niveaux moins privilégiés. Par exemple, + l'instruction SYSENTER peut faire une transition vers le ring 0 sans problèmes. + Naturellement, même en ring 0 en mode non-racine VMX, tous les accès E/S par + le code invité amène toujours la VM à quitter, permettant l'émulation + de périphérique.</para> + + <para>La plus grosse différence entre VT-x et AMD-V est qu'AMD-V fournit + un environnement de virtualisation plus complet. VT-x exige que le code + non-racine VMX s'exécute en mode pagination activée, ce qui rejette la + virtualisation matérielle de logiciels dont le code est en mode réel et en + mode protégé non paginé. Cela n'inclut en général que les firmwares et les + chargeurs d'OS, néanmoins cela complique l'implémentation d'un hyperviseur + avec VT-x. AMD-V n'a pas cette restriction.</para> + + <para>Bien entendu, la virtualisation matérielle n'est pas parfaite. Par + rapport à la virtualisation logicielle, la surcharge (overherad) des sorties des VMs est + relativement élevée. Cela pose des problèmes aux périphériques dont l'émulation + requiet un grand nombre de captures (traps). Par exemple, avec le périphérique + VGA en mode 16 couleurs, mon seulement tous les accès au port en E/S, mais + aussi tous les accès à la mémoire tampon (framebuffer) doivent être + capturés.</para> + </sect1> + + <sect1 id="imbriquéepaging"> + <title>Pagination imbriquée (imbriquée) et VPIDs</title> + + <para>En plus de la virtualisation matérielle "brute", votre processeur peut + supporter aussi des techniques sophistiquées supplémentaires :<footnote> + <para>VirtualBox 2.0 a ajouté le support de la pagination imbriquée d'AMD ; + le support de l'EPT et des VPIDs d'Intel a été ajouté à la version 2.1.</para> + </footnote><itemizedlist> + <listitem> + <para>Une fonctionnalité récente, qui s'appelle la + <emphasis role="bold">"pagination imbriquée"</emphasis> implémente la + gestion de la mémoire dans le matériel, ce qui peut beaucoup accélérer + la virtualisation matérielle puisque ces tâches n'ont plus besoin d'être + accomplies par le logiciel de virtualisation.</para> + + <para>Avec la pagination imbriquée, le matériel fournit un autre niveau + d'indirection en passant du linéaire aux adresses physiques. Les + tables de page fonctionnent comme avant mais les adresses linéaires + sont désormais d'abord traduites en adresses physiques de "l'invité" + et pas directement en adresses physiques. Il existe maintenant un + nouveau jeu de registres de pagination sous le mécanisme de pagination + traditionnel et qui traduit les adresses physiques invitées en adresses + physiques de l'hôte, qui sont utilisées pour accéder à la mémoire.</para> + + <para>La pagination imbriquée élimine la charge causée par les sorties de + VM et les accès aux tables de pages. Par définition, avec les tables + de pages imbriquées, l'invité peut gérer la pagination sans que l'hyperviseur + n'intervienne. La pagination imbriquée améliore ainsi substantiellement + les performances de virtualisation.</para> + + <para>Sur les processeurs AMD, la pagination imbriquée est disponible + depuis l'architecture Barcelona (K10) -- on l'appelle maintenant la + "rapid virtualization indexing" (RVI). Intel a ajouté le support de + la pagination imbriquée, qu'ils appellent la "extended page tables" (EPT), + à leurs processeurs Core i7 (Nehalem).</para> + + <para>Si la pagination imbriquée est activée, l'hyperviseur de VirtualBox + peut également utiliser <emphasis role="bold">grandes pages</emphasis>, + pour réduire l'utilisation du TLB et la charge. Cela peut provoquer + une amélioration jusqu'à 5% des performances. Pour activer cette + fonctionnalité pour une VM, vous avez besoin d'utiliser la commande + <computeroutput>VBoxManage modifyvm + </computeroutput><computeroutput>--largepages</computeroutput> ; + voir <xref linkend="vboxmanage-modifyvm" />.</para> + </listitem> + + <listitem> + <para>Sur les processeurs Intel, une autre fonction matérielle, qui + s'appelle <emphasis role="bold">"Virtual Processor Identifiers" (VPIDs)</emphasis>, + peut beaucoup accélérer le changement de contexte en réduisant le + besoin coûteux de mémoriser les Translation Lookaside Buffers + (TLBs) du processeur.</para> + + <para>Pour activer ces fonctions pour une VM, vous devez utiliser + les commandes <computeroutput>VBoxManage modifyvm --vtxvpid</computeroutput> et + <computeroutput>--largepages</computeroutput> ; voir <xref + linkend="vboxmanage-modifyvm" />.</para> + </listitem> + </itemizedlist></para> + </sect1> +</chapter> diff --git a/doc/manual/fr_FR/user_ThirdParty.xml b/doc/manual/fr_FR/user_ThirdParty.xml new file mode 100644 index 00000000..bac4f459 --- /dev/null +++ b/doc/manual/fr_FR/user_ThirdParty.xml @@ -0,0 +1,3364 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" + "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd"> +<appendix id="ThirdParty"> + <title>Briques tiers et licences</title> + + <para>VirtualBox englobe des briques de plusieurs logiciels Open Source. + Donc, l'utilisation de ces briques par VirtualBox est soumise à des licences + Open Source. Ce document reproduit ces licences et fournit une liste des briques + utilisées avec leurs conditions de licences respectives. La section 1 contient + une liste des briques utilisées. La section 2 reproduit les licences Open Source + applicables. Pour chaque brique, nous fournissons une référence à sa + licence.</para> + + <para>Le code source des briques listées ci-dessous ainsi que le reste du + code de VirtualBox publiés sous licence open source sont disponibles sur + <ulink url="http://www.virtualbox.org">http://www.virtualbox.org</ulink>, sous + forme d'archives tar pour des versions en particulier et d'un dépôt SVN en + direct.</para> + + <sect1> + <title>briques</title> + + <itemizedlist> + <listitem> + <para>VirtualBox contient des morceaux de QEMU soumis aux licences + de <xref linkend="licX11" xrefstyle="template: %n" /> et + <xref linkend="licLGPL" xrefstyle="template: %n" /> et</para> + + <para>(C) 2003-2005 Fabrice Bellard; Copyright (C) 2004-2005 Vassili + Karpov (malc); Copyright (c) 2004 Antony T Curtis; Copyright (C) 2003 + Jocelyn Mayer</para> + </listitem> + + <listitem> + <para>VirtualBox contient du code sous licence de + <xref linkend="licX11" xrefstyle="template: %n" /> et</para> + + <para>Copyright 2004 par the Massachusetts Institute of + Technology.</para> + </listitem> + + <listitem> + <para>VirtualBox contient du code du BIOS VGA BOCHS soumis à la licence + sur <xref linkend="licLGPL" xrefstyle="template: %n" /> + et</para> + + <para>Copyright (C) 2001, 2002 L'équipe des développeurs LGPL VGABios.</para> + </listitem> + + <listitem> + <para>VirtualBox contient du code du BIOS BOCHS ROM soumis à la licence + de <xref linkend="licLGPL" xrefstyle="template: %n" /> + et</para> + + <para>Copyright (C) 2002 MandrakeSoft S.A.; Copyright (C) 2004 Fabrice + Bellard; Copyright (C) 2005 Struan Bartlett.</para> + </listitem> + + <listitem> + <para>VirtualBox contient la bibliothèque zlib soumise à la licence de + <xref linkend="licZLIB" xrefstyle="template: %n" /> + et</para> + + <para>Copyright (C) 1995-2003 Jean-loup Gailly et Mark Adler.</para> + </listitem> + + <listitem> + <para>VirtualBox peut contenir OpenSSL soumis à la licence dans + <xref linkend="licSSL" xrefstyle="template: %n" /> et</para> + + <para>Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com). Ce + produit inclut un logiciel écrit par Tim Hudson + (tjh@cryptsoft.com).</para> + </listitem> + + <listitem> + <para>VirtualBox peut contenir NSPR et XPCOM soumis à la licence + de <xref linkend="licMPL" xrefstyle="template: %n" /> + et</para> + + <para>Copyright (C) Les auteurs.</para> + </listitem> + + <listitem> + <para>VirtualBox contient Slirp soumis à la licence de + <xref linkend="licSlirp" xrefstyle="template: %n" /> et qui a été écrit + par Danny Gasparovski.</para> + + <para>Copyright (C) 1995, 1996 Tous droits réservés.</para> + </listitem> + + <listitem> + <para>VirtualBox contient liblzf qui est soumis à la licence dans + <xref linkend="licLZF" xrefstyle="template: %n" /> and</para> + + <para>Copyright (C) 2000-2005 Marc Alexander Lehmann + <schmorp@schmorp.de></para> + </listitem> + + <listitem> + <para>VirtualBox peut inclure une copie modifiée de rdesktop soumis à la + licence dans <xref linkend="licGPL" + xrefstyle="template: %n" /> et</para> + + <para>Copyright (C) Matthew Chapman and others.</para> + </listitem> + + <listitem> + <para>VirtualBox peut inclure une copie modifiée de kchmviewer soumis + à la licence dans <xref linkend="licGPL" xrefstyle="template: %n" /> + et</para> + + <para>Copyright (C) George Yunaev and others.</para> + </listitem> + + <listitem> + <para>VirtualBox peut contenir Etherboot soumis à la licence dans + <xref linkend="licGPL" xrefstyle="template: %n" />, sauf l'aggrégation + Etherboot dont un autre travail dont un autre travail publié sous la même + licence (voir + <literal><ulink + url="http://etherboot.sourceforge.net/clinks.html">http://etherboot.sourceforge.net/clinks.html</ulink></literal>). + Etherboot est</para> + + <para>Copyright (C) L'équipe de Etherboot.</para> + </listitem> + + <listitem> + <para>VirtualBox peut contenir iPXE, soumis à la licence dans + <xref linkend="licGPL" xrefstyle="template: %n" /> et</para> + <para>Copyright (C) Michael Brown <mbrown@fensystems.co.uk> + and others.</para> + </listitem> + + <listitem> + <para>VirtualBox contient du code de Wine soumis à la licence dans + <xref linkend="licLGPL" xrefstyle="template: %n" /> + et</para> + + <para>Copyright 1993 Bob Amstadt, Copyright 1996 Albrecht Kleine, + Copyright 1997 David Faure, Copyright 1998 Morten Welinder, Copyright + 1998 Ulrich Weigand, Copyright 1999 Ove Koven</para> + </listitem> + + <listitem> + <para>VirtualBox contient du code de lwIP soumis à la licence + dans <xref linkend="licLWIP" xrefstyle="template: %n" /> + et</para> + + <para>Copyright (C) 2001, 2002 Swedish Institute of Computer + Science (Institut de science informatique).</para> + </listitem> + + <listitem> + <para>VirtualBox contient libxml qui est soumis à la licence dans + <xref linkend="licLibXML" xrefstyle="template: %n" /> et</para> + + <para>Copyright (C) 1998-2003 Daniel Veillard.</para> + </listitem> + + <listitem> + <para>VirtualBox contient libxslt qui est soumis à la licence in + <xref linkend="licLibXSLT" xrefstyle="template: %n" /> et</para> + + <para>Copyright (C) 2001-2002 Daniel Veillard and Copyright (C) + 2001-2002 Thomas Broyer, Charlie Bozeman and Daniel Veillard.</para> + </listitem> + + <listitem> + <para>VirtualBox contient du code des outils de services Web gSOAP XML + sous licence <xref + linkend="licgSOAP" xrefstyle="template: %n" /> et</para> + + <para>Copyright (C) 2000-2007, Robert van Engelen, Genivia Inc., et + autres.</para> + </listitem> + + <listitem> + <para>VirtualBox inclut l'application tunctl (sous le nom + VBoxTunctl) de la User-mode Linux suite soumise à la licence dans + <xref linkend="licGPL" xrefstyle="template: %n" /> + et</para> + + <para>Copyright (C) 2002 Jeff Dike.</para> + </listitem> + + <listitem> + <para>VirtualBox contient du code de Chromium, implémentation OpenGL + soumise à la licence dans <xref + linkend="licChromium" xrefstyle="template: %n" /> et</para> + + <para>Copyright (C) Stanford University, The Regents of the University + of California, Red Hat, et autres.</para> + </listitem> + + <listitem> + <para>VirtualBox contient libcurl qui est soumis à la licence dans + <xref linkend="licLibCurl" xrefstyle="template: %n" /> et</para> + + <para>Copyright (C) 1996-2009, Daniel Stenberg.</para> + </listitem> + + <listitem> + <para>VirtualBox contient dnsproxy qui est soumis à la licence dans + <xref linkend="licMIT" xrefstyle="template: %n" /> et</para> + + <para>Copyright (c) 2003, 2004, 2005 Armin Wolfermann.</para> + </listitem> + + <listitem> + <para>VirtualBox peut contenir iniparser soumis à la licence dans + <xref linkend="licMIT" xrefstyle="template: %n" /> et</para> + + <para>Copyright (c) 2000-2008 by Nicolas Devillard.</para> + </listitem> + + <listitem> + <para>VirtualBox contient du code de libgd soumis à la licence de + <xref linkend="licLibgd" xrefstyle="template: %n"/> et</para> + + <para>Copyright 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007 + Pierre-Alain Joye (pierre@libgd.org).</para> + </listitem> + + <listitem> + <para>VirtualBox contient du code du kit de développement EFI + qui est soumis à la licence dans + <xref linkend="licBsdIntel" xrefstyle="template: %n" /> et</para> + + <para>Copyright (c) 2004-2008, Intel Corporation.</para> + </listitem> + + <listitem> + <para>VirtualBox contient libjpeg soumis à la licence dans + <xref linkend="licJPEG" xrefstyle="template: %n" /> et</para> + + <para>Copyright (C) 1991-2010, Thomas G. Lane, Guido Vollbeding.</para> + </listitem> + + <listitem> + <para>VirtualBox peut contenir l'extension x86 SIMD de la bibliothèque + IJG JPEG, soumis à la licence dans <xref linkend="licJPEGSIMD" + xrefstyle="template: %n" /> et</para> + + <para>Copyright 2009 Pierre Ossman <ossman@cendio.se> pour Cendio AB; + Copyright 2010 D. R. Commander; Copyright (C) 1999-2006, MIYASAKA Masaru. + </para> + </listitem> + + <listitem> + <para>VirtualBox peut inclure une copie de Qt soumis à la licence de + <xref linkend="licLGPL" xrefstyle="template: %n" /> + et</para> + + <para>Copyright (C) 2010, 2011 Nokia Corporation et/ou sa/ses filiale(s).</para> + </listitem> + + <listitem> + <para>VirtualBox contient ces morceaux du noyau FreeBSD soumis à la + licence dans <xref linkend="licFreeBsd" xrefstyle="template: %n" />.</para> + </listitem> + <listitem> + <para>VirtualBox contient des morceaux du noyau NetBSD soumis à la licence + dans <xref linkend="licNetBsd" xrefstyle="template: %n" />.</para> + </listitem> + + <listitem> + <para>VirtualBox contient des morceaux de liblightdm-gobject soumis à la + licence dans <xref linkend="licLGPL" xrefstyle="template: %n" /> et</para> + + <para>Copyright (C) 2010-2013 Canonical Ltd.; Copyright (C) 2010-2011 Robert Ancell.</para> + </listitem> + + <listitem> + <para>VirtualBox contient des morceaux de glib soumis à la + licence dans <xref linkend="licLGPL" xrefstyle="template: %n" /> et</para> + + <para>Copyright (C) 1995-2011 L'équipe de Glib</para> + </listitem> + + <listitem> + <para>VirtualBox contient des morceaux de PCRE soumis à la + licence dans <xref linkend="licPcre" xrefstyle="template: %n" /> et</para> + <para>Copyright (c) 1997-2012 University of Cambridge; + Copyright(c) 2009-2012 Zoltan Herczeg; + Copyright (c) 2007-2012, Google Inc. + </para> + </listitem> + + <listitem> + <para>VirtualBox contient des morceaux de libffi soumis à la + licence dans <xref linkend="licLibffi" xrefstyle="template: %n" /> et</para> + <para> + Copyright (c) 1996-2012 Anthony Green, Red Hat, Inc et autres. + Voir les fichiers du source pour les détails. + </para> + </listitem> + + <listitem> + <para>VirtualBox contient des morceaux de FLTK soumis aux + licences dans <xref linkend="licFltk" xrefstyle="template: %n" /> et + <xref linkend="licLGPL" xrefstyle="template: %n"/> et </para> + <para> + Copyright (C) 1991-2012 L'équipe FLTK + </para> + </listitem> + + <listitem> + <para>VirtualBox contient des morceaux d'Expat soumis à la + licence dans <xref linkend="licExpat" xrefstyle="template: %n" /> et</para> + <para> + Copyright (c) 1998, 1999, 2000 Thai Open Source Software Center Ltd + et Clark Cooper; Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006 + Responsables d'Expat. + </para> + </listitem> + + <listitem> + <para>VirtualBox contient des morceaux de Fontconfig soumis à la + licence dans <xref linkend="licFontconfig" xrefstyle="template: %n" /> + et</para> + <para> + Copyright (C) 2001, 2003 Keith Packard + </para> + </listitem> + + <listitem> + <para>VirtualBox contient des morceaux de Freetype soumis à la + licence dans <xref linkend="licFreetype" xrefstyle="template: %n" /> + et</para> + <para> + Copyright 2012 Le projet FreeType (www.freetype.org). Tous droits + réservés. + </para> + </listitem> + + <listitem> + <para>VirtualBox peut contenir du code du SDK WebM VP8 Codec soumis à la + licence dans <xref linkend="licVPX" xrefstyle="template: %n" /> + et </para> + <para> + Copyright (c) 2010, The WebM Project authors. Tous droits réservés. + </para> + </listitem> + + <listitem> + <para>VirtualBox contient des morceaux de liblightdm-gobject soumis à la + licence dans <xref linkend="licLGPL" xrefstyle="template: %n" /> et</para> + + <para>Copyright (C) 2010-2013 Canonical Ltd.; Copyright (C) 2010-2011 Robert Ancell.</para> + </listitem> + + <listitem> + <para>VirtualBox contient des morceaux de glib soumis à la + licence dans <xref linkend="licLGPL" xrefstyle="template: %n" /> et</para> + + <para>Copyright (C) 1995-2011 L'équipe de Glib</para> + </listitem> + + <listitem> + <para>VirtualBox contient des morceaux de PCRE soumis à la + licence dans <xref linkend="licPcre" xrefstyle="template: %n" /> et</para> + <para>Copyright (c) 1997-2012 University of Cambridge; + Copyright(c) 2009-2012 Zoltan Herczeg; + Copyright (c) 2007-2012, Google Inc. + </para> + </listitem> + + <listitem> + <para>VirtualBox contient des morceaux de libffi soumis à la + licence dans <xref linkend="licLibffi" xrefstyle="template: %n" /> et</para> + <para> + Copyright (c) 1996-2012 Anthony Green, Red Hat, Inc et autres. + Voir les fichiers du source pour les détails. + </para> + </listitem> + + <listitem> + <para>VirtualBox contient des morceaux de FLTK soumis aux + licences dans <xref linkend="licFltk" xrefstyle="template: %n" /> ainsi que + dans <xref linkend="licLGPL" xrefstyle="template: %n"/> et </para> + <para> + Copyright (C) 1991-2012 L'équipe FLTK + </para> + </listitem> + + <listitem> + <para>VirtualBox contient des morceaux d'Expat soumis à la + licence dans <xref linkend="licExpat" xrefstyle="template: %n" /> et</para> + <para> + Copyright (c) 1998, 1999, 2000 Thai Open Source Software Center Ltd + et Clark Cooper; Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006 + Responsables d'Expat. + </para> + </listitem> + + <listitem> + <para>VirtualBox contient des morceaux de Fontconfig soumis à la + licence dans <xref linkend="licFontconfig" xrefstyle="template: %n" /> + et</para> + <para> + Copyright (C) 2001, 2003 Keith Packard + </para> + </listitem> + + <listitem> + <para>VirtualBox contient des morceaux de Freetype soumis à la + licence dans <xref linkend="licFreetype" xrefstyle="template: %n" /> + et</para> + <para> + Copyright 2012 Le projet FreeType (www.freetype.org). Tous droits + réservés. + </para> + </listitem> + + <listitem> + <para>VirtualBox peut contenir du code du SDK WebM VP8 Codec soumis à la + licence dans <xref linkend="licVPX" xrefstyle="template: %n" /> + et </para> + <para> + Copyright (c) 2010, The WebM Project authors. Tous droits réservés. + </para> + </listitem> + + </itemizedlist> + </sect1> + + <sect1> + <title>Licences</title> + + <sect2 id="licGPL"> + <title>GNU General Public License (GPL)</title> + + <para>GNU GENERAL PUBLIC LICENSE Version 2, June 1991</para> + + <para>Copyright (C) 1989, 1991 Free Software Foundation, Inc.</para> + + <para>51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA</para> + + <para>Everyone is permitted to copy and distribute verbatim copies of + this license document, but changing it is not allowed.</para> + + <para>Preamble</para> + + <para>The licenses for most software are designed to take away your + freedom to share and change it. By contrast, the GNU General Public + License is intended to guarantee your freedom to share and change free + software--to make sure the software is free for all its users. This + General Public License applies to most of the Free Software Foundation's + software and to any other program whose authors commit to using it. + (Some other Free Software Foundation software is covered by the GNU + Library General Public License instead.) You can apply it to your + programs, too.</para> + + <para>When we speak of free software, we are referring to freedom, not + price. Our General Public Licenses are designed to make sure that you + have the freedom to distribute copies of free software (and charge for + this service if you wish), that you receive source code or can get it if + you want it, that you can change the software or use pieces of it in new + free programs; and that you know you can do these things.</para> + + <para>To protect your rights, we need to make restrictions that forbid + anyone to deny you these rights or to ask you to surrender the rights. + These restrictions translate to certain responsibilities for you if you + distribute copies of the software, or if you modify it.</para> + + <para>For example, if you distribute copies of such a program, whether + gratis or for a fee, you must give the recipients all the rights that + you have. You must make sure that they, too, receive or can get the + source code. And you must show them these terms so they know their + rights.</para> + + <para>We protect your rights with two steps: (1) copyright the software, + and (2) offer you this license which gives you legal permission to copy, + distribute and/or modify the software.</para> + + <para>Also, for each author's protection and ours, we want to make + certain that everyone understands that there is no warranty for this + free software. If the software is modified by someone else and passed + on, we want its recipients to know that what they have is not the + original, so that any problems introduced by others will not reflect on + the original authors' reputations.</para> + + <para>Finally, any free program is threatened constantly by software + patents. We wish to avoid the danger that redistributors of a free + program will individually obtain patent licenses, in effect making the + program proprietary. To prevent this, we have made it clear that any + patent must be licensed for everyone's free use or not licensed at + all.</para> + + <para>The precise terms and conditions for copying, distribution and + modification follow.</para> + + <para>GNU GENERAL PUBLIC LICENSE TERMS AND CONDITIONS FOR COPYING, + DISTRIBUTION AND MODIFICATION</para> + + <para>0. This License applies to any program or other work which + contains a notice placed by the copyright holder saying it may be + distributed under the terms of this General Public License. The + "Program", below, refers to any such program or work, and a "work based + on the Program" means either the Program or any derivative work under + copyright law: that is to say, a work containing the Program or a + portion of it, either verbatim or with modifications and/or translated + into another language. (Hereinafter, translation is included without + limitation in the term "modification".) Each licensee is addressed as + "you".</para> + + <para>Activities other than copying, distribution and modification are + not covered by this License; they are outside its scope. The act of + running the Program is not restricted, and the output from the Program + is covered only if its contents constitute a work based on the Program + (independent of having been made by running the Program). Whether that + is true depends on what the Program does.</para> + + <para>1. You may copy and distribute verbatim copies of the Program's + source code as you receive it, in any medium, provided that you + conspicuously and appropriately publish on each copy an appropriate + copyright notice and disclaimer of warranty; keep intact all the notices + that refer to this License and to the absence of any warranty; and give + any other recipients of the Program a copy of this License along with + the Program.</para> + + <para>You may charge a fee for the physical act of transferring a copy, + and you may at your option offer warranty protection in exchange for a + fee.</para> + + <para>2. You may modify your copy or copies of the Program or any + portion of it, thus forming a work based on the Program, and copy and + distribute such modifications or work under the terms of Section 1 + above, provided that you also meet all of these conditions:</para> + + <para>a) You must cause the modified files to carry prominent notices + stating that you changed the files and the date of any change.</para> + + <para>b) You must cause any work that you distribute or publish, that in + whole or in part contains or is derived from the Program or any part + thereof, to be licensed as a whole at no charge to all third parties + under the terms of this License.</para> + + <para>c) If the modified program normally reads commands interactively + when run, you must cause it, when started running for such interactive + use in the most ordinary way, to print or display an announcement + including an appropriate copyright notice and a notice that there is no + warranty (or else, saying that you provide a warranty) and that users + may redistribute the program under these conditions, and telling the + user how to view a copy of this License. (Exception: if the Program + itself is interactive but does not normally print such an announcement, + your work based on the Program is not required to print an + announcement.)</para> + + <para>These requirements apply to the modified work as a whole. If + identifiable sections of that work are not derived from the Program, and + can be reasonably considered independent and separate works in + themselves, then this License, and its terms, do not apply to those + sections when you distribute them as separate works. But when you + distribute the same sections as part of a whole which is a work based on + the Program, the distribution of the whole must be on the terms of this + License, whose permissions for other licensees extend to the entire + whole, and thus to each and every part regardless of who wrote + it.</para> + + <para>Thus, it is not the intent of this section to claim rights or + contest your rights to work written entirely by you; rather, the intent + is to exercise the right to control the distribution of derivative or + collective works based on the Program.</para> + + <para>In addition, mere aggregation of another work not based on the + Program with the Program (or with a work based on the Program) on a + volume of a storage or distribution medium does not bring the other work + under the scope of this License.</para> + + <para>3. You may copy and distribute the Program (or a work based on it, + under Section 2) in object code or executable form under the terms of + Sections 1 and 2 above provided that you also do one of the + following:</para> + + <para>a) Accompany it with the complete corresponding machine-readable + source code, which must be distributed under the terms of Sections 1 and + 2 above on a medium customarily used for software interchange; + or,</para> + + <para>b) Accompany it with a written offer, valid for at least three + years, to give any third party, for a charge no more than your cost of + physically performing source distribution, a complete machine-readable + copy of the corresponding source code, to be distributed under the terms + of Sections 1 and 2 above on a medium customarily used for software + interchange; or,</para> + + <para>c) Accompany it with the information you received as to the offer + to distribute corresponding source code. (This alternative is allowed + only for noncommercial distribution and only if you received the program + in object code or executable form with such an offer, in accord with + Subsection b above.)</para> + + <para>The source code for a work means the preferred form of the work + for making modifications to it. For an executable work, complete source + code means all the source code for all modules it contains, plus any + associated interface definition files, plus the scripts used to control + compilation and installation of the executable. However, as a special + exception, the source code distributed need not include anything that is + normally distributed (in either source or binary form) with the major + components (compiler, kernel, and so on) of the operating system on + which the executable runs, unless that component itself accompanies the + executable.</para> + + <para>If distribution of executable or object code is made by offering + access to copy from a designated place, then offering equivalent access + to copy the source code from the same place counts as distribution of + the source code, even though third parties are not compelled to copy the + source along with the object code.</para> + + <para>4. You may not copy, modify, sublicense, or distribute the Program + except as expressly provided under this License. Any attempt otherwise + to copy, modify, sublicense or distribute the Program is void, and will + automatically terminate your rights under this License. However, parties + who have received copies, or rights, from you under this License will + not have their licenses terminated so long as such parties remain in + full compliance.</para> + + <para>5. You are not required to accept this License, since you have not + signed it. However, nothing else grants you permission to modify or + distribute the Program or its derivative works. These actions are + prohibited by law if you do not accept this License. Therefore, by + modifying or distributing the Program (or any work based on the + Program), you indicate your acceptance of this License to do so, and all + its terms and conditions for copying, distributing or modifying the + Program or works based on it.</para> + + <para>6. Each time you redistribute the Program (or any work based on + the Program), the recipient automatically receives a license from the + original licensor to copy, distribute or modify the Program subject to + these terms and conditions. You may not impose any further restrictions + on the recipients' exercise of the rights granted herein. You are not + responsible for enforcing compliance by third parties to this + License.</para> + + <para>7. If, as a consequence of a court judgment or allegation of + patent infringement or for any other reason (not limited to patent + issues), conditions are imposed on you (whether by court order, + agreement or otherwise) that contradict the conditions of this License, + they do not excuse you from the conditions of this License. If you + cannot distribute so as to satisfy simultaneously your obligations under + this License and any other pertinent obligations, then as a consequence + you may not distribute the Program at all. For example, if a patent + license would not permit royalty-free redistribution of the Program by + all those who receive copies directly or indirectly through you, then + the only way you could satisfy both it and this License would be to + refrain entirely from distribution of the Program.</para> + + <para>If any portion of this section is held invalid or unenforceable + under any particular circumstance, the balance of the section is + intended to apply and the section as a whole is intended to apply in + other circumstances.</para> + + <para>It is not the purpose of this section to induce you to infringe + any patents or other property right claims or to contest validity of any + such claims; this section has the sole purpose of protecting the + integrity of the free software distribution system, which is implemented + by public license practices. Many people have made generous + contributions to the wide range of software distributed through that + system in reliance on consistent application of that system; it is up to + the author/donor to decide if he or she is willing to distribute + software through any other system and a licensee cannot impose that + choice.</para> + + <para>This section is intended to make thoroughly clear what is believed + to be a consequence of the rest of this License.</para> + + <para>8. If the distribution and/or use of the Program is restricted in + certain countries either by patents or by copyrighted interfaces, the + original copyright holder who places the Program under this License may + add an explicit geographical distribution limitation excluding those + countries, so that distribution is permitted only in or among countries + not thus excluded. In such case, this License incorporates the + limitation as if written in the body of this License.</para> + + <para>9. The Free Software Foundation may publish revised and/or new + versions of the General Public License from time to time. Such new + versions will be similar in spirit to the present version, but may + differ in detail to address new problems or concerns.</para> + + <para>Each version is given a distinguishing version number. If the + Program specifies a version number of this License which applies to it + and "any later version", you have the option of following the terms and + conditions either of that version or of any later version published by + the Free Software Foundation. If the Program does not specify a version + number of this License, you may choose any version ever published by the + Free Software Foundation.</para> + + <para>10. If you wish to incorporate parts of the Program into other + free programs whose distribution conditions are different, write to the + author to ask for permission. For software which is copyrighted by the + Free Software Foundation, write to the Free Software Foundation; we + sometimes make exceptions for this. Our decision will be guided by the + two goals of preserving the free status of all derivatives of our free + software and of promoting the sharing and reuse of software + generally.</para> + + <para>NO WARRANTY</para> + + <para>11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO + WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. + EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR + OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, + EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE + ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH + YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL + NECESSARY SERVICING, REPAIR OR CORRECTION.</para> + + <para>12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN + WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY + AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR + DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL + DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM + (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED + INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF + THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR + OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.</para> + + <para>END OF TERMS AND CONDITIONS</para> + </sect2> + + <sect2 id="licLGPL"> + <title>GNU Lesser General Public License (LGPL)</title> + + <para>GNU LESSER GENERAL PUBLIC LICENSE Version 2.1, February + 1999</para> + + <para>Copyright (C) 1991, 1999 Free Software Foundation, Inc. 59 Temple + Place, Suite 330, Boston, MA 02111-1307 USA Everyone is permitted to + copy and distribute verbatim copies of this license document, but + changing it is not allowed.</para> + + <para>[This is the first released version of the Lesser GPL. It also + counts as the successor of the GNU Library Public License, version 2, + hence the version number 2.1.]</para> + + <para>Preamble</para> + + <para>The licenses for most software are designed to take away your + freedom to share and change it. By contrast, the GNU General Public + Licenses are intended to guarantee your freedom to share and change free + software--to make sure the software is free for all its users.</para> + + <para>This license, the Lesser General Public License, applies to some + specially designated software packages--typically libraries--of the Free + Software Foundation and other authors who decide to use it. You can use + it too, but we suggest you first think carefully about whether this + license or the ordinary General Public License is the better strategy to + use in any particular case, based on the explanations below.</para> + + <para>When we speak of free software, we are referring to freedom of + use, not price. Our General Public Licenses are designed to make sure + that you have the freedom to distribute copies of free software (and + charge for this service if you wish); that you receive source code or + can get it if you want it; that you can change the software and use + pieces of it in new free programs; and that you are informed that you + can do these things.</para> + + <para>To protect your rights, we need to make restrictions that forbid + distributors to deny you these rights or to ask you to surrender these + rights. These restrictions translate to certain responsibilities for you + if you distribute copies of the library or if you modify it.</para> + + <para>For example, if you distribute copies of the library, whether + gratis or for a fee, you must give the recipients all the rights that we + gave you. You must make sure that they, too, receive or can get the + source code. If you link other code with the library, you must provide + complete object files to the recipients, so that they can relink them + with the library after making changes to the library and recompiling it. + And you must show them these terms so they know their rights.</para> + + <para>We protect your rights with a two-step method: (1) we copyright + the library, and (2) we offer you this license, which gives you legal + permission to copy, distribute and/or modify the library.</para> + + <para>To protect each distributor, we want to make it very clear that + there is no warranty for the free library. Also, if the library is + modified by someone else and passed on, the recipients should know that + what they have is not the original version, so that the original + author's reputation will not be affected by problems that might be + introduced by others.</para> + + <para>Finally, software patents pose a constant threat to the existence + of any free program. We wish to make sure that a company cannot + effectively restrict the users of a free program by obtaining a + restrictive license from a patent holder. Therefore, we insist that any + patent license obtained for a version of the library must be consistent + with the full freedom of use specified in this license.</para> + + <para>Most GNU software, including some libraries, is covered by the + ordinary GNU General Public License. This license, the GNU Lesser + General Public License, applies to certain designated libraries, and is + quite different from the ordinary General Public License. We use this + license for certain libraries in order to permit linking those libraries + into non-free programs.</para> + + <para>When a program is linked with a library, whether statically or + using a shared library, the combination of the two is legally speaking a + combined work, a derivative of the original library. The ordinary + General Public License therefore permits such linking only if the entire + combination fits its criteria of freedom. The Lesser General Public + License permits more lax criteria for linking other code with the + library.</para> + + <para>We call this license the "Lesser" General Public License because + it does Less to protect the user's freedom than the ordinary General + Public License. It also provides other free software developers Less of + an advantage over competing non-free programs. These disadvantages are + the reason we use the ordinary General Public License for many + libraries. However, the Lesser license provides advantages in certain + special circumstances.</para> + + <para>For example, on rare occasions, there may be a special need to + encourage the widest possible use of a certain library, so that it + becomes a de-facto standard. To achieve this, non-free programs must be + allowed to use the library. A more frequent case is that a free library + does the same job as widely used non-free libraries. In this case, there + is little to gain by limiting the free library to free software only, so + we use the Lesser General Public License.</para> + + <para>In other cases, permission to use a particular library in non-free + programs enables a greater number of people to use a large body of free + software. For example, permission to use the GNU C Library in non-free + programs enables many more people to use the whole GNU operating system, + as well as its variant, the GNU/Linux operating system.</para> + + <para>Although the Lesser General Public License is Less protective of + the users' freedom, it does ensure that the user of a program that is + linked with the Library has the freedom and the wherewithal to run that + program using a modified version of the Library.</para> + + <para>The precise terms and conditions for copying, distribution and + modification follow. Pay close attention to the difference between a + "work based on the library" and a "work that uses the library". The + former contains code derived from the library, whereas the latter must + be combined with the library in order to run.</para> + + <para>GNU LESSER GENERAL PUBLIC LICENSE TERMS AND CONDITIONS FOR + COPYING, DISTRIBUTION AND MODIFICATION</para> + + <para>0. This License Agreement applies to any software library or other + program which contains a notice placed by the copyright holder or other + authorized party saying it may be distributed under the terms of this + Lesser General Public License (also called "this License"). Each + licensee is addressed as "you".</para> + + <para>A "library" means a collection of software functions and/or data + prepared so as to be conveniently linked with application programs + (which use some of those functions and data) to form executables.</para> + + <para>The "Library", below, refers to any such software library or work + which has been distributed under these terms. A "work based on the + Library" means either the Library or any derivative work under copyright + law: that is to say, a work containing the Library or a portion of it, + either verbatim or with modifications and/or translated + straightforwardly into another language. (Hereinafter, translation is + included without limitation in the term "modification".)</para> + + <para>"Source code" for a work means the preferred form of the work for + making modifications to it. For a library, complete source code means + all the source code for all modules it contains, plus any associated + interface definition files, plus the scripts used to control compilation + and installation of the library.</para> + + <para>Activities other than copying, distribution and modification are + not covered by this License; they are outside its scope. The act of + running a program using the Library is not restricted, and output from + such a program is covered only if its contents constitute a work based + on the Library (independent of the use of the Library in a tool for + writing it). Whether that is true depends on what the Library does and + what the program that uses the Library does.</para> + + <para>1. You may copy and distribute verbatim copies of the Library's + complete source code as you receive it, in any medium, provided that you + conspicuously and appropriately publish on each copy an appropriate + copyright notice and disclaimer of warranty; keep intact all the notices + that refer to this License and to the absence of any warranty; and + distribute a copy of this License along with the Library.</para> + + <para>You may charge a fee for the physical act of transferring a copy, + and you may at your option offer warranty protection in exchange for a + fee.</para> + + <para>2. You may modify your copy or copies of the Library or any + portion of it, thus forming a work based on the Library, and copy and + distribute such modifications or work under the terms of Section 1 + above, provided that you also meet all of these conditions:</para> + + <para>a) The modified work must itself be a software library.</para> + + <para>b) You must cause the files modified to carry prominent notices + stating that you changed the files and the date of any change.</para> + + <para>c) You must cause the whole of the work to be licensed at no + charge to all third parties under the terms of this License.</para> + + <para>d) If a facility in the modified Library refers to a function or a + table of data to be supplied by an application program that uses the + facility, other than as an argument passed when the facility is invoked, + then you must make a good faith effort to ensure that, in the event an + application does not supply such function or table, the facility still + operates, and performs whatever part of its purpose remains + meaningful.</para> + + <para>(For example, a function in a library to compute square roots has + a purpose that is entirely well-defined independent of the application. + Therefore, Subsection 2d requires that any application-supplied function + or table used by this function must be optional: if the application does + not supply it, the square root function must still compute square + roots.)</para> + + <para>These requirements apply to the modified work as a whole. If + identifiable sections of that work are not derived from the Library, and + can be reasonably considered independent and separate works in + themselves, then this License, and its terms, do not apply to those + sections when you distribute them as separate works. But when you + distribute the same sections as part of a whole which is a work based on + the Library, the distribution of the whole must be on the terms of this + License, whose permissions for other licensees extend to the entire + whole, and thus to each and every part regardless of who wrote + it.</para> + + <para>Thus, it is not the intent of this section to claim rights or + contest your rights to work written entirely by you; rather, the intent + is to exercise the right to control the distribution of derivative or + collective works based on the Library.</para> + + <para>In addition, mere aggregation of another work not based on the + Library with the Library (or with a work based on the Library) on a + volume of a storage or distribution medium does not bring the other work + under the scope of this License.</para> + + <para>3. You may opt to apply the terms of the ordinary GNU General + Public License instead of this License to a given copy of the Library. + To do this, you must alter all the notices that refer to this License, + so that they refer to the ordinary GNU General Public License, version + 2, instead of to this License. (If a newer version than version 2 of the + ordinary GNU General Public License has appeared, then you can specify + that version instead if you wish.) Do not make any other change in these + notices.</para> + + <para>Once this change is made in a given copy, it is irreversible for + that copy, so the ordinary GNU General Public License applies to all + subsequent copies and derivative works made from that copy.</para> + + <para>This option is useful when you wish to copy part of the code of + the Library into a program that is not a library.</para> + + <para>4. You may copy and distribute the Library (or a portion or + derivative of it, under Section 2) in object code or executable form + under the terms of Sections 1 and 2 above provided that you accompany it + with the complete corresponding machine-readable source code, which must + be distributed under the terms of Sections 1 and 2 above on a medium + customarily used for software interchange.</para> + + <para>If distribution of object code is made by offering access to copy + from a designated place, then offering equivalent access to copy the + source code from the same place satisfies the requirement to distribute + the source code, even though third parties are not compelled to copy the + source along with the object code.</para> + + <para>5. A program that contains no derivative of any portion of the + Library, but is designed to work with the Library by being compiled or + linked with it, is called a "work that uses the Library". Such a work, + in isolation, is not a derivative work of the Library, and therefore + falls outside the scope of this License.</para> + + <para>However, linking a "work that uses the Library" with the Library + creates an executable that is a derivative of the Library (because it + contains portions of the Library), rather than a "work that uses the + library". The executable is therefore covered by this License. Section 6 + states terms for distribution of such executables.</para> + + <para>When a "work that uses the Library" uses material from a header + file that is part of the Library, the object code for the work may be a + derivative work of the Library even though the source code is not. + Whether this is true is especially significant if the work can be linked + without the Library, or if the work is itself a library. The threshold + for this to be true is not precisely defined by law.</para> + + <para>If such an object file uses only numerical parameters, data + structure layouts and accessors, and small macros and small inline + functions (ten lines or less in length), then the use of the object file + is unrestricted, regardless of whether it is legally a derivative work. + (Executables containing this object code plus portions of the Library + will still fall under Section 6.) Otherwise, if the work is a derivative + of the Library, you may distribute the object code for the work under + the terms of Section 6. Any executables containing that work also fall + under Section 6, whether or not they are linked directly with the + Library itself.</para> + + <para>6. As an exception to the Sections above, you may also combine or + link a "work that uses the Library" with the Library to produce a work + containing portions of the Library, and distribute that work under terms + of your choice, provided that the terms permit modification of the work + for the customer's own use and reverse engineering for debugging such + modifications.</para> + + <para>You must give prominent notice with each copy of the work that the + Library is used in it and that the Library and its use are covered by + this License. You must supply a copy of this License. If the work during + execution displays copyright notices, you must include the copyright + notice for the Library among them, as well as a reference directing the + user to the copy of this License. Also, you must do one of these + things:</para> + + <para>a) Accompany the work with the complete corresponding + machine-readable source code for the Library including whatever changes + were used in the work (which must be distributed under Sections 1 and 2 + above); and, if the work is an executable linked with the Library, with + the complete machine-readable "work that uses the Library", as object + code and/or source code, so that the user can modify the Library and + then relink to produce a modified executable containing the modified + Library. (It is understood that the user who changes the contents of + definitions files in the Library will not necessarily be able to + recompile the application to use the modified definitions.)</para> + + <para>b) Use a suitable shared library mechanism for linking with the + Library. A suitable mechanism is one that (1) uses at run time a copy of + the library already present on the user's computer system, rather than + copying library functions into the executable, and (2) will operate + properly with a modified version of the library, if the user installs + one, as long as the modified version is interface-compatible with the + version that the work was made with.</para> + + <para>c) Accompany the work with a written offer, valid for at least + three years, to give the same user the materials specified in Subsection + 6a, above, for a charge no more than the cost of performing this + distribution.</para> + + <para>d) If distribution of the work is made by offering access to copy + from a designated place, offer equivalent access to copy the above + specified materials from the same place.</para> + + <para>e) Verify that the user has already received a copy of these + materials or that you have already sent this user a copy.</para> + + <para>For an executable, the required form of the "work that uses the + Library" must include any data and utility programs needed for + reproducing the executable from it. However, as a special exception, the + materials to be distributed need not include anything that is normally + distributed (in either source or binary form) with the major components + (compiler, kernel, and so on) of the operating system on which the + executable runs, unless that component itself accompanies the + executable.</para> + + <para>It may happen that this requirement contradicts the license + restrictions of other proprietary libraries that do not normally + accompany the operating system. Such a contradiction means you cannot + use both them and the Library together in an executable that you + distribute.</para> + + <para>7. You may place library facilities that are a work based on the + Library side-by-side in a single library together with other library + facilities not covered by this License, and distribute such a combined + library, provided that the separate distribution of the work based on + the Library and of the other library facilities is otherwise permitted, + and provided that you do these two things:</para> + + <para>a) Accompany the combined library with a copy of the same work + based on the Library, uncombined with any other library facilities. This + must be distributed under the terms of the Sections above.</para> + + <para>b) Give prominent notice with the combined library of the fact + that part of it is a work based on the Library, and explaining where to + find the accompanying uncombined form of the same work.</para> + + <para>8. You may not copy, modify, sublicense, link with, or distribute + the Library except as expressly provided under this License. Any attempt + otherwise to copy, modify, sublicense, link with, or distribute the + Library is void, and will automatically terminate your rights under this + License. However, parties who have received copies, or rights, from you + under this License will not have their licenses terminated so long as + such parties remain in full compliance.</para> + + <para>9. You are not required to accept this License, since you have not + signed it. However, nothing else grants you permission to modify or + distribute the Library or its derivative works. These actions are + prohibited by law if you do not accept this License. Therefore, by + modifying or distributing the Library (or any work based on the + Library), you indicate your acceptance of this License to do so, and all + its terms and conditions for copying, distributing or modifying the + Library or works based on it.</para> + + <para>10. Each time you redistribute the Library (or any work based on + the Library), the recipient automatically receives a license from the + original licensor to copy, distribute, link with or modify the Library + subject to these terms and conditions. You may not impose any further + restrictions on the recipients' exercise of the rights granted herein. + You are not responsible for enforcing compliance by third parties with + this License.</para> + + <para>11. If, as a consequence of a court judgment or allegation of + patent infringement or for any other reason (not limited to patent + issues), conditions are imposed on you (whether by court order, + agreement or otherwise) that contradict the conditions of this License, + they do not excuse you from the conditions of this License. If you + cannot distribute so as to satisfy simultaneously your obligations under + this License and any other pertinent obligations, then as a consequence + you may not distribute the Library at all. For example, if a patent + license would not permit royalty-free redistribution of the Library by + all those who receive copies directly or indirectly through you, then + the only way you could satisfy both it and this License would be to + refrain entirely from distribution of the Library.</para> + + <para>If any portion of this section is held invalid or unenforceable + under any particular circumstance, the balance of the section is + intended to apply, and the section as a whole is intended to apply in + other circumstances.</para> + + <para>It is not the purpose of this section to induce you to infringe + any patents or other property right claims or to contest validity of any + such claims; this section has the sole purpose of protecting the + integrity of the free software distribution system which is implemented + by public license practices. Many people have made generous + contributions to the wide range of software distributed through that + system in reliance on consistent application of that system; it is up to + the author/donor to decide if he or she is willing to distribute + software through any other system and a licensee cannot impose that + choice.</para> + + <para>This section is intended to make thoroughly clear what is believed + to be a consequence of the rest of this License.</para> + + <para>12. If the distribution and/or use of the Library is restricted in + certain countries either by patents or by copyrighted interfaces, the + original copyright holder who places the Library under this License may + add an explicit geographical distribution limitation excluding those + countries, so that distribution is permitted only in or among countries + not thus excluded. In such case, this License incorporates the + limitation as if written in the body of this License.</para> + + <para>13. The Free Software Foundation may publish revised and/or new + versions of the Lesser General Public License from time to time. Such + new versions will be similar in spirit to the present version, but may + differ in detail to address new problems or concerns.</para> + + <para>Each version is given a distinguishing version number. If the + Library specifies a version number of this License which applies to it + and "any later version", you have the option of following the terms and + conditions either of that version or of any later version published by + the Free Software Foundation. If the Library does not specify a license + version number, you may choose any version ever published by the Free + Software Foundation.</para> + + <para>14. If you wish to incorporate parts of the Library into other + free programs whose distribution conditions are incompatible with these, + write to the author to ask for permission. For software which is + copyrighted by the Free Software Foundation, write to the Free Software + Foundation; we sometimes make exceptions for this. Our decision will be + guided by the two goals of preserving the free status of all derivatives + of our free software and of promoting the sharing and reuse of software + generally.</para> + + <para>NO WARRANTY</para> + + <para>15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO + WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW. + EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR + OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY KIND, + EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE + ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE LIBRARY IS WITH + YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL + NECESSARY SERVICING, REPAIR OR CORRECTION.</para> + + <para>16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN + WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY + AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU FOR + DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL + DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE LIBRARY + (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED + INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF + THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF SUCH HOLDER OR + OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.</para> + + <para>END OF TERMS AND CONDITIONS</para> + </sect2> + + <sect2 id="licMPL"> + <title>Mozilla Public License (MPL)</title> + + <para>MOZILLA PUBLIC LICENSE Version 1.1</para> + + <para>1. Definitions.</para> + + <para>1.0.1. "Commercial Use" means distribution or otherwise making the + Covered Code available to a third party.</para> + + <para>1.1. "Contributor" means each entity that creates or contributes + to the creation of Modifications.</para> + + <para>1.2. "Contributor Version" means the combination of the Original + Code, prior Modifications used by a Contributor, and the Modifications + made by that particular Contributor.</para> + + <para>1.3. "Covered Code" means the Original Code or Modifications or + the combination of the Original Code and Modifications, in each case + including portions thereof.</para> + + <para>1.4. "Electronic Distribution Mechanism" means a mechanism + generally accepted in the software development community for the + electronic transfer of data.</para> + + <para>1.5. "Executable" means Covered Code in any form other than Source + Code.</para> + + <para>1.6. "Initial Developer" means the individual or entity identified + as the Initial Developer in the Source Code notice required by Exhibit + A.</para> + + <para>1.7. "Larger Work" means a work which combines Covered Code or + portions thereof with code not governed by the terms of this + License.</para> + + <para>1.8. "License" means this document.</para> + + <para>1.8.1. "Licensable" means having the right to grant, to the + maximum extent possible, whether at the time of the initial grant or + subsequently acquired, any and all of the rights conveyed herein.</para> + + <para>1.9. "Modifications" means any addition to or deletion from the + substance or structure of either the Original Code or any previous + Modifications. When Covered Code is released as a series of files, a + Modification is:</para> + + <para>A. Any addition to or deletion from the contents of a file + containing Original Code or previous Modifications.</para> + + <para>B. Any new file that contains any part of the Original Code or + previous Modifications.</para> + + <para>1.10. "Original Code" means Source Code of computer software code + which is described in the Source Code notice required by Exhibit A as + Original Code, and which, at the time of its release under this License + is not already Covered Code governed by this License.</para> + + <para>1.10.1. "Patent Claims" means any patent claim(s), now owned or + hereafter acquired, including without limitation, method, process, and + apparatus claims, in any patent Licensable by grantor.</para> + + <para>1.11. "Source Code" means the preferred form of the Covered Code + for making modifications to it, including all modules it contains, plus + any associated interface definition files, scripts used to control + compilation and installation of an Executable, or source code + differential comparisons against either the Original Code or another + well known, available Covered Code of the Contributor's choice. The + Source Code can be in a compressed or archival form, provided the + appropriate decompression or de-archiving software is widely available + for no charge.</para> + + <para>1.12. "You" (or "Your") means an individual or a legal entity + exercising rights under, and complying with all of the terms of, this + License or a future version of this License issued under Section 6.1. + For legal entities, "You" includes any entity which controls, is + controlled by, or is under common control with You. For purposes of this + definition, "control" means (a) the power, direct or indirect, to cause + the direction or management of such entity, whether by contract or + otherwise, or (b) ownership of more than fifty percent (50%) of the + outstanding shares or beneficial ownership of such entity.</para> + + <para>2. Source Code License.</para> + + <para>2.1. The Initial Developer Grant. The Initial Developer hereby + grants You a world-wide, royalty-free, non-exclusive license, subject to + third party intellectual property claims:</para> + + <para>(a) under intellectual property rights (other than patent or + trademark) Licensable by Initial Developer to use, reproduce, modify, + display, perform, sublicense and distribute the Original Code (or + portions thereof) with or without Modifications, and/or as part of a + Larger Work; and</para> + + <para>(b) under Patents Claims infringed by the making, using or selling + of Original Code, to make, have made, use, practice, sell, and offer for + sale, and/or otherwise dispose of the Original Code (or portions + thereof).</para> + + <para>(c) the licenses granted in this Section 2.1(a) and (b) are + effective on the date Initial Developer first distributes Original Code + under the terms of this License.</para> + + <para>(d) Notwithstanding Section 2.1(b) above, no patent license is + granted: 1) for code that You delete from the Original Code; 2) separate + from the Original Code; or 3) for infringements caused by: i) the + modification of the Original Code or ii) the combination of the Original + Code with other software or devices.</para> + + <para>2.2. Contributor Grant. Subject to third party intellectual + property claims, each Contributor hereby grants You a world-wide, + royalty-free, non-exclusive license</para> + + <para>(a) under intellectual property rights (other than patent or + trademark) Licensable by Contributor, to use, reproduce, modify, + display, perform, sublicense and distribute the Modifications created by + such Contributor (or portions thereof) either on an unmodified basis, + with other Modifications, as Covered Code and/or as part of a Larger + Work; and</para> + + <para>(b) under Patent Claims infringed by the making, using, or selling + of Modifications made by that Contributor either alone and/or in + combination with its Contributor Version (or portions of such + combination), to make, use, sell, offer for sale, have made, and/or + otherwise dispose of: 1) Modifications made by that Contributor (or + portions thereof); and 2) the combination of Modifications made by that + Contributor with its Contributor Version (or portions of such + combination).</para> + + <para>(c) the licenses granted in Sections 2.2(a) and 2.2(b) are + effective on the date Contributor first makes Commercial Use of the + Covered Code.</para> + + <para>(d) Notwithstanding Section 2.2(b) above, no patent license is + granted: 1) for any code that Contributor has deleted from the + Contributor Version; 2) separate from the Contributor Version; 3) for + infringements caused by: i) third party modifications of Contributor + Version or ii) the combination of Modifications made by that Contributor + with other software (except as part of the Contributor Version) or other + devices; or 4) under Patent Claims infringed by Covered Code in the + absence of Modifications made by that Contributor.</para> + + <para>3. Distribution Obligations.</para> + + <para>3.1. Application of License. The Modifications which You create or + to which You contribute are governed by the terms of this License, + including without limitation Section 2.2. The Source Code version of + Covered Code may be distributed only under the terms of this License or + a future version of this License released under Section 6.1, and You + must include a copy of this License with every copy of the Source Code + You distribute. You may not offer or impose any terms on any Source Code + version that alters or restricts the applicable version of this License + or the recipients' rights hereunder. However, You may include an + additional document offering the additional rights described in Section + 3.5.</para> + + <para>3.2. Availability of Source Code. Any Modification which You + create or to which You contribute must be made available in Source Code + form under the terms of this License either on the same media as an + Executable version or via an accepted Electronic Distribution Mechanism + to anyone to whom you made an Executable version available; and if made + available via Electronic Distribution Mechanism, must remain available + for at least twelve (12) months after the date it initially became + available, or at least six (6) months after a subsequent version of that + particular Modification has been made available to such recipients. You + are responsible for ensuring that the Source Code version remains + available even if the Electronic Distribution Mechanism is maintained by + a third party.</para> + + <para>3.3. Description of Modifications. You must cause all Covered Code + to which You contribute to contain a file documenting the changes You + made to create that Covered Code and the date of any change. You must + include a prominent statement that the Modification is derived, directly + or indirectly, from Original Code provided by the Initial Developer and + including the name of the Initial Developer in (a) the Source Code, and + (b) in any notice in an Executable version or related documentation in + which You describe the origin or ownership of the Covered Code.</para> + + <para>3.4. Intellectual Property Matters</para> + + <para>(a) Third Party Claims. If Contributor has knowledge that a + license under a third party's intellectual property rights is required + to exercise the rights granted by such Contributor under Sections 2.1 or + 2.2, Contributor must include a text file with the Source Code + distribution titled "LEGAL" which describes the claim and the party + making the claim in sufficient detail that a recipient will know whom to + contact. If Contributor obtains such knowledge after the Modification is + made available as described in Section 3.2, Contributor shall promptly + modify the LEGAL file in all copies Contributor makes available + thereafter and shall take other steps (such as notifying appropriate + mailing lists or newsgroups) reasonably calculated to inform those who + received the Covered Code that new knowledge has been obtained.</para> + + <para>(b) Contributor APIs. If Contributor's Modifications include an + application programming interface and Contributor has knowledge of + patent licenses which are reasonably necessary to implement that API, + Contributor must also include this information in the LEGAL file.</para> + + <para>3.5. Required Notices. You must duplicate the notice in Exhibit A + in each file of the Source Code. If it is not possible to put such + notice in a particular Source Code file due to its structure, then You + must include such notice in a location (such as a relevant directory) + where a user would be likely to look for such a notice. If You created + one or more Modification(s) You may add your name as a Contributor to + the notice described in Exhibit A. You must also duplicate this License + in any documentation for the Source Code where You describe recipients' + rights or ownership rights relating to Covered Code. You may choose to + offer, and to charge a fee for, warranty, support, indemnity or + liability obligations to one or more recipients of Covered Code. + However, You may do so only on Your own behalf, and not on behalf of the + Initial Developer or any Contributor. You must make it absolutely clear + than any such warranty, support, indemnity or liability obligation is + offered by You alone, and You hereby agree to indemnify the Initial + Developer and every Contributor for any liability incurred by the + Initial Developer or such Contributor as a result of warranty, support, + indemnity or liability terms You offer.</para> + + <para>3.6. Distribution of Executable Versions. You may distribute + Covered Code in Executable form only if the requirements of Section + 3.1-3.5 have been met for that Covered Code, and if You include a notice + stating that the Source Code version of the Covered Code is available + under the terms of this License, including a description of how and + where You have fulfilled the obligations of Section 3.2. The notice must + be conspicuously included in any notice in an Executable version, + related documentation or collateral in which You describe recipients' + rights relating to the Covered Code. You may distribute the Executable + version of Covered Code or ownership rights under a license of Your + choice, which may contain terms different from this License, provided + that You are in compliance with the terms of this License and that the + license for the Executable version does not attempt to limit or alter + the recipient's rights in the Source Code version from the rights set + forth in this License. If You distribute the Executable version under a + different license You must make it absolutely clear that any terms which + differ from this License are offered by You alone, not by the Initial + Developer or any Contributor. You hereby agree to indemnify the Initial + Developer and every Contributor for any liability incurred by the + Initial Developer or such Contributor as a result of any such terms You + offer.</para> + + <para>3.7. Larger Works. You may create a Larger Work by combining + Covered Code with other code not governed by the terms of this License + and distribute the Larger Work as a single product. In such a case, You + must make sure the requirements of this License are fulfilled for the + Covered Code.</para> + + <para>4. Inability to Comply Due to Statute or Regulation.If it is + impossible for You to comply with any of the terms of this License with + respect to some or all of the Covered Code due to statute, judicial + order, or regulation then You must: (a) comply with the terms of this + License to the maximum extent possible; and (b) describe the limitations + and the code they affect. Such description must be included in the LEGAL + file described in Section 3.4 and must be included with all + distributions of the Source Code. Except to the extent prohibited by + statute or regulation, such description must be sufficiently detailed + for a recipient of ordinary skill to be able to understand it.</para> + + <para>5. Application of this License. This License applies to code to + which the Initial Developer has attached the notice in Exhibit A and to + related Covered Code.</para> + + <para>6. Versions of the License.</para> + + <para>6.1. New Versions. Netscape Communications Corporation + ("Netscape") may publish revised and/or new versions of the License from + time to time. Each version will be given a distinguishing version + number.</para> + + <para>6.2. Effect of New Versions. Once Covered Code has been published + under a particular version of the License, You may always continue to + use it under the terms of that version. You may also choose to use such + Covered Code under the terms of any subsequent version of the License + published by Netscape. No one other than Netscape has the right to + modify the terms applicable to Covered Code created under this + License.</para> + + <para>6.3. Derivative Works. If You create or use a modified version of + this License (which you may only do in order to apply it to code which + is not already Covered Code governed by this License), You must (a) + rename Your license so that the phrases "Mozilla", "MOZILLAPL", "MOZPL", + "Netscape", "MPL", "NPL" or any confusingly similar phrase do not appear + in your license (except to note that your license differs from this + License) and (b) otherwise make it clear that Your version of the + license contains terms which differ from the Mozilla Public License and + Netscape Public License. (Filling in the name of the Initial Developer, + Original Code or Contributor in the notice described in Exhibit A shall + not of themselves be deemed to be modifications of this License.)</para> + + <para>7. DISCLAIMER OF WARRANTY.</para> + + <para>COVERED CODE IS PROVIDED UNDER THIS LICENSE ON AN "AS IS" BASIS, + WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + WITHOUT LIMITATION, WARRANTIES THAT THE COVERED CODE IS FREE OF DEFECTS, + MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE OR NON-INFRINGING. THE ENTIRE + RISK AS TO THE QUALITY AND PERFORMANCE OF THE COVERED CODE IS WITH YOU. + SHOULD ANY COVERED CODE PROVE DEFECTIVE IN ANY RESPECT, YOU (NOT THE + INITIAL DEVELOPER OR ANY OTHER CONTRIBUTOR) ASSUME THE COST OF ANY + NECESSARY SERVICING, REPAIR OR CORRECTION. THIS DISCLAIMER OF WARRANTY + CONSTITUTES AN ESSENTIAL PART OF THIS LICENSE. NO USE OF ANY COVERED + CODE IS AUTHORIZED HEREUNDER EXCEPT UNDER THIS DISCLAIMER.</para> + + <para>8. TERMINATION.</para> + + <para>8.1. This License and the rights granted hereunder will terminate + automatically if You fail to comply with terms herein and fail to cure + such breach within 30 days of becoming aware of the breach. All + sublicenses to the Covered Code which are properly granted shall survive + any termination of this License. Provisions which, by their nature, must + remain in effect beyond the termination of this License shall + survive.</para> + + <para>8.2. If You initiate litigation by asserting a patent infringement + claim (excluding declaratory judgment actions) against Initial Developer + or a Contributor (the Initial Developer or Contributor against whom You + file such action is referred to as "Participant") alleging that:</para> + + <para>(a) such Participant's Contributor Version directly or indirectly + infringes any patent, then any and all rights granted by such + Participant to You under Sections 2.1 and/or 2.2 of this License shall, + upon 60 days notice from Participant terminate prospectively, unless if + within 60 days after receipt of notice You either: (i) agree in writing + to pay Participant a mutually agreeable reasonable royalty for Your past + and future use of Modifications made by such Participant, or (ii) + withdraw Your litigation claim with respect to the Contributor Version + against such Participant. If within 60 days of notice, a reasonable + royalty and payment arrangement are not mutually agreed upon in writing + by the parties or the litigation claim is not withdrawn, the rights + granted by Participant to You under Sections 2.1 and/or 2.2 + automatically terminate at the expiration of the 60 day notice period + specified above.</para> + + <para>(b) any software, hardware, or device, other than such + Participant's Contributor Version, directly or indirectly infringes any + patent, then any rights granted to You by such Participant under + Sections 2.1(b) and 2.2(b) are revoked effective as of the date You + first made, used, sold, distributed, or had made, Modifications made by + that Participant.</para> + + <para>8.3. If You assert a patent infringement claim against Participant + alleging that such Participant's Contributor Version directly or + indirectly infringes any patent where such claim is resolved (such as by + license or settlement) prior to the initiation of patent infringement + litigation, then the reasonable value of the licenses granted by such + Participant under Sections 2.1 or 2.2 shall be taken into account in + determining the amount or value of any payment or license.</para> + + <para>8.4. In the event of termination under Sections 8.1 or 8.2 above, + all end user license agreements (excluding distributors and resellers) + which have been validly granted by You or any distributor hereunder + prior to termination shall survive termination.</para> + + <para>9. LIMITATION OF LIABILITY. UNDER NO CIRCUMSTANCES AND UNDER NO + LEGAL THEORY, WHETHER TORT (INCLUDING NEGLIGENCE), CONTRACT, OR + OTHERWISE, SHALL YOU, THE INITIAL DEVELOPER, ANY OTHER CONTRIBUTOR, OR + ANY DISTRIBUTOR OF COVERED CODE, OR ANY SUPPLIER OF ANY OF SUCH PARTIES, + BE LIABLE TO ANY PERSON FOR ANY INDIRECT, SPECIAL, INCIDENTAL, OR + CONSEQUENTIAL DAMAGES OF ANY CHARACTER INCLUDING, WITHOUT LIMITATION, + DAMAGES FOR LOSS OF GOODWILL, WORK STOPPAGE, COMPUTER FAILURE OR + MALFUNCTION, OR ANY AND ALL OTHER COMMERCIAL DAMAGES OR LOSSES, EVEN IF + SUCH PARTY SHALL HAVE BEEN INFORMED OF THE POSSIBILITY OF SUCH DAMAGES. + THIS LIMITATION OF LIABILITY SHALL NOT APPLY TO LIABILITY FOR DEATH OR + PERSONAL INJURY RESULTING FROM SUCH PARTY'S NEGLIGENCE TO THE EXTENT + APPLICABLE LAW PROHIBITS SUCH LIMITATION. SOME JURISDICTIONS DO NOT + ALLOW THE EXCLUSION OR LIMITATION OF INCIDENTAL OR CONSEQUENTIAL + DAMAGES, SO THIS EXCLUSION AND LIMITATION MAY NOT APPLY TO YOU.</para> + + <para>10. U.S. GOVERNMENT END USERS. The Covered Code is a "commercial + item," as that term is defined in 48 C.F.R. 2.101 (Oct. 1995), + consisting of "commercial computer software" and "commercial computer + software documentation," as such terms are used in 48 C.F.R. 12.212 + (Sept. 1995). Consistent with 48 C.F.R. 12.212 and 48 C.F.R. 227.7202-1 + through 227.7202-4 (June 1995), all U.S. Government End Users acquire + Covered Code with only those rights set forth herein.</para> + + <para>11. MISCELLANEOUS. This License represents the complete agreement + concerning subject matter hereof. If any provision of this License is + held to be unenforceable, such provision shall be reformed only to the + extent necessary to make it enforceable. This License shall be governed + by California law provisions (except to the extent applicable law, if + any, provides otherwise), excluding its conflict-of-law provisions. With + respect to disputes in which at least one party is a citizen of, or an + entity chartered or registered to do business in the United States of + America, any litigation relating to this License shall be subject to the + jurisdiction of the Federal Courts of the Northern District of + California, with venue lying in Santa Clara County, California, with the + losing party responsible for costs, including without limitation, court + costs and reasonable attorneys' fees and expenses. The application of + the United Nations Convention on Contracts for the International Sale of + Goods is expressly excluded. Any law or regulation which provides that + the language of a contract shall be construed against the drafter shall + not apply to this License.</para> + + <para>12. RESPONSIBILITY FOR CLAIMS. As between Initial Developer and + the Contributors, each party is responsible for claims and damages + arising, directly or indirectly, out of its utilization of rights under + this License and You agree to work with Initial Developer and + Contributors to distribute such responsibility on an equitable basis. + Nothing herein is intended or shall be deemed to constitute any + admission of liability.</para> + + <para>13. MULTIPLE-LICENSED CODE. Initial Developer may designate + portions of the Covered Code as "Multiple-Licensed". "Multiple-Licensed" + means that the Initial Developer permits you to utilize portions of the + Covered Code under Your choice of the NPL or the alternative licenses, + if any, specified by the Initial Developer in the file described in + Exhibit A.</para> + + <para>EXHIBIT A -Mozilla Public License.</para> + + <para>``The contents of this file are subject to the Mozilla Public + License Version 1.1 (the "License"); you may not use this file except in + compliance with the License. You may obtain a copy of the License at + http://www.mozilla.org/MPL/</para> + + <para>Software distributed under the License is distributed on an "AS + IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See + the License for the specific language governing rights and limitations + under the License.</para> + + <para>The Original Code is + ______________________________________.</para> + + <para>The Initial Developer of the Original Code is + ________________________. Portions created by ______________________ are + Copyright (C) ______ _______________________. All Rights + Reserved.</para> + + <para>Contributor(s): ______________________________________.</para> + + <para>Alternatively, the contents of this file may be used under the + terms of the _____ license (the "[___] License"), in which case the + provisions of [______] License are applicable instead of those above. If + you wish to allow use of your version of this file only under the terms + of the [____] License and not to allow others to use your version of + this file under the MPL, indicate your decision by deleting the + provisions above and replace them with the notice and other provisions + required by the [___] License. If you do not delete the provisions + above, a recipient may use your version of this file under either the + MPL or the [___] License."</para> + + <para>[NOTE: The text of this Exhibit A may differ slightly from the + text of the notices in the Source Code files of the Original Code. You + should use the text of this Exhibit A rather than the text found in the + Original Code Source Code for Your Modifications.]</para> + </sect2> + + <sect2 id="licMIT"> + <title>Licence MIT</title> + + <para>Permission is hereby granted, free of charge, to any person + obtaining a copy of this software and associated documentation files + (the "Software"), to deal in the Software without restriction, including + without limitation the rights to use, copy, modify, merge, publish, + distribute, sublicense, and/or sell copies of the Software, and to + permit persons to whom the Software is furnished to do so, subject to + the following conditions:</para> + + <para>The above copyright notice and this permission notice shall be + included in all copies or substantial portions of the Software.</para> + + <para>THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. + IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY + CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, + TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE + SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.</para> + </sect2> + + <sect2 id="licX11"> + <title>X Consortium License (X11)</title> + + <para>Permission is hereby granted, free of charge, to any person + obtaining a copy of this software and associated documentation files + (the "Software"), to deal in the Software without restriction, including + without limitation the rights to use, copy, modify, merge, publish, + distribute, sublicense, and/or sell copies of the Software, and to + permit persons to whom the Software is furnished to do so, subject to + the following conditions:</para> + + <para>The above copyright notice and this permission notice shall be + included in all copies or substantial portions of the Software.</para> + + <para>THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. + IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY + CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, + TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE + SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.</para> + </sect2> + + <sect2 id="licZLIB"> + <title>Licence zlib</title> + + <para>This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software.</para> + + <para>Permission is granted to anyone to use this software for any + purpose, including commercial applications, and to alter it and + redistribute it freely, subject to the following restrictions:</para> + + <para>1. The origin of this software must not be misrepresented; you + must not claim that you wrote the original software. If you use this + software in a product, an acknowledgment in the product documentation + would be appreciated but is not required.</para> + + <para>2. Altered source versions must be plainly marked as such, and + must not be misrepresented as being the original software.</para> + + <para>3. This notice may not be removed or altered from any source + distribution.</para> + + <screen>Jean-loup Gailly Mark Adler +jloup@gzip.org madler@alumni.caltech.edu</screen> + </sect2> + + <sect2 id="licSSL"> + <title>Licence OpenSSL</title> + + <para>This package is an SSL implementation written by Eric Young + (eay@cryptsoft.com). The implementation was written so as to conform + with Netscape's SSL.</para> + + <para>This library is free for commercial and non-commercial use as long + as the following conditions are adhered to. The following conditions + apply to all code found in this distribution, be it the RC4, RSA, lhash, + DES, etc., code; not just the SSL code. The SSL documentation included + with this distribution is covered by the same copyright terms except + that the holder is Tim Hudson (tjh@cryptsoft.com).</para> + + <para>Copyright remains Eric Young's, and as such any Copyright notices + in the code are not to be removed. If this package is used in a product, + Eric Young should be given attribution as the author of the parts of the + library used. This can be in the form of a textual message at program + startup or in documentation (online or textual) provided with the + package.</para> + + <para>Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met:</para> + + <para>1. Redistributions of source code must retain the copyright + notice, this list of conditions and the following disclaimer.</para> + + <para>2. Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following disclaimer + in the documentation and/or other materials provided with the + distribution.</para> + + <para>3. All advertising materials mentioning features or use of this + software must display the following acknowledgement: "This product + includes cryptographic software written by Eric Young + (eay@cryptsoft.com)" The word 'cryptographic' can be left out if the + routines from the library being used are not cryptographic related + :-).</para> + + <para>4. If you include any Windows specific code (or a derivative + thereof) from the apps directory (application code) you must include an + acknowledgement: "This product includes software written by Tim Hudson + (tjh@cryptsoft.com)"</para> + + <para>THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND ANY EXPRESS + OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE FOR + ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN + ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + POSSIBILITY OF SUCH DAMAGE.</para> + + <para>The licence and distribution terms for any publicly available + version or derivative of this code cannot be changed. i.e. this code + cannot simply be copied and put under another distribution licence + [including the GNU Public Licence.]</para> + </sect2> + + <sect2 id="licSlirp"> + <title>Licence Slirp</title> + + <para>Copyright (c) 1995,1996 Danny Gasparovski. Tous droits réservés.</para> + + <para>Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met:</para> + + <para>1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer.</para> + + <para>2. Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following disclaimer + in the documentation and/or other materials provided with the + distribution.</para> + + <para>3. All advertising materials mentioning features or use of this + software must display the following acknowledgment: This product + includes software developed by Danny Gasparovski.</para> + + <para>THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED + WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN + NO EVENT SHALL DANNY GASPAROVSKI OR CONTRIBUTORS BE LIABLE FOR ANY + DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN + ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + POSSIBILITY OF SUCH DAMAGE.</para> + </sect2> + + <sect2 id="licLZF"> + <title>Licence liblzf</title> + + <para>Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met:</para> + + <para>1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer.</para> + + <para>2. Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following disclaimer + in the documentation and/or other materials provided with the + distribution.</para> + + <para>3. The name of the author may not be used to endorse or promote + products derived from this software without specific prior written + permission.</para> + + <para>THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS + OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, + INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN + ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + POSSIBILITY OF SUCH DAMAGE.</para> + </sect2> + + <sect2> + <title>Licence libpng</title> + + <para>The PNG Reference Library is supplied "AS IS". The Contributing + Authors and Group 42, Inc. disclaim all warranties, expressed or + implied, including, without limitation, the warranties of + merchantability and of fitness for any purpose. The Contributing Authors + and Group 42, Inc. assume no liability for direct, indirect, incidental, + special, exemplary, or consequential damages, which may result from the + use of the PNG Reference Library, even if advised of the possibility of + such damage.</para> + + <para>Permission is hereby granted to use, copy, modify, and distribute + this source code, or portions hereof, for any purpose, without fee, + subject to the following restrictions:</para> + + <para>1. The origin of this source code must not be + misrepresented.</para> + + <para>2. Altered versions must be plainly marked as such and must not be + misrepresented as being the original source.</para> + + <para>3. This Copyright notice may not be removed or altered from any + source or altered source distribution.</para> + + <para>The Contributing Authors and Group 42, Inc. specifically permit, + without fee, and encourage the use of this source code as a component to + supporting the PNG file format in commercial products. If you use this + source code in a product, acknowledgment is not required but would be + appreciated.</para> + </sect2> + + <sect2 id="licLWIP"> + <title>Licence lwIP</title> + + <para>Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met:</para> + + <para>1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer.</para> + + <para>2. Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following disclaimer + in the documentation and/or other materials provided with the + distribution.</para> + + <para>3. The name of the author may not be used to endorse or promote + products derived from this software without specific prior written + permission.</para> + + <para>THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS + OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, + INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN + ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + POSSIBILITY OF SUCH DAMAGE.</para> + </sect2> + + <sect2 id="licLibXML"> + <title>Licence libxml</title> + + <para>Except where otherwise noted in the source code (e.g. the files + hash.c, list.c and the trio files, which are covered by a similar + licence but with different Copyright notices) all the files are:</para> + + <para>Copyright (C) 1998-2003 Daniel Veillard. Tous droits + Réservés.</para> + + <para>Permission is hereby granted, free of charge, to any person + obtaining a copy of this software and associated documentation files + (the "Software"), to deal in the Software without restriction, including + without limitation the rights to use, copy, modify, merge, publish, + distribute, sublicense, and/or sell copies of the Software, and to + permit persons to whom the Software is furnished to do so, subject to + the following conditions:</para> + + <para>The above copyright notice and this permission notice shall be + included in all copies or substantial portions of the Software.</para> + + <para>THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. + IN NO EVENT SHALL THE DANIEL VEILLARD BE LIABLE FOR ANY CLAIM, DAMAGES + OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, + ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR + OTHER DEALINGS IN THE SOFTWARE.</para> + + <para>Except as contained in this notice, the name of Daniel Veillard + shall not be used in advertising or otherwise to promote the sale, use + or other dealings in this Software without prior written authorization + from him.</para> + </sect2> + + <sect2 id="licLibXSLT"> + <title>libxslt licenses</title> + + <para>Licence for libxslt except libexslt:</para> + + <para>Copyright (C) 2001-2002 Daniel Veillard. Tous droits + réservés.</para> + + <para>Permission is hereby granted, free of charge, to any person + obtaining a copy of this software and associated documentation files + (the "Software"), to deal in the Software without restriction, including + without limitation the rights to use, copy, modify, merge, publish, + distribute, sublicense, and/or sell copies of the Software, and to + permit persons to whom the Software is furnished to do so, subject to + the following conditions:</para> + + <para>The above copyright notice and this permission notice shall be + included in all copies or substantial portions of the Software.</para> + + <para>THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. + IN NO EVENT SHALL THE DANIEL VEILLARD BE LIABLE FOR ANY CLAIM, DAMAGES + OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, + ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR + OTHER DEALINGS IN THE SOFTWARE.</para> + + <para>Except as contained in this notice, the name of Daniel Veillard + shall not be used in advertising or otherwise to promote the sale, use + or other dealings in this Software without prior written authorization + from him.</para> + + <para>Licence for libexslt:</para> + + <para>Copyright (C) 2001-2002 Thomas Broyer, Charlie Bozeman et Daniel + Veillard. Tous droits réservés.</para> + + <para>Permission is hereby granted, free of charge, to any person + obtaining a copy of this software and associated documentation files + (the "Software"), to deal in the Software without restriction, including + without limitation the rights to use, copy, modify, merge, publish, + distribute, sublicense, and/or sell copies of the Software, and to + permit persons to whom the Software is furnished to do so, subject to + the following conditions:</para> + + <para>The above copyright notice and this permission notice shall be + included in all copies or substantial portions of the Software.</para> + + <para>THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. + IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING + FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER + DEALINGS IN THE SOFTWARE.</para> + + <para>Except as contained in this notice, the name of the authors shall + not be used in advertising or otherwise to promote the sale, use or + other dealings in this Software without prior written authorization from + him.</para> + </sect2> + + <sect2 id="licgSOAP"> + <title>gSOAP Public License Version 1.3a</title> + + <para>The gSOAP public license is derived from the Mozilla Public + License (MPL1.1). The sections that were deleted from the original + MPL1.1 text are 1.0.1, 2.1.(c),(d), 2.2.(c),(d), 8.2.(b), 10, and 11. + Section 3.8 was added. The modified sections are 2.1.(b), 2.2.(b), 3.2 + (simplified), 3.5 (deleted the last sentence), and 3.6 + (simplified).</para> + + <para>1 DEFINITIONS</para> + + <para>1.1. "Contributor" means each entity that creates or contributes + to the creation of Modifications.</para> + + <para>1.2. "Contributor Version" means the combination of the Original + Code, prior Modifications used by a Contributor, and the Modifications + made by that particular Contributor.</para> + + <para>1.3. "Covered Code" means the Original Code, or Modifications or + the combination of the Original Code, and Modifications, in each case + including portions thereof.</para> + + <para>1.4. "Electronic Distribution Mechanism" means a mechanism + generally accepted in the software development community for the + electronic transfer of data.</para> + + <para>1.5. "Executable" means Covered Code in any form other than Source + Code.</para> + + <para>1.6. "Initial Developer" means the individual or entity identified + as the Initial Developer in the Source Code notice required by Exhibit + A.</para> + + <para>1.7. "Larger Work" means a work which combines Covered Code or + portions thereof with code not governed by the terms of this + License.</para> + + <para>1.8. "License" means this document.</para> + + <para>1.8.1. "Licensable" means having the right to grant, to the + maximum extent possible, whether at the time of the initial grant or + subsequently acquired, any and all of the rights conveyed herein.</para> + + <para>1.9. "Modifications" means any addition to or deletion from the + substance or structure of either the Original Code or any previous + Modifications. When Covered Code is released as a series of files, a + Modification is:</para> + + <para>A. Any addition to or deletion from the contents of a file + containing Original Code or previous Modifications.</para> + + <para>B. Any new file that contains any part of the Original Code, or + previous Modifications.</para> + + <para>1.10. "Original Code" means Source Code of computer software code + which is described in the Source Code notice required by Exhibit A as + Original Code, and which, at the time of its release under this License + is not already Covered Code governed by this License.</para> + + <para>1.10.1. "Patent Claims" means any patent claim(s), now owned or + hereafter acquired, including without limitation, method, process, and + apparatus claims, in any patent Licensable by grantor.</para> + + <para>1.11. "Source Code" means the preferred form of the Covered Code + for making modifications to it, including all modules it contains, plus + any associated interface definition files, scripts used to control + compilation and installation of an Executable, or source code + differential comparisons against either the Original Code or another + well known, available Covered Code of the Contributor's choice. The + Source Code can be in a compressed or archival form, provided the + appropriate decompression or de-archiving software is widely available + for no charge.</para> + + <para>1.12. "You" (or "Your") means an individual or a legal entity + exercising rights under, and complying with all of the terms of, this + License or a future version of this License issued under Section 6.1. + For legal entities, "You" includes any entity which controls, is + controlled by, or is under common control with You. For purposes of this + definition, "control" means (a) the power, direct or indirect, to cause + the direction or management of such entity, whether by contract or + otherwise, or (b) ownership of more than fifty percent (50%) of the + outstanding shares or beneficial ownership of such entity.</para> + + <para>2 SOURCE CODE LICENSE.</para> + + <para>2.1. The Initial Developer Grant.</para> + + <para>The Initial Developer hereby grants You a world-wide, + royalty-free, non-exclusive license, subject to third party intellectual + property claims:</para> + + <para>(a) under intellectual property rights (other than patent or + trademark) Licensable by Initial Developer to use, reproduce, modify, + display, perform, sublicense and distribute the Original Code (or + portions thereof) with or without Modifications, and/or as part of a + Larger Work; and</para> + + <para>(b) under patents now or hereafter owned or controlled by Initial + Developer, to make, have made, use and sell ("offer to sell and import") + the Original Code, Modifications, or portions thereof, but solely to the + extent that any such patent is reasonably necessary to enable You to + utilize, alone or in combination with other software, the Original Code, + Modifications, or any combination or portions thereof.</para> + + <para>(c)</para> + + <para>(d)</para> + + <para>2.2. Contributor Grant.</para> + + <para>Subject to third party intellectual property claims, each + Contributor hereby grants You a world-wide, royalty-free, non-exclusive + license</para> + + <para>(a) under intellectual property rights (other than patent or + trademark) Licensable by Contributor, to use, reproduce, modify, + display, perform, sublicense and distribute the Modifications created by + such Contributor (or portions thereof) either on an unmodified basis, + with other Modifications, as Covered Code and/or as part of a Larger + Work; and</para> + + <para>(b) under patents now or hereafter owned or controlled by + Contributor, to make, have made, use and sell ("offer to sell and + import") the Contributor Version (or portions thereof), but solely to + the extent that any such patent is reasonably necessary to enable You to + utilize, alone or in combination with other software, the Contributor + Version (or portions thereof).</para> + + <para>(c)</para> + + <para>(d)</para> + + <para>3 DISTRIBUTION OBLIGATIONS.</para> + + <para>3.1. Application of License.</para> + + <para>The Modifications which You create or to which You contribute are + governed by the terms of this License, including without limitation + Section 2.2. The Source Code version of Covered Code may be distributed + only under the terms of this License or a future version of this License + released under Section 6.1, and You must include a copy of this License + with every copy of the Source Code You distribute. You may not offer or + impose any terms on any Source Code version that alters or restricts the + applicable version of this License or the recipients' rights hereunder. + However, You may include an additional document offering the additional + rights described in Section 3.5.</para> + + <para>3.2. Availability of Source Code.</para> + + <para>Any Modification created by You will be provided to the Initial + Developer in Source Code form and are subject to the terms of the + License. 3.3. Description of Modifications.</para> + + <para>You must cause all Covered Code to which You contribute to contain + a file documenting the changes You made to create that Covered Code and + the date of any change. You must include a prominent statement that the + Modification is derived, directly or indirectly, from Original Code + provided by the Initial Developer and including the name of the Initial + Developer in (a) the Source Code, and (b) in any notice in an Executable + version or related documentation in which You describe the origin or + ownership of the Covered Code.</para> + + <para>3.4. Intellectual Property Matters.</para> + + <para>(a) Third Party Claims. If Contributor has knowledge that a + license under a third party's intellectual property rights is required + to exercise the rights granted by such Contributor under Sections 2.1 or + 2.2, Contributor must include a text file with the Source Code + distribution titled "LEGAL" which describes the claim and the party + making the claim in sufficient detail that a recipient will know whom to + contact. If Contributor obtains such knowledge after the Modification is + made available as described in Section 3.2, Contributor shall promptly + modify the LEGAL file in all copies Contributor makes available + thereafter and shall take other steps (such as notifying appropriate + mailing lists or newsgroups) reasonably calculated to inform those who + received the Covered Code that new knowledge has been obtained.</para> + + <para>(b) Contributor APIs. If Contributor's Modifications include an + application programming interface and Contributor has knowledge of + patent licenses which are reasonably necessary to implement that API, + Contributor must also include this information in the LEGAL file.</para> + + <para>(c) Representations. Contributor represents that, except as + disclosed pursuant to Section 3.4(a) above, Contributor believes that + Contributor's Modifications are Contributor's original creation(s) + and/or Contributor has sufficient rights to grant the rights conveyed by + this License.</para> + + <para>3.5. Required Notices. You must duplicate the notice in Exhibit A + in each file of the Source Code. If it is not possible to put such + notice in a particular Source Code file due to its structure, then You + must include such notice in a location (such as a relevant directory) + where a user would be likely to look for such a notice. If You created + one or more Modification(s) You may add your name as a Contributor to + the notice described in Exhibit A. You must also duplicate this License + in any documentation for the Source Code where You describe recipients' + rights or ownership rights relating to Covered Code. You may choose to + offer, and to charge a fee for, warranty, support, indemnity or + liability obligations to one or more recipients of Covered Code. + However, You may do so only on Your own behalf, and not on behalf of the + Initial Developer or any Contributor.</para> + + <para>3.6. Distribution of Executable Versions. You may distribute + Covered Code in Executable form only if the requirements of Section + 3.1-3.5 have been met for that Covered Code. You may distribute the + Executable version of Covered Code or ownership rights under a license + of Your choice, which may contain terms different from this License, + provided that You are in compliance with the terms of this License and + that the license for the Executable version does not attempt to limit or + alter the recipient's rights in the Source Code version from the rights + set forth in this License. If You distribute the Executable version + under a different license You must make it absolutely clear that any + terms which differ from this License are offered by You alone, not by + the Initial Developer or any Contributor. If you distribute executable + versions containing Covered Code as part of a product, you must + reproduce the notice in Exhibit B in the documentation and/or other + materials provided with the product.</para> + + <para>3.7. Larger Works. You may create a Larger Work by combining + Covered Code with other code not governed by the terms of this License + and distribute the Larger Work as a single product. In such a case, You + must make sure the requirements of this License are fulfilled for the + Covered Code.</para> + + <para>3.8. Restrictions. You may not remove any product identification, + copyright, proprietary notices or labels from gSOAP.</para> + + <para>4 INABILITY TO COMPLY DUE TO STATUTE OR REGULATION.</para> + + <para>If it is impossible for You to comply with any of the terms of + this License with respect to some or all of the Covered Code due to + statute, judicial order, or regulation then You must: (a) comply with + the terms of this License to the maximum extent possible; and (b) + describe the limitations and the code they affect. Such description must + be included in the LEGAL file described in Section 3.4 and must be + included with all distributions of the Source Code. Except to the extent + prohibited by statute or regulation, such description must be + sufficiently detailed for a recipient of ordinary skill to be able to + understand it.</para> + + <para>5 APPLICATION OF THIS LICENSE.</para> + + <para>This License applies to code to which the Initial Developer has + attached the notice in Exhibit A and to related Covered Code.</para> + + <para>6 VERSIONS OF THE LICENSE.</para> + + <para>6.1. New Versions.</para> + + <para>Grantor may publish revised and/or new versions of the License + from time to time. Each version will be given a distinguishing version + number.</para> + + <para>6.2. Effect of New Versions.</para> + + <para>Once Covered Code has been published under a particular version of + the License, You may always continue to use it under the terms of that + version. You may also choose to use such Covered Code under the terms of + any subsequent version of the License.</para> + + <para>6.3. Derivative Works.</para> + + <para>If You create or use a modified version of this License (which you + may only do in order to apply it to code which is not already Covered + Code governed by this License), You must (a) rename Your license so that + the phrase "gSOAP" or any confusingly similar phrase do not appear in + your license (except to note that your license differs from this + License) and (b) otherwise make it clear that Your version of the + license contains terms which differ from the gSOAP Public License. + (Filling in the name of the Initial Developer, Original Code or + Contributor in the notice described in Exhibit A shall not of themselves + be deemed to be modifications of this License.)</para> + + <para>7 DISCLAIMER OF WARRANTY.</para> + + <para>COVERED CODE IS PROVIDED UNDER THIS LICENSE ON AN "AS IS" BASIS, + WITHOUT WARRANTY OF ANY KIND, WHETHER EXPRESS, IMPLIED OR STATUTORY, + INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF + MERCHANTABILITY, OF FITNESS FOR A PARTICULAR PURPOSE, NONINFRINGEMENT OF + THIRD PARTY INTELLECTUAL PROPERTY RIGHTS, AND ANY WARRANTY THAT MAY + ARISE BY REASON OF TRADE USAGE, CUSTOM, OR COURSE OF DEALING. WITHOUT + LIMITING THE FOREGOING, YOU ACKNOWLEDGE THAT THE SOFTWARE IS PROVIDED + "AS IS" AND THAT THE AUTHORS DO NOT WARRANT THE SOFTWARE WILL RUN + UNINTERRUPTED OR ERROR FREE. LIMITED LIABILITY THE ENTIRE RISK AS TO + RESULTS AND PERFORMANCE OF THE SOFTWARE IS ASSUMED BY YOU. UNDER NO + CIRCUMSTANCES WILL THE AUTHORS BE LIABLE FOR ANY SPECIAL, INDIRECT, + INCIDENTAL, EXEMPLARY OR CONSEQUENTIAL DAMAGES OF ANY KIND OR NATURE + WHATSOEVER, WHETHER BASED ON CONTRACT, WARRANTY, TORT (INCLUDING + NEGLIGENCE), STRICT LIABILITY OR OTHERWISE, ARISING OUT OF OR IN ANY WAY + RELATED TO THE SOFTWARE, EVEN IF THE AUTHORS HAVE BEEN ADVISED ON THE + POSSIBILITY OF SUCH DAMAGE OR IF SUCH DAMAGE COULD HAVE BEEN REASONABLY + FORESEEN, AND NOTWITHSTANDING ANY FAILURE OF ESSENTIAL PURPOSE OF ANY + EXCLUSIVE REMEDY PROVIDED. SUCH LIMITATION ON DAMAGES INCLUDES, BUT IS + NOT LIMITED TO, DAMAGES FOR LOSS OF GOODWILL, LOST PROFITS, LOSS OF DATA + OR SOFTWARE, WORK STOPPAGE, COMPUTER FAILURE OR MALFUNCTION OR + IMPAIRMENT OF OTHER GOODS. IN NO EVENT WILL THE AUTHORS BE LIABLE FOR + THE COSTS OF PROCUREMENT OF SUBSTITUTE SOFTWARE OR SERVICES. YOU + ACKNOWLEDGE THAT THIS SOFTWARE IS NOT DESIGNED FOR USE IN ON-LINE + EQUIPMENT IN HAZARDOUS ENVIRONMENTS SUCH AS OPERATION OF NUCLEAR + FACILITIES, AIRCRAFT NAVIGATION OR CONTROL, OR LIFE-CRITICAL + APPLICATIONS. THE AUTHORS EXPRESSLY DISCLAIM ANY LIABILITY RESULTING + FROM USE OF THE SOFTWARE IN ANY SUCH ON-LINE EQUIPMENT IN HAZARDOUS + ENVIRONMENTS AND ACCEPTS NO LIABILITY IN RESPECT OF ANY ACTIONS OR + CLAIMS BASED ON THE USE OF THE SOFTWARE IN ANY SUCH ON-LINE EQUIPMENT IN + HAZARDOUS ENVIRONMENTS BY YOU. FOR PURPOSES OF THIS PARAGRAPH, THE TERM + "LIFE-CRITICAL APPLICATION" MEANS AN APPLICATION IN WHICH THE + FUNCTIONING OR MALFUNCTIONING OF THE SOFTWARE MAY RESULT DIRECTLY OR + INDIRECTLY IN PHYSICAL INJURY OR LOSS OF HUMAN LIFE. THIS DISCLAIMER OF + WARRANTY CONSTITUTES AN ESSENTIAL PART OF THIS LICENSE. NO USE OF ANY + COVERED CODE IS AUTHORIZED HEREUNDER EXCEPT UNDER THIS + DISCLAIMER.</para> + + <para>8 TERMINATION.</para> + + <para>8.1.</para> + + <para>This License and the rights granted hereunder will terminate + automatically if You fail to comply with terms herein and fail to cure + such breach within 30 days of becoming aware of the breach. All + sublicenses to the Covered Code which are properly granted shall survive + any termination of this License. Provisions which, by their nature, must + remain in effect beyond the termination of this License shall + survive.</para> + + <para>8.2.</para> + + <para>8.3.</para> + + <para>If You assert a patent infringement claim against Participant + alleging that such Participant's Contributor Version directly or + indirectly infringes any patent where such claim is resolved (such as by + license or settlement) prior to the initiation of patent infringement + litigation, then the reasonable value of the licenses granted by such + Participant under Sections 2.1 or 2.2 shall be taken into account in + determining the amount or value of any payment or license.</para> + + <para>8.4. In the event of termination under Sections 8.1 or 8.2 above, + all end user license agreements (excluding distributors and resellers) + which have been validly granted by You or any distributor hereunder + prior to termination shall survive termination.</para> + + <para>9 LIMITATION OF LIABILITY.</para> + + <para>UNDER NO CIRCUMSTANCES AND UNDER NO LEGAL THEORY, WHETHER TORT + (INCLUDING NEGLIGENCE), CONTRACT, OR OTHERWISE, SHALL YOU, THE INITIAL + DEVELOPER, ANY OTHER CONTRIBUTOR, OR ANY DISTRIBUTOR OF COVERED CODE, OR + ANY SUPPLIER OF ANY OF SUCH PARTIES, BE LIABLE TO ANY PERSON FOR ANY + INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY CHARACTER + INCLUDING, WITHOUT LIMITATION, DAMAGES FOR LOSS OF GOODWILL, WORK + STOPPAGE, COMPUTER FAILURE OR MALFUNCTION, OR ANY AND ALL OTHER + COMMERCIAL DAMAGES OR LOSSES, EVEN IF SUCH PARTY SHALL HAVE BEEN + INFORMED OF THE POSSIBILITY OF SUCH DAMAGES. THIS LIMITATION OF + LIABILITY SHALL NOT APPLY TO LIABILITY FOR DEATH OR PERSONAL INJURY + RESULTING FROM SUCH PARTY'S NEGLIGENCE TO THE EXTENT APPLICABLE LAW + PROHIBITS SUCH LIMITATION. SOME JURISDICTIONS DO NOT ALLOW THE EXCLUSION + OR LIMITATION OF INCIDENTAL OR CONSEQUENTIAL DAMAGES, SO THIS EXCLUSION + AND LIMITATION MAY NOT APPLY TO YOU.</para> + + <para>10 U.S. GOVERNMENT END USERS.</para> + + <para>11 MISCELLANEOUS.</para> + + <para>12 RESPONSIBILITY FOR CLAIMS.</para> + + <para>As between Initial Developer and the Contributors, each party is + responsible for claims and damages arising, directly or indirectly, out + of its utilization of rights under this License and You agree to work + with Initial Developer and Contributors to distribute such + responsibility on an equitable basis. Nothing herein is intended or + shall be deemed to constitute any admission of liability.</para> + + <para>EXHIBIT A.</para> + + <para>"The contents of this file are subject to the gSOAP Public License + Version 1.3 (the "License"); you may not use this file except in + compliance with the License. You may obtain a copy of the License at + <ulink + url="http://www.cs.fsu.edu/~engelen/soaplicense.html">http://www.cs.fsu.edu/~engelen/soaplicense.html</ulink>. + Software distributed under the License is distributed on an "AS IS" + basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the + License for the specific language governing rights and limitations under + the License.</para> + + <para>The Original Code of the gSOAP Software is: stdsoap.h, stdsoap2.h, + stdsoap.c, stdsoap2.c, stdsoap.cpp, stdsoap2.cpp, soapcpp2.h, + soapcpp2.c, soapcpp2_lex.l, soapcpp2_yacc.y, error2.h, error2.c, + symbol2.c, init2.c, soapdoc2.html, and soapdoc2.pdf, httpget.h, + httpget.c, stl.h, stldeque.h, stllist.h, stlvector.h, stlset.h.</para> + + <para>The Initial Developer of the Original Code is Robert A. van + Engelen. Portions created by Robert A. van Engelen are Copyright (C) + 2001-2004 Robert A. van Engelen, Genivia inc. All Rights + Reserved.</para> + + <para>Contributor(s): "________________________." [Note: The text of + this Exhibit A may differ slightly form the text of the notices in the + Source Code files of the Original code. You should use the text of this + Exhibit A rather than the text found in the Original Code Source Code + for Your Modifications.]</para> + + <para>EXHIBIT B.</para> + + <para>"Part of the software embedded in this product is gSOAP software. + Portions created by gSOAP are Copyright (C) 2001-2004 Robert A. van + Engelen, Genivia inc. Tous droits réservés. THE SOFTWARE IN THIS PRODUCT + WAS IN PART PROVIDED BY GENIVIA INC AND ANY EXPRESS OR IMPLIED + WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN + NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, + INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF + USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON + ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF + THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH + DAMAGE."</para> + </sect2> + + <sect2 id="licChromium"> + <title>Chromium licenses</title> + + <sect3> + <title>Licence Main</title> + + <para>Copyright (c) 2002, Stanford University Tous droits + réservés.</para> + + <para>Some portions of Chromium are copyrighted by individiual + organizations. Please see the files COPYRIGHT.LLNL and + COPYRIGHT.REDHAT for more information.</para> + + <para>Redistribution and use in source and binary forms, with or + without modification, are permitted provided that the following + conditions are met:<itemizedlist> + <listitem> + <para>Redistributions of source code must retain the above + copyright notice, this list of conditions and the following + disclaimer.</para> + </listitem> + + <listitem> + <para>Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following + disclaimer in the documentation and/or other materials provided + with the distribution.</para> + </listitem> + + <listitem> + <para>Neither the name of Stanford University nor the names of + its contributors may be used to endorse or promote products + derived from this software without specific prior written + permission.</para> + </listitem> + </itemizedlist></para> + + <para>THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, + BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND + FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, + BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS + OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR + TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE + USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH + DAMAGE.</para> + </sect3> + + <sect3> + <title>COPYRIGHT.LLNL file</title> + + <para>This Chromium distribution contains information and code which + is covered under the following notice:</para> + + <para>Copyright (c) 2002, The Regents of the University of California. + Produced at the Lawrence Livermore National Laboratory Pour les détails, + contactez : Randall Frank (rjfrank@llnl.gov). UCRL-CODE-2002-058 Tous + droits réservés.</para> + + <para>This file is part of Chromium. For details, see accompanying + documentation.</para> + + <para>Redistribution and use in source and binary forms, with or + without modification, are permitted provided that the following + conditions are met:</para> + + <para>Redistributions of source code must retain the above copyright + notice, this list of conditions and the disclaimer below.</para> + + <para>Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the disclaimer (as noted + below) in the documentation and/or other materials provided with the + distribution.</para> + + <para>Neither the name of the UC/LLNL nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission.</para> + + <para>THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, + BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND + FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + REGENTS OF THE UNIVERSITY OF CALIFORNIA, THE U.S. DEPARTMENT OF ENERGY + OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH + DAMAGE.</para> + + <para>Additional BSD Notice</para> + + <para>1. This notice is required to be provided under our contract + with the U.S. Department of Energy (DOE). This work was produced at + the University of California, Lawrence Livermore National Laboratory + under Contract No. W-7405-ENG-48 with the DOE.</para> + + <para>2. Neither the United States Government nor the University of + California nor any of their employees, makes any warranty, express or + implied, or assumes any liability or responsibility for the accuracy, + completeness, or usefulness of any information, apparatus, product, or + process disclosed, or represents that its use would not infringe + privately-owned rights.</para> + + <para>3. Also, reference herein to any specific commercial products, + process, or services by trade name, trademark, manufacturer or + otherwise does not necessarily constitute or imply its endorsement, + recommendation, or favoring by the United States Government or the + University of California. The views and opinions of authors expressed + herein do not necessarily state or reflect those of the United States + Government or the University of California, and shall not be used for + advertising or product endorsement purposes.</para> + </sect3> + + <sect3> + <title>COPYRIGHT.REDHAT file</title> + + <para>This Chromium distribution contains information and code which + is covered under the following notice:</para> + + <para>Copyright 2001,2002 Red Hat Inc., Durham, North Carolina.</para> + + <para>Tous droits réservés.</para> + + <para>Permission is hereby granted, free of charge, to any person + obtaining a copy of this software and associated documentation files + (the "Software"), to deal in the Software without restriction, + including without limitation on the rights to use, copy, modify, + merge, publish, distribute, sublicense, and/or sell copies of the + Software, and to permit persons to whom the Software is furnished to + do so, subject to the following conditions:</para> + + <para>The above copyright notice and this permission notice (including + the next paragraph) shall be included in all copies or substantial + portions of the Software.</para> + + <para>THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + NON-INFRINGEMENT. IN NO EVENT SHALL RED HAT AND/OR THEIR SUPPLIERS BE + LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION + OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION + WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.</para> + </sect3> + </sect2> + + <sect2 id="licLibCurl"> + <title>Licence curl</title> + + <para>COPYRIGHT AND PERMISSION NOTICE</para> + + <para>Copyright (c) 1996 - 2009, Daniel Stenberg, daniel@haxx.se.</para> + + <para>Tous droits réservés.</para> + + <para>Permission to use, copy, modify, and distribute this software for + any purpose with or without fee is hereby granted, provided that the + above copyright notice and this permission notice appear in all + copies.</para> + + <para>THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF + THIRD PARTY RIGHTS. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS + BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN + ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + SOFTWARE.</para> + + <para>Except as contained in this notice, the name of a copyright holder + shall not be used in advertising or otherwise to promote the sale, use + or other dealings in this Software without prior written authorization + of the copyright holder.</para> + </sect2> + + <sect2 id="licLibgd"> + <title>Licence libgd</title> + + <para>Portions copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, + 2002 by Cold Spring Harbor Laboratory. Funded under Grant P41-RR02188 by + the National Institutes of Health.</para> + + <para>Portions copyright 1996, 1997, 1998, 1999, 2000, 2001, 2002 by + Boutell.Com, Inc.</para> + + <para>Portions relating to GD2 format copyright 1999, 2000, 2001, 2002 + Philip Warner.</para> + + <para>Portions relating to PNG copyright 1999, 2000, 2001, 2002 Greg + Roelofs.</para> + + <para>Portions relating to gdttf.c copyright 1999, 2000, 2001, 2002 John + Ellson (ellson@lucent.com).</para> + + <para>Portions relating to gdft.c copyright 2001, 2002 John Ellson + (ellson@lucent.com).</para> + + <para>Portions copyright 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007 + Pierre-Alain Joye (pierre@libgd.org).</para> + + <para>Portions relating to JPEG and to color quantization copyright + 2000, 2001, 2002, Doug Becker and copyright (C) 1994, 1995, 1996, 1997, + 1998, 1999, 2000, 2001, 2002, Thomas G. Lane. This software is based in + part on the work of the Independent JPEG Group. See the file + README-JPEG.TXT for more information.</para> + + <para>Portions relating to WBMP copyright 2000, 2001, 2002 Maurice + Szmurlo and Johan Van den Brande.</para> + + <para>Permission has been granted to copy, distribute and modify gd in + any context without fee, including a commercial application, provided + that this notice is present in user-accessible supporting + documentation.</para> + + <para>This does not affect your ownership of the derived work itself, + and the intent is to assure proper credit for the authors of gd, not to + interfere with your productive use of gd. If you have questions, ask. + "Derived works" includes all programs that utilize the library. Credit + must be given in user-accessible documentation.</para> + + <para>This software is provided "AS IS." The copyright holders disclaim + all warranties, either express or implied, including but not limited to + implied warranties of merchantability and fitness for a particular + purpose, with respect to this code and accompanying + documentation.</para> + + <para>Although their code does not appear in gd, the authors wish to + thank David Koblas, David Rowley, and Hutchison Avenue Software + Corporation for their prior contributions.</para> + </sect2> + + <sect2 id="licBsdIntel"> + <title>BSD license from Intel</title> + + <para>Tous droits réservés.</para> + + <para>Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are met:</para> + <itemizedlist> + <listitem> + <para>Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer.</para> + </listitem> + <listitem> + <para>Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution.</para> + </listitem> + <listitem> + <para>Neither the name of the Intel Corporation nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission.</para> + </listitem> + </itemizedlist> + <para>THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS + BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE + GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH + DAMAGE.</para> + </sect2> + + <sect2 id="licJPEG"> + <title>Licence libjpeg</title> + + <para>The authors make NO WARRANTY or representation, either express or implied, + with respect to this software, its quality, accuracy, merchantability, or + fitness for a particular purpose. This software is provided "AS IS", and you, + its user, assume the entire risk as to its quality and accuracy.</para> + + <para>This software is copyright (C) 1991-2010, Thomas G. Lane, Guido Vollbeding. + All Rights Reserved except as specified below.</para> + + <para>Permission is hereby granted to use, copy, modify, and distribute this + software (or portions thereof) for any purpose, without fee, subject to these + conditions:</para> + <para>(1) If any part of the source code for this software is distributed, then this + README file must be included, with this copyright and no-warranty notice + unaltered; and any additions, deletions, or changes to the original files + must be clearly indicated in accompanying documentation.</para> + <para>(2) If only executable code is distributed, then the accompanying + documentation must state that "this software is based in part on the work of + the Independent JPEG Group".</para> + <para>(3) Permission for use of this software is granted only if the user accepts + full responsibility for any undesirable consequences; the authors accept + NO LIABILITY for damages of any kind.</para> + + <para>These conditions apply to any software derived from or based on the IJG code, + not just to the unmodified library. If you use our work, you ought to + acknowledge us.</para> + + <para>Permission is NOT granted for the use of any IJG author's name or company name + in advertising or publicity relating to this software or products derived from + it. This software may be referred to only as "the Independent JPEG Group's + software".</para> + + <para>We specifically permit and encourage the use of this software as the basis of + commercial products, provided that all warranty or liability claims are + assumed by the product vendor.</para> + + <para>ansi2knr.c is included in this distribution by permission of L. Peter Deutsch, + sole proprietor of its copyright holder, Aladdin Enterprises of Menlo Park, CA. + ansi2knr.c is NOT covered by the above copyright and conditions, but instead + by the usual distribution terms of the Free Software Foundation; principally, + that you must include source code if you redistribute it. (See the file + ansi2knr.c for full details.) However, since ansi2knr.c is not needed as part + of any program generated from the IJG code, this does not limit you more than + the foregoing paragraphs do.</para> + + <para>The Unix configuration script "configure" was produced with GNU Autoconf. + It is copyright by the Free Software Foundation but is freely distributable. + The same holds for its supporting scripts (config.guess, config.sub, + ltmain.sh). Another support script, install-sh, is copyright by X Consortium + but is also freely distributable.</para> + + <para>The IJG distribution formerly included code to read and write GIF files. + To avoid entanglement with the Unisys LZW patent, GIF reading support has + been removed altogether, and the GIF writer has been simplified to produce + "uncompressed GIFs". This technique does not use the LZW algorithm; the + resulting GIF files are larger than usual, but are readable by all standard + GIF decoders.</para> + + <para>We are required to state that</para> + <para>"The Graphics Interchange Format(c) is the Copyright property of + CompuServe Incorporated. GIF(sm) is a Service Mark property of + CompuServe Incorporated."</para> + </sect2> + + <sect2 id="licJPEGSIMD"> + <title>Licence extension x86 SIMD pour la bibliothèque IJG JPEG</title> + + <para>Copyright 2009 Pierre Ossman <ossman@cendio.se> for Cendio AB</para> + <para>Copyright 2010 D. R. Commander</para> + + <para>Based on</para> + <para>x86 SIMD extension for IJG JPEG library - version 1.02</para> + + <para>Copyright (C) 1999-2006, MIYASAKA Masaru.</para> + + <para>This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software.</para> + + <para>Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions:</para> + + <para>1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required.</para> + <para>2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software.</para> + <para>3. This notice may not be removed or altered from any source distribution.</para> + </sect2> + + <sect2 id="licFreeBsd"> + <title>Licence FreeBSD</title> + + <para>The compilation of software known as FreeBSD is distributed under the + following terms:</para> + + <para>Copyright (c) 1992-2009 Le projet FreeBSD. Tous droits réservés.</para> + + <para>Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met:</para> + + <orderedlist> + <listitem> + <para>Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + </para> + </listitem> + <listitem> + <para> + Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + </para> + </listitem> + </orderedlist> + + <para>THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + SUCH DAMAGE.</para> + </sect2> + + <sect2 id="licNetBsd"> + <title>Licence NetBSD</title> + + <para>Copyright (c) 1992, 1993 The Regents of the University of California. + Tous droits réservés.</para> + + <para> + This software was developed by the Computer Systems Engineering group + at Lawrence Berkeley Laboratory under DARPA contract BG 91-66 and + contributed to Berkeley. + </para> + + <para> + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + </para> + + <orderedlist> + <listitem> + <para> + Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + </para> + </listitem> + <listitem> + <para> + Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + </para> + </listitem> + <listitem> + <para> + Neither the name of the University nor the names of its contributors + may be used to endorse or promote products derived from this software + without specific prior written permission. + </para> + </listitem> + </orderedlist> + + <para> + THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND + ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE + FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + SUCH DAMAGE. + </para> + </sect2> + + <sect2 id="licPcre"> + <title>Licence PCRE</title> + + <para> + PCRE is a library of functions to support regular expressions whose syntax + and semantics are as close as possible to those of the Perl 5 language. + </para><para> + Release 8 of PCRE is distributed under the terms of the "BSD" licence, as + specified below. The documentation for PCRE, supplied in the "doc" + directory, is distributed under the same terms as the software itself. + </para><para> + The basic library functions are written in C and are freestanding. Also + included in the distribution is a set of C++ wrapper functions, and a + just-in-time compiler that can be used to optimize pattern matching. These + are both optional features that can be omitted when the library is built. + </para><para> + THE BASIC LIBRARY FUNCTIONS. + Written by: Philip Hazel; Email local part: ph10; Email domain: cam.ac.uk + University of Cambridge Computing Service, Cambridge, England. + Copyright (c) 1997-2012 University of Cambridge + Tous droits réservés. + </para><para> + PCRE JUST-IN-TIME COMPILATION SUPPORT. + Written by: Zoltan Herczeg; Email local part: hzmester; Emain domain: freemail.hu + Copyright(c) 2010-2012 Zoltan Herczeg + Tous droits réservés. + </para><para> + STACK-LESS JUST-IN-TIME COMPILER. + Written by: Zoltan Herczeg; Email local part: hzmester; Emain domain: freemail.hu + Copyright(c) 2009-2012 Zoltan Herczeg + Tous droits réservés. + </para><para> + THE C++ WRAPPER FUNCTIONS. + Contributed by: Google Inc. + Copyright (c) 2007-2012, Google Inc. + Tous droits réservés. + </para><para> + THE "BSD" LICENCE. + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are met: + </para> + <itemizedlist> + <listitem> + <para> + Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + </para> + </listitem> + <listitem> + <para> + Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + </para> + </listitem> + <listitem> + <para> + Neither the name of the University of Cambridge nor the name of Google + Inc. nor the names of their contributors may be used to endorse or + promote products derived from this software without specific prior + written permission. + </para> + </listitem> + </itemizedlist> + <para> + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE + LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + POSSIBILITY OF SUCH DAMAGE. + </para> + </sect2> + + <sect2 id="licLibffi"> + <title>Licence libffi</title> + + <para> + Copyright (c) 1996-2012 Anthony Green, Red Hat, Inc and others. + See source files for details. + </para><para> + Permission is hereby granted, free of charge, to any person obtaining + a copy of this software and associated documentation files (the + ``Software''), to deal in the Software without restriction, including + without limitation the rights to use, copy, modify, merge, publish, + distribute, sublicense, and/or sell copies of the Software, and to + permit persons to whom the Software is furnished to do so, subject to + the following conditions: + </para><para> + The above copyright notice and this permission notice shall be + included in all copies or substantial portions of the Software. + </para><para> + THE SOFTWARE IS PROVIDED ``AS IS'', WITHOUT WARRANTY OF ANY KIND, + EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. + IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY + CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, + TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE + SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + </para> + </sect2> + + <sect2 id="licFltk"> + <title>Licence FLTK</title> + + <para> + December 11, 2001 + </para><para> + The FLTK library and included programs are provided under the terms + of the GNU Library General Public License (LGPL) with the following + exceptions: + </para> + <orderedlist> + <listitem> + <para> + Modifications to the FLTK configure script, config + header file, and makefiles by themselves to support + a specific platform do not constitute a modified or + derivative work. + </para> + <para> + The authors do request that such modifications be + contributed to the FLTK project - send all contributions + through the "Software Trouble Report" on the following page: + </para><para> + http://www.fltk.org/str.php + </para> + </listitem> + <listitem> + <para> + Widgets that are subclassed from FLTK widgets do not + constitute a derivative work. + </para> + </listitem> + <listitem> + <para> + Static linking of applications and widgets to the + FLTK library does not constitute a derivative work + and does not require the author to provide source + code for the application or widget, use the shared + FLTK libraries, or link their applications or + widgets against a user-supplied version of FLTK. + </para> + <para> + If you link the application or widget to a modified + version of FLTK, then the changes to FLTK must be + provided under the terms of the LGPL in sections + 1, 2, and 4. + </para> + </listitem> + <listitem> + <para> + You do not have to provide a copy of the FLTK license + with programs that are linked to the FLTK library, nor + do you have to identify the FLTK license in your + program or documentation as required by section 6 + of the LGPL. + </para> + <para> + However, programs must still identify their use of FLTK. + The following example statement can be included in user + documentation to satisfy this requirement: + </para> + <para> + [program/widget] is based in part on the work of + the FLTK project (http://www.fltk.org). + </para> + </listitem> + </orderedlist> + </sect2> + + <sect2 id="licExpat"> + <title>Licence Expat</title> + <para> + Copyright (c) 1998, 1999, 2000 Thai Open Source Software Center Ltd + and Clark Cooper + </para> + <para> + Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006 Expat maintainers. + </para> + <para> + Permission is hereby granted, free of charge, to any person obtaining + a copy of this software and associated documentation files (the + "Software"), to deal in the Software without restriction, including + without limitation the rights to use, copy, modify, merge, publish, + distribute, sublicense, and/or sell copies of the Software, and to + permit persons to whom the Software is furnished to do so, subject to + the following conditions: + </para> + <para> + The above copyright notice and this permission notice shall be included + in all copies or substantial portions of the Software. + </para> + <para> + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. + IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY + CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, + TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE + SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + </para> + </sect2> + + <sect2 id="licFontconfig"> + <title>Licence fontconfig</title> + <para> + Copyright (C) 2001, 2003 Keith Packard + </para> + <para> + Permission to use, copy, modify, distribute, and sell this software and its + documentation for any purpose is hereby granted without fee, provided that + the above copyright notice appear in all copies and that both that + copyright notice and this permission notice appear in supporting + documentation, and that the name of the author(s) not be used in + advertising or publicity pertaining to distribution of the software without + specific, written prior permission. The authors make no + representations about the suitability of this software for any purpose. It + is provided "as is" without express or implied warranty. + </para> + <para> + THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, + INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO + EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY SPECIAL, INDIRECT OR + CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, + DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER + TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + </para> + </sect2> + + <sect2 id="licFreetype"> + <title>Licence Freetype</title> + <para> + 2006-Jan-27 + </para> + <para> + Copyright 1996-2002, 2006 by David Turner, Robert Wilhelm, and Werner Lemberg + </para> + <sect3> + <title>Introduction</title> + <para> + The FreeType Project is distributed in several archive packages; + some of them may contain, in addition to the FreeType font engine, + various tools and contributions which rely on, or relate to, the + FreeType Project. + </para> + <para> + This license applies to all files found in such packages, and + which do not fall under their own explicit license. The license + affects thus the FreeType font engine, the test programs, + documentation and makefiles, at the very least. + </para> + <para> + This license was inspired by the BSD, Artistic, and IJG + (Independent JPEG Group) licenses, which all encourage inclusion + and use of free software in commercial and freeware products + alike. As a consequence, its main points are that: + </para> + <itemizedlist> + <listitem> + <para> + We don't promise that this software works. However, we will be + interested in any kind of bug reports. (`as is' distribution) + </para> + </listitem> + <listitem> + <para> + You can use this software for whatever you want, in parts or + full form, without having to pay us. (`royalty-free' usage) + </para> + </listitem> + <listitem> + <para> + You may not pretend that you wrote this software. If you use + it, or only parts of it, in a program, you must acknowledge + somewhere in your documentation that you have used the + FreeType code. (`credits') + </para> + </listitem> + </itemizedlist> + <para> + We specifically permit and encourage the inclusion of this + software, with or without modifications, in commercial products. + We disclaim all warranties covering The FreeType Project and + assume no liability related to The FreeType Project. + </para> + <para> + Finally, many people asked us for a preferred form for a + credit/disclaimer to use in compliance with this license. We thus + encourage you to use the following text: + </para> + <para> + Portions of this software are copyright (C) <year> The FreeType + Project (www.freetype.org). Tous droits réservés. + </para> + <para> + Please replace <year> with the value from the FreeType version you + actually use. + </para> + </sect3> + <sect3> + <title>Legal Terms</title> + <sect4> + <title>0. Definitions</title> + <para> + Throughout this license, the terms `package', `FreeType Project', + and `FreeType archive' refer to the set of files originally + distributed by the authors (David Turner, Robert Wilhelm, and + Werner Lemberg) as the `FreeType Project', be they named as alpha, + beta or final release. + </para> + <para> + `You' refers to the licensee, or person using the project, where + `using' is a generic term including compiling the project's source + code as well as linking it to form a `program' or `executable'. + This program is referred to as `a program using the FreeType + engine'. + </para> + <para> + This license applies to all files distributed in the original + FreeType Project, including all source code, binaries and + documentation, unless otherwise stated in the file in its + original, unmodified form as distributed in the original archive. + If you are unsure whether or not a particular file is covered by + this license, you must contact us to verify this. + </para> + <para> + The FreeType Project is copyright (C) 1996-2000 by David Turner, + Robert Wilhelm, and Werner Lemberg. All rights reserved except as + specified below. + </para> + </sect4> + <sect4> + <title>1. No Warranty</title> + <para> + THE FREETYPE PROJECT IS PROVIDED `AS IS' WITHOUT WARRANTY OF ANY + KIND, EITHER EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, + WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + PURPOSE. IN NO EVENT WILL ANY OF THE AUTHORS OR COPYRIGHT HOLDERS + BE LIABLE FOR ANY DAMAGES CAUSED BY THE USE OR THE INABILITY TO + USE, OF THE FREETYPE PROJECT. + </para> + </sect4> + <sect4> + <title>2. Redistribution</title> + <para> + This license grants a worldwide, royalty-free, perpetual and + irrevocable right and license to use, execute, perform, compile, + display, copy, create derivative works of, distribute and + sublicense the FreeType Project (in both source and object code + forms) and derivative works thereof for any purpose; and to + authorize others to exercise some or all of the rights granted + herein, subject to the following conditions: + </para> + <itemizedlist> + <listitem> + <para>Redistribution of source code must retain this license file + (`FTL.TXT') unaltered; any additions, deletions or changes to + the original files must be clearly indicated in accompanying + documentation. The copyright notices of the unaltered, + original files must be preserved in all copies of source + files.</para> + </listitem> + <listitem> + <para>Redistribution in binary form must provide a disclaimer that + states that the software is based in part of the work of the + FreeType Team, in the distribution documentation. We also + encourage you to put an URL to the FreeType web page in your + documentation, though this isn't mandatory.</para> + </listitem> + </itemizedlist> + <para> + These conditions apply to any software derived from or based on + the FreeType Project, not just the unmodified files. If you use + our work, you must acknowledge us. However, no fee need be paid + to us. + </para> + </sect4> + <sect4> + <title>3. Advertising</title> + <para> + Neither the FreeType authors and contributors nor you shall use + the name of the other for commercial, advertising, or promotional + purposes without specific prior written permission. + </para> + <para> + We suggest, but do not require, that you use one or more of the + following phrases to refer to this software in your documentation + or advertising materials: `FreeType Project', `FreeType Engine', + `FreeType library', or `FreeType Distribution'. + </para> + <para> + As you have not signed this license, you are not required to + accept it. However, as the FreeType Project is copyrighted + material, only this license, or another one contracted with the + authors, grants you the right to use, distribute, and modify it. + Therefore, by using, distributing, or modifying the FreeType + Project, you indicate that you understand and accept all the terms + of this license. + </para> + </sect4> + <sect4> + <title>4. Contacts</title> + <para> + There are two mailing lists related to FreeType: + </para> + <itemizedlist> + <listitem> + <para> + freetype@nongnu.org + </para> + <para> + Discusses general use and applications of FreeType, as well as + future and wanted additions to the library and distribution. + If you are looking for support, start in this list if you + haven't found anything to help you in the documentation. + </para> + </listitem> + <listitem> + <para> + freetype-devel@nongnu.org + </para> + <para> + Discusses bugs, as well as engine internals, design issues, + specific licenses, porting, etc. + </para> + </listitem> + </itemizedlist> + <para> + Our home page can be found at + </para> + <para> + http://www.freetype.org + </para> + </sect4> + </sect3> + </sect2> + + <sect2 id="licVPX"> + <title>Licence VPX</title> + <para> + Copyright (c) 2010, The WebM Project authors. Tous droits réservés. + </para> + <para> + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + </para> + <itemizedlist> + <listitem> + <para> + Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + </para> + </listitem> + <listitem> + <para> + Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the + distribution. + </para> + </listitem> + <listitem> + <para> + Neither the name of Google, nor the WebM Project, nor the names + of its contributors may be used to endorse or promote products + derived from this software without specific prior written + permission. + </para> + </listitem> + </itemizedlist> + <para> + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + </para> + </sect2> + </sect1> +</appendix> diff --git a/doc/manual/fr_FR/user_Troubleshooting.xml b/doc/manual/fr_FR/user_Troubleshooting.xml new file mode 100644 index 00000000..630f410f --- /dev/null +++ b/doc/manual/fr_FR/user_Troubleshooting.xml @@ -0,0 +1,1487 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" +"http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd"> +<chapter id="Troubleshooting"> + <title>Dépannage</title> + + <para>Ce chapitre apporte des réponses à des questions fréquemment posées. + Afin d'améliorer votre expérience utilisateur avec VirtualBox, il est recommandé + de lire cette section pour en apprendre plus sur les soucis classiques et + pour avoir les recommandations sur la manière d'utiliser le produit.</para> + + <sect1> + <title>Procédures et outils</title> + + <sect2> + <title>Catégoriser et isoler des problèmes</title> + + <para>Le plus souvent, un invité virtualisé se comporte comme un système + physique. Une machine virtuelle rencontrera les mêmes problèmes que le + ferait une machine physique. Si, par exemple, vous perdez la connectivité + à Internet à cause de problèmes extérieurs, les machines virtuellas seront + touchées exactement comme celles physiques.</para> + + <para>Si vous rencontrez un problème vraiment lié à VirtualBox, celui-ci + aide à le catégoriser et à l'isoler. Voici quelques questions auxquelles + vous devriez répondre avant de signaler un problème :<orderedlist> + <listitem> + <para>Le problème est-il spécifique à un OS invité en particulier ? + À une version de l'OS invité ? Surtout avec les problèmes liés + aux invités Linux, le problème peut être spécifique à une distribution + et à une version de Linux.</para> + </listitem> + + <listitem> + <para>Le problème est-il spécifique à un OS hôte en particulier ? + Les problèmes ne sont généralement pas spécifiques à un OS hôte (car + la plupart de la base du code de VirtualBox est partagée par toutes + les plateformes supportées), mais, surtout en matière de réseau et + de support USB, il existe d'importantes différences entre les + plateformes hôtes. Certains problèmes liés à la GUI sont aussi spécifiques + à l'hôte.</para> + </listitem> + + <listitem> + <para>Le problème est-il spécifique à un matériel hôte particulier ? + Cette catégorie de problèmes est généralement liée au processeur de + l'hôte. Du fait de différences importantes entre VT-x et AMD-V, des + problèmes peuvent être spécifiques à l'une ou l'autre technologie. + Le modèle exact du processeur peut également marquer une différence + (même pour la virtualisation logicielle) car différents processeurs + supportent différentes fonctions, ce qui peut toucher + certains aspects du fonctionnement du processeur invité.</para> + </listitem> + + <listitem> + <para>Le problème est-il spécifique à un mode de virtualisation + en particulier ? Certains problèmes peuvent n'arriver qu'en mode + virtualisation logicielle, d'autres peuvent être spécifiques à la + virtualisation matérielle.</para> + </listitem> + + <listitem> + <para>Le problème est-il spécifique au SMP de l'invité ? À + savoir, est-il lié au nombre de processeurs virtuels (VCPUs) de + l'invité ? L'utilisation de plus d'un processeur touche de + façon significative le fonctionnement interne d'un OS invité.</para> + </listitem> + + <listitem> + <para>Le problème est-il spécifique aux suppléments invité ? + Dans certains cas, c'est écrit (par exemple un problème de dossiers + partagés), dans d'autres, cela peut être moins évident (par exemple, + des problèmes d'affichage). Si le problème est spécifique aux + suppléments invité, est-il spécifique à une version en particulier + des suppléments invité ?</para> + </listitem> + + <listitem> + <para>Le problème est-il spécifique à un environnement particulier ? + Certains problèmes sont liés à un environnement externes à la VM ; + cela implique en général un paramétrage du réseau. Certaines + configurations de serveurs externes tels que DHCP ou PXE peuvent + poser des problèmes qui ne surviennent pas avec d'autres serveurs + identiques.</para> + </listitem> + + <listitem> + <para>Le problème est-il une régression ? Le fait de savoir qu'un + problème est une régression facilite beaucoup en général la recherche + d'une solution. Dans ce cas, il est crucial de connaître la version + concernée et celle qui ne l'est pas.</para> + </listitem> + </orderedlist></para> + </sect2> + + <sect2> + <title>Recueillir des informations de débogage</title> + + <para>Pour déterminer un problème, il est souvent important de recueillir + des informations de débogage que l'assistance de VirtualBox peut analyser. + Cette section contient des informations sur le type d'informations que + vous pouvez obtenir.</para> + + <para>À chaque fois que VirtualBox démarre une VM, ce qu'on appelle un <emphasis + role="bold">"release log file"</emphasis> (fichier journal) est créé, + contenant beaucoup d'informations sur la configuration de la VM et les + événements lors de son exécution. Le fichier journal s'appelle + <computeroutput><literal>VBox.log</literal></computeroutput> et se trouve + dans le dossier du fichier journal de la VM. Il s'agira en général d'un + répertoire comme celui-ci :<screen>$HOME/VirtualBox VMs/{machinename}/Logs</screen></para> + + <para>Au démarrage d'une VM, le fichier de configuration de la dernière exécution + sera renommé en <computeroutput>.1</computeroutput>, jusqu'à + <computeroutput>.3</computeroutput>. Parfois, quand il y a un problème, + il est utile de jeter un œil dans le journal. Quand vous demandez + de l'aide sur VirtualBox, le fait de fournir le fichier journal correspondant + est obligatoire.</para> + + <para>Par commodité, pour chaque machine virtuelle, la fenêtre principale + de VirtualBox peut afficher ces journaux dans une fenêtre. Pour y accéder, + sélectionnez une machine virtuelle dans la liste à gauche et sélectionner + "Afficher les journaux..." dans la fenêtre "Machine".</para> + + <para>Le fichier journal (VBox.log) contient une gamme d'informations + de diagnostic telles que le type et la version d'OS hôte, la version + de VirtualBox et l'architecture (32 ou 64 bits), un aperçu complet de la + configuration de l'invité (CFGM), des informations détaillées sur le + type et les fonctions supportées par le processeur, si la virtualisation + matérielle est activée, des informations sur le réglage VT-x/AMD-V, l'état + des transitions (création, exécution, en pause, éteint, etc.), les + messages du BIOS invité, les messages des suppléments invité, les entrées + du journal spécifiques aux périphériques, à la fin de l'exécution, l'état + final de l'invité et des statistiques consolidées.</para> + + <para>En cas de plantage, il est très important de recueillir + <emphasis role="bold">les sorties du plantage</emphasis>. Ceci est vrai + tant pour les plantages de l'hôte que pour ceux de l'invité. Pour des + informations sur l'activation de plus de messages sur les systèmes Linux, + Solaris et OS X, reportez-vous à l'article sur les messages du cœur + sur le site Internet de VirtualBox.<footnote> + <para><ulink + url="http://www.virtualbox.org/wiki/Core_dump">http://www.virtualbox.org/wiki/Core_dump</ulink>.</para> + </footnote></para> + + <para>Vous pouvez àgalement utiliser <computeroutput>VBoxManage + debugvm</computeroutput> pour créer un journal de toute une machine + virtuelle ; voir <xref linkend="vboxmanage-debugvm" />.</para> + + <para>Pour des problèmes liés au réseau, il est souvent utile de récupérer + une trace du trafic réseau. Si le trafic est acheminé par un adaptateur + de l'hôte, il est possible d'utiliser Wireshark ou un outil similaire + pour y récupérer le trafic. Cependant, cela inclut aussi souvent beaucoup + de trafic indépendant de la VM.</para> + + <para>VirtualBox offre la possibilité de récupérer seulement le trafic + réseau de l'adaptateur réseau d'une VM spécifique. Reportez-vous à l'article + sur le trafic réseau sur le site Internet de VirtualBox<footnote> + <para><ulink + url="http://www.virtualbox.org/wiki/Network_tips">http://www.virtualbox.org/wiki/Network_tips</ulink>.</para> + </footnote> pour des informations sur l'activation de cette récupération. + Les fichiers de trace créés par VirtualBox sont au format + <computeroutput>.pcap</computeroutput> et peuvent être facilement analysés + avec Wireshark.</para> + </sect2> + + <sect2 id="ts_debugger"> + <title>Le débogueur de VM intégré</title> + + <para>VirtualBox inclut un débogueur de VM intégré, qui peut servir aux + utilisateurs avancés. Ce débogueur permet d'examiner et, dans une certaine + mesure, de contrôler l'état de la VM.<warning> + <para>L'utilisation du débogueur de VM est à vos risques et périls. + Il n'existe pas d'assistance autour, la documentation suivante a été + rendue disponible uniquement pour les utilisateurs avancés ayant un + degré de familiarité très élevé du jeu d'instructions d'une machine + x86/AMD64, ainsi que des connaissances détaillées de l'architecture + PC. Une certaine familiarité avec les aspects internes de l'OS invité + concerné peut aussi aider.</para> + </warning></para> + + <para>Le débogueur de VM est disponible dans toutes les versions ordinaires + de production de VirtualBox, mais il est désactivé par défaut car l'utilisateur + moyen l'utilisera très peu. Il existe deux manières d'accéder au débogueur :<itemizedlist> + <listitem> + <para>Une fenêtre de console du débogueur affichée à côté de la VM</para> + </listitem> + + <listitem> + <para>Via le protocole <computeroutput>telnet</computeroutput> sur + le port 5000</para> + </listitem> + </itemizedlist></para> + + <para>Vous pouvez activer le débogueur de trois façons :<itemizedlist> + <listitem> + <para>Démarrer la VM directement en utilisant <computeroutput>VirtualBox + --startvm</computeroutput>, avec, en plus, l'argument + <computeroutput>--dbg</computeroutput>, + <computeroutput>--debug</computeroutput>, ou + <computeroutput>--debug-command-line</computeroutput>. Voir l'aide + sur l'utilisation de VirtualBox pour des détails.</para> + </listitem> + + <listitem> + <para>Définir la variable d'environnement + <computeroutput>VBOX_GUI_DBG_ENABLED</computeroutput> ou + <computeroutput>VBOX_GUI_DBG_AUTO_SHOW</computeroutput> avec + <computeroutput>true</computeroutput> avant de lancer le processus + de VirtualBox. Le réglage des variables (seule leur présence est + vérifiée) est effectif, même quand le premier processus de + VirtualBox est la fenêtre du sélecteur de VM. Les VMs qui se lancent + ensuite à partir du sélecteur auront un débogueur actif.</para> + </listitem> + + <listitem> + <para>Définir la donnée supplémentaire <computeroutput>GUI/Dbg/Enabled</computeroutput> + sur <computeroutput>true</computeroutput> avant de lancer la VM. Vous + pouvez la régler de façon globale ou sur une base individuelle à + chaque VM.</para> + </listitem> + </itemizedlist></para> + + <para>Un nouveau menu 'Débogage' sera ajoutée à l'application VirtualBox. + Ce menu permet à l'utilisateur d'ouvrir la console du débogueur.</para> + + <para>La syntaxe des commandes du débogueur de VM est grosso modo sur + le même modèle que les débogueurs de Microsoft et d'IBM, utilisés sur + DOS, OS/2 et Windows. Les utilisateurs familiers de symdeb, + CodeView, ou du débogueur du noyau the OS/2 trouveront le débogueur de + VM de VirtualBox classique.</para> + + <para>La commande la plus importante est <computeroutput>help</computeroutput>. + Cela affichera un message d'aide à l'utilisation rapide de toutes les commandes + du débogueur. L'ensemble des commandes supporté par le débogueur de VM + change souvent et la commande <computeroutput>help</computeroutput> est + toujours à jour.</para> + + <para>Voici un résumé rapide des commandes souvent utilisées :<itemizedlist> + <listitem> + <para><computeroutput>stop</computeroutput> -- arrête l'exécution + de la VM et active le mono-session (single stepping)</para> + </listitem> + + <listitem> + <para><computeroutput>g</computeroutput> -- continue l'exécution de + la VM</para> + </listitem> + + <listitem> + <para><computeroutput>t</computeroutput> -- passe en mono-session + (single step) une instruction</para> + </listitem> + + <listitem> + <para><computeroutput>rg/rh/r</computeroutput> -- affiche les registres + actuels de l'invité/hyperviseur</para> + </listitem> + + <listitem> + <para><computeroutput>kg/kh/k</computeroutput> -- affiche la pile + d'appel actuelle de l'invité/hyperviseur actuel</para> + </listitem> + + <listitem> + <para><computeroutput>da/db/dw/dd/dq</computeroutput> -- affiche + le contenu de la mémoire sous forme ASCII/octets/mots/dwords/qwords</para> + </listitem> + + <listitem> + <para><computeroutput>u</computeroutput> -- désassemble la mémoire</para> + </listitem> + + <listitem> + <para><computeroutput>dg</computeroutput> -- affiche le GDT + de l'invité</para> + </listitem> + + <listitem> + <para><computeroutput>di</computeroutput> -- affiche le + IDT de l'invité</para> + </listitem> + + <listitem> + <para><computeroutput>dl</computeroutput> -- affiche le + LDT de l'invité</para> + </listitem> + + <listitem> + <para><computeroutput>dt</computeroutput> -- affiche le + TSS de l'invité</para> + </listitem> + + <listitem> + <para><computeroutput>dp*</computeroutput> -- affiche les structures + des tables de pages de l'invité</para> + </listitem> + + <listitem> + <para><computeroutput>bp/br</computeroutput> -- définit un point de + rupture normal/recompilateur</para> + </listitem> + + <listitem> + <para><computeroutput>bl</computeroutput> -- liste les points de + rupture</para> + </listitem> + + <listitem> + <para><computeroutput>bc</computeroutput> -- vide les points de + rupture</para> + </listitem> + + <listitem> + <para><computeroutput>writecore</computeroutput> -- écrit sur le + disque un fichier cœur de VM, reportez-vous au + <xref linkend="ts_guest-core-format" /></para> + </listitem> + </itemizedlist></para> + + <para>Voir le <computeroutput>help</computeroutput> intégré pour d'autres + commandes disponibles.</para> + + <para>Le débogueur de VM supporte le débogage symbolique de base, même si + les symboles du code invité ne sont pas souvent disponibles. Pour les + invités Solaris, la commande <computeroutput>detect</computeroutput> + détermine automatiquement la version de l'OS invité et localise les symboles + du noyau dans la mémoire de l'invité. Le débogage symbolique est + alors disponible. Pour les invités Linux, les commandes <computeroutput>detect</computeroutput> + déterminent également la version de l'OS invité, mais il n'y a pas de + symboles dans la mémoire de l'invité. Les symboles du noyau sont disponiblas + dans le fichier <computeroutput>/proc/kallsyms</computeroutput> des + invités Linux. Vous devez copier ce fichier dans l'hôte, en utilisant par + exemple <computeroutput>scp</computeroutput>. La commande + <computeroutput>loadmap</computeroutput> du débogueur peut être utilisée + pour rendre les informations de symbole disponibles pour le débogueur de VM. + Remarquez que le fichier <computeroutput>kallsyms</computeroutput> contient + les symboles des modules actuellement chargés ; si la configuration de + l'invité change, les symboles changeront aussi et doivent être mis à + jour.</para> + + <para>Pour tous les invités, une façon simple de vérifier que les bons + symboles sont chargés est la commande <computeroutput>k</computeroutput>. + L'invité est en principe occupé et il devrait être vidé des informations + symboliques que la boucle active du système d'exploitation invité exécute.</para> + + <para>Un autre groupe de commandes du débogueur est + <computeroutput>info</computeroutput>. L'exécution d + <computeroutput>info help</computeroutput> fournit ces + informations d'utilisation complètes. Les commandes d'informations + fournissent des données ad-hoc pertinentes sur divers périphériques émulés + et sur les aspects de la VMM. Il n'y a pas de lignes directrices générales + sur l'utilisation des commandes <computeroutput>info</computeroutput>, + la bonne commande à utiliser dépend beaucoup du problème à trouver. + Certaines commandes info sont :<itemizedlist> + <listitem> + <para><computeroutput>cfgm</computeroutput> -- affiche une branche + de l'arborescence de la configuration</para> + </listitem> + + <listitem> + <para><computeroutput>cpuid</computeroutput> -- affiche les sorties + du CPUID de l'invité</para> + </listitem> + + <listitem> + <para><computeroutput>ioport</computeroutput> -- affiche les E/S + des plages de ports enregistrées</para> + </listitem> + + <listitem> + <para><computeroutput>mmio</computeroutput> -- affiche les plages + MMIO enregistrées</para> + </listitem> + + <listitem> + <para><computeroutput>mode</computeroutput> -- affiche le mode de + pagination actuel</para> + </listitem> + + <listitem> + <para><computeroutput>pit</computeroutput> -- affiche l'état i8254 PIT</para> + </listitem> + + <listitem> + <para><computeroutput>pic</computeroutput> -- affiche l'état i8259A PIC</para> + </listitem> + + <listitem> + <para><computeroutput>ohci/ehci</computeroutput> -- affiche un + sous-ensemble de l'état du contrôleur USB OHCI/EHCI</para> + </listitem> + + <listitem> + <para><computeroutput>pcnet0</computeroutput> -- affiche l'état PCnet</para> + </listitem> + + <listitem> + <para><computeroutput>vgatext</computeroutput> -- affiche le contenu + du tampon (framebuffer) VGA formaté en mode texte standard</para> + </listitem> + + <listitem> + <para><computeroutput>timers</computeroutput> -- affiche toutes les + horloges de la VM</para> + </listitem> + </itemizedlist></para> + + <para>La sortie des commandes <computeroutput>info</computeroutput> exige + généralement une connaissance approfondie du périphérique émulé et/ou des + aspects internes de VirtualBox VMM. Cependant, quand on les utilise correctement, + les informations fournies peuvent avoir une valeur inestimable.</para> + </sect2> + + <sect2 id="ts_guest-core-format"> + <title>Format du cœur d'une VM</title> + + <para>VirtualBox utilise le format ELF 64 bits pour les fichiers cœur + de la VM créés par <computeroutput>VBoxManage debugvm</computeroutput> ; + voir <xref linkend="vboxmanage-debugvm" />. Les fichiers cœur d'une + VM contiennent les messages de la mémoire et du processeur de la VM et ils + peuvent être utiles pour déboguer votre OS invité. Vous pouvez savoir + les spécifications du format objet ELF 64 bits ici : <literal><ulink + url="http://downloads.openwatcom.org/ftp/devel/docs/elf-64-gen.pdf">http://downloads.openwatcom.org/ftp/devel/docs/elf-64-gen.pdf</ulink></literal>.</para> + + <para>La présentation grosso modo du format du cœur de la VM est + celle-ci :</para> + + <para><screen>[ ELF 64 Header] +[ Program Header, type PT_NOTE ] + -> offset to COREDESCRIPTOR +[ Program Header, type PT_LOAD ] - un par plage de mémoire physique contiguë + -> Memory offset of range + -> File offset +[ Note Header, type NT_VBOXCORE ] +[ COREDESCRIPTOR ] + -> Magic + -> Version du fichier cœur de la VM + -> Version de VBox + -> Nombre de vprocesseurs etc. +[ Note Header, type NT_VBOXCPU ] - un pour chaque vCPU +[ vCPU 1 Note Header ] + [ CPUMCTX - vCPU 1 dump ] +[ Remarques + données supplémentaires ] - Non utilisées aujourd'hui +[ Memory dump ]</screen></para> + + <para>Les descripteurs de mémoire contiennent les adresses physiques de + la mémoire liées à l'invité et pas les adresses virtuelles. Les régions de + la mémoire telles que les régions MMIO ne sont pas incluses dans le fichier + cœur.</para> + + <para>Vous pouvez trouver les structures de données et les définitions + pertinentes dans les sources de VirtualBox sous les fichiers en-têtes + suivants : + <computeroutput>include/VBox/dbgfcorefmt.h</computeroutput>, + <computeroutput>include/VBox/cpumctx.h</computeroutput> et + <computeroutput>src/VBox/Runtime/include/internal/ldrELFCommon.h</computeroutput>.</para> + + <para>Vous pouvez examiner le fichier cœur de la VM en utilisant + <computeroutput>elfdump</computeroutput> et GNU + <computeroutput>readelf</computeroutput> ou d'autres outils similaires.</para> + </sect2> + </sect1> + + <sect1> + <title>Général</title> + + <sect2 id="ts_config-periodic-flush"> + <title>L'invité affiche des erreurs IDE/SATA pour les images + fichier d'un système de fichiers hôte lent</title> + + <para>De temps en temps, certains systèmes de fichiers hôte offrent des + performances d'écriture très faibles et, par conséquent, créent des + timeout sur les commandes IDE/SATA de l'invité. C'est un comportement normal + et cela ne devrait pas provoquer de vrais problèmes, car l'invité devrait + répéter des commandes qui ont dépassé le timeout. Cependant, certains + invités (comme certaines versions + de Linux) ont de gros problèmes si l'écriture dans un fichier image dépasse + 15 secondes. Or, certains systèmes de fichiers nécessitent plus d'une + minute pour effectuer une seule écriture, si le cache de l'hôte contient + beaucoup de données à écrire.</para> + + <para>Le symptôme de ce problème est que l'invité ne peut plus accéder à + ses fichiers lors de grosses écritures, ce qui aboutit en général à un + accroc immédiat de l'invité.</para> + + <para>Pour contourner ce problème (la vraie correction est d'utiliser un + système de fichier plus rapide qui n'excède pas de telles performances + d'écriture inacceptables), il est possible de flasher le fichier image + après qu'une certaine quantité de données ait été écrite. Cet intervalle est + en principe infini mais vous pouvez le configurer individuellement pour + chaque disque d'une VM.</para> + + <para>Pour des disques IDE, utilisez la commande suivante :</para> + + <screen>VBoxManage setextradata "nom VM" + "VBoxInternal/Devices/piix3ide/0/LUN#[x]/Config/FlushInterval" [b]</screen> + + <para>Pour des disques SATA, utilisez la commande suivante :</para> + + <screen>VBoxManage setextradata "nom VM" + "VBoxInternal/Devices/ahci/0/LUN#[x]/Config/FlushInterval" [b]</screen> + + <para>La valeur [x] qui sélectionne le disque pour l'IDE est 0 pour le + périphérique maître du premier canal, 1 pour périphérique esclave du premier + canal, 2 pour le périphérique maître du deuxième canal, ou 3 pour le + périphérique esclave du deuxième canal. Pour SATA, utilisez des valeurs + entre 0 et 29. Seuls les disques supportent cette option de configuration ; + vous ne devez pas la définir pour des lecteurs CD/DVD.</para> + + <para>L'unité d'intervalle [b] est le nombre d'octets écrits depuis le + dernier vidage. Sa valeur doit être sélectionnée de sorte que les longs + délais d'écriture occasionnels ne se produisent pas. Comme la bonne valeur + d'intervalle de vidage dépend des performances de l'hôte et du système de + fichiers hôte, savoir la valeur optimum qui fait disparaître le problème + nécessite d'expérimenter. Des valeurs entre 1000000 et 10000000 (1 to 10 mégaoctets) + sont un bon point de départ. La diminution de l'intervalle réduit la probabilité + du problème et les performances d'écriture de l'invité. Le test des valeurs faibles inutilement sera coûteux en + performances sans avantages. Un intervalle de 1 fera un vidage toutes les + opération d'écriture et cela devrait résoudre le problème dans tous les + cas, mais cela est très coûteux en performances d'écriture.</para> + + <para>Fournir la valeur 0 à [b] revient à un intervalle de vidage infini + ce qui désactive de fait ce contournement. La suppression de la donnée + supplémentaire en ne spécifiant aucune valeur pour [b] aboutit au même + effet.</para> + </sect2> + + <sect2> + <title>Réponse aux requêtes de vidage IDE/SATA de l'invité</title> + + <para>Si vous le souhaitez, les images virtuelles de disque peuvent être + flashées quand l'invité lance une commande IDE FLUSH CACHE. Normalement ces + requêtes sont ignorées pour des performances améliorées. Les paramètres + ci-dessous sont acceptés uniquement pour les lecteurs de disque. Elles ne + doivent pas être définies pour des lecteurs DVD.</para> + + <para>Pour activer le vidage des disques IDE, lancez la + commande suivante :</para> + + <screen>VBoxManage setextradata "nom VM" "VBoxInternal/Devices/piix3ide/0/LUN#[x]/Config/IgnoreFlush" 0</screen> + + <para>La valeur [x] qui sélectionne le disque pour l'IDE est 0 pour le + périphérique maître du premier canal, 1 pour périphérique esclave du premier + canal, 2 pour le périphérique maître du deuxième canal, ou 3 pour le + périphérique esclave du deuxième canal.</para> + + <para>Pour activer le vidage pour des disques SATA, lancez la commande + suivante :</para> + + <screen>VBoxManage setextradata "nom VM" "VBoxInternal/Devices/ahci/0/LUN#[x]/Config/IgnoreFlush" 0</screen> + + <para>La valeur [x] qui sélectionne le disque peut être une valeur entre + 0 et 29.</para> + + <para>Remarquez que cela ne concerne pas les vidages effectués selon la + configuration décrite au <xref linkend="ts_config-periodic-flush" + xrefstyle="template: %n" />. La restauration des paramètres par défaut + d'ignorance des commandes est possible en paramétrant la valeur sur 1 ou en + supprimant la clé.</para> + </sect2> + + <sect2 id="ts_host-powermgmt"> + <title>Faibles performances dues à la gestion d'énergie de l'hôte</title> + + <para>Sur certaines plateformes matériel et sur certains systèmes + d'exploitation, les performances de virtualisation sont touchées de manière + négative par la gestion d'énergie du processeur de l'hôte. Les symptômes + peuvent être un changement de son dans l'invité ou un comportement erratique + de l'horloge de l'invité.</para> + + <para>Certains problèmes peuvent venir de bogues d'un firmware et/ou + du système d'exploitation hôte. Donc, la mise à jour du firmware et l'application + de correctifs au système d'exploitation est recommandée.</para> + + <para>Pour des performances de virtualisation optimales, le support de + l'état d'énergie C1E dans le BIOS du système devrait être activé si ce + paramètre est disponible (tous les systèmes ne supportent pas l'état + d'énergie C1E). Sur les systèmes Intel, le paramètre <computeroutput>Intel C State</computeroutput> + devrait être désactivé. La désactivation + d'autres paramètres de gestion d'énergie peut aussi améliorer les + performances. Toutefois, vous devez toujours faire un bilan performance + consommation d'énergie.</para> + </sect2> + + <sect2 id="ts_gui-2d-grayed-out"> + <title>GUI : l'option d'accélération graphique est grisée</title> + + <para>Pour utiliser l'accélération graphique 2D dans VirtualBox, la carte + graphique de votre hôte devrait supporter certaines extensions d'OpenGL. + Au démarrage, VirtualBox vérifie ces extensions et, si le test échoue, cette + option est grisée silencieusement.</para> + + <para>Pour connaître la raison pour laquelle il a échoué, vous pouvez exécuter + à la main la commande suivante :</para> + + <screen>VBoxTestOGL --log "log_file_name" --test 2D</screen> + + <para>Elle listera les extensions OpenGL nécessaires une par une et elle + vous montrera celles où le test a échoué. Cela signifie en général que + vous exécutez un pilote OpenGL obsolète ou mal configuré sur votre hôte. + Cela peut aussi signifier que le chipset graphique manque d'une fonctionnalité + requise.</para> + </sect2> + </sect1> + + <sect1> + <title>Invités Windows</title> + + <sect2> + <title>Écrans bleus Windows après avoir changé la configuration d'une VM</title> + + <para>La modification de certains paramètres d'une machine virtuelle peut + faire échouer des invités Windows au démarrage, avec un écran bleu. Cela + peut se produire si vous changez les paramètres d'une VM après avoir installé + Windows ou si vous copiez une image de disque avec un Windows installé + sur une VM nouvellement créée dont les paramètres diffèrent de la machine + d'origine.</para> + + <para>Cela s'applique en particulier aux paramètres suivants :<itemizedlist> + <listitem> + <para>Vous ne devriez jamais modifier les paramètres ACPI et APIC + E/S après avoir installé Windows. Selon la présence de ces fonctions + matérielles, le programme d'installation de Windows choisit des + versions spéciales du noyau et des pilotes de périphérique et il + n'arrivera pas à démarrer si on supprime ces fonctionnalités. (Leur + activation pour une VM Windows installé sans elles ne présente + aucun risque. Par contre, Windows n'utilisera pas ces fonctions dans + ce cas.)</para> + </listitem> + + <listitem> + <para>La modification des contrôleurs de stockage aboutira à des + échecs au démarrage. Cela pourrait aussi s'appliquer si vous copiez + une image de disque d'une ancienne version de VirtualBox sur une + machine virtuelle créée avec une version de VirtualBox plus récente ; + le sous-type de contrôleur IDE est passé de PIIX3 à PIIX4 avec + VirtualBox 2.2. Assurez-vous que ces paramètres sont identiques.</para> + </listitem> + </itemizedlist></para> + </sect2> + + <sect2> + <title>Écran bleu sur Windows 0x101 si SMP est activé (IPI timeout)</title> + + <para>Si une VM est configurée pour avoir plus d'un processeur (multiprocesseurs + symmétriques, SMP), certaines configurations d'invités Windows plantent avec + un message d'erreur 0x101 indiquant une interruption du timeout de + l'inter-processeur (IPIs, Interprocessor Interrupts). Ces interruptions + synchronisent la gestion de mémoire entre les processeurs.</para> + + <para>Selon Microsoft, cela vient d'une condition concurrentielle (avec conflit) + dans Windows. Un correctif existe.<footnote> + <para>Voir <ulink + url="http://support.microsoft.com/kb/955076">http://support.microsoft.com/kb/955076</ulink>.</para> + </footnote> Si cela n'aide pas, merci de réduire le nombre de + processeurs virtuels à 1.</para> + </sect2> + + <sect2> + <title>Échecs d'installation de Windows 2000</title> + + <para>En installant des invités Windows 2000, vous pourriez rencontrer + les problèmes suivants :</para> + + <itemizedlist> + <listitem> + <para>L'nstallation redémarre, en général lors de l'enregistrement + d'un composant.</para> + </listitem> + + <listitem> + <para>L'nstallation remplit tout le disque dur par des fichiers journaux + vides.</para> + </listitem> + + <listitem> + <para>L'installation rapporte un échec lors de l'installation de + <literal>msgina.dll</literal>.</para> + </listitem> + </itemizedlist> + + <para>Ces problèmes viennent tous d'un bogue du pilote de disque dur de + Windows 2000. Après avoir sollicité une requête du disque dur, il survient + un conflit concurrentiel (race condition) dans le code du pilote Windows, + qui conduit à une corruption si l'opération se termine trop vite, donc si + l'interruption matérielle du contrôleur IDE survient trop tôt. Avec du + matériel physique, il existe un délai garanti dans la plupart des systèmes, + donc le problème est généralement caché (il devrait être cependant possible + de le reproduire aussi sur du matériel physique). Dans un environnement + virtuel, l'opération peut se faire immédiatement (surtout sur des systèmes + très rapides avec plusieurs CPU) et l'interruption est signalée + plus tôt que sur un système physique. La solution consiste à introduire + un délai artificiel avant d'envoyer de telles interruptions. Vous pouvez + configurer ce délai pour une VM avec la commande suivante :</para> + + <screen>VBoxManage setextradata "nom VM" "VBoxInternal/Devices/piix3ide/0/Config/IRQDelay" 1</screen> + + <para>Ceci définit le délai à une milliseconde. Si cela n'aide pas, + passez-le à une valeur entre 1 et 5 millisecondes. Merci de remarquer que + cela ralentit les performances du disque. Après l'installation, vous devriez + pouvoir supprimer la clé (ou la passer à 0).</para> + </sect2> + + <sect2> + <title>Comment garder les informations d'un écran bleu des invités Windows</title> + + <para>Quand les invités Windows connaissent un plantage du noyau, ils affichent + l'horrible écran bleu. Selon la façon dont est configuré Windows, les + informations demeureront à l'écran jusqu'à ce que la machine soit redémarrée + ou qu'elle redémarre automatiquement. Pendant l'installation, Windows est + généralement configuré pour redémarrer automatiquement. Avec le + redémarrage automatique, il n'y a aucune chance d'enregistrer les informations + d'un écran bleu, alors qu'elles pourraient être importantes pour déterminer + le problème.</para> + + <para>VirtualBox offre une méthode d'arrêt de l'invité quand il veut + redémarrer. Pour activer cette fonction, exécutez la commande suivante :</para> + + <para><screen>VBoxManage setextradata "nom VM" "VBoxInternal/PDM/HaltOnReset" 1</screen></para> + </sect2> + + <sect2> + <title>Pas de réseau dans les invités Windows Vista</title> + + <para>Avec Windows Vista, Microsoft a abandonné le support de la carte + AMD PCNet utilisée par VirtualBox comme carte réseau virtuelle par défaut + avant la version 1.6.0. Pour les invités Windows Vista, VirtualBox utilise + maintenant par défaut une carte Intel E1000.</para> + + <para>Si, pour une raison quelconque, vous voulez toujours utiliser la + carte AMD, vous devez télécharger le pilote de PCNet sur le site Internet + d'AMD (disponible seulement pour Windows 32 bits). Vous pouvez le transférer + dans la machine virtuelle en utilisant un dossier partagé (voir + <xref linkend="sharedfolders" />).</para> + </sect2> + + <sect2> + <title>Les invités Windows peuvent provoquer une forte charge du processeur</title> + + <para>Plusieurs applications en arrière-plan des invités Windows, en + particulier les anti-virus, sont connues pour augmenter considérablement la + charge du processeur même si l'invité semble être inactif. Nous vous + recommandons de désactiver les anti-virus des invités virtualisés si + possible.</para> + </sect2> + + <sect2> + <title>Temps d'accès élevés aux dossiers partagés</title> + + <para>Les performances d'accès aux dossiers partagés depuis un invité + Windows pourraient diminuer du fait des délais de résolution du service + de domaine des dossiers partagés de VirtualBox. Pour corriger ces délais, + ajoutez les entrées suivante au fichier <computeroutput>\windows\system32\drivers\etc\lmhosts</computeroutput> + de l'invité Windows :</para> + + <screen>255.255.255.255 VBOXSVR #PRE +255.255.255.255 VBOXSRV #PRE</screen> + + <para>Après ce changement, il faut redémarrer l'invité.</para> + </sect2> + + <sect2> + <title>La tablette USB coordonne mal dans les invités Windows 98</title> + + <para>Si une VM Windows 98 est configurée pour utiliser la tablette USB + émulée (périphérique de pointage absolu), il se peut que la traduction de + la coordination soit incorrecte et que le pointeur soit restreint au quart + en haut à gauche de l'écran de l'invité.</para> + + <para>Les pilotes HID (Human Interface Device) USB de Windows 98 sont très + vieux et ils ne gèrent pas les tablettes de la même manière que les systèmes + d'exploitation récents (Windows 2000 et supérieur, Mac OS X, Solaris). Pour + contourner le problème, exécutez la commande suivante : + </para> + + <para><screen>VBoxManage setextradata "nom VM" "VBoxInternal/USB/HidMouse/0/Config/CoordShift" 0</screen></para> + + <para>Pour restaurer le comportement par défaut, supprimez la clé ou + réglez sa valeur à 1. + </para> + </sect2> + + <sect2> + <title>Les invités Windows sont retirés du domaine Active Directory après + la restauration d'un instantané</title> + + <para>Si un invité Windows est membre d'un domaine Active Directory et + que vous utilisez la fonction des instantanés de VirtualBox, il pourrait + se produire des pertes de cet état après la restauration d'un ancien + instantané. + </para> + + <para>Ceci vient du changement automatique de mot de passe de la machine opéré + régulièrement par Windows pour des raisons de sécurité. Vous pouvez + désactiver cette fonction en suivant les instructions de <ulink + url="http://support.microsoft.com/kb/154501">http://support.microsoft.com/kb/154501</ulink> + cet article de Microsoft. + </para> + </sect2> + + <sect2 id="ts_d3d8-d3d9-restore"> + <title>Restauration de d3d8.dll et de d3d9.dll</title> + + <para>Les suppléments invité de VirtualBox pour Windows et inférieurs à + la 4.1.8 ne sauvegardaient pas les fichiers système d'origine d3d8.dll et + d3d9.dll lors de l'installation du support expérimental de Direct3D. Ce + processus remplace ces deux fichiers système par des fichiers des suppléments + invité de VirtualBox gérables correctement par les appels de Direct3D. Si + ce problème a été corrigé avec VirtualBox 4.1.8, il n'y a aucun moyen de + faire réparer ces fichiers par l'installeur des suppléments invité.</para> + + <para>La corruption de ces fichiers n'a pas d'implications si l'accélération + 3D est activée et si le support de base de Direct3D est installé, à savoir + sans WDDM (sur Windows Vista ou supérieur) ou sur les anciens systèmes + Windows comme Windows XP. Avec le support Direct3D de base, toutes les + applications Direct3D 8.0 et Direct3D 9.0 utiliseront directement les fichiers + Direct3D de VirtualBox et fonctionneront ainsi comme prévu.</para> + + <para>Par contre, pour le support WDDM Direct3D, les fichiers d3d8.dll et + d3d9.dll inclus d'origine sont nécessaires pour lancer des applications + Direct3D 8.0 et Direct3D 9.0. Il résulte de la corruption des fichiers + système ci-dessus que ces applications ne fonctionneront plus. Voir + ci-dessous pour une guide pas à pas sur la restauration des fichiers + systèmes d'origine + d3d8.dll et d3d9.dll si l'installeur des suppléments invité de + VirtualBox a averti que ces fichiers étaient incorrects ou en cas de + problème en exécutant les applications Direct3D.</para> + + <note><para>À partir de Windows 7 le bureau 3D (aka Aero) utilise DirectX 10 + pour être affiché afin que les fichiers d3d8.dll et d3d9.dll corrompus + n'aient aucun effet sur la session en cours.</para></note> + + <para>C'est pourquoi la détection d'une telle corruption de fichier n'est + pas considérée comme fatale pour l'installation basique de Direct3D sur + tous les invités Windows supportés et pour une installation de WDDM Direct3D + sur les invités Windows 7 et supérieur.</para> + + <para>Extraire d3d8 et d3d9.dll du CD d'installation de Windows XP :</para> + + <orderedlist> + <listitem> + <para>Téléchargez et installez la dernière version de 7-Zip File Manager + <ulink url="http//www.7-zip.org">http//www.7-zip.org</ulink></para> + </listitem> + + <listitem> + <para>Parcourez le CD d'installation, par exemple E:\i386 (ou AMD64 + pour la version 64 bits)</para> + </listitem> + + <listitem> + <para>Localisez le fichier d3d8.dl_ et d3d9.dl_, cliquez deux fois + dessus et extrayez d3d8.dll et d3d9.dll</para> + </listitem> + + <listitem> + <para>Redémarrez Windows en mode sans échec</para> + </listitem> + + <listitem> + <para>Copiez d3d8.dll et d3d9.dll extraits dans C:\Windows\system32 and C:\Windows\system32\dllcache</para> + </listitem> + + <listitem> + <para>Redémarrez</para> + </listitem> + </orderedlist> + + <para>Extraction de d3d8 et de d3d9.dll du pack service de Windows XP </para> + + <orderedlist> + <listitem> + <para>1, 3-6 Identiques au CD d'installation</para> + </listitem> + <listitem> + <para>Utilisez 'Ouvrir avec' pour ouvrir WindowsXP-KB936929-SP3-x86.exe + en tant qu'archive et parcourez le répertoire i386.</para> + </listitem> + </orderedlist> + + <para>Extraction de d3d8 et de d3d9.dll du CD d'installation de Vista/Windows7 ou + des images du pack Service</para> + + <orderedlist> + <listitem> + <para>Téléchargez et installez la dernière version de 7-Zip File Manager <ulink + url="http//www.7-zip.org">http//www.7-zip.org</ulink></para> + </listitem> + + <listitem> + <para>Parcourez le CD d'installation, par exemple E:\sources</para> + </listitem> + + <listitem> + <para>Localisez le fichier install.wim et cliquez deux fois dessus. + Après l'ouverture du fichier par 7-Zip, vous verrez un certain nombre + de dossiers. Chaque sous-dossier numéroté représente une version + différente de Windows (Starter, Home Basic, and ainsi de suite)</para> + </listitem> + + <listitem> + <para>Après être entré dans les dossiers numérotés adéquats, parcourez + le répertoire Windows\System32 (or C:\Windows\SysWOW64 pour la + version 64 bits) et localisez d3d8.dll et d3d9.dll puis extrayez</para> + </listitem> + + <listitem> + <para>Copiez d3d8.dll et d3d9.dll extraits dans C:\Windows\system32 ou + C:\Windows\SysWOW64 (les fichiers de system32 devraient aller dans + system32, ceux de SysWOW64 dans SysWOW64)</para> + </listitem> + + <listitem> + <para>Redémarrez</para> + </listitem> + </orderedlist> + </sect2> + + </sect1> + + <sect1> + <title>Invités Linux et X11</title> + + <sect2> + <title>Les invités Linux peuvent entraîner une forte charge du processeur</title> + + <para>Certains invités Linux peuvent entraîner une forte charge du processeur + même si le système invité semble inactif. Cela peut venir d'une fréquence + d'horloge élevée du noyau invité. Certaines distributions Linux, par exemple + Fedora, incluent un noyau Linux configuré pour une fréquence d'horloge de + <emphasis role="bold"> 1000Hz</emphasis>. Nous vous recommandons de + recompiler le noyau invité et de sélectionner une fréquence d'horloge de + 100Hz.</para> + + <para>Les noyaux Linux inclus avec Linux Red Hat Enterprise (RHEL) entre + la version 4.7 et 5.1 ainsi que les noyaux des distributions Linux associées + (par exemple, CentOS et Oracle Linux) supportent un paramètre + <emphasis>divider=N</emphasis> du noyau. D'où le fait que de tels noyaux + supportent une fréquence d'horloge plus faible sans recompilation. Nous + vous suggérons d'ajouter le paramètre <emphasis>divider=10</emphasis> du + noyau pour sélectionner une fréquence de l'horloge du noyau invité de + 100Hz.</para> + </sect2> + + <sect2> + <title>Processeurs AMD Barcelona</title> + + <para>La plupart des invités basés sur Linux échoueront avec l'AMD Phenoms ou + Barcelona-level Opterons du fait d'un bogue dans le noyau Linux. Activez + l'APIC E/S pour contourner le problème (voir <xref + linkend="settings-system" />).</para> + </sect2> + + <sect2 id="ts_linux-buggy"> + <title>Versions buguées du noyau Linux Linux 2.6</title> + + <para>Les bogues suivants des noyaux Linux les empêchent de les exécuter + correctement dans VirtualBox, ce qui fait planter la VM au démarrage :<itemizedlist> + <listitem> + <para>La version du noyau Linux 2.6.18 (et certaines versions 2.6.17) + ont introduit un conflit de condition (race condition) qui peut + provoquer un plantage au démarrage dans VirtualBox. Merci d'utiliser + une version du noyau 2.6.19 ou supérieur.</para> + </listitem> + + <listitem> + <para>Avec la virtualisation matérielle et l'APIC E/S activé, les + noyaux inférieurs au 2.6.24-rc6 peuvent planter au démarrage avec le + message suivant :<screen>Kernel panic - not syncing: IO-APIC + timer doesn't work! Boot with +apic=debug and send a report. Then try booting with the 'noapic' option</screen></para> + + <para>Si vous voyez ce message, soit désactivez la virtualisation + matérielle, soit l'APIC E/S (voir <xref + linkend="settings-system" />), ou mettez à jour l'invité vers un + noyau plus récent.<footnote> + <para>Voir <ulink + url="http://www.mail-archive.com/git-commits-head@vger.kernel.org/msg30813.html">http://www.mail-archive.com/git-commits-head@vger.kernel.org/msg30813.html</ulink> + pour des détails sur le correctif du noyau.</para> + </footnote></para> + </listitem> + </itemizedlist></para> + </sect2> + + <sect2> + <title>Presse-papier partagé, redimensionnement automatique et bureau transparent + dans les invités X11</title> + + <para>Les services du bureau invité dans les invités exécutant le système + X11 window (Solaris, Linux et autres) sont fournis par un service invité + qui s'appelle <computeroutput>VBoxClient</computeroutput>, qui fonctionne + sous l'ID de l'utilisateur qui démarre la session du bureau et qui est + démarré automatiquement en utilisant les lignes de commande suivantes + <screen>VBoxClient --clipboard +VBoxClient --display +VBoxClient --seamless</screen> quand votre session utilisateur X11 est lancée +si vous utilisez un environnement de bureau courant (Gnome, KDE et autres). Si +un service du bureau particulier ne fonctionne pas bien, il vaut la peine de +vérifier si le processus qui devrait le fournir est en fonction.</para> + + <para>Les processus <computeroutput>VBoxClient</computeroutput> créent + des fichiers dans le dossier personnel de l'utilisateur avec des noms sous + la forme <computeroutput>.vboxclient-*.pid</computeroutput> quand ils + fonctionnent, pour empêcher un service donné de se démarrer deux fois. Il + peut arriver, à cause d'une mauvaise configuration, que ces fichiers + se créent sous la propriété de l'administrateur et ne sont pas effacés + quand les services s'arrêtent, ce qui les empêchera de démarrer à l'avenir. + Si vous ne pouvez pas démarrer les services, vous pourriez vérifier si + ces fichiers existent.</para> + </sect2> + </sect1> + + <sect1> + <title>Invités Solaris</title> + + <sect2> + <title>Les versions inférieures à Solaris 10 plantent en mode 64 bits</title> + + <para>Les versions de Solaris 10 inférieures ou égales à Solaris 10 8/07 ("S10U4") + détectent mal les processeurs Intel récents fabriqués depuis 2007. Ce + problème fait planter ou stopper le noyau Solaris 64 bits presqu'immédiatement + lors du démarrage, tant dans un environnement virtualisé que physique. + </para> + <para> + La solution recommandée est de mettre à jour vers au moins Solaris 10 5/08 + ("S10U5"). D'autres solutions consistent à obliger Solaris à toujours + démarrer le noyau 32 bits ou à appliquer un correctif au bogue 6574102 + (tant que Solaris utilise le noyau 32 bits). + </para> + + </sect2> + </sect1> + + <sect1> + <title>Hôte Windows</title> + + <sect2> + <title>Problème du serveur VBoxSVC out-of-process COM</title> + + <para>VirtualBox utilise le Component Object Model (COM) de Microsoft pour + la communication inter et intra-processus. Cela permet à VirtualBox de + partager une configuration commune entre les processus de différentes + machines virtuelles et de fournir plusieurs versions de l'interface + utilisateur basées sur une architecture commune. Toutes les informations + d'état et la configuration globale sont maintenues par le processus + <computeroutput>VBoxSVC.exe</computeroutput>, qui est un service COM + hors des processus. À chaque fois que le processus de VirtualBox est démarré, + il demande un accès au serveur COM et Windows démarre automatiquement le + processus. Notez que l'utilisateur final ne devrait jamais le démarrer.</para> + + <para>Quand le dernier processus se déconnecte du serveur COM, il se + terminera lui-même après quelques secondes. La configuration de VirtualBox + (fichiers XML) est maintenue et appartient au serveur COM et les fichiers + sont verrouillés à chaque fois que le serveur s'exécute.</para> + + <para>Dans certains cas - comme quand une machine virtuelle se termine + de manière imprévue -, le serveur COM ne remarquera pas que le client est + déconnecté et il restera actif longtemps (10 minutes voire plus), gardant + verrouillés les fichiers de configuration. Dans de rares cas, le serveur + COM pourrait connaître une erreur interne et, en conséquence, les autres + processus pourraient ne pas pouvoir l'initialiser. Dans ces situations, il + est recommandé d'utiliser le gestionnaire des tâches de Windows pour tuer + le processus <computeroutput>VBoxSVC.exe</computeroutput>.</para> + </sect2> + + <sect2> + <title>Changements de CD/DVD non reconnus</title> + + <para>Si vous avez affecté un lecteur CD/DVD physique à un invité et si + l'invité ne remarque pas les changements de médias, assurez-vous que la + fonction de notification de changement de média (MCN) de Windows n'est pas + désactivée. Elle est représentée par la clé suivante dans le registre + Windows ::<screen><literal>HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Cdrom\Autorun</literal></screen> + Il se peut que certaines applications désactivent cette clé contre l'avis de + Microsoft. Si elle est définie à 0, passez-la à 1 et redémarrez votre système. + VirtualBox s'appuie sur la notification de Windows de changement de média.</para> + </sect2> + + <sect2> + <title>Réponse lente en utilisant le client RDP de Microsoft</title> + + <para>Si vous vous connectez à une machine virtuelle avec le client RDP de + Microsoft (appelé Remote Desktop Connection), il peut y avoir d'importants + délais entre l'entrée (le déplacement de la souris dans un menu est la situation la + plus évidente) et la sortie. Ceci car le client RDP récupère l'entrée pendant + un certain temps avant de l'envoyer au serveur RDP.</para> + + <para>Vous pouvez diminuer l'intervalle en définissant une clé du registre + Windows sur des valeurs plus petites que celles par défaut, 100. La clé + n'existe pas au départ, elle doit être de type DWORD. Son unité de valeur est en millisecondes. Les valeurs autour + de 20 conviennent aux connexions avec faible bande passante entre le client + et le serveur RDP. Des valeurs autour de 4 peuvent être utilisées pour une + connexion Internet à 4 gigaoctets. En général, les valeurs inférieures à + 10 donnent une performance très réduite par rapport aux périphériques + d'entrée locaux et à l'écran de l'hôte sur lequel fonctionne la machine + virtuelle.</para> + + <para>Selon que le paramètre à modifier est pour un utilisateur individuel + ou pour le système, vous pouvez définir soit</para> + + <screen>HKEY_CURRENT_USER\Software\Microsoft\Terminal Server Client\Min Send Interval</screen> + + <para>soit</para> + + <screen>HKEY_LOCAL_MACHINE\Software\Microsoft\Terminal Server Client\Min Send Interval</screen> + + <para>correctement.</para> + </sect2> + + <sect2> + <title>Lancer un initiateur et une cible iSCSI sur un seul système</title> + + <para>Des verrouillages peuvent se produire sur un hôte Windows quand on essaie + d'accéder à une cible iSCSI en fonction dans une machine virtuelle invitée + avec un initiateur iSCSI (comme Microsoft iSCSI Initiator) en fonction + sur l'hôte. Cela vient d'un défaut dans le composant du gestionnaire de cache + de Windows et cela donne une réponse lente du système hôte, de plusieurs + minutes, suivies d'un message d'erreur "Delayed Write Failed" (délai + d'écriture différé) dans la barre système ou dans une fenêtre de message + distincte. L'invité est bloqué pendant ce temps et il peut afficher des + messages d'erreur ou devenir instable.</para> + + <para>La définition d'une variable d'environnement + <computeroutput>VBOX_DISABLE_HOST_DISK_CACHE</computeroutput> à 1 activera + un contournement de ce problème jusqu'à ce que Microsoft le traite. + Par exemple, ouvrez une fenêtre d'invite de commande et démarrez VirtualBox + comme ceci :</para> + + <screen>set VBOX_DISABLE_HOST_DISK_CACHE=1 +VirtualBox</screen> + + <para>Si cela réduif les performances du disque invité (surtout en écriture), + cela ne concerne pas les performances d'autres applications en fonction + sur l'hôte.</para> + </sect2> + + <sect2> + <title>Adaptateurs réseaux bridgés absents</title> + + <para>Si aucun adaptateur bridgé n'apparaît dans la section "Réseau" des + paramètres de la VM, cela signifie généralement que le pilote du réseau + bridgé n'a pas été installé correctement sur votre hôte. Cela pourrait venir + des raisons suivantes : <itemizedlist> + <listitem> + <para>Le nombre maximum de filtres autorisés a été atteint sur l'hôte. + Dans ce cas, le journal MSI indiquera le code d'erreur + <computeroutput>0x8004a029</computeroutput> retourné à l'installation + du composant réseau NetFlt :<screen>VBoxNetCfgWinInstallComponent: Install failed, hr (0x8004a029)</screen></para> + + <para>Vous pouvez essayer d'augmenter le nombre de filtre maximum + dans le registre Windows avec la clé suivante :<screen>HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Network\MaxNumFilters</screen>Le nombre maximum autorisé est de 14. Après le redémarrage, essayez + de réinstaller VirtualBox.</para> + </listitem> + + <listitem> + <para>Le cache INF est corrompu. Dans ce cas, le journal d'installation + (<computeroutput>%windir%\inf\setupapi.log</computeroutput> sur XP + ou <computeroutput>%windir%\inf\setupapi.dev.log</computeroutput> + sur Vista ou supérieur) indiquera normalement un échec pour + trouver le paquet du pilote adapté aux composants + <computeroutput>sun_VBoxNetFlt</computeroutput> ou + <computeroutput>sun_VBoxNetFltmp</computeroutput>. La solution est + alors de désinstaller VirtualBox, de supprimer le cache INF + (<computeroutput>%windir%\inf\INFCACHE.1</computeroutput>), de + redémarrer et d'essayer de réinstaller VirtualBox</para> + </listitem> + </itemizedlist></para> + </sect2> + + <sect2> + <title>L'adaptateur réseau Host-only ne peut pas être créé</title> + + <para>Si l'adaptateur host-only ne peut pas être créé (soit avec le gestionnaire + soit avec VBoxManage), le cache INF est probablement corrompu. Dans ce cas, + le journal d'installation (<computeroutput>%windir%\inf\setupapi.log</computeroutput> + sur XP ou <computeroutput>%windir%\inf\setupapi.dev.log</computeroutput> + sur Vista ou supérieur) indiquera généralement un échec pour trouver un + paquet de pilote adapté au composant <computeroutput>sun_VBoxNetAdp</computeroutput>. + De nouveau, comme pour le problème du réseau bridgé décrit ci-dessus, la + solution consiste à désinstaller VirtualBox, à supprimer le cache INF + (<computeroutput>%windir%\inf\INFCACHE.1</computeroutput>), à redémarrer + et à essayer de réinstaller VirtualBox.</para> + </sect2> + </sect1> + + <sect1> + <title>Hôtes Linux</title> + + <sect2 id="ts_linux-kernelmodule-fails-to-load"> + <title>Le module du noyau Linux refuse de se charger</title> + + <para>Si le module du noyau Linux + (<computeroutput>vboxdrv</computeroutput>) refuse de se charger, c'est-à-dire + que vous avez un message "Error inserting vboxdrv: Invalid argument", + vérifiez (en tant qu'administrateur) la sortie de la commande + <computeroutput>dmesg</computeroutput> pour trouver la raison de l'échec + du chargement. Probablement, le noyau n'est pas d'accord avec la version + de gcc utilisée pour compiler le module. Assurez-vous d'utiliser le même + compilateur que celui utilisé pour construire le noyau.</para> + </sect2> + + <sect2> + <title>Lecteur CD/DVD de l'hôte Linux non trouvé</title> + + <para>Si vous avez configuré une machine virtuelle pour utiliser le + lecteur CD/DVD de l'hôte, et s'il semble ne pas fonctionner, assurez-vous + que l'utilisateur actuel a le droit d'accéder au fichier de périphérique + Linux correspondant (<computeroutput>/dev/hdc</computeroutput> ou + <computeroutput>/dev/scd0</computeroutput> ou + <computeroutput>/dev/cdrom</computeroutput> ou identique). Sur la plupart + des distributions, l'utilisateur doit être ajouté à un groupe correspondant + (qui s'appelle en général <computeroutput>cdrom</computeroutput> ou + <computeroutput>cdrw</computeroutput>).</para> + </sect2> + + <sect2> + <title>Lecteur CD/DVD non trouvé sur l'hôte Linux (distributions anciennes)</title> + + <para>Sur les anciennes distributions Linux, si votre lecteur CD/DVD + a un autre nom, il se peut que VirtualBox soit incapable de le trouver. + Sur les hôtes Linux anciens, VirtualBox suit les étapes suivantes pour + trouver vos lecteurs CD/DVD :</para> + + <para><orderedlist> + <listitem> + <para>VirtualBox examine si la variable d'environnement + <computeroutput>VBOX_CDROM</computeroutput> est définie (voir ci-dessous). + Si tel est le cas, VirtualBox ne fait pas les vérifications suivantes.</para> + </listitem> + + <listitem> + <para>VirtualBox teste si + <computeroutput>/dev/cdrom</computeroutput> fonctionne.</para> + </listitem> + + <listitem> + <para>En plus, VirtualBox vérifie si des lecteurs CD/DVD sont montés + en vérifiant <computeroutput>/etc/mtab</computeroutput>.</para> + </listitem> + + <listitem> + <para>En outre, VirtualBox vérifie si une des entrées de + <computeroutput>/etc/fstab</computeroutput> pointe vers un lecteur + CD/DVD.</para> + </listitem> + </orderedlist></para> + + <para>En d'autres termes, vous pouvez essayer de définir VBOX_CDROM pour + contenir vos lecteurs CD/DVD, séparés par des deux-points, par exemple + comme suit :</para> + + <para><screen>export VBOX_CDROM='/dev/cdrom0:/dev/cdrom1'</screen>Sur les + distributions Linux modernes, VirtualBox utilise la couche d'abstraction + matérielle (hal) pour localiser le matériel CD et DVD.</para> + </sect2> + + <sect2> + <title>Disquette non trouvée sur un hôte Linux</title> + + <para>Les instructions précédentes (pour les lecteurs CD et DVD) s'appliquent + aussi aux disquettes, sauf que sur les distributions anciennes, + VirtualBox teste par défaut les périphériques <computeroutput>/dev/fd*</computeroutput> + ce que vous pouvez changer avec la variable d'environnement + <computeroutput>VBOX_FLOPPY</computeroutput>.</para> + </sect2> + + <sect2> + <title>Messages d'erreur étranges de l'IDE invité lors de l'écriture sur un CD/DVD</title> + + <para>Si le support expérimental d'écriture sur un CD/DVD est activé avec + une mauvaise configuration de l'hôte et de l'invité VirtualBox, il est + possible que vos efforts pour accéder à l'écriture sur CD/DVD échouent et + n'aboutissent qu'à des messages d'erreur du noyau invité (pour les invités + Linux) ou à des messages d'erreur de l'application (pour les invités + Windows). VirtualBox effectue les vérifications de cohérence habituelles + quand une VM est allumée (en particulier, il quitte avec un message d'erreur + si l'utilisateur qui démarre la VM ne peut pas écrire sur le périphérique + du graveur CD/DVD), mais il ne peut pas détecter toutes les mauvaises + configurations. La configuration de l'OS hôte et de l'invité requise n'est + pas spécifique à VirtualBox, mais quelques problèmes fréquents sont listés + ici, ils se sont produits en lien avec VirtualBox.</para> + + <para>Vous devez faire très attention à utiliser le bon périphérique. Le + nom du fichier du lecteur CD/DVD de l'hôte configuré (dans la plupart des + cas, <literal>/dev/cdrom</literal>) doit pointer vers le périphérique + qui permet d'écrire sur l'unité CD/DVD. Pour les unités du graveur CD/DVD, + connecté à un contrôleur SCSI ou à un contrôleur IDE qui fait interface + avec le sous-système SCSI de Linux (ce qui est classique pour certains + contrôleurs SATA), il doit renvoyer au nœud de périphérique SCSI + (comme <literal>/dev/scd0</literal>). Même pour les unités de graveurs de CD/DVD en + IDE, il doit renvoyer au nœud du lecteur CD-ROM adéquat (comme + <literal>/dev/scd0</literal>) si le module du noyau + <literal>ide-scsi</literal> est chargé. Ce module est requis pour le support + du graveur CD/DVD avec tous les noyaux Linux 2.4 et avec certains noyaux + 2.6 des débuts. De nombreuses distributions Linux chargent ce module à + chaque fois que le graveur CD/DVD est détecté dans le système, même si + le noyau supporterait des graveurs CD/DVD sans le module. VirtualBox supporte + l'utilisation des fichiers de périphérique IDE (comme + <literal>/dev/hdc</literal>), pourvu que le noyau le supporte et que le + module <literal>ide-scsi</literal> ne soit pas chargé.</para> + + <para>Des règles similaires (sauf que dans l'invité, le graveur CD/DVD + est toujours un périphérique IDE) s'appliquent à la configuration de + l'invité. Ce paramétrage étant très classique, il est probable que la + configuration par défaut de l'invité fonctionne comme prévu.</para> + </sect2> + + <sect2> + <title>Problème de l'IPC VBoxSVC</title> + + <para>Sur Linux, VirtualBox utilise une version personnalisée de XPCOM + de Mozilla (modèle d'objet du composant multi-plateformes) pour la + communication inter et intra processus (IPC). Le processus + <computeroutput>VBoxSVC</computeroutput> sert de hub de communication + entre plusieurs processus de VirtualBox et il maintient la configuration + globale, c'est-à-dire la base de données XML. Au démarrage d'un composant + de VirtualBox, les processus <computeroutput>VBoxSVC</computeroutput> et + <computeroutput>VirtualBoxXPCOMIPCD</computeroutput> sont lancés automatiquement. + Ils ne sont accessibles qu'à partir du compte utilisateur qui l'a + lancé. <computeroutput>VBoxSVC</computeroutput> possède la base de données + de la configuration de VirtualBox qui se trouve normalement dans + <computeroutput>~/.config/VirtualBox</computeroutput>, ou dans le répertoire + de configuration adéquat de votre système d'exploitation. Tant qu'il est en fonction, + les fichiers de configuration sont verrouillés. La communication entre les + composants de VirtualBox et <computeroutput>VBoxSVC</computeroutput> est + faite via un socket de domaine local qui se trouve dans + <computeroutput>/tmp/.vbox-<username>-ipc</computeroutput>. En cas + de problèmes de communication (par exemple si une application VirtualBox + ne peut pas communiquer avec <computeroutput>VBoxSVC</computeroutput>), + clôturez les démons et supprimez le répertoire du socket du domaine + local.</para> + </sect2> + + <sect2 id="ts_usb-linux"> + <title>L'USB ne fonctionne pas</title> + + <para>Si l'USB ne fonctionne pas sur votre hôte Linux, assurez-vous que + l'utilisateur actuel fait partie du groupe + <computeroutput>vboxusers</computeroutput>. Sur les hôtes anciens, vous + devez vous assurer que l'utilisateur a le droit d'accéder au système de + fichiers USB (<computeroutput>usbfs</computeroutput>), sur lequel s'appuie + VirtualBox pour récupérer des informations valides sur les périphériques + USB de votre hôte. Le reste de cette section ne s'applique qu'à ces anciens + systèmes.</para> + + <para>Comme <computeroutput>usbfs</computeroutput> est un système de fichiers + virtuel, un <computeroutput>chmod</computeroutput> sur + <computeroutput>/proc/bus/usb</computeroutput> n'a aucun effet. Les droits + sur <computeroutput>usbfs</computeroutput> <emphasis>ne peuvent donc être + changés que</emphasis> si vous éditez le fichier + <computeroutput>/etc/fstab</computeroutput>.</para> + + <para>Par exemple, la plupart des distributions Linux comportent un groupe + utilisateur qui s'appelle <computeroutput>usb</computeroutput> ou similaire, + dont l'utilisateur actuel doit faire partie. Pour donner à tous les + utilisateurs de ce groupe un accès à usbfs, assurez-vous que la ligne + suivante est présente :<screen># 85 is the USB group +none /proc/bus/usb usbfs devgid=85,devmode=664 0 0</screen>Remplacez + 85 par l'ID du groupe correspondant à votre système (cherchez dans + <computeroutput>/etc/group</computeroutput> "usb" ou proche). Sinon, si + vous vous moquez des considérations de sécurité, donnez à tous les + utilisateurs l'accès à l'USB en changeant "664" en "666".</para> + + <para>Les distributions sont très créatives sur le script qui monte le + système de fichiers <computeroutput>usbfs</computeroutput>. Parfois, + la commande est cachée à des endroits improbables. Pour SuSE 10.0, la + commande de montage fait partie du fichier de configuration udev + <computeroutput>/etc/udev/rules.d/50-udev.rules</computeroutput>. Comme + cette distribution n'a aucun groupe d'utilisateurs appelé + <computeroutput>usb</computeroutput>, vous pouvez utiliser par exemple le + groupe <computeroutput>vboxusers</computeroutput> qui a été créé par + l'installeur de VirtualBox. Les numéros des groupes étant affectés de manière + dynamique, l'exemple suivant utilise 85 comme modèle. Modifiez la ligne + contenant (on a inséré un retour à la ligne pour améliorer la lisibilité) + <screen>DEVPATH="/module/usbcore", ACTION=="add", + RUN+="/bin/mount -t usbfs usbfs /proc/bus/usb"</screen> et ajoutez les + options nécessaires (assurez-vous que tout est sur une seule ligne) : + <screen>DEVPATH="/module/usbcore", ACTION=="add", + RUN+="/bin/mount -t usbfs usbfs /proc/bus/usb -o devgid=85,devmode=664"</screen></para> + + <para>Debian Etch a sa commande de montage dans + <computeroutput>/etc/init.d/mountkernfs.sh</computeroutput>. Cette + distribution n'ayant pas de groupe <computeroutput>usb</computeroutput>, + la solution la plus simple est d'autoriser tous les membres du + groupe <computeroutput>vboxusers</computeroutput> à accéder au sous-système + USB. Modifiez la ligne <screen>domount usbfs usbdevfs /proc/bus/usb -onoexec,nosuid,nodev</screen> + pour qu'elle contienne <screen>domount usbfs usbdevfs /proc/bus/usb -onoexec,nosuid,nodev,devgid=85,devmode=664</screen> + Comme d'habitude, remplacez 85 par le vrai numéro du groupe qui devrait + avoir accès aux périphériques USB.</para> + + <para>D'autres distributions font des opérations identiques dans des scripts + stockés dans le répertoire <computeroutput>/etc/init.d</computeroutput>.</para> + </sect2> + + <sect2> + <title>Noyaux PAX/grsec</title> + + <para>Les noyaux Linux incluant le correctif grsec (voir <literal><ulink + url="http://www.grsecurity.net/">http://www.grsecurity.net/</ulink></literal>) + et ses dérivés doivent désactiver PAX_MPROTECT pour que les binaires VBox + puissent démarrer une VM. Ceci car VBox doit créer un code exécutable en + mémoire anonyme.</para> + </sect2> + + <sect2> + <title>pool vmalloc du noyau Linux dépassé</title> + + <para>Quand on exécute un grand nombre de VMs avec beaucoup de RAM sur + un système Linux (disons 20 VMs de 1Go de RAM chacune), les VMs supplémentaires + pourraient ne pas réussir à démarrer avec une erreur du noyau disant que + le pool vmalloc est dépassé et que vous devriez l'agrandir. Le message + d'erreur vous dit aussi de spécifier + <computeroutput>vmalloc=256MB</computeroutput> dans votre liste des + paramètres du noyau. Si l'ajout de ce paramètre à votre configuration de + GRUB ou de LILO empêche le noyau de démarrer (avec un message d'erreur + bizarre tel que "failed to mount the root partition"), vous avez probablement + un conflit de mémoire entre votre noyau et la RAM disque initiale. Vous + pouvez résoudre cela en ajoutant le paramètre suivant à votre configuration + de GRUB :</para> + + <screen>uppermem 524288</screen> + </sect2> + </sect1> + + <sect1> + <title>Hôtes Solaris</title> + + <sect2> + <title>Ne peut pas démarrer de VM, pas assez de mémoire contiguë</title> + + <para>Le système de fichiers ZFS est connu pour utiliser presque toute la + RAM disponible comme du cache si les paramètres système par défaut ne sont + pas modifiés. Cela peut conduire à une énorme fragmentation de la mémoire + de l'hôte, empêchant les VMS de VirtualBox de démarrer. Nous vous recommandons + de limiter la limite du cache ZFS en ajoutant une ligne<screen>set zfs:zfs_arc_max = xxxx</screen> + à /etc/system où <computeroutput>xxxx</computeroutput> octets est la quantité + de mémoire utilisable pour le cache ZFS.</para> + </sect2> + + <sect2> + <title>La VM s'arrête avec des erreurs de dépassement de mémoire sur les hôtes + Solaris 10</title> + + <para>Les hôtes Solaris 10 32 bits (bogue 1225025) exigent un espace d'échange + supérieur ou égal à la taille de la mémoire physique de l'hôte. Par exemple, + 8 Go de mémoire physique exigerait au moins 8 Go d'échange. Vous pouvez + configurer cela pendant l'installation de Solaris 10 en choisissant une + 'installation personnalisée' et en modifiant les partitions par défaut.</para> + + <note> + <para>Cette restriction ne s'applique qu'aux hôtes Solaris 32 bits, les + hôtes 64 bits ne sont pas concernés !</para> + </note> + + <para>Pour les installations Solaris 10 existantes, il faut monter une image + d'échange supplémentaire et l'utiliser comme échange. D'où le fait que si + vous avez un échange de 1 Go et 8 Go de mémoire physique, vous devez + ajouter un échange supplémentaire de 7 Go. Vous pouvez faire cela comme + suit :</para> + + <para>Pour ZFS (en tant qu'administrateur) :</para> + + <para><screen>zfs create -V 8gb /_<ZFS volume>_/swap +swap -a /dev/zvol/dsk/_<ZFS volume>_/swap</screen></para> + + <para>Pour monter le système de fichiers au démarrage, ajoutez la ligne + suivante à /etc/vfstab :</para> + + <screen>/dev/zvol/dsk/_<ZFS volume>_/swap - - swap - no -</screen> + + <para>Sinon, vous pouvez agrandir l'espace existant en utilisant :</para> + + <screen>zfs set volsize=8G rpool/swap</screen> + + <para>Et redémarrer le système pour que les changements prennent effet.</para> + + <para>Pour UFS (en tant qu'administrateur) :</para> + + <screen>mkfile 7g /path/to/swapfile.img +swap -a /path/to/swapfile.img</screen> + + <para>Pour le monter au redémarrage, ajoutez la ligne suivante à + /etc/vfstab :</para> + + <screen>/path/to/swap.img - - swap - no -</screen> + </sect2> + </sect1> +</chapter> diff --git a/doc/manual/fr_FR/user_VBoxManage.xml b/doc/manual/fr_FR/user_VBoxManage.xml new file mode 100644 index 00000000..1c4177a0 --- /dev/null +++ b/doc/manual/fr_FR/user_VBoxManage.xml @@ -0,0 +1,4363 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" +"http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd"> +<chapter id="vboxmanage"> + <title>VBoxManage</title> + + <sect1> + <title>Introduction</title> + + <para>Comme brièvement indiqué au <xref linkend="frontends" />, VBoxManage + est l'interface en ligne de commande de VirtualBox. Avec elle, vous pouvez + contrôler complètement VirtualBox depuis la ligne de commandes + de votre système d'exploitation hôte. + VBoxManage supporte toutes les fonctionnalités auxquelles vous donne accès + l'interface graphique, mais il supporte bien plus que ça. Il ouvre vraiment + toutes les fonctions du moteur de virtualisation, même celles auxquelles on + ne peut pas (encore) accéder en mode graphique.</para> + + <para>Vous devrez utiliser la ligne de commande si vous voulez</para> + + <para><itemizedlist> + <listitem> + <para>utiliser une autre interface que celle graphique (par exemple, + VBoxSDL ou le serveur VBoxHeadless) ;</para> + </listitem> + + <listitem> + <para>contrôler certains paramètres de configuration plus avancés et + expérimentaux d'une VM.</para> + </listitem> + </itemizedlist></para> + + <para>Il faut avoir en tête deux choses en utilisant + <computeroutput>VBoxManage</computeroutput> : D'abord, + <computeroutput>VBoxManage</computeroutput> doit toujours être utilisé + avec des "sous-commandes" spécifiques telles que "list" ou "createvm" ou + "startvm". Toutes les sous-commandes supportées par + <computeroutput>VBoxManage</computeroutput> sont décrites en détail à la + <xref linkend="vboxmanage" />.</para> + + <para>Ensuite, la plupart de ces sous-commandes exigent que vous spécifiez + une machine virtuelle en particulier après la sous-commande. Il y a deux façons + de faire cela :</para> + + <itemizedlist> + <listitem> + <para>Vous pouvez spécifier le nom de la VM comme il s'affiche dans + l'interface graphique de VirtualBox. Remarquez que si ce nom contient des + espaces, vous devez l'entourer de guillemets (comme cela est toujours + le cas avec les arguments d'une ligne de commande contenant des espaces).</para> + + <para>Par exemple :<screen>VBoxManage startvm "Windows XP"</screen></para> + </listitem> + + <listitem> + <para>Vous pouvez spécifier l'UUID, qui est l'identifiant interne unique + utilisé par VirtualBox pour parler de la machine virtuelle. En supposant que + la VM précitée nommée "Windows XP" porte l'UUID affiché ci-dessous, + la commande suivante a le même effet que celle précédente :<screen>VBoxManage startvm 670e746d-abea-4ba6-ad02-2a3b043810a5</screen></para> + </listitem> + </itemizedlist> + + <para>Vous pouvez taper <computeroutput>VBoxManage list vms</computeroutput> + pour voir toutes les VMs enregistrées ; listées avec leurs paramètres, + y compris leurs noms respectifs et leurs UUIDs.</para> + + <para>Des exemples classiques de la façon de contrôler VirtualBox depuis la + ligne de commande apparaissent ci-dessous :</para> + + <itemizedlist> + <listitem> + <para>Pour créer une nouvelle machine virtuelle en ligne de commandes + et l'enregistrer immédiatement avec VirtualBox, utilisez + <computeroutput>VBoxManage createvm</computeroutput> avec l'option + <computeroutput>--register</computeroutput>,<footnote> + <para>Pour des détails, voir <xref + linkend="vboxmanage-createvm" />.</para> + </footnote> comme ceci :</para> + + <screen>$ VBoxManage createvm --name "SUSE 10.2" --register +VirtualBox Command Line Management Interface Version @VBOX_VERSION_MAJOR@.@VBOX_VERSION_MINOR@.@VBOX_VERSION_BUILD@ +(C) 2005-@VBOX_C_YEAR@ @VBOX_VENDOR@ +All rights reserved. + +Virtual machine 'SUSE 10.2' is created. +UUID: c89fc351-8ec6-4f02-a048-57f4d25288e5 +Settings file: '/home/nomutilisateur/.config/VirtualBox/Machines/SUSE 10.2/SUSE 10.2.xml'</screen> + + <para>Comme vous pouvez le voir dans la sortie ci-dessus, une nouvelle + machine virtuelle a été créée avec le nouvel UUID et un nouveau fichier + XML de paramètres.</para> + </listitem> + + <listitem> + <para>Pour afficher la configuration d'une VM en particulier, utilisez + <computeroutput>VBoxManage showvminfo</computeroutput> ; voir <xref + linkend="vboxmanage-showvminfo" /> pour des détails et un exemple.</para> + </listitem> + + <listitem> + <para>Pour modifier les paramètres pendant qu'une VM est éteinte, utilisez + <computeroutput>VBoxManage modifyvm</computeroutput>, comme ceci : + <screen>VBoxManage modifyvm "Windows XP" --memory 512</screen></para> + + <para>Pour des détails,voir <xref linkend="vboxmanage-modifyvm" />.</para> + </listitem> + + <listitem> + <para>Pour modifier la configuration du stockage (par exemple pour ajouter un + contrôleur de stockage et ensuite un disque virtuel), utilisez <computeroutput>VBoxManage + storagectl</computeroutput> et <computeroutput>VBoxManage + storageattach</computeroutput> ; voir <xref + linkend="vboxmanage-storagectl" /> et <xref + linkend="vboxmanage-storageattach" /> pour les détails.</para> + </listitem> + + <listitem> + <para>Pour contrôler le comportement de la VM, utilisez :<itemizedlist> + <listitem> + <para>Pour démarrer une VM éteinte, utilisez + <computeroutput>VBoxManage startvm</computeroutput> ; voir <xref + linkend="vboxmanage-startvm" /> pour les détails.</para> + </listitem> + + <listitem> + <para>Pour mettre en pause ou sauvegarder une VM en fonction, ou + pour modifier certains de ses paramètres, utilisez + <computeroutput>VBoxManage + controlvm</computeroutput> ; voir <xref + linkend="vboxmanage-controlvm" /> pour les détails.</para> + </listitem> + </itemizedlist></para> + </listitem> + </itemizedlist> + </sect1> + + <sect1> + <title>Aperçu des commandes</title> + + <para>Quand vous lancez VBoxManage sans paramètres ou si vous entrez une ligne de + commande invalide, le diagramme de syntaxe ci-dessous s'affichera. Remarquez + que la sortie sera légèrement différente selon la plateforme hôte ; + en cas de doute, vérifiez la sortie de <computeroutput>VBoxManage</computeroutput> + pour voir les commandes disponibles sur votre hôte en particulier.</para> + + <xi:include href="../user_VBoxManage_CommandsOverview.xml" xpointer="xpointer(/sect1/*)" + xmlns:xi="http://www.w3.org/2001/XInclude" /> + + <para>À chaque fois que vous appelez VBoxManage, une seule commande peut être + exécutée. Toutefois, une commande peut supporter plusieurs sous-commandes + que vous pouvez appeler en une seule fois. Les sections suivantes fournissent + des informations de référence détaillées sur les différentes commandes.</para> + </sect1> + + <sect1 id="vboxmanage-general"> + <title>Options générales</title> + <para> + <itemizedlist> + <listitem> + <para><computeroutput>--version</computeroutput> : affiche la + version de cet outil et quitte.</para> + </listitem> + <listitem> + <para><computeroutput>--nologo</computeroutput> : supprime l'affichage + des informations de logo (utile pour les scripts)</para> + </listitem> + <listitem> + <para><computeroutput>--settingspw</computeroutput> : spécifie + un mot de passe pour les paramètres</para> + </listitem> + <listitem> + <para><computeroutput>--settingspwfile</computeroutput> : spécifie + un fichier contenant le mot de passe des paramètres</para> + </listitem> + </itemizedlist> + Le mot de passe des paramètres est utilisé pour certains paramètres ayant + besoin d'être stockés et chiffrés pour des raisons de sécurité. Pour le moment, + le seul paramètre chiffré est l'initiateur secret iSCSI (voir + <xref linkend="vboxmanage-storageattach" /> pour les détails). Tant + qu'aucun mot de passe des paramètres n'a été spécifié, ces informations + sont stockées en <emphasis role="bold">texte brut</emphasis>. Après avoir + utilisé l'option <computeroutput>--settingspw|--settingspwfile</computeroutput> + une fois, il faut toujours l'utiliser, sans quoi le paramètre chiffré ne peut pas + être chiffré. + </para> + </sect1> + + <sect1 id="vboxmanage-list"> + <title>VBoxManage list</title> + + <para>La commande <computeroutput>list</computeroutput> donne des + informations pertinentes sur votre système et sur les paramètres actuels de + VirtualBox.</para> + + <para>Les sous-commandes suivantes sont disponibles avec + <computeroutput>VBoxManage list</computeroutput> : <itemizedlist> + <listitem> + <para><computeroutput>vms</computeroutput> liste toutes les machines + virtuelles actuellement enregistrées avec VirtualBox. Par défaut, elle + affiche une liste compacte avec le nom et l'UUID de chaque VM ; + si vous spécifiez en plus <computeroutput>--long</computeroutput> ou + <computeroutput>-l</computeroutput>, cela affichera une liste détaillée + comme avec la commande<computeroutput>showvminfo</computeroutput> (voir + ci-dessous).</para> + </listitem> + + <listitem> + <para><computeroutput>runningvms</computeroutput> liste toutes les + machines virtuelles actuellement en fonction avec leurs identifiants + uniques (UUIDs) sous la même forme qu'avec + <computeroutput>vms</computeroutput>.</para> + </listitem> + + <listitem> + <para><computeroutput>ostypes</computeroutput> liste les systèmes + d'exploitation invités connus aujourd'hui de VirtualBox, ainsi que + les identifiants utilisés pour s'y référer avec la commande + <computeroutput>modifyvm</computeroutput>.</para> + </listitem> + + <listitem> + <para><computeroutput>hostdvds</computeroutput>, + <computeroutput>hostfloppies</computeroutput>, listent respectivement + les lecteurs DVD, amovibles, les interfaces réseaux bridgées et + host-only sur l'hôte, ainsi que le nom utilisé pour y accéder depuis + VirtualBox.</para> + </listitem> + + <listitem> + <para><computeroutput>bridgedifs</computeroutput>, + <computeroutput>hostonlyifs</computeroutput> aet + <computeroutput>dhcpservers</computeroutput>, listent respectivement + les interfaces réseaux bridgées, host-only et les serveurs DHCP disponibles + sur l'hôte. Merci de voir <xref + linkend="networkingdetails" /> pour les détails à leur sujet.</para> + </listitem> + + <listitem> + <para><computeroutput>hostinfo</computeroutput> affiche des informations + sur le système hôte telles que les processeurs, la taille de la mémoire + et la version du système d'exploitation.</para> + </listitem> + + <listitem> + <para><computeroutput>hostcpuids</computeroutput> affiche les paramètres + CPUID aux processeurs de l'hôte. Cela peut servir à une analyse plus + fine des possibilités de virtualisation de l'hôte.</para> + </listitem> + + <listitem> + <para><computeroutput>hddbackends</computeroutput> liste les backends (fondations) + de disque virtuel connus de VirtualBox. Pour chaque format (tels que + VDI, VMDK ou RAW), ceci liste les possibilités de la fondation et sa + configuration.</para> + </listitem> + + <listitem> + <para><computeroutput>hdds</computeroutput>, + <computeroutput>dvds</computeroutput> et + <computeroutput>floppies</computeroutput> vous donnent des informations + sur les images de disque virtuel actuellement utilisées par VirtualBox, + y compris leurs paramètres, leurs identifiants uniques (UUIDs) + associés par VirtualBox et tous leurs fichiers associés. C'est l'équivalent + ligne de commandes du gestionnaire de médias virtuels ; voir <xref + linkend="vdis" />.</para> + </listitem> + + <listitem> + <para><computeroutput>usbhost</computeroutput> donne des informations + sur les périphériques USB attachés à l'hôte, en particulier des + informations utiles pour construire des filtres USB et s'ils sont actuellement + utilisés par l'hôte.</para> + </listitem> + + <listitem> + <para><computeroutput>usbfilters</computeroutput> liste les filtres USB + globaux enregistrés avec VirtualBox -- c'est-à-dire les filtres des + périphériques accessibles à toutes les machines virtuelles -- et + il affiche les paramètres du filtre.</para> + </listitem> + + <listitem> + <para><computeroutput>systemproperties</computeroutput> affiche des + paramètres globaux de VirtualBox, tels que la RAM minimum et maximum + de l'invité et la taille du disque dur virtuel, les paramètres du + dossier et la bibliothèque d'authentification actuellement utilisée.</para> + </listitem> + + <listitem> + <para><computeroutput>extpacks</computeroutput> affiche les packs + d'extension de VirtualBox actuellement installés ; voir <xref + linkend="intro-installing" /> et <xref + linkend="vboxmanage-extpack" /> pour plus d'informations.</para> + </listitem> + </itemizedlist></para> + </sect1> + + <sect1 id="vboxmanage-showvminfo"> + <title>VBoxManage showvminfo</title> + + <para>La commande <computeroutput>showvminfo</computeroutput> affiche + des informations sur une machine en particulier. Ce sont les mêmes + informations qu'afficherait <computeroutput>VBoxManage list vms --long</computeroutput> + pour toutes les machines virtuelles.</para> + + <para>Vous aurez des informations ressemblant à ce qui suit :</para> + + <para><screen>$ VBoxManage showvminfo "Windows XP" +VirtualBox Command Line Management Interface Version @VBOX_VERSION_MAJOR@.@VBOX_VERSION_MINOR@.@VBOX_VERSION_BUILD@ +(C) 2005-@VBOX_C_YEAR@ @VBOX_VENDOR@ +All rights reserved. + +Name: Windows XP +Guest OS: Other/Unknown +UUID: 1bf3464d-57c6-4d49-92a9-a5cc3816b7e7 +Config file: /home/nomutilisateur/.config/VirtualBox/Machines/Windows XP/Windows XP.xml +Memory size: 512MB +VRAM size: 12MB +Number of CPUs: 2 +Synthetic Cpu: off +Boot menu mode: message and menu +Boot Device (1): DVD +Boot Device (2): HardDisk +Boot Device (3): Not Assigned +Boot Device (4): Not Assigned +ACPI: on +IOAPIC: on +PAE: on +Time offset: 0 ms +Hardw. virt.ext: on +Nested Paging: on +VT-x VPID: off +State: powered off (since 2009-10-20T14:52:19.000000000) +Monitor count: 1 +3D Acceleration: off +2D Video Acceleration: off +Teleporter Enabled: off +Teleporter Port: 0 +Teleporter Address: +Teleporter Password: +Storage Controller (0): IDE Controller +Storage Controller Type (0): PIIX4 +Storage Controller (1): Floppy Controller 1 +Storage Controller Type (1): I82078 +IDE Controller (0, 0): /home/user/windows.vdi (UUID: 46f6e53a-4557-460a-9b95-68b0f17d744b) +IDE Controller (0, 1): /home/user/openbsd-cd46.iso (UUID: 4335e162-59d3-4512-91d5-b63e94eebe0b) +Floppy Controller 1 (0, 0): /home/user/floppy.img (UUID: 62ac6ccb-df36-42f2-972e-22f836368137) +NIC 1: disabled +NIC 2: disabled +NIC 3: disabled +NIC 4: disabled +NIC 5: disabled +NIC 6: disabled +NIC 7: disabled +NIC 8: disabled +UART 1: disabled +UART 2: disabled +Audio: disabled (Driver: Unknown) +Clipboard Mode: Bidirectional +VRDE: disabled +USB: disabled + +USB Device Filters: +<none> + +Shared folders: +<none> + +Statistics update: disabled</screen></para> + </sect1> + + <sect1 id="vboxmanage-registervm"> + <title>VBoxManage registervm / unregistervm</title> + + <para>La commande <computeroutput>registervm</computeroutput> vous permet + d'importer la définition d'une machine virtuelle dans VirtualBox via + un fichier XML. La machine ne doit pas entrer en conflit avec une autre déjà + enregistrée dans VirtualBox et elle ne peut pas avoir de disques durs ou + amovibles attachés. Il est recommandé de mettre le fichier de définition + dans le répertoire des machines avant de l'enregistrer.<note> + <para>Lors de la création d'une nouvelle machine virtuelle avec + <computeroutput>VBoxManage createvm</computeroutput> (voir ci-dessous), + vous pouvez spécifier directement l'option + <computeroutput>--register</computeroutput> pour éviter de devoir + l'enregistrer séparément.</para> + </note></para> + + <para>La commande <computeroutput>unregistervm</computeroutput> désenregistre + une machine virtuelle. Si vous spécifiez également + <computeroutput>--delete</computeroutput>, les fichiers suivants seront + eux aussi automatiquement effacés :<orderedlist> + <listitem> + <para>tous les fichiers images de disque dur, y compris les fichiers de + différenciation, utilisés par la machine et non partagés avec d'autres + machines ;</para> + </listitem> + + <listitem> + <para>les fichiers de l'état sauvegardé créés par la machine si ils existent + (un si la machine était en état "sauvegardé" et un pour chaque + instantané en ligne) ;</para> + </listitem> + + <listitem> + <para>le fichier XML de la machine et ses sauvegardes ;</para> + </listitem> + + <listitem> + <para>les fichiers journaux de la machine s'il y en a ;</para> + </listitem> + + <listitem> + <para>le répertoire de la machine s'il est vide après l'effacement de + tout ce qui précède.</para> + </listitem> + </orderedlist></para> + </sect1> + + <sect1 id="vboxmanage-createvm"> + <title>VBoxManage createvm</title> + + <para>Cette commande crée un nouveau fichier de définition de machine virtuelle + XML.</para> + + <para>Le paramètre <computeroutput>--name <name></computeroutput> est + requis et doit spécifier le nom de la machine. Ce nom étant utilisé par + défaut pour nommer le fichier des paramètres (avec l'extension + <computeroutput>.xml</computeroutput>) et le dossier machine (un sous-dossier + du dossier <computeroutput>.config/VirtualBox/Machines</computeroutput>), il doit + respecter les exigences de votre système d'exploitation hôte en matière de + spécifications d'un nom de fichier. Si vous renommez plus tard la VM, le + nom du fichier et du dossier seront modifiés automatiquement.</para> + + <para>Néanmoins, si vous utilisez l'option <computeroutput>--basefolder + <path></computeroutput>, le dossier de la machine sera appelé + <computeroutput><path></computeroutput>. Dans ce cas, les noms du + fichier et du dossier ne seront pas modifiés si la machine virtuelle est + renommée.</para> + + <para>Par défaut, cette commande ne fait que créer le fichier XML, + sans enregistrer automatiquement la VM avec votre installation de + VirtualBox. Pour enregistrer instantanément la VM, utilisez l'option + <computeroutput>--register</computeroutput>, ou lancez + <computeroutput>VBoxManage registervm</computeroutput> séparément a posteriori.</para> + </sect1> + + <sect1 id="vboxmanage-modifyvm"> + <title>VBoxManage modifyvm</title> + + <para>Cette commande modifie les propriétés d'une machine virtuelle enregistrée + et non en fonction. La plupart des propriétés disponibles avec cette commande + correspondent aux paramètres de la VM affichés dans l'interface graphique de + VirtualBox dans la boîte de dialogue "Paramètres" de chaque VM ; + celles-ci ont été décrites en + <xref linkend="BasicConcepts" />. Néanmoins, certains des paramètres les plus + avancés ne sont disponibles que via l'interface + <computeroutput>VBoxManage</computeroutput>.</para> + + <para>Ces commandes exigent que la machine soit éteinte (ni + en fonction ni en état "sauvegardé"). Certains paramètres de la machine + peuvent être aussi modifiés pendant qu'une machine est en fonction ; + ces paramètres auront alors une sous-commande correspondante avec la sous-commande + <computeroutput>VBoxManage controlvm</computeroutput> (voir <xref linkend="vboxmanage-controlvm" />).</para> + + <sect2> + <title>Paramètres généraux</title> + + <para>Les paramètres généraux suivants sont disponibles via + <computeroutput>VBoxManage modifyvm</computeroutput> :<itemizedlist> + <listitem> + <para><computeroutput>--name <nom></computeroutput> : Ceci + modifie le nom de la VM et renomme éventuellement les fichiers internes + virtuels, comme décrit avec <computeroutput>VBoxManage + createvm</computeroutput> ci-dessus.</para> + </listitem> + + <listitem> + <para><computeroutput>--ostype <ostype></computeroutput> : + Ceci spécifie le système d'exploitation supposé fonctionner dans la + VM. Pour en apprendre davantage sur les différents identifiants + utilisables, utilisez <computeroutput>VBoxManage list + ostypes</computeroutput>.</para> + </listitem> + + <listitem> + <para><computeroutput>--memory + <taillemémoire></computeroutput> : Ceci définit la quantité + de RAM, en Mo, que devrait s'affecter à elle-même la machine virtuelle + sur l'hôte. Voir les remarques au <xref linkend="gui-createvm" /> pour + plus d'informations.</para> + </listitem> + + <listitem> + <para><computeroutput>--vram <taillevram></computeroutput> : + Ceci définit la quantité de RAM de la carte graphique. Voir + <xref linkend="settings-display" /> pour des détails.</para> + </listitem> + + <listitem> + <para><computeroutput>--acpi on|off</computeroutput> ; + <computeroutput>--ioapic on|off</computeroutput> : Ces deux éléments + déterminent si la VM devrait supporter respectivement l'ACPI et + l'APIC I/O ; voir <xref linkend="settings-motherboard" /> pour + des détails.</para> + </listitem> + + <listitem> + <para><computeroutput>--hardwareuuid + <uuid></computeroutput> : L'UUID présentée à l'invité via + les tables mémoire (DMI/SMBIOS), les propriétés matérielles + et invité. Par défaut, c'est le même que l'uuid de la VM. Utile quand + vous clonez une VM. La téléportation en tient compte automatiquement.</para> + </listitem> + + <listitem> + <para><computeroutput>--cpus <nombreprocesseur></computeroutput> : + Ceci définit le nombre de processeurs virtuels de la machine virtuelle + (voir <xref linkend="settings-processor" />). Si le branchement + à chaud des processaurs est activé (voir ci-dessous), ceci définit + le nombre <emphasis>maximum</emphasis> de processeurs virtuels + qu'on peut brancher dans les machines virtuelles.</para> + </listitem> + + <listitem> + <para><computeroutput>--rtcuseutc on|off</computeroutput> : Cette + option fait tourner l'horloge en temps réel (RTC) en temps UTC (voir + <xref linkend="settings-motherboard" />).</para> + </listitem> + + <listitem> + <para><computeroutput>--cpuhotplug on|off</computeroutput> : Ceci + active le branchement à chaud du processeur. Quand vous l'activez, + les processeurs virtuels peuvent être ajoutés et supprimés d'une + machine virtuelle pendant qu'elle est en fonction. Voir + <xref linkend="cpuhotplug" /> pour plus d'informations.</para> + </listitem> + + <listitem> + <para><computeroutput>--plugcpu|unplugcpu + <id></computeroutput> : Si vous avez activé le branchement + des processeurs à chaud (voir ci-dessus), ceci ajoute un processeur + virtuel aux machines virtuelles (ou en supprime un). <computeroutput><id></computeroutput> + spécifie l'index du processeur virtuel à ajouter ou supprimer et doit + être un numéro entre 0 et le nombre maximum de processeurs configurés + avec l'option <computeroutput>--cpus</computeroutput>. Le processeur + 0 ne peut jamais être supprimé.</para> + </listitem> + + <listitem> + <para><computeroutput>--cpuexecutioncap + <1-100></computeroutput> : Ce paramètre contrôle le nombre + de temps processeur utilisable par un processeur. La valeur 50 implique + qu'un seul processeur virtuel peut utiliser jusqu'à 50% d'un seul + processeur de l'hôte.</para> + </listitem> + + <listitem> + <para><computeroutput>--pae on|off</computeroutput> : Ceci active/désactive + la PAE (voir <xref + linkend="settings-processor" />).</para> + </listitem> + + <listitem> + <para><computeroutput>--longmode on|off</computeroutput> : Ceci + active/désactive le mode long (voir <xref + linkend="settings-processor" />).</para> + </listitem> + + <listitem> + <para><computeroutput>--synthcpu on|off</computeroutput> : Ce + paramètre détermine si VirtualBox présente ou non un processeur + synthétique à l'invité pour permettre une migration en direct entre + les systèmes hôtes qui diffèrent de manière significative.</para> + </listitem> + + <listitem> + <para><computeroutput>--hpet on|off</computeroutput> : Ceci active/désactive + un High Precision Event Timer (HPET) qui peut remplacer les timers + du système primitif. C'est désactivé par défaut. Remarquez que Windows + ne supporte un HPET qu'à partir de Vista.</para> + </listitem> + + <listitem> + <para><computeroutput>--hwvirtex on|off</computeroutput> : Ceci + active ou désactive l'utilisation des extensions du matériel de + virtualisation (Intel VT-x ou AMD-V) dans le processeur de votre système + hôte ; voir <xref linkend="hwvirt" />.</para> + </listitem> + + <listitem> + <para><computeroutput>--triplefaultreset on|off</computeroutput> : ce + paramètre permet de relancer l'invité au lieu de récupérer une Guru Meditation. +Certains invités échouent par une triple erreur lors de la réinitialisation + du processeur, donc on peut parfois souhaiter ce comportement. Cela + ne fonctionne que sur les invités non SMP.</para> + </listitem> + <listitem> + <para><computeroutput>--nestedpaging on|off</computeroutput> : Si + la virtualisation matérielle est activée, ce paramètre supplémentaire + active ou désactive l'utilisation de la fonction de pagination nested + du processeur de votre système hôte ; voir <xref + linkend="hwvirt" />.</para> + </listitem> + + <listitem> + <para><computeroutput>--largepages on|off</computeroutput> : Si + la virtualisation matérielle <emphasis>et</emphasis> la pagination + nested sont activées, pour Intel VT-x seulement, vous pouvez obtenir un + gain de performances jusqu'à 5% en activant ce paramètre. Il fait + utiliser à l'hyperviseur les grandes pages pour réduire l'utilisation du + TLB et l'overhead.</para> + </listitem> + + <listitem> + <para><computeroutput>--vtxvpid on|off</computeroutput> : Si + la virtualisation matérielle est activée, pour Intel VT-x seulement, + ce paramètre supplémentaire active ou désactive l'utilisation de la + fonction TLB taggçe (VPID) du processeur de votre système hôte ; + voir <xref linkend="hwvirt" />.</para> + </listitem> + + <listitem> + <para><computeroutput>--vtxux on|off</computeroutput> : Si vous avez + activé la virtualisation matérielle, seulement pour VT-x d'Intel, ce + paramètre active ou désactive l'utilisation de la fonction mode invité + sans restriction pour faire tourner votre invité.</para> + </listitem> + <listitem> + <para><computeroutput>--accelerate3d on|off</computeroutput> : + Ceci active, si vous avez installé les suppléments invité, la disponibilité + de l'accélération 3D ; voir <xref + linkend="guestadd-3d" />.</para> + </listitem> + + <listitem> + <para>Vous pouvez influencer le logo du BIOS affiché quand une machine + virtuelle démarre avec un certain nombre de paramètres. Par défaut, + un logo VirtualBox est affiché.</para> + + <para>Avec <computeroutput>--bioslogofadein + on|off</computeroutput> et <computeroutput>--bioslogofadeout + on|off</computeroutput>, vous pouvez déterminer si le logo apparaît + et disparaît éstompé, respectivement.</para> + + <para>Avec <computeroutput>--bioslogodisplaytime + <msec></computeroutput> vous pouvez définir la durée d'affichage + du logo en millisecondes.</para> + + <para>Avec <computeroutput>--bioslogoimagepath + <cheminimage></computeroutput> vous pouvez, si vous le souhaitez, + remplacer l'image affichée par votre propre logo. L'image doit être + un fichier BMP décompressé 256 couleurs avec des informations sur + la zone des couleurs (au format Windows 3.0). La taille de l'image + ne doit pas excéder 640 x 480.</para> + </listitem> + + <listitem> + <para><computeroutput>--biosbootmenu + disabled|menuonly|messageandmenu</computeroutput> : Ceci + spécifie si le BIOS permet à l'utilisateur de sélectionner un périphérique + de démarrage temporaire. <computeroutput>menuonly</computeroutput> + supprime le message, mais l'utilisateur peut encore appuyer sur F12 + pour sélectionner un périphérique de démarrage temporaire.</para> + </listitem> + + <listitem> + <para><computeroutput>--nicbootprio<1-N> + <priorité></computeroutput> : Ceci spécifie l'ordre dans + lequel les NICs sont essayés pour démarrer par le réseau (en utilisant + PXE). La priorité est un entier entre 0 à 4. La priorité 1 est la + plus élevée, la priorité 4 est la plus faible. La priorité 0, qui + est celle par défaut sauf autrement spécifié, est la plus faible. + </para> + <para>Remarquez que cette option n'a d'effet que quand le démarrage + Intel PXE ROM est utilisé. + </para> + </listitem> + + <listitem> + <para><computeroutput>--boot<1-4> + none|floppy|dvd|disk|net</computeroutput> : Ceci spécifie l'ordre + d'amorçage pour la machine virtuelle. Il y a quatre "slots", auxquels + essaiera d'accéder la VM de 1 à 4, et pour chacun d'eux, vous pouvez + définir un périphérique sur lequel la VM devrait essayer de démarrer.</para> + </listitem> + + <listitem> + <para><computeroutput>--snapshotfolder + default|<path></computeroutput> : Ceci vous permet de + spécifier le dossier dans lequel seront stockés les instantanés d'une + machine virtuelle.</para> + </listitem> + + <listitem> + <para><computeroutput>--firmware efi|bios</computeroutput> : + Spécifie le firmware utilisé pour démarrer une + machine virtuelle en particulier : EFI ou BIOS. N'utilisez EFI + que si vous comprenez bien ce que vous faites.</para> + </listitem> + + <listitem> + <para><computeroutput>--guestmemoryballoon + <taille></computeroutput> définit la taille par défaut de la + mémoire du ballon de l'invité c'est-à-dire la mémoire affectée + par les suppléments invité de VirtualBox à partir du système d'exploitation + invité et rendue à l'hyperviseur pour être réutilisée par d'autres + machines virtuelles. <taille> doit être spécifiée en mégaoctets. + La taille par défaut est de 0 mégaoctets. Pour les + détails, voir <xref linkend="guestadd-balloon" />.</para> + </listitem> + <listitem> + <para><computeroutput>--lptmode<1-N> + <Périphérique></computeroutput> + Spécifie le nom du périphérique du port parallèle utilisé par la + fonction Pert parallèle. Utilisez ceci <emphasis>avant</emphasis> + <computeroutput>--lpt</computeroutput>. Cette fonction est spécifique + au système d'exploitation.</para> + </listitem> + + <listitem> + <para><computeroutput>--lpt<1-N> + <base E/S> <IRQ></computeroutput> Spécifie l'adresse + E/S du port parallèle et le numéro IRQ utilisés par la fonction + Port parallèle. Utilisez ceci <emphasis>après</emphasis> + <computeroutput>--lptmod</computeroutput>. L'adresse de base + E/S et le numéro IRQ sont les valeurs vues par l'invité, c'est-à-dire + les valeurs disponibles dans le gestionnaire de périphériques de + l'invité.</para> + </listitem> + + <listitem> + <para><computeroutput>--defaultfrontend + default|<nom></computeroutput> : Ceci vous permet de + spécifier l'interface par défaut qui sera utilisée au démarrage de + cette VM  voir + <xref linkend="vboxmanage-startvm" /> pour des détails.</para> + </listitem> + </itemizedlist></para> + </sect2> + + <sect2> + <title>Paramètres réseaux</title> + + <para>Les paramètres réseaux suivants sont disponibles avec + <computeroutput>VBoxManage modifyvm</computeroutput>. Avec tous ces paramètres, + le numéro décimal suivant directement le nom de l'option ("1-N" dans la + in liste ci-dessous) spécifie l'adaptateur réseau virtuel dont vous + modifiez les paramètres.<itemizedlist> + <listitem> + <para><computeroutput>--nic<1-N> + none|null|nat|bridged|intnet|hostonly|generic + </computeroutput> : Avec cela, vous pouvez définir, pour chacune + des cartes réseaux virtuelles de la VM, le type de réseau qui devrait + être disponible. Ils peuvent ne pas être présents + (<computeroutput>none</computeroutput>), non connectés à l'hôte + (<computeroutput>null</computeroutput>), utiliser le network + address translation (<computeroutput>nat</computeroutput>), + le réseau bridgé (<computeroutput>bridged</computeroutput>) ou + communiquer avec d'autres machines virtuelles en utilisant le réseau + interne (<computeroutput>intnet</computeroutput>), le réseau + host-only (<computeroutput>hostonly</computeroutput>), ou accéder + à des sous-modes rarement utilisés (<computeroutput>generic</computeroutput>). + Ces options correspondent aux modes décrits en détail au <xref + linkend="networkingmodes" />.</para> + </listitem> + + <listitem> + <para><computeroutput>--nictype<1-N> + Am79C970A|Am79C973|82540EM|82543GC|82545EM|virtio</computeroutput> : + Cela vous permet, pour chacune des cartes réseaux virtuelles de la VM, de + spécifier le matériel réseau que VirtualBox présente à l'invité ; + voir <xref linkend="nichardware" />.</para> + </listitem> + + <listitem> + <para><computeroutput>--cableconnected<1-N> + on|off</computeroutput> : Cela vous permet de déconnecter + temporairement une interface réseau virtuelle comme si vous débranchiez un + câble réseau d'une vraie carte réseau. Cela pourrait être utile pour + reparamétrer certains composants logiciels dans la VM.</para> + </listitem> + + <listitem> + <para>Avec l'option "nictrace", vous pouvez éventuellement tracer + le trafic réseau en l'envoyant vers un fichier pour faire du débogage.</para> + + <para>Avec <computeroutput>--nictrace<1-N> + on|off</computeroutput>, vous pouvez activer un traçage réseau pour + des cartes réseaux en particulier.</para> + + <para>Si vous l'activez, vous devez spécifier avec + <computeroutput>--nictracefile<1-N> + <nomfichier></computeroutput> le fichier où devrait être + journalisée la trace.</para> + </listitem> + + <listitem> + <para><computeroutput>--bridgeadapter<1-N> + none|<nompériphérique></computeroutput> : Si le réseau + bridgé est activé pour une carte réseau virtuelle (voir l'option + <computeroutput>--nic</computeroutput> ci-dessus ; sinon ce + paramètre n'a aucun effet),, utilisez cette option pour spécifier + l'interface de l'hôte qu'utilisera l'interface réseau virtuelle + donnée. Pour des détails, merci de voir <xref linkend="network_bridged" />.</para> + </listitem> + + <listitem> + <para><computeroutput>--hostonlyadapter<1-N> + none|<nompériphérique></computeroutput> : Si le réseau + host-only a été activé pour une carte réseau virtuelle (voir l'option + --nic ci-dessus ; sinon ce paramètre n'a aucun effet), employez + cette option pour spécifier quelle interface réseau host-only utilisera + l'interface réseau virtuelle donnée. Pour des détails, merci de voir <xref + linkend="network_hostonly" />.</para> + </listitem> + + <listitem> + <para><computeroutput>--intnet<1-N> + network</computeroutput> : Si le réseau interne a été activé + pour une carte réseau virtuelle (voir l'option + <computeroutput>--nic</computeroutput> ci-dessus ; sinon ce + paramètre n'a aucun effet), utilisez cette option pour spécifier le + nom du réseau interne (voir <xref + linkend="network_internal" />).</para> + </listitem> + + <listitem> + <para><computeroutput>--macaddress<1-N> + auto|<mac></computeroutput> : Avec cette option, + vous pouvez définir l'adresse MAC de la carte réseau virtuelle. + Normalement, chaque carte réseau virtuel se voit affecter une adresse + aléatoire par VirtualBox Lors de la création de la VM.</para> + </listitem> + + <listitem> + <para><computeroutput>--nicgenericdrv<1-N> + <pilote fondation></computeroutput> : Si le réseau + générique a été activé pour une carte réseau virtuelle (voir l'option + <computeroutput>--nic</computeroutput> ci-dessus ; sinon ce paramètre + n'a aucun effet), ce mode vous permet d'accéder à des sous-modes + réseaux rarement utilisés, tels que le réseau VDE ou le tunnel UDP. + </para> + </listitem> + + <listitem> + <para><computeroutput>--nicproperty<1-N> + <nomparam>="paramvaleur"</computeroutput> : + Cette option, associée avec "nicgenericdrv", vous permet de + passer des paramètres aux backends (fondations) réseaux rarement utilisées.</para><para> + Ces paramètres sont des fondations spécifiques au moteur et sont + différents entre les pilotes du tunnel UDP et ceux de la fondation + VDE. Par exemple,merci de voir <xref linkend="network_udp_tunnel" />. + </para> + </listitem> + </itemizedlist></para> + + <sect3> + <title>Paramètres du réseau NAT.</title> + + <para>Les paramètres de réseau NAT suivants sont disponibles via + <computeroutput>VBoxManage modifyvm</computeroutput>. Avec tous ces + paramètres, le numéro décimal suivant le nom de l'option ("1-N" + dans la liste ci-dessous) spécifie l'adaptateur réseau virtuel que + devrait modifier ces paramètres.<itemizedlist> + <listitem> + <para><computeroutput>--natpf<1-N> + [<nom>],tcp|udp,[<hostip>],<porthôte>,[<ipinvité>], + <portinvité></computeroutput> : Cette option définit + une règle de redirection de port NAT (merci de voir <xref linkend="natforward" /> + pour des détails).</para> + </listitem> + + <listitem> + <para><computeroutput>--natpf<1-N> delete + <nom></computeroutput> : Cette option supprime une règle + de redirection de port NAT (merci de voir <xref linkend="natforward" /> + pour les détails).</para> + </listitem> + + <listitem> + <para><computeroutput>--nattftpprefix<1-N> + <préfixe></computeroutput> : Cette option définit un + préfixe pour le serveur TFTP intégré, à savoir là où se trouve le + fichier de démarrage (merci de voir <xref linkend="nat-tftp" /> et <xref + linkend="nat-adv-tftp" /> pour les détails).</para> + </listitem> + + <listitem> + <para><computeroutput>--nattftpfile<1-N> + <fichierdémarrage></computeroutput> : Cette option + définit le fichier de démarrage TFT (merci de voir <xref linkend="nat-adv-tftp" /> + pour des détails).</para> + </listitem> + + <listitem> + <para><computeroutput>--nattftpserver<1-N> + <serveurtftp></computeroutput> : Cette option définit + l'adresse du serveur TFTP sur lequel démarrer (voir <xref + linkend="nat-adv-tftp" /> pour les détails).</para> + </listitem> + + <listitem> + <para><computeroutput>--natdnspassdomain<1-N> + on|off</computeroutput> : Cette option spécifie si le serveur + DHCP passe le nom de domaine pour la résolution du nom du réseau.</para> + </listitem> + + <listitem> + <para><computeroutput>--natdnsproxy<1-N> + on|off</computeroutput> : Cette option fait que le proxy du + moteur NAT envoie toutes les requêtes DNS de l'invité au serveur DNS + de l'hôte (merci de voir <xref linkend="nat-adv-dns" /> pour des + détails).</para> + </listitem> + + <listitem> + <para><computeroutput>--natdnshostresolver<1-N> + on|off</computeroutput> : Cette option fait que le + moteur NAT utilise le mécanismes de résolveur de l'hôte pour gérer les + requêtes DNS (merci de voir <xref linkend="nat-adv-dns" /> pour les détails).</para> + </listitem> + + <listitem> + <para><computeroutput>--natsettings<1-N> + [<mtu>],[<socksnd>],[<sockrcv>],[<tcpsnd>], + [<tcprcv>]</computeroutput> : Cette option contrôle + plusieurs paramètres NAT (merci de voir <xref linkend="nat-adv-settings" /> + pour les détails).</para> + </listitem> + + <listitem> + <para><computeroutput>--nataliasmode<1-N> + default|[log],[proxyonly],[sameports]</computeroutput> : Cette + option définit le comportement du cœur du moteur NAT : + log - active la journalisation, proxyonly - switch les modes d'alias + pour rendre NAT transparent, sameports renforce le moteur NAT pour + envoyer des paquets via le même port qu'ils arrivent, default - + désactive tous les modes mentionnés ci-dessus. (merci de voir <xref + linkend="nat-adv-alias" /> pour des détails).</para> + </listitem> + </itemizedlist></para> + </sect3> + </sect2> + + <sect2 id="vboxmanage-modifyvm-other"> + <title>Paramètres divers</title> + + <para>Les autres paramètres matériels suivants (tels que ceux du port série, + du son, du presse-papiers, du glisser/déplacer, de l'écran et de l'USB) + sont disponibles avec + <computeroutput>VBoxManage modifyvm</computeroutput> :<itemizedlist> + <listitem> + <para><computeroutput>--uart<1-N> off|<I/O base> + <IRQ></computeroutput> : Avec cette option, vous pouvez + configurer les ports série virtuels de la VM (voir <xref + linkend="serialports" /> pour une introduction.</para> + </listitem> + + <listitem> + <para><computeroutput>--uartmode<1-N> + <arg></computeroutput> : Ce paramètre contrôle la façon + dont VirtualBox se connecte à un port série virtuel donné (on la + configurait jadis avec l'option + <computeroutput>--uartX</computeroutput>, voir ci-dessus) sur l'hôte + sur lequel fonctionne la machine virtuelle. Comme décrit en détail + au <xref linkend="serialports" />, pour chaque port, vous pouvez + spécifier <computeroutput><arg></computeroutput> comme une des + options suivantes :<itemizedlist> + <listitem> + <para><computeroutput>disconnected</computeroutput> : Même + si le port série apparaît dans l'invité, il ne sert à rien -- + comme un vrai port COM sans câble.</para> + </listitem> + + <listitem> + <para><computeroutput>server + <pipename></computeroutput> : Sur un hôte Windows, + ceci dit à VirtualBox de créer un tuyau nommé sur l'hôte, + appelé <computeroutput><pipename></computeroutput> et de + connecter le port série virtuel dessus. Remarquez que Windows + exige que le nom d'un tuyau nommé commence par + <computeroutput>\\.\pipe\</computeroutput>.</para> + + <para>Sur un hôte Linux, plutôt qu'un tuyau nommé, une + socket de domaine local est utilisée.</para> + </listitem> + + <listitem> + <para><computeroutput>client + <pipename></computeroutput> : Ceci agit comme + <computeroutput>server ...</computeroutput>, sauf que le tuyau + (ou la socket de domaine local) n'est pas créée par VirtualBox, + mais est supposée déjà exister.</para> + </listitem> + + <listitem> + <para><computeroutput><devicename></computeroutput> : + Si, au lieu de celui ci-dessus, le nom du périphérique du port + série matériel de l'hôte est spécifié, le port série virtuel est + connecté à ce port matériel. Sur un hôte Windows, le nom du + périphérique sera un port COM tel que + <computeroutput>COM1</computeroutput> ; sur un hôte Linux, + le nom du périphérique ressemblera à + <computeroutput>/dev/ttyS0</computeroutput>. Cela vous permet + de "brancher" un vrai port série à une machine virtuelle.</para> + </listitem> + </itemizedlist></para> + </listitem> + + <listitem> + <para><computeroutput>--audio none|null|oss</computeroutput> : + Avec cette option, vous pouvez définir si la VM supporte le son.</para> + </listitem> + + <listitem> + <para><computeroutput>--clipboard + disabled|hosttoguest|guesttohost|bidirectional</computeroutput> : + Avec ce paramètre, vous pouvez sélectionner si le presse-papier du + système d'exploitation invité ou de l'hôte doit être partagé avec + l'hôte ou l'invité et comment ; voir + <xref linkend="generalsettings" />. Cela exige que les suppléments + invité soient installés dans la machine virtuelle.</para> + </listitem> + + <listitem> + <para><computeroutput>--draganddrop + disabled|hosttoguest|guesttohost|bidirectional</computeroutput> : + Avec ce paramètre, vous pouvez sélectionner le mode actuel de + glisser/déplacer à utiliser entre l'hôte et la machine virtuelle ; + voir <xref linkend="guestadd-dnd" />. Cela exige que les suppléments + invité soient installés dans la machine virtuelle.</para> + </listitem> + <listitem> + <para><computeroutput>--monitorcount + <nombre></computeroutput> : Cela active le support multi-moniteurs ; + voir <xref linkend="settings-display" />.</para> + </listitem> + + <listitem> + <para><computeroutput>--usb on|off</computeroutput> : Cette + option active ou désactive le contrôleur virtuel USB de la VM ; voir + <xref linkend="settings-usb" /> pour les détails.</para> + </listitem> + + <listitem> + <para><computeroutput>--usbehci on|off</computeroutput> : Cette + option active ou désactive le contrôleur USB 2.0 virtuel de la VM ; + voir <xref linkend="settings-usb" /> pour des détails.</para> + </listitem> + </itemizedlist></para> + </sect2> + + <sect2 id="vboxmanage-modifyvm-vrde"> + <title>Paramètres de la machine distante</title> + + <para>Les paramètres suivants concernant le comportement de la machine + distante sont disponibles avec <computeroutput>VBoxManage + modifyvm</computeroutput> :<itemizedlist> + <listitem> + <para><computeroutput>--vrde on|off</computeroutput> : Avec + l'interface graphique de VirtualBox, ceci active ou désactive le serveur + VirtualBox remote desktop extension (VRDE). Remarquez que si vous + utilisez <computeroutput>VBoxHeadless</computeroutput> (voir + <xref linkend="vboxheadless" />), VRDE est activé par défaut.</para> + </listitem> + + <listitem> + <para><computeroutput>--vrdeport + default|<ports></computeroutput> : Un port ou une plage + de ports que le serveur VRDE peut sonder ; "default" ou "0" + signifient le port 3389, le port RDP standard. Vous pouvez spécifier + une liste de ports ou de plages de ports séparée par des virgules. + Utilisez un tiret entre deux numéros de ports pour spécifier une plage. + Le serveur VRDE sondera <emphasis role="bold">un</emphasis> des + ports disponibles dans la liste spécifiée. Une seule machine peut utiliser + un port donné en même temps. Par exemple, l'option <computeroutput> --vrdeport + 5000,5010-5012</computeroutput> dira au serveur de sonder un des ports + suivants : 5000, 5010, 5011 ou 5012.</para> + </listitem> + + <listitem> + <para><computeroutput>--vrdeaddress <adresse IP + ></computeroutput> : L'adresse IP de l'interface réseau de + l'hôte que sondera le serveur VRDE. Si vous la spécifiez, le serveur + n'acceptra les connexions que sur l'interface de l'hôte spécifiée.</para> + <para>On peut utiliser ce paramètre pour indiquer si le serveur + VRDP devrait accepter des connexions IPv4, IPv6 ou les deux : + <itemizedlist> + <listitem> + <para>IPv4 seulement : <computeroutput>--vrdeaddress "0.0.0.0" + </computeroutput></para> + </listitem> + <listitem> + <para>IPv6 seulement : <computeroutput>--vrdeaddress "::" + </computeroutput></para> + </listitem> + <listitem> + <para>IPv6 et IPv4 (par défaut) : <computeroutput>--vrdeaddress "" + </computeroutput></para> + </listitem> + </itemizedlist></para> + </listitem> + + <listitem> + <para><computeroutput>--vrdeauthtype + null|external|guest</computeroutput> : Cela vous permet de choisir + s'il faut une autorisation et sous quelle forme ; voir <xref + linkend="vbox-auth" /> pour des détails.</para> + </listitem> + + <listitem> + <para><computeroutput>--vrdemulticon on|off</computeroutput> : Ceci + active la multiconnexions au même serveur VRDE si le serveur supporte + cette fonction ; voir <xref lang="" + linkend="vrde-multiconnection" />.</para> + </listitem> + + <listitem> + <para><computeroutput>--vrdereusecon on|off</computeroutput> : Ceci + spécifie le comportement du serveur VRDE quand plusieurs connexions + sont désactivées. Quand on active cette option, le serveur autorisera + un nouveau client à se connecter et il fermera la connexion existante. + Quand cette option est désactivée (c'est le réglage par défaut), une + nouvelle connexion ne sera pas acceptée si un client est déjà connecté + au serveur.</para> + </listitem> + + <listitem> + <para><computeroutput>--vrdevideochannel on|off</computeroutput> : + Ceci active la redirection graphique, si elle est supportée par le + serveur VRDE ; voir <xref lang="" linkend="vrde-videochannel" />.</para> + </listitem> + + <listitem> + <para><computeroutput>--vrdevideochannelquality + <pourcent></computeroutput> : Définit la qualité de l'image + dans la redirection graphique ; voir <xref lang="" + linkend="vrde-videochannel" />.</para> + </listitem> + </itemizedlist></para> + </sect2> + + <sect2 id="vboxmanage-modifyvm-teleport"> + <title>Paramètres de téléportation</title> + + <para>Avec les commandes suivantes pour <computeroutput>VBoxManage + modifyvm</computeroutput>, vous pouvez configurer une machine pour qu'elle + soit une cible de téléportation. Voir <xref linkend="teleporting" /> pour + une introduction détaillée.<itemizedlist> + <listitem> + <para><computeroutput>--teleporter on|off</computeroutput> : Avec + ce paramètre, vous activez ou désactivez l'attente par une machine + d'une requête de téléportation venant du réseau lorsqu'elle est + démarrée. Si elle est activée, quand on démarre la machine, cela ne + démarre pas la machine virtuelle comme cela est normalement le cas, + mais cela attend qu'une requête de téléportation arrive à l'adresse + listée avec les deux options suivantes.</para> + </listitem> + + <listitem> + <para><computeroutput>--teleporterport + <port></computeroutput>, <computeroutput>--teleporteraddress + <adresse></computeroutput> : il faut les utiliser avec + --teleporter et elle dit à une machine virtuelle le port et l'adresse + sur lesquelles elle doit écouter les demandes de téléportation d'une + autre machine virtuelle. <computeroutput><port></computeroutput> + peut être n'importe quel numéro de port TCP/IP libre (comme 6000) ; + <computeroutput><adresse></computeroutput> peut être n'importe + quelle adresse IP ou nom d'hôte et il spécifie une socket TCP/IP + à sonder. Par défaut, c'est "0.0.0.0", ce qui signifie toutes les + adresses.</para> + </listitem> + + <listitem> + <para><computeroutput>--teleporterpassword + <mot_de_passe></computeroutput> : si vous donnez cet + argument facultatif, la requête de téléportation ne réussira que si + la machine source spécifie le même mot de passe que celui donné avec + cette commande.</para> + </listitem> + + <listitem> + <para><computeroutput>--teleporterfichier_mot_de_passe + <mot_de_passe></computeroutput> : si vous donnez cet + argument facultatif, la requête de téléportation ne réussira que si + la machine source spécifie le même mot de passe que celui spécifié + dans le fichier donné avec cette commande. Utilisez + <computeroutput>stdin</computeroutput> pour lire le mot de passe à + partir de l'entrée standard.</para> + </listitem> + + <listitem> + <para><computeroutput>--cpuid <leaf> <eax> <ebx> + <ecx> <edx></computeroutput> : Les utilisateurs + avancés peuvent utiliser cette commande avant une opération de + téléportation pour restreindre les possibilités du processeur virtuel + présenté par VirtualBox au système d'exploitation invité. Il faut + l'exécuter à la fois sur la machine source et cible + impliquées dans la téléportation et cela modifiera ce que l'invité + verra quand il exécutera l'instruction machine + <computeroutput>CPUID</computeroutput>. Cela peut aider des applications + présupposant à tord la présence de + certaines capacités du processeur. La signification des paramètres + dépend du matériel ; merci de vous reporter aux manuels des + processeurs AMD ou Intel.</para> + </listitem> + </itemizedlist></para> + </sect2> + </sect1> + + <sect1 id="vboxmanage-clonevm"> + <title>VBoxManage clonevm</title> + + <para>Cette commande crée une copie complète ou liée d'une + machine virtuelle existante.</para> + + <para>La sous-commande <computeroutput>clonevm</computeroutput> prend + au moins en argument le nom de la machine virtuelle à cloner. Vous pouvez + utiliser les paramètres supplémentaires suivants pour configurer davantage + la procédure de clonage de la VM :</para> + + <itemizedlist> + <listitem> + <para><computeroutput>--snapshot <uuid>|<nom></computeroutput> : + Sélectionne un instantané spécifique auquel se rapporte le processus + de clonage. Par défaut, c'est à l'état courant qu'il se réfère.</para> + </listitem> + <listitem> + <para><computeroutput>--mode machine|machineandchildren|all</computeroutput> : + Sélectionne le mode de clonage. Si + <computeroutput>machine</computeroutput> est sélectionnée (comme par + défaut), l'état actuel de la VM sans instantané est cloné. En mode + <computeroutput>machineandchildren</computeroutput>, l'instantané + fourni par <computeroutput>--snapshot</computeroutput> et tous les + instantanés fils sont clonés. Si vous + sélectionnez le mode <computeroutput>all</computeroutput>, tous les + instantanés de l'état actuel seront clonés. + </para> + </listitem> + <listitem> + <para><computeroutput>--options link|keepallmacs|keepnatmacs|keepdisknames</computeroutput> : + Permet de peaufiner encore davantage l'opération de clonage. + La première dit de créer un clone lié, ce qui n'est possible que pour + le clonage d'une machine à partir d'un instantané. Les deux options + suivantes permettent de définir la façon dont les adresses MAC de chaque + carte réseau virtuel seront gérées. Elles peuvent être soit réinitialisées + (comme par défaut), soit inchangées + (<computeroutput>keepallmacs</computeroutput>), soit inchangées + quand le type de réseau est NAT + (<computeroutput>keepnatmacs</computeroutput>). Si vous ajoutez + <computeroutput>keepdisknames</computeroutput>, toutes les nouvelles + images de disque dur s'appellent comme celles d'origine, sinon elles + sont renommées.</para> + </listitem> + <listitem> + <para><computeroutput>--name <name></computeroutput> : + Sélectionne un nouveau nom pour la nouvelle machine virtuelle. Par défaut, + il s'agit de "Nom d'origine Clone".</para> + </listitem> + <listitem> + <para><computeroutput>--basefolder <basefolder></computeroutput> : + Sélectionne le dossier où devrait être sauvegardée la configuration.</para> + </listitem> + <listitem> + <para><computeroutput>--uuid <uuid></computeroutput> : + Sélectionne l'UUID de la nouvelle VM. Cette id doit être unique dans + l'instance de VirtualBox où ce clone doit être enregistré. Par défaut, + un nouvel UUID est créé.</para> + </listitem> + <listitem> + <para><computeroutput>--register</computeroutput> : + Enregistre automatiquement le nouveau clone dans l'installation de + VirtualBox. Si vous voulez enregistrer la nouvelle VM plus tard à la + main, voir <xref linkend="vboxmanage-registervm" /> pour les + instructions pour faire cela.</para> + </listitem> + </itemizedlist> + </sect1> + + <sect1 id="vboxmanage-import"> + <title>VBoxManage import</title> + + <para>Cette commande importe un applicatif virtuel au format OVF en copiant + les images de disque virtuelles et en créant les machines virtuelles dans + VirtualBox. Voir + <xref linkend="ovf" /> pour une présentation des applicatifs.</para> + + <para>La commande <computeroutput>import</computeroutput> prend comme + argument au moins le chemin d'un fichier OVF en entrée et elle attend que les + images de disque, s'il en faut, soient dans le même répertoire que le fichier + OVF. Beaucoup d'autres options en ligne de commande sont supportées pour + contrôler en détails ce qui est importé et pour modifier les paramètres + d'importation, mais les détails dépendent du contenu du fichier OVF.</para> + + <para>Il est donc recommandé de lancer d'abord la sous-commande import avec + l'option <computeroutput>--dry-run</computeroutput> ou + <computeroutput>-n</computeroutput>. Cela affichera alors à l'écran le contenu + d'un applicatif et la façon de l'importer dans VirtualBox, ainsi que + les options facultatives en ligne de commandes pour influencer le comportement + de l'importation.</para> + + <para>Par exemple, voilà l'écran qui s'afficherait pour un applicatif modèle + contenant un invité Windows XP :<screen>VBoxManage import WindowsXp.ovf --dry-run +Interpreting WindowsXp.ovf... +OK. +Virtual system 0: + 0: Suggested OS type: "WindowsXP" + (change with "--vsys 0 --ostype <type>"; use "list ostypes" to list all) + 1: Suggested VM name "Windows XP Professional_1" + (change with "--vsys 0 --nomvm <name>") + 3: Number of CPUs: 1 + (change with "--vsys 0 --cpus <n>") + 4: Guest memory: 956 MB (change with "--vsys 0 --memory <MB>") + 5: Sound card (appliance expects "ensoniq1371", can change on import) + (disable with "--vsys 0 --unit 5 --ignore") + 6: USB controller + (disable with "--vsys 0 --unit 6 --ignore") + 7: Network adapter: orig bridged, config 2, extra type=bridged + 8: Floppy + (disable with "--vsys 0 --unit 8 --ignore") + 9: SCSI controller, type BusLogic + (change with "--vsys 0 --unit 9 --scsitype {BusLogic|LsiLogic}"; + disable with "--vsys 0 --unit 9 --ignore") +10: IDE controller, type PIIX4 + (disable with "--vsys 0 --unit 10 --ignore") +11: Hard disk image: source image=WindowsXp.vmdk, + target path=/home/user/disks/WindowsXp.vmdk, controller=9;channel=0 + (change controller with "--vsys 0 --unit 11 --controller <id>"; + disable with "--vsys 0 --unit 11 --ignore")</screen></para> + + <para>Comme vous pouvez le voir, les éléments de configuration individuelle + sont numérotés et en fonction de leur type de support, les options en ligne + de commande. La sous-commande import peut être redirigée pour ignorer + de nombreux éléments tels que ceux avec des options + <computeroutput>--vsys X --unit Y --ignore</computeroutput>, où + X est le numéro du système virtuel (zéro sauf s'il y a plusieurs + descriptions de système virtuel dans l'applicatif) et Y le numéro de l'élément, + tel qu'affiché à l'écran.</para> + + <para>Dans l'exemple ci-dessus, Item #1 spécifie le nom de la + machine cible dans VirtualBox. Items #9 et #10 spécifient respectivement les + contrôleurs de disque. Item #11 décrit une image de disque dur ; dans ce + cas, l'option supplémentaire <computeroutput>--controller</computeroutput> + indique l'élément auquel devrait être connectée l'image de disque, avec le + fichier OVF d'origine par défaut.</para> + + <para>Vous pouvez associer plusieurs éléments pour un même système virtuel + derrière une même option <computeroutput>--vsys</computeroutput>. Par exemple, + pour importer une machine comme décrit dans l'OVF mais sans la carte son + ni le contrôleur USB, mais avec l'image de disque connectée au contrôleur IDE + au lieu du contrôleur SCSI, utilisez ceci :<screen>VBoxManage import WindowsXp.ovf + --vsys 0 --unit 5 --ignore --unit 6 --ignore --unit 11 --controller 10</screen></para> + </sect1> + + <sect1 id="vboxmanage-export"> + <title>VBoxManage export</title> + + <para>Cette commande exporte une ou plusieurs machines virtuelles à partir + de VirtualBox vers un applicatif virtuel au format OVF, ce qui inclut la + copie de leurs images de disque virtuel en VMDK compressé. Voir <xref linkend="ovf" /> + pour une présentation des applicatifs.</para> + + <para>La commande <computeroutput>export</computeroutput> est simple à + utiliser : affichez la machine (ou les machines) que vous voulez + exporter dans un même fichier OVF et spécifiez le fichier OVF cible après + l'option facultative <computeroutput>--output</computeroutput> ou + <computeroutput>-o</computeroutput>. Remarquez que le répertoire du fichier + cible OVF recevra également les images de disques exportés au format VNDK + compressé (quel que soit le format d'origine) et vous devriez leur laisser + assez d'espace disque.</para> + + <para>Derrière une simple exportation d'une machine virtuelle donnée, vous + pouvez ajouter diverses informations produit dans le fichier applicatif. + Utilisez <computeroutput>--product</computeroutput>, + <computeroutput>--producturl</computeroutput>, + <computeroutput>--vendor</computeroutput>, + <computeroutput>--vendorurl</computeroutput> et + <computeroutput>--version</computeroutput> pokr spécifier les + informations supplémentaires. Pour des raisons légales, vous pouvez ajouter + un texte de licence ou le contenu d'un fichier de licence en utilisant + respectivement les options <computeroutput>--eula</computeroutput> et + <computeroutput>--eulafile</computeroutput>. Comme avec l'importation + OVF, vous devez utiliser l'option <computeroutput>--vsys X</computeroutput> + pour adresser les options précitées à la bonne + machine virtuelle.</para> + + <para>Pour les produits de virtualisation non pleinement compatibles avec + le standard OVF 1.0, vous pouvez activer un mode OVF 0.9 basique avec + l'option <computeroutput>--legacy09</computeroutput>.</para> + + <para>Pour spécifier des options contrôlant le contenu exact du fichier + d'applicatif, vous pouvez utiliser <computeroutput>--option</computeroutput> + pour demander la création d'un fichier manifeste (on vous y encourage, cela + permet la détection d'applicatifs corrompus lors de l'importation), l'export + d'images de DVD supplémentaires, et l'inclusion des adresses MAC. Vous pouvez + spécifier une liste d'options comme <computeroutput>--option manifest,nomacs</computeroutput>. Pour des détails, + consultez la sortie de l'aide de + <computeroutput>--option manifest,nomacs</computeroutput>. For details, + check the help output of <computeroutput>VBoxManage export</computeroutput>.</para> + </sect1> + + <sect1 id="vboxmanage-startvm"> + <title>VBoxManage startvm</title> + + <para>Cette commande démarre une machine virtuelle qui est en état "Éteinte" + ou "Sauvegardée".</para> + + <para>Le paramètre facultatif <computeroutput>--type</computeroutput> + détermine si la machine sera démarrée dans une fenêtre ou si la sortie devrait passer par + <computeroutput>VBoxHeadless</computeroutput>, en activant ou pas VRDE ; + voir <xref linkend="vboxheadless" /> pour plus d'informations. La liste + des types peut changer et il n'est pas garanti que tous les types soient + acceptés par la variante d'un produit.</para> + + <para>La valeur par défaut, globale ou individuelle à une VM, du type + d'interface d'une VM sera utilisée si vous ne spécifiez pas explicitement + le type. Si aucune n'est définie, c'est la variante GUI qui sera démarrée.</para> + <para>Les valeurs suivantes sont autorisées :</para> + + <glosslist> + <glossentry> + <glossterm><computeroutput>gui</computeroutput></glossterm> + + <glossdef> + <para>Démarre une VM en affichant une fenêtre graphique. C'est le cas + par défaut.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>headless</computeroutput></glossterm> + + <glossdef> + <para>Démarre une VM sans fenêtre pour un affichage distant.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>sdl</computeroutput></glossterm> + + <glossdef> + <para>Démarre une VM avec une GUI minimale et limitée dans ses + fonctionnalités.</para> + </glossdef> + </glossentry> + </glosslist> + + <note> + <para>Si vous rencontrez des problèmes en démarrant des machines virtuelles + avec certaines interfaces et s'il n'y a pas d'informations d'erreur + convaincantes, essayez de démarrer les machines virtuelles en lançant + directement leur interface respective, car cela peut donner des informations + supplémentaires sur l'erreur.</para> + </note> + </sect1> + + <sect1 id="vboxmanage-controlvm"> + <title>VBoxManage controlvm</title> + + <para>La sous-commande <computeroutput>controlvm</computeroutput> vous permet + de modifier l'état d'une machine virtuelle en fonction. Vous pouvez spécifier + ce qui suit :</para> + + <para><itemizedlist> + <listitem> + <para><computeroutput>VBoxManage controlvm <vm> + pause</computeroutput> met temporairement une machine virtuelle en + attente, sans vraiment changer son état. La fenêtre de la VM sera grisée + pour indiquer que la VM est actuellement en pause. (Cela revient à + sélectionner l'élément "Pause" dans le menu "Machine" de l'interface + graphique.)</para> + </listitem> + + <listitem> + <para>Utilisez <computeroutput>VBoxManage controlvm <vm> + resume</computeroutput> pour inverser une commande + <computeroutput>pause</computeroutput> précédente. (Cela revient à + sélectionner l'élément "Reprendre" du menu "Machine" de l'interface + graphique.)</para> + </listitem> + + <listitem> + <para><computeroutput>VBoxManage controlvm <vm> + reset</computeroutput> a le même effet sur une machine virtuelle que + l'appui sur le bouton "Reset" d'un vrai ordinateur : un redémarrage + à froid de la machine virtuelle, ce qui redémarrera le système d'exploitation + invité immédiatement. L'état de la VM n'est pas sauvegardé et des + données peuvent être perdues. (Cela revient à sélectionner l'élément + "Réinitialiser" du menu "Machine" de l'interface graphique.)</para> + </listitem> + + <listitem> + <para><computeroutput>VBoxManage controlvm <vm> + poweroff</computeroutput> a le même effet sur une machine virtuelle que + de débrancher le câble d'alimentation d'un vrai ordinateur. Là encore, + l'état de la VM n'est pas sauvegardé et il se peut que des données soient + perdues. (Cela revient à sélectionner l'élément "Couper" de l'interface + graphique ou à appuyer sur le bouton Fermer de la fenêtre puis + sélectionner "Couper la machine" dans la boîte de dialogue.)</para> + + <para>Après cela, l'état de la VM sera "éteint". À partir de là, vous + pouvez la relancer ; voir <xref + linkend="vboxmanage-startvm" />.</para> + </listitem> + + <listitem> + <para><computeroutput>VBoxManage controlvm <vm> + savestate</computeroutput> sauvegardera l'état actuel de la VM sur le + disque et arrêtera la VM. (Cela revient à sélectionner l'élément + "Fermer" du menu "Machine" de l'interface graphique ou à appuyer sur + le bouton fermer de la fenêtre et sélectionner "Sauvegarder l'état de + la machine" dans la boîte de dialogue.)</para> + + <para>Après cela, l'état de la machine sera "Sauvegardé". À partir de + là, vous pouvez la relancer ; voir +<xref linkend="vboxmanage-startvm" />.</para> + </listitem> + + <listitem> + <para><computeroutput>VBoxManage controlvm <vm> teleport + --hostname <nom> --port <port> [--passwordfile + <fichier> | --password <mot_de_passe>]</computeroutput> + passe la machine en source de téléportation et engage une téléportation + sur la cible donnée. Voir <xref linkend="teleporting" /> pour une + présentation. Si vous spécifiez le mot de passe facultatif, il doit + correspondre à celui donné avec la commande + <computeroutput>modifyvm</computeroutput> pour la + machine cible ; voir <xref linkend="vboxmanage-modifyvm-teleport" /> + pour des détails.</para> + </listitem> + </itemizedlist></para> + + <para>Quelques options supplémentaires sont disponibles avec + <computeroutput>controlvm</computeroutput>, ne modifiant pas directement + l'état de la VM en fonction :</para> + + <itemizedlist> + <listitem> + <para>L'opération <computeroutput>setlinkstate<1-N></computeroutput> + connecte ou déconnecte les câbles réseaux virtuels à leurs interfaces + réseaux.</para> + </listitem> + + <listitem> + <para><computeroutput>nic<1-N> + null|nat|bridged|intnet|hostonly|generic</computeroutput> : Avec + ceci, vous pouvez définir, pour chaque carte réseau virtuelle de la VM, + le type de réseau qui devrait être disponible. Elles peuvent ne pas être + connectées à l'hôte + (<computeroutput>null</computeroutput>), utiliser network address + translation (<computeroutput>nat</computeroutput>), le résaeau bridgé + (<computeroutput>bridged</computeroutput>) ou communiquer avec d'autres + machines virtuelles en utilisant le réseau interne + (<computeroutput>intnet</computeroutput>) ou host-only + (<computeroutput>hostonly</computeroutput>) ou accéder à des sous-modes + rarement utilisés + (<computeroutput>generic</computeroutput>). Ces options correspondent + aux modes décrits en détails au <xref + linkend="networkingmodes" />.</para> + </listitem> + + <listitem> + <para>L'opération <computeroutput>guestmemoryballoon</computeroutput> + change la taille du ballon mémoire de l'invité, c'est-à-dire la mémoire + du système d'exploitation invité affectée par les suppléments invité de VirtualBox + et rendue à l'hyperviseur pour être réutilisée par d'autres + machines virtuelles. Elle se spécifie en mégaoctets. Pour des détails, + voir <xref linkend="guestadd-balloon" />.</para> + </listitem> + + <listitem> + <para><computeroutput>usbattach</computeroutput> et + <computeroutput>usbdettach</computeroutput> rendent les pçriphériques + USB de l'hôte, à la volée, visibles pour la machine virtuelle sans besoin de + créer des filtres préalablement. Les périphériques USB peuvent être désignés + par leur UUID (identifiant unique) ou leur adresse sur le système hôte.</para> + + <para>Vous pouvez utiliser <computeroutput>VBoxManage list + usbhost</computeroutput> pour trouver ces informations.</para> + </listitem> + + <listitem> + <para><computeroutput>clipboard + disabled|hosttoguest|guesttohost|bidirectional</computeroutput> : + Avec ce paramètre, vous pouvez sélectionner si le presse-papiers du + système d'exploitation de l'hôte ou de l'invité doit être partagé avec + l'hôte et l'invfté et comment ; voir <xref linkend="generalsettings" />. Ceci + exige que les suppléments invité soient installés dans la machine + virtuelle.</para> + </listitem> + + <listitem> + <para><computeroutput>draganddrop + disabled|hosttoguest|guesttohost|bidirectional</computeroutput> : + Avec ce paramètre, vous pouvez sélectionner le mode glisser/déplacer + actuel qui sera utilisé entre l'hôte et la machine virtuelle ; + voir <xref linkend="guestadd-dnd" />. Cela exige que les suppléments + invité soient installés dans la machine + virtuelle.</para> + </listitem> + + <listitem> + <para><computeroutput>vrde on|off</computeroutput> vous permet d'activer + ou de désactiver le serveur VRDP s'il est installé.</para> + </listitem> + + <listitem> + <para><computeroutput>vrdeport default|<ports></computeroutput> + modifie le port ou la plage de ports que peut sonder le serveur + VRDP ; "default" ou "0" signifient le port 3389, celui standard + pour RDP. Pour des détails, voir la description de l'option + <computeroutput>--vrdeport</computeroutput> au <xref + linkend="vboxmanage-modifyvm-other" />.</para> + </listitem> + + <listitem> + <para><computeroutput>setvideomodehint</computeroutput> demande + que le système invité passe dans un mode graphique particulier. Cela exige + l'installation des suppléments invité et ne fonctionnera pas pour tous + les systèmes invités.</para> + </listitem> + + <listitem> + <para><computeroutput>screenshotpng</computeroutput> prend une impression + écran de l'affichage invité et la sauvegarde au format PNG.</para> + </listitem> + + <listitem> + <para>L'opération <computeroutput>setcredentials</computeroutput> est + utilisé pour les identifications distantes dans les invités Windows. + Pour des détails, merci de vous reporter au + <xref linkend="autologon" />.</para> + </listitem> + + <listitem> + <para><computeroutput>--plugcpu|unplugcpu + <id></computeroutput> : Si vous avez activé le montage à chaud de + processeurs, ceci ajoutera un processeur virtuel aux machines virtuelles + (ou en supprimera un). + <computeroutput><id></computeroutput> spécifie l'index du processeur + virtuel à ajouter ou à supprimer et il doit être un numéro de 0 + au numéro maximum du nombre de processeurs configuré.</para> + </listitem> + + <listitem> + <para><computeroutput>cpuexecutioncap + <1-100></computeroutput> : Cette opération contrôle la + quantité de temps processeur que peut utiliser un processeur virtuel. + Une valeur de 50 implique qu'un seul processeur virtuel peut utiliser + jusqu'à 50% d'un seul processeur de l'hôte.</para> + </listitem> + </itemizedlist> + </sect1> + + <sect1> + <title>VBoxManage discardstate</title> + + <para>Cette commande désactive l'état sauvegardé d'une machine virtuelle + qui n'est pas en fonction, ce qui fera redémarrer son système d'exploitation + la prochaine fois que vous démarrerez. Cela revient à débrancher le câble + d'alimentation d'une machine physique et vous devriez l'éviter si possible.</para> + </sect1> + + <sect1> + <title>VBoxManage adoptstate</title> + + <para>Si vous avez un fichier d'état sauvegardé + (<computeroutput>.sav</computeroutput>), c'est-à-dire séparé de la configuration + de la VM, vous pouvez "adopter" le fichier. Cela passera la VM en état + sauvegardé et quand vous la démarrerez, VirtualBox essaiera de la restaurer + à partir du fichier d'état sauvegardé que vous avez indiqué. Cette commande + ne devrait être utilisée que dans des configurations spéciales.</para> + </sect1> + + <sect1> + <title>VBoxManage snapshot</title> + + <para>Cette commande est utilisée pour contrôler les instantanés en ligne de + commande. Un instantané consiste en une copie complète des paramètres de la + machine virtuelle, copiés à un moment où l'instantané a été pris, et éventuellement + un fichier d'état sauvegardé de la machine virtuelle si l'instantané a été + pris alors que la machine était en fonction. Après qu'un instantané ait été pris, + VirtualBox crée un disque dur de différenciation pour chaque disque dur normal + associé à la machine pour que, quand on restaure un instantané, les disques durs + virtuels de la machine virtuelle puissent être rapidement réinitialisés en + disqualifiant simplement les fichiers de différenciation.</para> + + <para>L'opération <computeroutput>take</computeroutput> prend un instantané de + l'état actuel de la machne viruelle. Vous devez fournir un nom pour l'instantané + et vous pouvez éventuellement entrer une description. Le nouvel instantané est + inséré à l'arborescence des instantanés comme un fichier de l'instantané + actuel et il devient le nouvel instantané actuel. Le paramètre + <computeroutput>--description</computeroutput> permet de décrire + l'instantané. Si vous spécifiez <computeroutput>--live</computeroutput>, + la VM ne s'arrêtera pas pendant la création de l'instantané.</para> + + <para>L'opération <computeroutput>delete</computeroutput> efface un + instantané (spécifié par son nom ou son UUID). Cela peut être long à se + terminer car les images de différenciation associées à l'instantané pourraient + devoir être synchronisées avec leurs images de différenciation filles.</para> + + <para>L'opération <computeroutput>restore</computeroutput> restaurera l'instantané + donné (spécifié par son nom ou son UUID) en réinitialisant les paramètres + de la machine virtuelle et l'état actuel à ceux de l'instantané. L'état + actuel précédent de la machine sera perdu. Après cela, l'instantané donné + devient le nouvel instantané "actuel" pour que les instantanés consécutifs + s'insèrent sous l'instantané à partir duquel on a restauré.</para> + + <para>L'opération <computeroutput>restorecurrent</computeroutput> est un + raccourci pour restaurer l'instantané actuel (donc l'instantané d'où provient + l'état actuel). Cette sous-commande revient à utiliser la sous-commande + "restore" avec le nom ou l'UUID de l'instantané actuel, sauf qu'elle évite + l'étape supplémentaire de déterminer ce nom ou cet UUID.</para> + + <para>Avec l'opération <computeroutput>edit</computeroutput>, vous pouvez + modifier le nom ou la description d'un instantané existant.</para> + + <para>Avec l'opération <computeroutput>showvminfo</computeroutput>, vous + pouvez voir les paramètres de la machine virtuelle stockées dans un instantané + existant.</para> + </sect1> + + <sect1 id="vboxmanage-closemedium"> + <title>VBoxManage closemedium</title> + + <para>Cette commande supprime un fichier image de disque dur, de DVD ou + disquette, d'un registre de médias VirtualBox.<footnote> + <para>Avant VirtualBox 4.0, il fallait appeler VBoxManage + openmedium avant de pouvoir attacher un média à une machine virtuelle ; + cet appel "enregistrait" le média avec le registre des médias global de + VirtualBox. Avec VirtualBox 4.0, ce n'est plus nécessaire ; les + médias sont ajoutés aux registres des médias automatiquement. L'appel + "closemedium" a cependant été conservé pour permettre de supprimer + explicitement un média du registre.</para> + </footnote></para> + + <para>Éventuellement, vous pouvez demander que l'image seit effacée. Vous aurez + les retours circonstanciés selon lesquels la suppression a échoué, mais l'image + ne sera pas enregistrée.</para> + </sect1> + + <sect1 id="vboxmanage-storageattach"> + <title>VBoxManage storageattach</title> + + <para>Cette commande attache/modifie/supprime un média de stockage connecté + à un contrôleur de stockage précédemment ajouté avec la commande + <computeroutput>storagectl</computeroutput> (voir la section précédente). + La syntaxe est ainsi :</para> + + <screen>VBoxManage storageattach <uuid|nomvm> + --storagectl <name> + [--port <number>] + [--device <number>] + [--type dvddrive|hdd|fdd] + [--medium none|emptydrive| + <uuid>|<filename>|host:<drive>|iscsi] + [--mtype normal|writethrough|immutable|shareable] + [--comment <text>] + [--setuuid <uuid>] + [--setparentuuid <uuid>] + [--passthrough on|off] + [--tempeject on|off] + [--nonrotational on|off] + [--discard on|off] + [--bandwidthgroup name|none] + [--forceunmount] + [--server <name>|<ip>] + [--target <target>] + [--tport <port>] + [--lun <lun>] + [--encodedlun <lun>] + [--username <username>] + [--password <password>] + [--initiator <initiator>] + [--intnet]</screen> + + <para>Un certain nombre de paramètres sont requis classiquement ; ceux + à la fin de la liste ne sont requis que pour les cibles iSCSI (voir ci-dessous).</para> + + <para>Les paramètres classiques sont :<glosslist> + <glossentry> + <glossterm><computeroutput>uuid|nomvm</computeroutput></glossterm> + + <glossdef> + <para>Le nom ou l'UUID de la VM. Obligatoire.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>storagectl</computeroutput></glossterm> + + <glossdef> + <para>Nom du contrôleur de stockage. Obligatoire. Vous pouvez obtenir + la liste des contrôleurs de stockage actuellement attachés à une VM + avec <computeroutput>VBoxManage showvminfo</computeroutput> ; voir + <xref linkend="vboxmanage-showvminfo" />.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>port</glossterm> + + <glossdef> + <para>Le numéro du port du contrôleur de stockage qui doit être + modifié. Obligatoire, sauf si le contrôleur de stockage n'a qu'un + seul port.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>device</glossterm> + + <glossdef> + <para>Le numéro du périphérique du port à modifier. Obligatoire, + sauf si le contrôleur de stockage n'a qu'un périphérique par port.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>type</glossterm> + + <glossdef> + <para>Définit le type de lecteur auquel doit être + attaché/détaché/modifié un média. On ne peut se passer de cet + argument que si le type de média peut être déterminé par le média + donné avec l'argument <computeroutput>--medium</computeroutput> argument ou + à partir de précédents rattachements de médias</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>medium</glossterm> + + <glossdef> + <para>Spécifie ce qu'il faut attacher. Les valeurs suivantes sont + supportées :<itemizedlist> + <listitem> + <para>"none" : Tout périphérique existant serait supprimé du + slot donné.</para> + </listitem> + + <listitem> + <para>"emptydrive" : Pour un lecteur amovible ou de DVD + virtuel, cela fait se comporter le périphérique comme un lecteur + amovible dans lequel on n'a inséré aucun média.</para> + </listitem> + + <listitem> + <para>"additions" : Seulement pour un lecteur DVD virtuel, + ceci connecte l'image des <emphasis>Suppléments invité de + VirtualBox</emphasis> au slot de périphérique donné.</para> + </listitem> + + <listitem> + <para>Si vous spécifiez un UUID, il doit s'agir de l'UUID d'un + média de stockage déjà connu de VirtualBox (par exemple parce qu'il + a été attaché à une autre machine virtuelle). Voir + <xref linkend="vboxmanage-list" /> pour la façon de lister + les médias connus. Ce média est alors attaché au slot du + périphérique donné.</para> + </listitem> + + <listitem> + <para>Si vous spécifiez un nom de fichier, il doit s'agir du + chemin complet vers une image de disque existante (ISO, RAW, VDI, VMDK + ou autre), qui est donc attaché au slot du périphérique donné.</para> + </listitem> + + <listitem> + <para>"host:<lecteur>": Pour un lecteur amovible ou de DVD + virtuel seulement, ceci connecte le slot du périphérique donné + au lecteur amovible ou de DVD spécifié sur l'ordinateur hôte.</para> + </listitem> + + <listitem> + <para>"iscsi" : Pour les disques durs virtuels seulement, + cela permet de spécifier une cible iSCSI. Dans ce cas, vous + devez donner davantage de paramètres ; voir ci-dessous.</para> + </listitem> + </itemizedlist></para> + + <para>Certaines modifications ci-dessus, en particulier concernant + les médias amovibles (disquettes ou CDs/DVDs), peuvent prendre effet + pendant que la VM est en fonction. Les autres (changement de périphérique + ou dans les slots des disques durs) exigent que la VM soit éteinte.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>mtype</glossterm> + + <glossdef> + <para>Définit la façon dont ce média se comporte vis-à-vis des + instantanés et des opérations d'écriture. Voir <xref linkend="hdimagewrites" /> + pour des détails.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>comment</glossterm> + + <glossdef> + <para>Une description que vous souhaitez stocker avec ce média (facultative ; + par exemple pour une cible iSCSI, "Gros serveur de stockage de l'étage + inférieur"). C'est purement descriptif et facultatif pour que le + média fonctionne correctement.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>setuuid, setparentuuid</glossterm> + + <glossdef> + <para>Modifie l'UUID ou l'UUID parent d'un média avant de l'attacher + à une VM. C'est une option pour experts. Une utilisation impropre + peut rendre le média inutilisable ou donner des configurations de VM + cassées si une autre VM se réfère déjà au même média. La variante + la plus fréquemment utilisée est <code>--setuuid ""</code>, qui + affecte un nouvel UUID (aléatoire) à une image. Cela sert à résoudre + des erreurs d'UUID dupliqués si on a dupliqué une image par les + outils de copie de fichiers.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>passthrough</glossterm> + + <glossdef> + <para>Seulement pour un lecteur DVD virtuel, vous pouvez activer + le support de gravure sur DVD (actuellement expérimental ; voir + <xref linkend="storage-cds" />).</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>tempeject</glossterm> + + <glossdef> + <para>Seulement pour un lecteur DVD virtuel, vous pouvez configurer + le comportement de l'éjection du média déclenchée par l'invité. + Si vous l'activez, l'éjection n'a qu'un effet temporaire. Si vous + éteignez puis redémarrez la VM, le média configuré au départ sera + toujours dans le lecteur.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>nonrotational</glossterm> + + <glossdef> + <para>Ce paramètre permet d'activer le drapeau non-rotational pour + les disques durs virtuels. Certains invités (comme Windows 7+) gèrent + de tels disques comme des SSDs et ne fragmentent pas de tels médias.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>bandwidthgroup</glossterm> + + <glossdef> + <para>Définit le groupe de bande passante à utiliser pour le + périphérique donné ; voir <xref linkend="storage-bandwidth-limit" />.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>forceunmount</glossterm> + + <glossdef> + <para>Seulement pour un lecteur DVD ou amovible virtuel, cela démonte + de force le DVD/CD/disquette ou monte un nouveau DVD/CD/disquette + même si celui précédent est verrouillé en lecture par l'invité. + De nouveau, voir <xref linkend="storage-cds" /> pour des détails.</para> + </glossdef> + </glossentry> + </glosslist></para> + + <para>Quand on utilise "iscsi" avec le paramètre + <computeroutput>--medium</computeroutput> pour le support iSCSI -- + voir <xref linkend="storage-iscsi" /> --, vous pouvez ou devez utiliser + des paramètres supplémentaires :<glosslist> + <glossentry> + <glossterm>server</glossterm> + + <glossdef> + <para>Le nom de l'hôte ou l'adresse IP de la cible iSCSI ; + requis.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>target</glossterm> + + <glossdef> + <para>La chaîne du nom de la cible. Il est déterminé par la cible iSCSI + et il est utilisé pour identifier la ressource de stockage ; + requis.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>tport</glossterm> + + <glossdef> + <para>Numéro de port TCP/IP du service iSCSI sur la cible (facultatif).</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>lun</glossterm> + + <glossdef> + <para>Numéro d'unité logique de la ressource cible (facultatif). + Souvent, cette valeur vaut zéro.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>username, password</glossterm> + + <glossdef> + <para>Nom d'utilisateur et mot de passe (initiator secret) pour + l'authentification sur la cible si nécessaire (facultatif).<note> + <para>Le nom d'utilisateur et le mot de passe sont stockés sans + chiffrement (donc en clair) dans le fichier XML de configuration + de la VM si vous ne fournissez aucun paramètre de mot de passe. + Quand vous spécifiez pour la première fois un paramètre de mot de passe, + le mot de passe est stocké et chiffré.</para> + </note></para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>intnet</glossterm> + + <glossdef> + <para>Si spécifié, connecte à la cible iSCSI via le réseau + interne. Cela nécessite une configuration supplémentaire décrite au + <xref linkend="iscsi-intnet" />.</para> + </glossdef> + </glossentry> + </glosslist></para> + </sect1> + + <sect1 id="vboxmanage-storagectl"> + <title>VBoxManage storagectl</title> + + <para>Cette commande attache/modifie/supprime un contrôleur de stockage. + Après elle, on peut attacher des médias virtuels au contrôleur avec la + commande <computeroutput>storageattach</computeroutput> (voir la prochaine + section).</para> + + <para>La syntaxe est comme suit :</para> + + <screen>VBoxManage storagectl <uuid|nomvm> + --name <nom> + [--add <ide/sata/scsi/floppy>] + [--controller <LsiLogic|LSILogicSAS|BusLogic| + IntelAhci|PIIX3|PIIX4|ICH6|I82078>] + [--sataportcount <1-30>] + [--hostiocache on|off] + [--bootable on|off] + [--remove]</screen> + + <para>où les paramètres signifient :<glosslist> + <glossentry> + <glossterm>uuid|nomvm</glossterm> + + <glossdef> + <para>Nom ou UUID de la VM. Obligatoire.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>nom</glossterm> + + <glossdef> + <para>Nom du contrôleur de stockage. Obligatoire.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>add</glossterm> + + <glossdef> + <para>Définit le type de bus système auquel doit être connecté le + contrôleur de stockage.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>controller</glossterm> + + <glossdef> + <para>Permet de choisir le type de chipset à émuler pour le + contrôleur de stockage donné.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>sataportcount</glossterm> + + <glossdef> + <para>Ceci détermine le nombre de ports que le contrôleur SATA + devrait supporter.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>hostiocache</glossterm> + + <glossdef> + <para>Configure l'utilisation du cache E/S de l'hôte pour toutes les + images de disque attachées à ce contrôleur de stockage. Pour des détails, + merci de voir <xref + linkend="iocaching" />.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>bootable</glossterm> + + <glossdef> + <para>Sélectionne si ce contrôleur est amorçable.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>remove</glossterm> + + <glossdef> + <para>Supprime le contrôleur de stockage de la config de la VM.</para> + </glossdef> + </glossentry> + </glosslist></para> + </sect1> + + <sect1> + <title>VBoxManage bandwidthctl</title> + + <para>Cette commande crée/efface/modifie/affiche les groupes de bande + passante de la machine virtuelle donnée :<screen>VBoxManage bandwidthctl <uuid|nomvm> + add <nom> --type disk|network --limit <megabytes per second>[k|m|g|K|M|G] | + set <nom> --limit <megabytes per second>[k|m|g|K|M|G] | + remove <nom> | + list [--machinereadable]</screen></para> + + <para>Les sous-commandes suivantes sont disponibles :<itemizedlist> + <listitem> + <para><computeroutput>add</computeroutput>, crée un nouveau groupe de + bande passante d'un type donné.</para> + </listitem> + <listitem> + <para><computeroutput>set</computeroutput>, modifie la limite d'un groupe + de bande passante existante.</para> + </listitem> + <listitem> + <para><computeroutput>remove</computeroutput>, détruit un groupe de + bande passante.</para> + </listitem> + <listitem> + <para><computeroutput>list</computeroutput>, affiche tous les groupes + de bande passante définis pour la VM donnée.</para> + </listitem> + </itemizedlist> + </para> + <para>Les paramètres signifient :<glosslist> + <glossentry> + <glossterm>uuid|nomvm</glossterm> + + <glossdef> + <para>Le nom ou l'UUID de la VM. Obligatoire.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>nom</glossterm> + + <glossdef> + <para>Nom du groupe de bande passante. Obligatoire.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>type</glossterm> + + <glossdef> + <para>Type de groupe de bande passante. Obligatoire. Deux types sont + supportés : <computeroutput>disk</computeroutput> et + <computeroutput>network</computeroutput>. Voir + <xref linkend="storage-bandwidth-limit" /> ou + <xref linkend="network_bandwidth_limit" /> pour une description d'un + type particulier.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>limit</glossterm> + + <glossdef> + <para>Spécifie la limite du groupe donné. On peut le modifier pendant + que la VM est en fonction. L'unité par défaut est en mégaoctet par + seconde. Vous pouvez modifier l'unité en spécifiant un des + suffixes suivants : <computeroutput>k</computeroutput> pour + kilobits/s, <computeroutput>m</computeroutput> pour mégabits/s, + <computeroutput>g</computeroutput> pour gigabits/s, + <computeroutput>K</computeroutput> pour kilo octets/s, + <computeroutput>M</computeroutput> pour méga octets/s, + <computeroutput>G</computeroutput> pour giga octets/s.</para> + </glossdef> + </glossentry> + </glosslist> + <note> + <para>Les limites de bande passante du réseau ne s'appliquent qu'au + trafic émis par les machines virtuelles. Le trafic reçu par les VMs est + illimité.</para> + </note> + <note> + <para>Pour supprimer un groupe de bande passante, il ne doit être référencé + sur aucun disque ou adaptateur d'une VM en fonction.</para> + </note> + </para> + </sect1> + + <sect1> + <title>VBoxManage showhdinfo</title> + + <para>Cette commande affiche des informations sur une image de disque + virtuelle, en particulier sa taille sur le disque, son type et les machines + virtuelles qui l'utilisent.<note> + <para>Pour être compatible avec des versions plus anciennes de VirtualBox + la commande "showvdiinfo" est également supportée et associée en + interne à la commande "showhdinfo".</para> + </note></para> + <para>L'image de disque doit être spécifiée soit par son UUID (si le média + est enregistré), soit par le nom du fichier. Les images enregistrées peuvent + être listées par + <computeroutput>VBoxManage list hdds</computeroutput> (voir <xref linkend="vboxmanage-list" /> + pour plus d'informations). Un nom de fichier doit être spécifié en tant + que chemin valide, soit absolu soit relatif en partant du répertoire + actuel.</para> + </sect1> + + <sect1 id="vboxmanage-createvdi"> + <title>VBoxManage createhd</title> + + <para>Cette commande crée une nouvelle de disque dur virtuel. La + syntaxe est comme suit :</para> + + <screen>VBoxManage createhd --filename <nomfichier> + --size <mégaoctets> + [--format VDI|VMDK|VHD] (par défaut : VDI) + [--variant Standard,Fixed,Split2G,Stream,ESX]</screen> + + <para>où les paramètres signifient :<glosslist> + <glossentry> + <glossterm><computeroutput>nomfichier</computeroutput></glossterm> + + <glossdef> + <para>Permet de choisir un nom de fichier. Obligatoire.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>mégaoctets</computeroutput></glossterm> + + <glossdef> + <para>Permet de définir la capacité de l'image, en MiO. + Obligatoire.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>format</computeroutput></glossterm> + + <glossdef> + <para>Permet de choisir un format de fichier pour le fichier + de sortie, différent du format du fichier d'entrée.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>variant</computeroutput></glossterm> + + <glossdef> + <para>Permet de choisir une variante du format de fichier pour le + fichier de sortie. C'est une liste de drapeaux séparée par des virgules. + Toutes les combinaisons ne sont pas supportées, spécifier des + drapeaux incohérents donne un message d'erreur.</para> + </glossdef> + </glossentry> + </glosslist> <note> + <para>Pour être compatible avec d'anciennes versions de VirtualBox, la + commande "createvdi" est également supportée et associée en interne avec + la commande "createhd".</para> + </note></para> + </sect1> + + <sect1 id="vboxmanage-modifyvdi"> + <title>VBoxManage modifyhd</title> + + <para>Avec la commande <computeroutput>modifyhd</computeroutput>, vous pouvez + modifier les caractéristiques d'une image de disque après l'avoir + créé :<screen>VBoxManage modifyhd <uuid>|<nomfichier> + [--type normal|writethrough|immutable|shareable| + readonly|multiattach] + [--autoreset on|off] + [--compact] + [--resize <megabytes>|--resizebyte <octets>]</screen><note> + <para>Malgré le "hd" du nom de la sous-commande, la commande fonctionne + avec toutes les images de disque et pas seulement les disques durs. Pour + être compatible avec les anciennes versions de VirtualBox, la commande + "modifyvdi" est également supportée et a été associée en interne à la + commande"modifyhd".</para> + </note></para> + + <para>L'image de disque doit être spécifiée soit par son UUID (si le média + est enregistré), soit par le nom du fichier. Les images enregistrées peuvent + être listées par + <computeroutput>VBoxManage list hdds</computeroutput> (voir <xref linkend="vboxmanage-list" /> + pour plus d'informations). Un nom de fichier doit être spécifié en tant + que chemin valide, soit absolu soit relatif en partant du répertoire + actuel.</para> + <para>Les options suivantes sont disponibles :<itemizedlist> + <listitem> + <para>Avec l'argument <computeroutput>--type</computeroutput>, vous + pouvez modifier le type d'une image existante entre le mode normal, + immuable, write-through et autres modes ; voir <xref + linkend="hdimagewrites" /> pour des détails.</para> + </listitem> + + <listitem> + <para>Pour les disques durs immuables seulement (de différenciation), + l'option <computeroutput>--autoreset on|off</computeroutput> détermine + si le disque est automatiquement réinitialisé à chaque démarrage de + la VM (de nouveau, voir <xref linkend="hdimagewrites" />). Par défaut, + c'est actif.</para> + </listitem> + + <listitem> + <para>L'option <computeroutput>--compact</computeroutput>, + peut être utilisée pour compresser des images de disque (à savoir + supprimer des blocs qui ne contiennent que des zéros). Cela réallègera + une image à taille dynamique ; cela réduira la taille + <emphasis>physique</emphasis> de l'image sans changer la taille logique + du disque virtuel. La compression fonctionne aussi bien pour les images + de base que celles de différenciation créées dans un instantané.</para> + + <para>Pour que l'opération soit efficace, il faut d'abord libérer de + l'espace dans le système invité en y mettant des zéros via le logiciel + adapté. Pour les invités Windows, vous pouvez utiliser l'outil + <computeroutput>sdelete</computeroutput> de Microsoft. + Exécutez <computeroutput>sdelete -z</computeroutput> dans l'invité pour + mettre des zéros dans l'espace libre avant de compresser l'image de + disque virtuel. Pour Linux, utilisez l'outil + <code>zerofree</code> qui supporte les systèmes de fichiers s ext2/ext3. + Pour les invités Mac OS X, utilisez la fonction <emphasis>Supprimer l'espace libre</emphasis> de + <emphasis>l'outil de disque</emphasis> intégré. Utilisez + <emphasis>Zero Out Data</emphasis>.</para> + + <para>Remarquez que la compression n'est actuellement disponible que + pour les images VDI. Vous pouvez obtenir la même chose en mettant des + zéros sur les blocs libres et clonant le disque vers un autre format + dynamique. Vous pouvez utiliser ce contournement jusqu'à ce que la + compression soit supportée pour les autres formats de disque que VDI.</para> + </listitem> + + <listitem> + <para>L'option <computeroutput>--resize x</computeroutput> (où x est + le nouvel espace total désiré en <emphasis role="bold">mégaoctets</emphasis>) + vous permet de modifier la capacité d'une image existante ; ceci + ajuste la taille <emphasis>logique</emphasis> d'un disque virtuel sans + beaucoup changer la taille physique.<footnote> + <para>Le redimensionnement d'images a été ajouté à VirtualBox 4.0.</para> + </footnote> Cela ne fonctionne actuellement que pour les formats + VDI et VHD et pour les variantes, à taille dynamique, et vous ne + pouvez l'utiliser que pour augmenter (ou réviser) la capacité. + Par exemple, si vous avez créé au départ un disque de 10G à présent + plein, vous pouvez utiliser la commande <computeroutput>--resize 15360</computeroutput> + pour passer la capacité à 15G (15,360Mo) sans devoir créer une nouvelle + image et y copier toutes les données à partir d'un e machine virtuelle. + Cependant, remarquez que cela ne change que la capacité du lecteur ; + vous devrez ensuite, en général, utiliser un outil de gestion des + partitions dans l'invité pour ajuster la partition principale et + remplir le lecteur.</para><para>L'option <computeroutput>--resizebyte x</computeroutput> + fait presque la même chose mais x est exprimé en octets au lieu de + mégaoctets.</para> + </listitem> + </itemizedlist></para> + </sect1> + + <sect1 id="vboxmanage-clonevdi"> + <title>VBoxManage clonehd</title> + + <para>Cette commande duplique une image de disque dur virtuel enregistrée + vers un nouveau fichier image ayant un nouvel identifiant unique (UUID). La + nouvelle image peut être transférée vers un autre système hôte ou réimportée + dans VirtualBox en utilisant le gestionnaire de médias virtuels ; voir + <xref linkend="vdis" /> et <xref linkend="cloningvdis" />. La syntaxe est + comme suit :</para> + + <screen>VBoxManage clonehd <uuid>|<nomfichier> <outputfile> + [--format VDI|VMDK|VHD|RAW|<other>] + [--variant Standard,Fixed,Split2G,Stream,ESX] + [--existing]</screen> + + <para>L'image de disque à cloner et celle cible doivent être spécifiées + soit par leur UUID (si le média + est enregistré), soit par leur nom du fichier. Les images enregistrées peuvent + être listées par + <computeroutput>VBoxManage list hdds</computeroutput> (voir <xref linkend="vboxmanage-list" /> + pour plus d'informations). Un nom de fichier doit être spécifié en tant + que chemin valide, soit absolu soit relatif en partant du répertoire + actuel.</para> + <para>Les options suivantes sont disponibles :<glosslist> + <glossentry> + <glossterm><computeroutput>--format</computeroutput></glossterm> + + <glossdef> + <para>Permet de choisir un format de fichier pour le fichier de + sortie, autre que celui du fichier d'entrée.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>--variant</computeroutput></glossterm> + + <glossdef> + <para>Permet de choisir une variante de format de fichier pour le + fichier de sortie. C'est une liste de drapeaux séparée par des virgules. + Toutes les combinaisons ne sont pas supportées, spécifier des + drapeaux incohérents donne un message d'erreur.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>--existing</computeroutput></glossterm> + + <glossdef> + <para>Effectue le clonage sur un média de destination existant. Seule + la partie du média source convenant au média de destination est copiée. + Cela signifie que si le média de destination est plus petit que + la source, seule une partie en est copiée, et si le média de + destination est plus gros que la source, le reste de l'espace du + média de destination reste inchangé.</para> + </glossdef> + </glossentry> + </glosslist> <note> + <para>Pour être compatible avec les anciennes versions de VirtualBox, + la commande "clonevdi" est également supportée et elle a été associée + en interne à la commande "clonehd".</para> + </note></para> + </sect1> + + <sect1> + <title>VBoxManage convertfromraw</title> + + <para>Cette commande convertit une image de disque brute en fichier VirtualBox Disk Image + (VDI). La syntaxe est la suivante :</para> + + <screen>VBoxManage convertfromraw <filename> <outputfile> + [--format VDI|VMDK|VHD] + [--variant Standard,Fixed,Split2G,Stream,ESX] + [--uuid <uuid>] +VBoxManage convertfromraw stdin <fichiersortie> <octets> + [--format VDI|VMDK|VHD] + [--variant Standard,Fixed,Split2G,Stream,ESX] + [--uuid <uuid>]</screen> + + <para>où les paramètres signifient :<glosslist> + <glossentry> + <glossterm><computeroutput>--bytes</computeroutput></glossterm> + + <glossdef> + <para>La taille du fichier image, en octets, fournie en entrée.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>--format</computeroutput></glossterm> + + <glossdef> + <para>Sélectionnez le format de l'image de disque à créer. Par + défaut, c'est VDI.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>--variant</computeroutput></glossterm> + + <glossdef> + <para>Permet de choisir une variante de format de fichier pour le + fichier en sortie. C'est une liste de drapeaux séparée par des + virgules. Toutes les combinaisons ne sont pas supportées, spécifier + des drapeaux incohérents donne un message d'erreur.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>--uuid</computeroutput></glossterm> + + <glossdef> + <para>Permet de spécifier l'UUID ou le fichier de sortie.</para> + </glossdef> + </glossentry> + </glosslist> La deuxième forme oblige VBoxManage à lire le contenu de + l'image de disque à partir de l'entrée standard (utile pour utiliser + cette commande en ligne).</para> + + <para><note> + <para>Pour être compatible avec d'anciennes versions de VirtualBox, + la commande "convertdd" est aussi supportée et elle est associée en interne + à la commande "convertfromraw".</para> + </note></para> + </sect1> + + <sect1> + <title>VBoxManage getextradata/setextradata</title> + + <para>Ces commandes vous permettent d'attacher et de récupérer des chaînes de + données dans une machine virtuelle ou à une configuration de VirtualBox (en + spécifiant <computeroutput>global</computeroutput> au lieu d'un nom de machine + virtuelle). Vous pouvez spécifier une clé (comme chaîne de texte) pour + associer les données que vous pourrez récupérer plus tard. Par exemple :</para> + + <screen>VBoxManage setextradata Fedora5 installdate 2006.01.01 +VBoxManage setextradata SUSE10 installdate 2006.02.02</screen> + + <para>associerait la chaîne "2006.01.01" à la clé installdate pour la + machine virtuelle Fedora5, et "2006.02.02" pour la machine SUSE10. Vous + pourriez récupérer l'information comme suit :</para> + + <screen>VBoxManage getextradata Fedora5 installdate</screen> + + <para>qui renverrait</para> + + <screen>VirtualBox Command Line Management Interface Version @VBOX_VERSION_MAJOR@.@VBOX_VERSION_MINOR@.@VBOX_VERSION_BUILD@ +(C) 2005-@VBOX_C_YEAR@ @VBOX_VENDOR@ +All rights reserved. + +Value: 2006.01.01</screen> + <para>Pour supprimer une clé, la commande <computeroutput>setextradata</computeroutput> + doit être exécutée sans spécifier de données (la clé seule), par exemple: + </para> + + <screen>VBoxManage setextradata Fedora5 installdate</screen> + + </sect1> + + <sect1 id="vboxmanage-setproperty"> + <title>VBoxManage setproperty</title> + + <para>Cette commande est utilisée pour modifier des paramètres globaux + qui modifient toute l'installation de VirtualBox. Certains d'entre eux + correspondent aux paramètres de la boîte de dialogue "Paramètres globaux" de + l'interface graphique. Les propriétés suivantes sont disponibles :<glosslist> + <glossentry> + <glossterm><computeroutput>machinefolder</computeroutput></glossterm> + + <glossdef> + <para>Ceci spécifie le dossier par défaut dans lequel sont + stockées les définitions de la machine virtuelle ; voir <xref linkend="vboxconfigdata" /> pour les détails.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>hwvirtexclusive</computeroutput></glossterm> + <glossdef> + <para>Ceci spécife si VirtualBox utilisera en exclusivité les + extensions de virtualisation matérielle (Intel VT-x ou AMD-V) du + processeur du système hôte ; voir <xref linkend="hwvirt" />. Si + vous souhaitez partager ces extensions avec d'autres hyperviseurs en + fonction en même temps, vous devez désactiver ce paramètre. + Cela a des implications négatives en termes de performance. + </para> + </glossdef> + </glossentry> + + + <glossentry> + <glossterm><computeroutput>vrdeauthlibrary</computeroutput></glossterm> + + <glossdef> + <para>Ceci indique la bibliothèque à utiliser quand on a sélectionné + l'authentification "externe" pour une machine virtuelle en particulier ; + voir <xref linkend="vbox-auth" /> pour des détails.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>websrvauthlibrary</computeroutput></glossterm> + + <glossdef> + <para>Ceci spécifie la bibliothèque utilisée par le service web + pour authentifier les utilisateurs. Pour des détails sur le service + web de VirtualBox, merci de vous reporter au manuel de référence SDK + distinct de VirtualBox (voir <xref + linkend="VirtualBoxAPI" />).</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>vrdeextpack</computeroutput></glossterm> + <glossdef> + <para>Ceci spécifie la bibliothèque qui implémente l'extension Bureau + distant de VirtualBox.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>loghistorycount</computeroutput></glossterm> + + <glossdef> + <para>Ceci sélectionne le nombre de journaux de VMs (anciens) + conservés.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>autostartdbpath</computeroutput></glossterm> + + <glossdef> + <para>Ceci sélectionne le chemin vers la base de données autostart. + Voir <xref linkend="autostart" />.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>defaultfrontend</computeroutput></glossterm> + + <glossdef> + <para>Ceci sélectionne l'interface globale des VMs. Voir + <xref linkend="vboxmanage-startvm" />.</para> + </glossdef> + </glossentry> + </glosslist></para> + </sect1> + + <sect1> + <title>VBoxManage usbfilter add/modify/remove</title> + + <para>Les commandes <computeroutput>usbfilter</computeroutput> sont utilisées + pour travailler avec des filtres USB dans des machines virtuelles ou avec + des filtres globaux qui concernent tout le paramétrage de VirtualBox. Les + filtres globaux sont appliqués avant les filtres spécifiques aux machines et + ils peuvent être utilisés pour empêcher les périphériques d'être capturés par + une machine virtuelle. Les filtres globaux s'appliquent toujours dans un + ordre particulier, et seul le premier filtre convenant à un périphérique est + appliqué. Par exemple, si le premier filtre global dit de garder (rendre + disponible) une carte mémoire Kingston particulière et le deuxième d'ignorer + tous les périphériques Kingston, cette carte mémoire sera disponible pour + toutes les machines ayant un filtre adéquat mais pas les autres périphériques + Kingston.</para> + + <para>Lors de la création d'un filtre USB en utilisant + <computeroutput>usbfilter add</computeroutput>, vous devez fournir trois ou + quatre paramètres obligatoires. L'index spécifie la position du filtre dans + la liste. S'il y a déjà un filtre à cette place, lui-mâme et les suivants + seront déplacés. Sinon, le nouveau filtre sera ajouté à la fin de la liste. + Le paramètre <computeroutput>target</computeroutput> sélectionne la + machine virtuelle à laquelle devrait être attaché le + filtre, sinon utilisez "global" pour l'appliquer à toutes les machines virtuelles. + <computeroutput>name</computeroutput> est le nom du nouveau filtre et + des filtres globaux, <computeroutput>action</computeroutput> autorise les + machines à accéder aux périphériques correspondant à la description du + filtre ("hold") ou ne leur donne pas accès ("ignore"). En outre, vous devriez + spécifier des paramètres de filtrage. Vous pouvez trouver les paramètres des + périphériques attachés à votre système en utilisant <computeroutput>VBoxManage list usbhost</computeroutput>. + Enfin, vous pouvez spécifier si le filtre devrait être actif, et pour les + filtres globaux, s'ils concernent les périphériques locaux, à distance (par + connexion RDP) ou autrement.</para> + + <para>Quand vous modifiez un filtre USB en utilisant + <computeroutput>usbfilter modify</computeroutput>, vous devez spécifier le + filtre par index (voir la sortie de + <computeroutput>VBoxManage list usbfilters</computeroutput> pour voir les + indexes des filtres globaux et <computeroutput>VBoxManage + showvminfo</computeroutput> pour voir les indexes des machines individuelles), + et par cible, laquelle est soit une machine virtuelle, soit "global". Les + propriétés modifiables sont les mêmes que pour <computeroutput>usbfilter + add</computeroutput>. Pour supprimer un filtre, utilisez <computeroutput>usbfilter + remove</computeroutput> et spécifiez l'index et la cible.</para> + </sect1> + + <sect1 id="vboxmanage-sharedfolder"> + <title>VBoxManage sharedfolder add/remove</title> + + <para>Cette commande vous permet de partager des dossiers de l'ordinateur hôte + avec les systèmes d'exploitation invités. Pour cela, il faut que les systèmes + invités aient une version installée des Suppléments invité qui supporte cette + fonctionnalité.</para> + + <para>Les dossiers partagés sont décrits en détails au <xref + linkend="sharedfolders" />.</para> + </sect1> + + <sect1 id="vboxmanage-guestproperty"> + <title>VBoxManage guestproperty</title> + + <para>Les commandes "guestproperty" vous permettent de voir ou de définir + les propriétés d'une machine virtuelle en fonction. Merci de voir <xref linkend="guestadd-guestprops" /> + pour une présentation. Comme il y est expliqué, les propriétés de l'invité + sont des pairs de chaînes clé/valeur arbitraires qu'on peut changer et lire + depuis l'hôte ou l'invité, donc on peut les utiliser comme des canaux de + communication à faible volume pour des chaînes du moment qu'un invité est + en fonction et a installé les suppléments invité. De plus, un certain nombre + de valeurs dont les clés commencent par "/VirtualBox/" sont automatiquement + définies et maintenues par les suppléments invité.</para> + + <para>Les sous-commandes sont disponibles (où + <computeroutput><vm></computeroutput>, dans chaque cas, peut être + soit un nom soit un UUID d'une VM, comme pour les autres commandes de + VBoxManage) :<itemizedlist> + <listitem> + <para><computeroutput>enumerate <vm> [--patterns + <pattern>]</computeroutput> : Ceci liste toutes les + propriétés invité disponibles pour une VM donnée avec leur valeur. + Cette liste sera très limitée si le processus service de l'invité + ne peut pas être contacté, notamment car la VM n'est pa en fonction + ou les suppléments invité ne sont pas installés.</para> + + <para>Si vous spécifiez <computeroutput>--patterns + <échantillon></computeroutput>, il agit comme un filtre pour ne + lister que les propriétés correspondant à l'échantillon donné. L'échantillon + peut contenir les caractères jokers suivants :<itemizedlist> + <listitem> + <para><computeroutput>*</computeroutput> (astérisque) : + représente n'importe quel nombre de caractères ; par exemple, + "<computeroutput>/VirtualBox*</computeroutput>" correspondrait + à toutes les propriétés commençant par "/VirtualBox".</para> + </listitem> + + <listitem> + <para><computeroutput>?</computeroutput> (point d'interrogation) : + représente un seul caractère de votre choix ; par exemple, + "<computeroutput>fo?</computeroutput>" correspondrait à "foo" + et à "for".</para> + </listitem> + + <listitem> + <para><computeroutput>|</computeroutput> (symbole pipe) : + peut être utilisé pour spécifier plusieurs échantillons alternatifs ; + par exemple, "<computeroutput>s*|t*</computeroutput>" correspondrait + à tout ce qui commence par un "s" ou un "t".</para> + </listitem> + </itemizedlist></para> + </listitem> + + <listitem> + <para><computeroutput>get <vm></computeroutput> : Ceci ne + récupère la valeur que d'une propriété. Si la propriété est introuvable + (par exemple car l'invité n'est pas en fonction), ceci affichera + <screen>No value set!</screen></para> + </listitem> + + <listitem> + <para><computeroutput>set <vm> <propriété> [<valeur> + [--flags <drapeaux>]]</computeroutput> : Ceci vous permet + de définir une propriété invité en spécifiant la clé et la valeur. + Si vous ne mettez pas <computeroutput><valeur></computeroutput>, + la propriété est effacée. Avec <computeroutput>--flags</computeroutput>, + vous pouvez éventuellement spécifier un comportement supplémentaire + (vous pouvez en combiner plusieurs en les séparant par des virgules) :<itemizedlist> + <listitem> + <para><computeroutput>TRANSIENT</computeroutput> : la + valeur ne sera pas stockée avec les données de la VM quand la + VM exite ;</para> + </listitem> + + <listitem> + <para><computeroutput>TRANSRESET</computeroutput> : la valeur + sera effacée dès que la VM redémarrera et/ou existera ;</para> + </listitem> + + <listitem> + <para><computeroutput>RDONLYGUEST</computeroutput> : la + valeur ne peut être modifiée que par l'hôte, l'invité ne + peut que la lire ;</para> + </listitem> + + <listitem> + <para><computeroutput>RDONLYHOST</computeroutput> : inversement, + cette valeur ne peut être modifiée que par l'invité, l'hôte + ne peut que la lire ;</para> + </listitem> + + <listitem> + <para><computeroutput>READONLY</computeroutput> : la + combinaison des deux, la valeur ne peut pas être modifiée.</para> + </listitem> + </itemizedlist></para> + </listitem> + + <listitem> + <para><computeroutput>wait <vm> <échantillon> --timeout + <timeout></computeroutput> : Ceci attend une valeur + particulière décrite par "échantillon" à modifier ou effacer ou à + créer. Les règles de l'échantillon sont les mêmes qu'avec la commande + "enumerate" ci-dessus.</para> + </listitem> + <listitem> + <para><computeroutput>delete <vm> <propriété> + </computeroutput> : Efface une propriété invité définie précédemment.</para> + </listitem> + </itemizedlist></para> + </sect1> + + <sect1 id="vboxmanage-guestcontrol"> + <title>VBoxManage guestcontrol</title> + + <para>Les commandes <computeroutput>guestcontrol</computeroutput> vous permettent de contrôler certaines + choses de l'invité à partir de l'hôte. Merci de voir <xref + linkend="guestadd-guestcontrol" /> pour une présentation.</para> + + <para>En général, la syntaxe est la suivante :</para> + + <screen>VBoxManage guestcontrol <uuid|nomvm> <commande></screen> + + <para>Les sous-commandes suivantes sont disponibles (où + <computeroutput><uuid|nomvm></computeroutput>, dans tous les cas, peut + être le nom ou l'UUID d'une VM comme avec les autres commandes de + VBoxManage) :<itemizedlist> + <listitem> + <para><emphasis role="bold"><computeroutput>execute</computeroutput></emphasis>, qui permet d'exécuter un + programme/script (processus) déjà installé et exécutable sur l'invité. + Cette commande ne fonctionne que pendant qu'une VM est active et en + fonction et sa syntaxe est la suivante :</para> + + <screen>VBoxManage guestcontrol <uuid|nomvm> exec[ute] + --image <chemin du programme> --username <nom> + [--passwordfile <fichier> | --password <mot de passe>] + [--environment "<NOM>=<VALEUR> [<NOM>=<VALEUR>]"] + [--verbose] [--timeout <msec>] + [--wait-exit] [--wait-stdout] [--wait-stderr] + [--dos2unix] [--unix2dos] + -- [[<argument1>] ... [<argumentN>]]</screen> + + <para>où les paramètres signifient :<glosslist> + <glossentry> + <glossterm><computeroutput>uuid|nomvm</computeroutput></glossterm> + + <glossdef> + <para>Le nom ou l'UUID de la VM. Obligatoire.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>--image "<chemin du programme>"</computeroutput></glossterm> + + <glossdef> + <para>Chemin absolu et nom du processus à exécuter dans + l'invité, comme <computeroutput>C:\Windows\System32\calc.exe</computeroutput></para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>--username <nom></computeroutput></glossterm> + + <glossdef> + <para>Nom de l'utilisateur sous lequel devrait se lancer le + processus. Cet utilisateur doit exister sur l'OS invité.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>--passwordfile <fichier></computeroutput></glossterm> + + <glossdef> + <para>Mot de passe du compte utilisateur spécifié, à lire dans + le fichier donné. Si vous n'en donnez pas, un mot de passe + vierge est supposé.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>--password <mot de passe></glossterm> + + <glossdef> + <para>Mot de passe du compte utilisateur spécifié avec + <computeroutput>--username</computeroutput>. Si vous n'en + donnez pas, un mot de passe vierge est supposé.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>--dos2unix</computeroutput></glossterm> + + <glossdef> + <para>Convertit les fins de lignes de la sortie des invités + DOS/Windows en fins compatibles UNIX (CR + LF -> LF). Pas + encore implémenté.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>--environment + "<NOM>=<VALEUR>"</computeroutput></glossterm> + + <glossdef> + <para>Une ou plusieurs variables d'environnement à définir ou + dérégler.</para> + + <para>Par défaut, le nouveau processus de l'invité sera + créé avec l'environnement standard de l'OS invité. Cette + option permet de modifier cet environnement. Pour définir/modifier + une variable, une paire <computeroutput>NOM=VALEUR</computeroutput> doit + être spécifiée ; pour réinitialiser une certaine variable, le + nom sans valeur doit être défini, par exemple + <computeroutput>NOM=</computeroutput>.</para> + + <para>Les arguments contenant des espaces doivent être entourés + de guillemets. Vous pouvez spécifier plus d'un + <computeroutput>--environment</computeroutput> en même temps + pour maintenir vierge la ligne de commande.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>--timeout <msec></computeroutput></glossterm> + + <glossdef> + <para>Valeur (en millisecondes) qui spécifie la durée pendant + laquelle le processus démarré est autorisé à fonctionner et + combien de temps VBoxManage attend une sortie de ce processus. + Si vous ne spécifiez pas de timeout, VBoxManage attendra + jusqu'à ce que le processus démarré se termine ou ce qu'une + erreur ne survienne.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>--unix2dos</computeroutput></glossterm> + + <glossdef> + <para>Convertit les fins de lignes de la sortie des invités + DOS/Windows en fins compatibles UNIX (CR + LF -> LF). Pas + encore implémenté.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>--verbose</computeroutput></glossterm> + + <glossdef> + <para>Dit à VBoxManage d'être plus verbeux.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>--wait-exit</computeroutput></glossterm> + + <glossdef> + <para>Attend la fin d'un processus et affiche son code de + sortie avec la raison/les drapeaux de sa fin.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>--wait-stdout</computeroutput></glossterm> + + <glossdef> + <para>Attend la fin d'un processus et affiche son code de + sortie avec la raison/les drapeaux de sa fin. En attendant, + VBoxManage récupère la sortie du processus sur stdout.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>--wait-stderr</computeroutput></glossterm> + + <glossdef> + <para>Attend la fin d'un processus et affiche son code de + sortie avec la raison/les drapeaux de sa fin. En attendant, + VBoxManage récupère la sortie du processus sur stderr.</para> </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>[-- [<argument1s>] ... [<argumentNs>]]</computeroutput></glossterm> + + <glossdef> + <para>Un ou plusieurs arguments à passer au processus à + exécuter.</para> + <para>Les arguments contenant des espaces doivent être entourés + de guillemets.</para> + </glossdef> + </glossentry> + + </glosslist></para> + + <para><note> + <para>Sur Windows, il existe certaines limites pour les applications + graphiques ; merci de voir <xref linkend="KnownIssues" /> pour + plus d'informations.</para> + </note> Exemples : <screen>VBoxManage --nologo guestcontrol "Ma VM" execute --image "/bin/ls" + --username foo --passwordfile bar.txt --wait-exit --wait-stdout -- -l /usr</screen> <screen>VBoxManage --nologo guestcontrol "My VM" execute --image "c:\\windows\\system32\\ipconfig.exe" + --username foo --passwordfile bar.txt --wait-exit --wait-stdout</screen> Remarquez que + les deux barres obliques inversées du deuxième exemple ne sont requis + que pour les hôtes Unix.</para> + + <para><note> + <para>Pour certaines commandes, il faut spécifier le nom d'utilisateur + d'un compte utilisateur existant sur l'invité ; les exécutions + anonymes ne sont pas supportées pour des raisons de sécurité. + Néanmoins, le mot de passe d'un compte utilisateur est facultatif + et dépend de la politique et des règles de l'invité. Si vous ne + spécifiez aucun mot de passe pour un nom d'utilisateur donné, + un mot de passe vierge sera utilisé. Sur certains OS comme Windows, + il pe peut qu'il faille ajuster la politique de sécurité pour autoriser + le paramétrage d'un compte utilisateur avec un mot de passe vierge. + En outre, les règles du domaine global pourraient s'appliquer et, donc, + on ne peut pas les modifier.</para> + </note></para> + + <para>À partir de VirtualBox 4.1.2 l'exécution d'un processus invité + par défaut se limite à 5 processus invités en même temps. Si un + nouveau processus invité est lancé et dépasserait cette limite, le + plus ancien dans l'invité qui ne s'exécute pas sera désactivé afin de + pouvoir lancer ce nouveau processus. En outre, la récupération de la + sortie de cet ancien processus invité ne sera alors plus possible. + Si les 5 processus invités sont toujours actifs et en fonction, le + démarrage d'un nouveau processus enverra un message d'erreur circonstancié.</para> + + <para>Pour augmenter ou diminuer la limite d'exécution des processus + invité, il faut modifier soit la propriété <computeroutput>/VirtualBox/GuestAdd/VBoxService/--control-procs-max-kept</computeroutput>, + soit la ligne de commande ee VBoxService en spécifiant + <computeroutput>--control-procs-max-kept</computeroutput>. Il faut + ensuite redémarrer l'OS invité. Pour gérer un nombre illimité de + processus invités, il faut définir une valeur de <computeroutput>0</computeroutput> + (non recommandé).</para> + </listitem> + + <listitem> + <para><emphasis role="bold"><computeroutput>copyto</computeroutput></emphasis>, qui permet de copier + des fichiers de l'hôte vers l'invité (seulement si les suppléments invité + 4.0 et supérieur sont installés).</para> + + <screen>VBoxManage guestcontrol <uuid|nomvm> copyto|cp + <source invité> <hôte dest> --username <nom> + [--passwordfile <fichier> | --password <mot de passe>] + [--dryrun] [--follow] [--recursive] [--verbose]</screen> + + <para>où les paramètres signifient :<glosslist> + <glossentry> + <glossterm><computeroutput>uuid|nomvm</computeroutput></glossterm> + + <glossdef> + <para>L'UUID ou le nom de la VM. Obligatoire.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>source sur l'hôte</computeroutput></glossterm> + + <glossdef> + <para>Chemin absolu du/des fichier(s) source(s) de l'hôte + sur l'hôte pour copier vers l'invité, comme + <computeroutput>C:\Windows\System32\calc.exe</computeroutput>. + Il peut s'agir d'une expression joker, comme + <computeroutput>C:\Windows\System32\*.dll</computeroutput></para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>destination sur l'invité</computeroutput></glossterm> + + <glossdef> + <para>Chemin de destination absolu sur l'invité, comme + <computeroutput>C:\Temp</computeroutput></para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>--username <nom></computeroutput></glossterm> + + <glossdef> + <para>Nom d'utilisateur sous lequel devrait fonctionner le + processus de copie. Cet utilisateur doit exister sur l'OS + invité.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>--passwordfile <fichier></computeroutput></glossterm> + + <glossdef> + <para>Mot de passe du compte utilisateur spécifié, à lire dans + le fichier donné. Si vous n'en donnez pas, un mot de passe + vierge est supposé.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>--password <mot depasse></computeroutput></glossterm> + + <glossdef> + <para>Mot de passe du compte utilisateur spécifié avec + <computeroutput>--username</computeroutput>. Si vous n'en + donnez pas, un mot de passe vierge est supposé.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>--dryrun</computeroutput></glossterm> + + <glossdef> + <para>Dit à VBoxManage de ne faire qu'une exécution "sèche" au + lieu de copier vraiment les fichiers dans l'invité.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>--follow</computeroutput></glossterm> + + <glossdef> + <para>Active le suivi des liens symboliques sur la + source de l'hôte.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>--recursive</computeroutput></glossterm> + + <glossdef> + <para>Copie récursivement les fichiers/répertoires de la + source spécifiée.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>--verbose</computeroutput></glossterm> + + <glossdef> + <para>Dit à VBoxManage d'être plus verbeux.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>--flags <drapeaux></computeroutput></glossterm> + + <glossdef> + <para>Drapeaux supplémentaires à définir. Ce n'est pas utilisé + pour le moment.</para> + </glossdef> + </glossentry> + </glosslist></para> + </listitem> + + <listitem> + <para><emphasis role="bold"><computeroutput>copyfrom</computeroutput></emphasis>, + qui permet de copier + des fichiers de l'invité vers l'hôte (seulement si les suppléments + invité 4.0 et supérieur sont installés). Il prend les mêmes paramètres + que <computeroutput>copyto</computeroutput> ci-dessus.</para> + </listitem> + + <listitem> + <para><emphasis role="bold"><computeroutput>createdirectory</computeroutput></emphasis>, qui permet de copier + des fichiers de l'invité vers l'hôte (seulement si les suppléments + invité 4.0 et supérieur sont installés). Il prend les mêmes paramètres + que <computeroutput>copyto</computeroutput> ci-dessus.</para> + + <screen>VBoxManage guestcontrol <uuid|nomvm> createdir[ectory]|mkdir|md + <répertoire invité>... --username <nom> + [--passwordfile <fichier> | --password <mot de passe>] + [--parents] [--mode <mode>] [--verbose]</screen> + + <para>où les paramètres signifient :<glosslist> + <glossentry> + <glossterm><computeroutput>uuid|nomvm</computeroutput></glossterm> + + <glossdef> + <para>L'UUID ou le nom de la VM. Obligatoire.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>répertoire à créer sur l'invité</computeroutput></glossterm> + + <glossdef> + <para>Chemin absolu du/des répertoire(s) à créer sur l'invité, + comme <computeroutput>D:\Foo\Bar</computeroutput>. Les répertoires + Parents doivent exister (comme dans cet exemple + <computeroutput>D:\Foo</computeroutput>) si vous ne mettez pas + <computeroutput>--parents</computeroutput>. L'utilisateur + spécifié doit avoir les droits appropriés pour créer le répertoire + spécifié.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>--username <nom></computeroutput></glossterm> + + <glossdef> + <para>Nom de l'utilisateur sous lequel devrait fonctionner + le processus de copie. Cet utilisateur doit exister sur l'OS + invité.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>--passwordfile <fichier></computeroutput></glossterm> + + <glossdef> + <para>Mot de passe du compte utilisateur spécifié, à lire dans + le fichier donné. Si vous n'en donnez pas, un mot de passe + vierge est supposé.</para> </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>--password <mot de passe></computeroutput></glossterm> + + <glossdef> + <para>Mot de passe du compte utilisateur spécifié avec + <computeroutput>--username</computeroutput>. Si vous n'en + donnez pas, un mot de passe vierge est supposé.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>--parents</computeroutput></glossterm> + + <glossdef> + <para>Crée aussi les répertoires parent non encore créés + pour le répertoire spécifié, par exemple si le répertoire + <computeroutput>D:\Foo</computeroutput> de + <computeroutput>D:\Foo\Bar</computeroutput> n'existe pas encore, + il sera créé. Si on ne spécifie pas + <computeroutput>--parent</computeroutput>, l'action échouerait.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>--mode <mode></computeroutput></glossterm> + + <glossdef> + <para>Définit les droits du répertoire spécifié. Seules des + valeurs octales (comme + <computeroutput>0755</computeroutput>) sont supportées pour l'heure.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>--verbose</computeroutput></glossterm> + + <glossdef> + <para>Dit à VBoxManage d'être plus verbeux.</para> + </glossdef> + </glossentry> + </glosslist></para> + </listitem> + + <listitem> + <para><emphasis role="bold"><computeroutput>removedirectory</computeroutput></emphasis>, + qui permet d'effacer des répertoires dans l'invité (seulement ceux où + sont installés les suppléments invité 4.3.2 et supérieur).</para> + + <screen>VBoxManage guestcontrol <uuid|nomvm> removedir[ectory]|rmdir + <répertoire invité>... --username <nom> + [--passwordfile <fichier> | --password <mot_de_passe>] + [--recursive|-R|-r] [--verbose]</screen> + + <para>où les paramètres signifient : <glosslist> + <glossentry> + <glossterm><computeroutput>uuid|nomvm</computeroutput></glossterm> + + <glossdef> + <para>L'UUID ou le nom de la VM. Obligatoire.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>répertoire à supprimer dans l'invité</computeroutput></glossterm> + + <glossdef> + <para>Chemin absolu du/des répertoire(s) à supprimer sur + l'invité, par exemple <computeroutput>D:\Foo\Bar</computeroutput>. + L'utilisateur spécifié doit avoir les bons droits pour effacer + le(s) répertoire(s) de l'invité spécifié(s).</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>--username <nom></computeroutput></glossterm> + + <glossdef> + <para>Nom d'utilisateur sous lequel devrait fonctionner le + processus de copie. Cet utilisateur doit exister sur l'OS invité.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>--passwordfile <fichier></computeroutput></glossterm> + + <glossdef> + <para>Mot de passe du compte utilisateur spécifié qui lit le + fichier donné. Si vous n'en mettez pas, on supposera un mot de + passe vide.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>--password <mot_de_passe></computeroutput></glossterm> + + <glossdef> + <para>Mot de passe du compte utilisateur spécifié par + <computeroutput>--username</computeroutput>. Si vous n'en donnez pas, on supposera un mot de + passe vide.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>--recursive</computeroutput></glossterm> + + <glossdef> + <para>Supprime des répertoires et, récursivement, leur contenu.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>--verbose</computeroutput></glossterm> + <glossdef> + <para>Dit à VBoxManage d'être plus bavard.</para> + </glossdef> + </glossentry> + </glosslist></para> + </listitem> + + <listitem> + <para><emphasis role="bold"><computeroutput>removefile</computeroutput></emphasis>, + qui permet d'effacer des fichiers sur l'invité (seulement là où sont + installés les suppléments invité 4.3.2 et supérieur).</para> + + <screen>VBoxManage guestcontrol <uuid|nomvm> removefile|rm + <fichier_d_invité>... --username <nom> + [--passwordfile <fichier> | --password <mot_de_passe>] + [--verbose]</screen> + + <para>où les paramètres signifient : <glosslist> + <glossentry> + <glossterm><computeroutput>uuid|nomvm</computeroutput></glossterm> + + <glossdef> + <para>L'UUID ou le nom de la VM. Obligatoire.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>fichier à supprimer dans l'invité</computeroutput></glossterm> + + <glossdef> + <para>Chemin absolu du/des fichier(s) à supprimer sur + l'invité, comme <computeroutput>D:\Foo\Bar\text.txt</computeroutput>. + L'utilisateur spécifié doit avoir les bons droits pour effacer + les fichiers spécifiés sur l'invité.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>--username <nom></computeroutput></glossterm> + + <glossdef> + <para>Nom d'utilisateur sous lequel devrait fonctionner le + processus de copie. Cet utilisateur doit exister sur l'OS invité.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>--passwordfile <fichier></computeroutput></glossterm> + + <glossdef> + <para>Mot de passe du compte utilisateur spécifié qui lit le + fichier donné. Si vous n'en mettez pas, on supposera un mot de + passe vide.</para> + + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>--password <mot_de_passe></computeroutput></glossterm> + + <glossdef> + <para>Mot de passe du compte utilisateur spécifié avec + <computeroutput>--username</computeroutput>. Si vous n'en + donnez pas, un mot de passe vierge est supposé.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>--verbose</computeroutput></glossterm> + + <glossdef> + <para>Dit à VBoxManage d'être plus bavard.</para> + </glossdef> + </glossentry> + </glosslist></para> + </listitem> + + <listitem> + <para><emphasis role="bold"><computeroutput>ren[ame]|mv</computeroutput></emphasis>, + qui permet de renommer des fichiers (ou des répertoires) dans l'invité + (seulement là où sont installés les suppléments invité 4.3.2 et + supérieur).</para> + + <screen>VBoxManage guestcontrol <uuid|nomvm> ren[ame]|mv + <source>... <dest> --username <nom> + [--passwordfile <fichier> | --password <mot_de_passe>] + [--verbose]</screen> + + <para>où les paramètres signifient : <glosslist> + <glossentry> + <glossterm><computeroutput>uuid|nomvm</computeroutput></glossterm> + + <glossdef> + <para>L'UUID ou le nom de la VM.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>source</computeroutput></glossterm> + + <glossdef> + <para>Chemin absolu d'une ou plusieurs sources à déplacer + quelque part. Si vous spécifiez plus d'une source, la destination + doit être un répertoire existant sur la VM. L'utilisateur + spécifié doit avoir les bons droits d'accès aux fichiers et + aux répertoires sources et de destination.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>dest</computeroutput></glossterm> + + <glossdef> + <para>Chemin absolu de la destination où déplacer le/les + source(s). Il peut s'agir d'un répertoire ou d'un fichier, selon + que vous spécifiez une ou plusieurs sources. L'utilisateur + spécifié doit avoir les bons droits d'accès au fichier et au + répertoire de.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>--username <nom></computeroutput></glossterm> + + <glossdef> + <para>Nom de l'utilisateur sous lequel fonctionne le processus + de copie. Cet utilisateur doit exister sur l'OS invité.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>--passwordfile <fichier></computeroutput></glossterm> + + <glossdef> + <para>Mot de passe du compte utilisateur spécifié d'où lire + l'invité donné. Si vous n'en donnez pas, on suppose un mot de + paasse vide.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>--password <mot_de_passe></computeroutput></glossterm> + + <glossdef> + <para>Mot de passe du compte utilisateur spécifié avec + <computeroutput>--username</computeroutput>. Si vous n'en + donnez pas, on suppose un mot de passe vide.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>--verbose</computeroutput></glossterm> + + <glossdef> + <para>Dit à VBoxManage d'être plus bavard.</para> + </glossdef> + </glossentry> + </glosslist></para> + </listitem> + + <listitem> + <para><emphasis role="bold"><computeroutput>createtemporary</computeroutput></emphasis>, + qui permet de copier des fichiers de l'hôte sur l'invité (seulement + si les suppléments invités 4.2 ou supérieur sont installés).</para> + + <screen>VBoxManage guestcontrol <uuid|nomvm> createtemp[orary]|mktemp + <modèle> --username <nom> + [--passwordfile <fichier> | --password <mot_de_passe>] + [--directory] [--secure] [--tmpdir <répertoire>] + [--domain <domaine>] [--mode <mode>] [--verbose]</screen> + + <para>où les paramètres signifient :<glosslist> + <glossentry> + <glossterm><computeroutput>uuid|nomvm</computeroutput></glossterm> + + <glossdef> + <para>L'UUID ou le nom de la VM. Obligatoire.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>modèle</computeroutput></glossterm> + + <glossdef> + <para>Un nom de fichier sans chemin et avec au moins trois + caractères 'X' consécutifs ou se terminant par 'X'.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>--username <nom></computeroutput></glossterm> + + <glossdef> + <para>Nom de l'utilisateur sous lequel devrait fonctionner + le processus de copie. Cet utilisateur doit exister sur l'OS + invité.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>--passwordfile <fichier></computeroutput></glossterm> + + <glossdef> + <para>Mot de passe du compte utilisateur spécifié, à lire dans + le fichier donné. Si vous n'en donnez pas, un mot de passe + vierge est supposé.</para> </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>--password <mot de passe></computeroutput></glossterm> + + <glossdef> + <para>Mot de passe du compte utilisateur spécifié avec + <computeroutput>--username</computeroutput>. Si vous n'en + donnez pas, un mot de passe vierge est supposé.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>--directory</computeroutput></glossterm> + + <glossdef> + <para>Crée un répertoire temporaire au lieu d'un fichier.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>--secure</computeroutput></glossterm> + + <glossdef> + <para> + Création sécurisée. Le mode du fichier est + <computeroutput>0755</computeroutput>. Et l'opération + échouera si elle ne peut s'effectuer en sécurité. + </para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>--tmpdir <répertoire></computeroutput></glossterm> + + <glossdef> + <para> + Répertoire où le fichier / répertoire sera cRéé. + Si vous n'en indiquez pas, répertoire temporaire spécifique + 'à la plateforme est utilisé. + </para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>--mode <mode></computeroutput></glossterm> + + <glossdef> + <para>Définit les droits du répertoire spécifié. Seules des + valeurs octales (comme + <computeroutput>0755</computeroutput>) sont supportées pour l'heure.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>--verbose</computeroutput></glossterm> + + <glossdef> + <para>Dit à VBoxManage d'être plus verbeux.</para> + </glossdef> + </glossentry> + </glosslist></para> + </listitem> + + <listitem> + <para><emphasis role="bold"><computeroutput>list</computeroutput></emphasis>, + qui présente plusieurs informations de contrôle de l'invité telles + que les sessions et les fichiers ouverts dans l'invité et les processus de l'invité.</para> + + <screen>VBoxManage guestcontrol <uuid|nomvm> list + <all|sessions|processes|files> [--verbose]</screen> + + <para>où les paramètres signifient :<glosslist> + <glossentry> + <glossterm><computeroutput>uuid|nomvm</computeroutput></glossterm> + <glossdef> + <para>L'UUID ou le nom de la VM. Obligatoire.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>all|sessions|processes|files</computeroutput></glossterm> + + <glossdef> + <para>présenter les sessions dans l'invité, les processus de + l'invité, les fichiers dans l'invité ou toutes les informations disponibles.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>--verbose</computeroutput></glossterm> + + <glossdef> + <para>Dit à VBoxManage d'être plus verbeux.</para> + </glossdef> + </glossentry> + </glosslist></para> + </listitem> + + <listitem> + <para><emphasis role="bold"><computeroutput>process kill</computeroutput></emphasis>, + qui termine des processus de l'invité en particulier pour une session + de l'invité, à partir soit l'ID de la session, soit du nom de la + session.</para> + + <screen>VBoxManage guestcontrol <uuid|nomvm> process kill + --session-id <ID> + | --session-name <nom ou modèle> + [--verbose] + <PID> ... <PID n></screen> + + <para>où les paramètres signifient : <glosslist> + <glossentry> + <glossterm><computeroutput>uuid|nomvm</computeroutput></glossterm> + + <glossdef> + <para>L'UUID ou le nom de la VM. Obligatoire.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>--session-id</computeroutput></glossterm> + + <glossdef> + <para>Spécifie la session de l'invité à utiliser par son ID.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>--session-name</computeroutput></glossterm> + + <glossdef> + <para>Spécifie la session de l'invité à utiliser par son nom. + Vous pouvez spécifier plusieurs sessions en spécifiant les jokers + * ou ?.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>--verbose</computeroutput></glossterm> + + <glossdef> + <para>Dit à VBoxManage d'être plus verbeux.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput><PID> ... <PID n></computeroutput></glossterm> + + <glossdef> + <para>Liste les identifiants des processus (PIDs) à terminer.</para> + </glossdef> + </glossentry> + </glosslist></para> + </listitem> + + <listitem> + <para><emphasis role="bold"><computeroutput>[p[s]]kill</computeroutput></emphasis>, + qui termine des processus en particulier dans une session de l'invité, + à partir soit de l'ID de la session, soit de son nom.</para> + + <screen>VBoxManage guestcontrol <uuid|nomvm> process kill + --session-id <ID> + | --session-name <nom ou modèle> + [--verbose] + <PID> ... <PID n></screen> + + <para>où les paramètres signifient : <glosslist> + <glossentry> + <glossterm><computeroutput>uuid|nomvm</computeroutput></glossterm> + + <glossdef> + <para>L'UUID ou le nom de la VM. Obligatoire.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>--session-id</computeroutput></glossterm> + + <glossdef> + <para>Spécifie la session de l'invité à utiliser par son ID.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>--session-name</computeroutput></glossterm> + + <glossdef> + <para>Spécifie la session de l'invité à utiliser par son nom. Vous + pouvez spécifier plusieurs sessions avec les jokers * ou ?.</para> + </glossdef> + + </glossentry> + + <glossentry> + <glossterm><computeroutput>--verbose</computeroutput></glossterm> + + <glossdef> + <para>Dit à VBoxManage d'être plus verbeux.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput><PID> ... <PID n></computeroutput></glossterm> + + <glossdef> + <para>Liste les identifiants des processus (PIDs) à terminer.</para> + </glossdef> + </glossentry> + </glosslist></para> + </listitem> + + <listitem> + <para><emphasis role="bold"><computeroutput>session close</computeroutput></emphasis>, + qui ferme des sessions spécifiques de l'invité à partir de l'ID de la + session ou de son nom.</para> + + <screen>VBoxManage guestcontrol <uuid|nomvm> session close + --session-id <ID> + | --session-name <nom ou extrait> + | --all + [--verbose]</screen> + + <para>où les paramètres signifient : <glosslist> + <glossentry> + <glossterm><computeroutput>uuid|nomvm</computeroutput></glossterm> + + <glossdef> + <para>L'UUID ou le nom de la VM. Obligatoire.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>--session-id</computeroutput></glossterm> + + <glossdef> + <para>Ferme une session de ;'invité spécifiée par son ID.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>--session-name</computeroutput></glossterm> + + <glossdef> + <para>Ferme une session de ;'invité spécifiée par son nom. Vous + pouvez fermer plusieurs sessions grâce aux jokers * ou ?.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>--all</computeroutput></glossterm> + + <glossdef> + <para>Ferme toutes les sessions de l'invité.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>--verbose</computeroutput></glossterm> + + <glossdef> + <para>Dit à VBoxManage d'être plus verbeux.</para> + </glossdef> + </glossentry> + </glosslist></para> + </listitem> + + <listitem> + <para><emphasis role="bold"><computeroutput>stat</computeroutput></emphasis>, qui affiche l'état d'un + fichier ou d'un système de fichiers de l'invité.</para> + + <screen>VBoxManage guestcontrol <nomvm>|<uuid> stat + <file>... --username <nom> + [--passwordfile <fichier> | --password <mot de passe>] + [--verbose]</screen> + + <para>où les paramètres signifient : <glosslist> + <glossentry> + <glossterm>uuid|nomvm</glossterm> + + <glossdef> + <para>L'UUID ou le nom de la VM. Obligatoire.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>élément(s) de fichier à vérifier sur l'invité</glossterm> + + <glossdef> + <para>Chemin absolu du/des répertoire(s) à vérifier sur l'invité, + comme <computeroutput>/home/foo/a.out</computeroutput>. + L'utilisateur spécifié doit avoir les droits adéquats d'accès + à/aux élément(s) fichier unique(s).</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>--username <nom></glossterm> + + <glossdef> + <para>Nom de l'utilisateur sous lequel devrait s'exécuter le + processus de copie. L'utilisateur doit exister sur l'OS invité.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>--passwordfile <fichier></glossterm> + + <glossdef> + <para>Mot de passe du compte utilisateur spécifié, à lire dans + le fichier donné. Si vous n'en donnez pas, un mot de passe + vierge est supposé.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>--password <mot de passe></glossterm> + + <glossdef> + <para>Mot de passe du compte utilisateur spécifié avec + <computeroutput>--username</computeroutput>. Si vous n'en + donnez pas, un mot de passe vierge est supposé.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>--verbose</computeroutput></glossterm> + + <glossdef> + <para>Dit à VBoxManage d'être plus verbeux.</para> + </glossdef> + </glossentry> + </glosslist></para> + </listitem> + + <listitem> + <para><emphasis role="bold"><computeroutput>updateadditions</computeroutput></emphasis>, qui permet de + mettre à jour une version des suppléments invité installée sur l'invité + (sur les suppléments invité installés 4.0 et supérieur).</para> + + <screen>VBoxManage guestcontrol <nomvm>|<uuid> updateadditions + [--source "<fichier des suppléments invité .ISO à utiliser>"] [--verbose] + [--wait-start] [-- [<argument1>] ... [<argumentN>]]</screen> + + <para>où les paramètres signifient : <glosslist> + <glossentry> + <glossterm>uuid|nomvm</glossterm> + + <glossdef> + <para>L'UUID ou le nom de la VM. Obligatoire.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>--source "<fichier des suppléments invité .ISO à + utiliser>"</glossterm> + + <glossdef> + <para>Chemin complet vers un autre fichier .ISO de suppléments + invité à utiliser pour mettre à jour les suppléments invité.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>--verbose</glossterm> + + <glossdef> + <para>Dit à VBoxManage d'être plus verbeux.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>--wait-start</glossterm> + <glossdef> + <para>Démarre le processus normal de mise à jour et attend + jusqu'à ce que la mise à jour des suppléments invité soit + effectivement démarrée dans l'invité. Cela peut être nécessaire + du fait de l'interaction nécessaire avec l'OS invité pendant + la phase d'installation.</para> + <para>Si vous ne mettez pas ce drapeau, VBoxManage attendra + que toute la mise à jour des suppléments invité s'achève.</para> + </glossdef> + </glossentry> + <glossentry> + <glossterm>[-- [<argument1s>] ... [<argumentNs>]]</glossterm> + + <glossdef> + <para>Arguments en ligne de commandes à utiliser avec l'installeur + des suppléments invité. Sert à ajouter des fonctions non + installées précédemment sur l'invité.</para> + <para>Vous devez entourer les arguments contenant des espaces + par des guillemets.</para> + </glossdef> + </glossentry> + </glosslist></para> + </listitem> + + <listitem> + <para><emphasis role="bold"><computeroutput>watch</computeroutput></emphasis>, + qui affiche un contrôle de l'activité actuelle de l'invité.</para> + + <screen>VBoxManage guestcontrol <uuid|nomvm> watch + [--verbose]</screen> + + <para>où les paramètres signifient : <glosslist> + <glossentry> + <glossterm><computeroutput>uuid|nomvm</computeroutput></glossterm> + + <glossdef> + <para>L'UUID ou le nom de la VM. Obligatoire.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm><computeroutput>--verbose</computeroutput></glossterm> + + <glossdef> + <para>Dit à VBoxManage d'être plus verbeux.</para> + </glossdef> + </glossentry> + </glosslist></para> + </listitem> + </itemizedlist></para> + </sect1> + + <sect1 id="vboxmanage-debugvm"> + <title>VBoxManage debugvm</title> + + <para>Les commandes "debugvm" sont pour les experts qui veulent jouer avec + les détails exacts de l'exécution d'une machine virtuelle. Comme le débogueur + de la VM décrit au <xref linkend="ts_debugger" />, ces commandes ne sont + utiles que si vous êtes très familier des détails l'architecture d'une VM et + de la façon de déboguer un logiciel.</para> + + <para>Les sous-commandes de "debugvm" fonctionnent sur une machine virtuelle + en fonction. Celles suivantes sont disponibles :<itemizedlist> + <listitem> + <para>Avec <computeroutput>dumpvmcore --filename + <nom></computeroutput>, vous pouvez créer un fichier de renvoi + système de la VM en fonction, qui sera écrit dans le fichier donné. + Ce fichier aura un format ELF cœur standard (avec des sections + personnalisées) ; voir + <xref linkend="ts_guest-core-format" />.</para> + + <para>Cela correspond à la commande + <computeroutput>writecore</computeroutput> du débogueur. + </para> + </listitem> + + <listitem> + <para>La commande <computeroutput>info</computeroutput> est utilisée + pour afficher des éléments d'info liés à la VMM, aux émulations de + périphérique et aux pilotes associés. Cette commande prend un ou + deux arguments : le nom de l'élément d'info, éventuellement suivi + d'une chaîne contenant les arguments spécifiques à l'élément d'info. + L'élément d'info <computeroutput>help</computeroutput> fournit une liste + des éléments disponibles et des astuces sur les arguments supplémentaires.</para> + + <para>Cela correspond à la commande <computeroutput>info</computeroutput> + du débogueur.</para> + </listitem> + + <listitem> + <para>La commande <computeroutput>injectnmi</computeroutput> provoque + une interruption non masquable (<foreignphrase>non-maskable interrupt</foreignphrase> + (NMI) dans l'invité, qui pourrait être utile dans certains scénarios + de débogage. Ce qui se passe exactement dépend du système d'exploitation + invité mais une NMI peut planter tout le système d'exploitation invité. + Ne l'utilisez pas, sauf si vous savez ce que vous faites.</para> + </listitem> + + <listitem> + <para>La commande <computeroutput>osdetect</computeroutput> lance + la fonction de (re)-détection du débogueur de VMM du système d'exploitation + de l'invité.</para> + + <para>Cela correspond à la commande <computeroutput>detect</computeroutput> + du débogueur.</para> + </listitem> + + <listitem> + <para>La commande <computeroutput>osinfo</computeroutput> est utilisée + pour afficher des infos sur le système d'exploitation (OS) détecté par + le débogueur de la VM.</para> + </listitem> + + <listitem> + <para>La commande <computeroutput>getregisters</computeroutput> est + utilisée pour afficher le registre du processeur et des périphériques. + La commande prend une liste des registres, chacun ayant une des + formes suivantes : + <itemizedlist> + <listitem><para><computeroutput>réglage-registre.nom-registre.sous-champ</computeroutput></para></listitem> + <listitem><para><computeroutput>réglage-registre.nom-registre</computeroutput></para></listitem> + <listitem><para><computeroutput>nom-registre-processeur.sous-champ</computeroutput></para></listitem> + <listitem><para><computeroutput>nom-registre-processeur</computeroutput></para></listitem> + <listitem><para><computeroutput>all</computeroutput></para></listitem> + </itemizedlist> + La forme <computeroutput>all</computeroutput> affichera tous les + registres (pas les sous-champs). Les noms des registres sont indifférents + à la casse. Quand vous interrogez un registre du processeur, vous + pouvez ne pas mettre le réglage du registre, il sera sélectionné en + utilisant la valeur de l'option <computeroutput>--cpu</computeroutput> + (0 par défaut). + </para> + </listitem> + + <listitem> + <para>La commande <computeroutput>setregisters</computeroutput> est + utilisée pour modifier les registres des périphériques et du processeur. + La commande prend une liste d'affectations de registres, chacune ayant + une des formes suivantes : + <itemizedlist> + <listitem><para><computeroutput>réglage-registre.nom-registre.sous-champ=valeur</computeroutput></para></listitem> + <listitem><para><computeroutput>réglage-registre.nom-registre=valeur</computeroutput></para></listitem> + <listitem><para><computeroutput>nom-registre-processeur.sous-champ=valeur</computeroutput></para></listitem> + <listitem><para><computeroutput>nom-registre-processeur=valeur</computeroutput></para></listitem> + </itemizedlist> + Le format de la valeur devrait être du même genre que ce qu'affiche + <computeroutput>getregisters</computeroutput>, sauf qu'on peut utiliser + des octets et des décimales au lieu de l'hexadécimal. Le nommage du + registre et le réglage par défaut du registre processeur sont gérés + de la même manière qu'avec la commande + <computeroutput>getregisters</computeroutput>.</para> + </listitem> + + <listitem> + <para>La commande <computeroutput>statistics</computeroutput> peut + être utilisée pour afficher des statistiques VMM sur la ligne de + commandes. L'option <computeroutput>--reset</computeroutput> réinitialisera + les statistiques. Les statistiques concernées sont filtrables avec l'option + <computeroutput>--pattern</computeroutput> qui accepte des jokers en style + DOS/NT (<computeroutput>?</computeroutput> et + <computeroutput>*</computeroutput>).</para> + </listitem> + </itemizedlist></para> + </sect1> + + <sect1 id="metrics"> + <title>VBoxManage metrics</title> + + <para>Cette commande supporte la surveillance de l'utilisation des ressources + système. Les ressources sont représentées par différents métriques associés + au système hôte ou à une VM en particulier. Par exemple, le système hôte a + un métrique <computeroutput>CPU/Load/User</computeroutput> qui affiche le + pourcentage du temps procceseur passé à tourner en mode utilisateur sur une + période spécifique.</para> + + <para>Les données de métrique sont rassemblées et stockées en interne ; + vous pouvez les récupérer n'importe quand avec la sous-commande + <computeroutput>VBoxManage metric query</computeroutput>. Les données sont + disponibles tant que le processus en tâche de fond + <computeroutput>VBoxSVC</computeroutput> est vivant. Ce processus + ce termine peu après que toutes les VMs et les interfaces ont été fermées.</para> + + <para>Par défaut, aucun métrique n'est enregistré. La récupération de + métriques ne commence pas avant que <computeroutput>VBoxManage metrics setup</computeroutput> + ne soit appelé avec un bon intervalle modèle et que le nombre de métriques + n'ait été conservé. On mesure l'intervalle en secondes. Par exemple, pour + activer la récupération des métriques de l'utilisation du processeur et de + la mémoire hôte toutes les secondes, en gardant les 5 échantillons les plus + actuels, vous pouvez utiliser la commande suivante :</para> + + <screen>VBoxManage metrics setup --period 1 --samples 5 host CPU/Load,RAM/Usage</screen> + + <para>Le recueil de métriques ne peut être activé que sur des VMs démarrées. + Les données et les paramètres de récupération d'une VM en particulier disparaîtront + dès que vous éteindrez la VM. Utilisez la sous-commande + <computeroutput>VBoxManage metrics list + </computeroutput> pour voir les métriques actuellement disponibles. Vous + pouvez aussi utiliser l'option <computeroutput>--list</computeroutput> avec + une sous-commande modifiant les paramètres de métrique pour chercher les + métriques concernés.</para> + + <para>Remarquez que la sous-commande <computeroutput>VBoxManage metrics + setup</computeroutput> désactive tous les échantillons qui peuvent avoir été + recueillis pour un jeu d'objets et de métriques spécifiques.</para> + + <para>Pour activer ou désactiver la récupération des métriques sans perdre + les données, vous pouvez utiliser les sous-commandes + <computeroutput>VBoxManage metrics enable</computeroutput> et + <computeroutput>VBoxManage metrics disable</computeroutput>. Remarquez que + ces sous-commandes attendent en paramètres des métriques, pas des sous-métriques, + comme <code>CPU/Load</code> ou <code>RAM/Usage</code>. En d'autres termes, + l'activation de <code>CPU/Load/User</code> tout en désactivant <code>CPU/Load/Kernel</code> + n'est pas supporté.</para> + + <para>L'hôte et les VMs ont différents ensembles de métriques associés. + Vous pouvez lister les métriques disponibles avec + <computeroutput>VBoxManage metrics + list</computeroutput> subcommand.</para> + + <para>Un nom de métrique complet peut inclure une fonction d'agrégat. Le + nom prend la forme suivante : + <computeroutput>Catégorie/Métrique[/SousMétrique][:aggrégé]</computeroutput>. + Par exemple, <computeroutput>RAM/Usage/Free:min</computeroutput> signifie la + quantité minimum de mémoire disponible parmi toutes les données en mémoire + , si c'est appliqué à l'objet hôte.</para> + + <para>Les sous-commandes peuvent s'appliquer à tous les objets et les + métriques ou se limiter à un objet et/ou une liste de métriques. Si vous + ne donnez aucun objet ni métrique en paramètres, les sous-commandes s'appliqueront + à tous les métriques disponibles de tous les objets. Vous pouvez utiliser + un astérisque ("<computeroutput>*</computeroutput>") pour spécifier explicitement + que la commande devrait s'appliquer à tous les objets ou à tous les métriques. + Utilisez "host" en nom d'objet pour limiter la cible de la commande aux + métriques relatifs à l'hôte. Pour limiter la cible à un sous-ensemble de métriques, + utilisez une liste de noms séparés par des virgules.</para> + + <para>Par exemple, pour interroger les données de métriques sur le temps + passé par le processeur en modes utilisateur et noyau, sur la machine virtuelle + nommée "test", vous pouvez utiliser la commande suivante :</para> + + <screen>VBoxManage metrics query test CPU/Load/User,CPU/Load/Kernel</screen> + + <para>La liste suivante résume les sous-commandes disponibles :</para> + + <glosslist> + <glossentry> + <glossterm>list</glossterm> + + <glossdef> + <para>Cette sous-commande affiche les paramètres des métriques + existant actuellement. Remarquez que les métriques spécifiques à la VM + ne sont disponibles que quand une VM en particulier + est en fonction.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>setup</glossterm> + + <glossdef> + <para>Cette sous-commande définit l'intervalle entre deux prises + d'échantillons des données de métriques et le nombre d'échantillons gardés + en interne. Les données mémorisées sont disponibles en affichage avec + la sous-commande <code>query</code>. L'option <computeroutput>--list + </computeroutput> affiche les métriques qui ont été modifiés dans le + résultat de l'exécution de la commande.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>enable</glossterm> + + <glossdef> + <para>Cette sous-commande "réactive le recueil de données après qu'il + ait été arrêté avec la sous-commande <code>disable</code>. Remarquez que + la spécification de sous-métriques comme paramètres n'activera pas les + métriques sous-jacents. Utilisez + <computeroutput>--list</computeroutput> pour savoir si la commande a + fait ce que vous aviez prévu.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>disable</glossterm> + + <glossdef> + <para>Cette sous-commande "suspend" le recueil des données sans + changer les paramètres de récupération ni altérer les données recueillies. + Remarquez que la spécification de sous-métriques en paramètres ne + désactivera pas les métriques sous-jacents. Utilisez + <computeroutput>--list</computeroutput> pour voir si la commande a fait + ce que vous aviez prévu.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>query</glossterm> + + <glossdef> + <para>Cette sous-commande récupère et affiche les données de métriques + mémorisés.<note> + <para>La sous-commande <code>query</code> ne supprime + pas ni ne remet à 0 les données mémorisées. Si vous interrogez + assez souvent, vous verrez la vitesse d'évacuation graduelle des + anciens échantillons par les nouveaux.</para> + </note></para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>collect</glossterm> + + <glossdef> + <para>Cette sous-commande définit l'intervalle entre la prise de deux + échantillons de données de métrique et le nombre d'échantillons mémorisés + en interne. Les données recueillies s'affichent périodiquement jusqu'à + ce que vous appuyiez sur Ctrl-C, sauf si vous spécifiez l'option + <computeroutput>--detach</computeroutput>. Avec l'option + <computeroutput>--detach</computeroutput>, cette sous-commande agit de + la même façon que <code>setup</code>. L'option <computeroutput>--list</computeroutput> + affiche les métriques correspondant au filtre spécifié.</para> + </glossdef> + </glossentry> + </glosslist> + </sect1> + + <sect1> + <title>VBoxManage hostonlyif</title> + + <para>Avec "hostonlyif", vous pouvez changer la configuration de l'IP d'une + interface réseau host-only. Pour une description du réseau host-only, merci + de vous reporter au <xref linkend="network_hostonly" />. Chaque interface + host-only est identifiée par un nom et peut soit utiliser le serveur DHCP interne, soit + voir son adresse IP configurée à la main (IP4 et IP6).</para> + </sect1> + + <sect1 id="vboxmanage-dhcpserver"> + <title>VBoxManage dhcpserver</title> + + <para>Les commandes de "dhcpserver" vous permettent de contrôler le serveur + DHCP construit dans VirtualBox. Vous pourriez trouver cela utile si vous + utilisez le réseau interne ou host-only. (En théorie, vous pouvez + l'activer aussi pour un réseau bridgé, mais cela provoquera probablement des + conflits avec d'autres serveurs DHCP de votre réseau physique.)</para> + + <para>Utilisez les options suivantes de la ligne de commandes :<itemizedlist> + <listitem> + <para>Si vous utilisez le réseau interne pour l'adaptateur réseau + virtuel d'une machine virtuelle, utilisez <computeroutput>VBoxManage dhcpserver add + --netname <nom_réseau></computeroutput>, où + <computeroutput><nom_réseau></computeroutput> est le même nom + de réseau que celui que vous avez utilisé avec + <computeroutput>VBoxManage modifyvm + <nomvm> --intnet<X> + <nom_réseau></computeroutput>.</para> + </listitem> + + <listitem> + <para>Si vous utilisez le réseau interne pour l'adaptateur réseau + virtuel d'une machine virtuelle, utilisez plutôt <computeroutput>VBoxManage dhcpserver add + --ifname <hostonly_if_name></computeroutput>, où + <computeroutput><hostonly_if_name></computeroutput> est le même + nom de l'interface host-only que vous avez utilisé avec + <computeroutput>VBoxManage modifyvm <nomvm> + --hostonlyadapter<X> + <hostonly_if_name></computeroutput>.</para> + + <para>Vous pouvez aussi utiliser l'option --netname comme avec les + réseaux internes si vous connaissez le nom du réseau host-only ; + vous pouvez voir les noms avecc <computeroutput>VBoxManage list + hostonlyifs</computeroutput> (voir <xref linkend="vboxmanage-list" /> + ci-dessus).</para> + </listitem> + </itemizedlist></para> + + <para>Les paramètres suivants supplémentaires sont requis quand vous ajoutez + un serveur DHCP pour la première fois :<itemizedlist> + <listitem> + <para>Avec <computeroutput>--ip</computeroutput>, spécifiez l'adresse + IP du serveur DHCP lui-même.</para> + </listitem> + + <listitem> + <para>Avec <computeroutput>--netmask</computeroutput>, spécifiez + le masque du réseau.</para> + </listitem> + + <listitem> + <para>Avec <computeroutput>--lowerip</computeroutput> et + <computeroutput>--upperip</computeroutput>, vous pouvez spécifier + respectivement l'adresse la plus basse et la plus haute que le serveur + DHCP attribuera aux clients.</para> + </listitem> + </itemizedlist></para> + + <para>Enfin, vous devez spécifier<computeroutput>--enable</computeroutput>, + sinon le serveur DHCP sera créé en étant désactivé, ce qui ne fera rien.</para> + + <para>Après cela, VirtualBox démarrera automatiquement le serveu DHCP pour + le réseau donné, interne ou host-only, dès que la première machine virtuelle utilisant + ce réseau sera démarrée.</para> + + <para>Inversement, utilisez <computeroutput>VBoxManage dhcpserver + remove</computeroutput> avec <computeroutput>--netname + <nom_réseau></computeroutput> ou <computeroutput>--ifname + <hostonly_if_name></computeroutput> pour supprimer le serveur DHCP, + de nouveau pour le réseau interne ou host-only donné.</para> + + <para>Pour modifier les paramètres d'un serveurDHCP créé précédemment avec + <computeroutput>VBoxManage dhcpserver add</computeroutput>, vous pouvez + utiliser + <computeroutput>VBoxManage dhcpserver modify</computeroutput> pour une + interface réseau interne ou host-only donnée.</para> + </sect1> + + <sect1 id="vboxmanage-extpack"> + <title>VBoxManage extpack</title> + + <para>La commande "extpack" vous permet d'ajouter ou de supprimer des packs + d'extension de VirtualBox comme décrit au <xref + linkend="intro-installing" />.<itemizedlist> + <listitem> + <para>Pour ajouter un nouveau pack d'extension, utilisez <computeroutput>VBoxManage + extpack install <.vbox-extpack></computeroutput>. Cette commande + échouera si une version plus ancienne du même pack d'extension est + déjà installée. Vous pouvez utiliser le paramètre optionnel + <computeroutput>--replace</computeroutput> pour désinstaller l'ancien + paquet avant d'installer le nouveau paquet..</para> + </listitem> + + <listitem> + <para>Pour supprimer un pack d'extension précédemment installé, utilisez + <computeroutput>VBoxManage extpack uninstall + <nom></computeroutput>. Vous pouvez utiliser + <computeroutput>VBoxManage list extpacks</computeroutput> pour + afficher les noms des pack d'extensions actuellement installés ; + merci de voir aussi <xref linkend="vboxmanage-list" />. Vous pouvez + utiliser le paramètre optionnel <computeroutput>--force</computeroutput> + pour surpasser le refus de se désinstaller d'un pack d'extension.</para> + </listitem> + + <listitem> + <para>La commande <computeroutput>VBoxManage extpack + cleanup</computeroutput> peut être utilisée pour supprimer temporairement + les fichiers et les répertoires qui peuvent avoir été laissés après + l'échec d'une précédente commande d'installation ou de désinstallation.</para> + </listitem> + </itemizedlist></para> + <para>Les commandes suivantes montrent des exemples d'une liste des packs + d'extension et de la manière d'en supprimer un :<screen> +$ VBoxManage list extpacks +pack d'extensions: 1 +Pack no. 0: Oracle VM VirtualBox pack d'extension +Version: 4.1.12 +Revision: 77218 +Edition: +Description: USB 2.0 Host Controller, VirtualBox RDP, PXE ROM with E1000 support. +VRDE Module: VBoxVRDP +Usable: true +Why unusable: +$ VBoxManage extpack uninstall "Oracle VM VirtualBox pack d'extension" +0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100% +Successfully uninstalled "Oracle VM VirtualBox pack d'extension".</screen></para> + </sect1> +</chapter> diff --git a/doc/manual/fr_FR/user_VirtualBoxAPI.xml b/doc/manual/fr_FR/user_VirtualBoxAPI.xml new file mode 100644 index 00000000..b182d11f --- /dev/null +++ b/doc/manual/fr_FR/user_VirtualBoxAPI.xml @@ -0,0 +1,25 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" + "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd"> +<chapter id="VirtualBoxAPI"> + <title>Interfaces de programmation de VirtualBox</title> + + <para>VirtualBox est fourni avec un support complet pour les développeurs + tiers. Ce qu'on appelle "l'API principale" de VirtualBox implémente toutes + les fonctionnalités du moteur de virtualisation. Elle est complètement documentée + et disponible pour n'importe qui souhaitant contrôler VirtualBox en programmant. + </para> + + <para>L'API principale est disponible pour des clients C++ via COM (sur les + hôtes Windows) ou XPCOM (sur les autres hôtes). Des passerelles existent + aussi avec SOAP, Java et Python.</para> + + <para>Toutes les informations sur la programmation (documentation, informations + de référence, en-têtes et autres fichiers d'interface ainsi que des modèles) + ont été mises dans un <emphasis role="bold">Software Development Kit (SDK),</emphasis> + distinct disponible en téléchargement sur <ulink type="" + url="http://www.virtualbox.org">http://www.virtualbox.org</ulink>. En + particulier, le SDK est fourni avec un "Guide de pogrammation et de Référence" + au format PDF contenant entre autres des informations qui se trouvaient jadis + dans ce chapitre du manuel de l'utilisateur.</para> +</chapter> |