]> git.saurik.com Git - apt.git/blobdiff - doc/apt-get.8.xml
[ Martin Pitt ]
[apt.git] / doc / apt-get.8.xml
index a69fbcd48980bcd8f7a432164201d9095681953a..abdec96c119c18de10aa2bc711f208665811bbe3 100644 (file)
    &apt-email;
    &apt-product;
    <!-- The last update date -->
-   <date>30 October 2008</date>
+   <date>08 November 2008</date>
  </refentryinfo>
  
  <refmeta>
    <refentrytitle>apt-get</refentrytitle>
    <manvolnum>8</manvolnum>
+   <refmiscinfo class="manual">APT</refmiscinfo>
  </refmeta>
  
  <!-- Man page title -->
@@ -33,7 +34,7 @@
  <refsynopsisdiv>
    <cmdsynopsis>
       <command>apt-get</command>
-      <arg><option>-hvsqdyfmubV</option></arg>
+      <arg><option>-sqdyfmubV</option></arg>
       <arg>
              <option>-o=
                          <replaceable>config_string</replaceable>
              </option>
       </arg>
       <arg>
-                 <option>-t=</option>
-                 <group choice='req'>
-                         <arg choice='plain'>
-                                 <replaceable>target_release_name</replaceable>
-                         </arg>
-                         <arg choice='plain'>
-                                 <replaceable>target_release_number_expression</replaceable>
-                         </arg>
-                 </group>
+               <option>-t=</option>
+               <arg choice='plain'>
+                       <replaceable>target_release</replaceable>
+               </arg>
       </arg>
 
       <group choice="req">
-         <arg>update</arg>
-         <arg>upgrade</arg>
-         <arg>dselect-upgrade</arg>
-         <arg>install 
+         <arg choice='plain'>update</arg>
+         <arg choice='plain'>upgrade</arg>
+         <arg choice='plain'>dselect-upgrade</arg>
+         <arg choice='plain'>dist-upgrade</arg>
+         <arg choice='plain'>install 
                         <arg choice="plain" rep="repeat"><replaceable>pkg</replaceable>
                                <arg>
                                        <group choice='req'>
                                                        =<replaceable>pkg_version_number</replaceable>
                                                </arg>
                                                <arg choice='plain'>
-                                                       /<replaceable>target_release_name</replaceable>
+                                                       /<replaceable>target_release</replaceable>
                                                </arg>
                                        </group>
                                </arg>
                         </arg>
             </arg>
-         <arg>remove <arg choice="plain" rep="repeat"><replaceable>pkg</replaceable></arg></arg>
-         <arg>purge <arg choice="plain" rep="repeat"><replaceable>pkg</replaceable></arg></arg>
-         <arg>source 
+         <arg choice='plain'>remove <arg choice="plain" rep="repeat"><replaceable>pkg</replaceable></arg></arg>
+         <arg choice='plain'>purge <arg choice="plain" rep="repeat"><replaceable>pkg</replaceable></arg></arg>
+         <arg choice='plain'>source 
                         <arg choice="plain" rep="repeat"><replaceable>pkg</replaceable>
-                                <arg>
-                                        =<replaceable>pkg_version_number</replaceable>
-                                </arg>
+                               <arg>
+                                       <group choice='req'>
+                                               <arg choice='plain'>
+                                                       =<replaceable>pkg_version_number</replaceable>
+                                               </arg>
+                                               <arg choice='plain'>
+                                                       /<replaceable>target_release</replaceable>
+                                               </arg>
+                                       </group>
+                               </arg>
                         </arg>
             </arg>
-         <arg>build-dep <arg choice="plain" rep="repeat"><replaceable>pkg</replaceable></arg></arg>
-         <arg>check</arg>
-         <arg>clean</arg>
-         <arg>autoclean</arg>
-         <arg>autoremove</arg>
+         <arg choice='plain'>build-dep <arg choice="plain" rep="repeat"><replaceable>pkg</replaceable></arg></arg>
+         <arg choice='plain'>check</arg>
+         <arg choice='plain'>clean</arg>
+         <arg choice='plain'>autoclean</arg>
+         <arg choice='plain'>autoremove</arg>
+                <arg choice='plain'>
+                        <group choice='req'>
+                               <arg choice='plain'>-v</arg>
+                               <arg choice='plain'>--version</arg>
+                        </group>
+                </arg>
+                <arg choice='plain'>
+                        <group choice='req'>
+                               <arg choice='plain'>-h</arg>
+                               <arg choice='plain'>--help</arg>
+                        </group>
+                </arg>
       </group>   
    </cmdsynopsis>
  </refsynopsisdiv>
  <refsect1><title>Description</title>
    <para><command>apt-get</command> is the command-line tool for handling packages, and may be 
    considered the user's "back-end" to other tools using the APT
-   library.  Several "front-end" interfaces exist, such as dselect(8),
-   aptitude, synaptic, gnome-apt and wajig.</para>
+   library.  Several "front-end" interfaces exist, such as &dselect;,
+   &aptitude;, &synaptic; and &wajig;.</para>
 
    <para>Unless the <option>-h</option>, or <option>--help</option> option is given, one of the
    commands below must be present.</para>
      with new versions of packages; <command>apt-get</command> has a "smart" conflict 
      resolution system, and it will attempt to upgrade the most important 
      packages at the expense of less important ones if necessary. 
+        So, <literal>dist-upgrade</literal> command may remove some packages.
      The <filename>/etc/apt/sources.list</filename> file contains a list of locations 
      from which to retrieve desired package files.
      See also &apt-preferences; for a mechanism for
 
      <varlistentry><term>install</term>
      <listitem>
-            <para>
-                    <literal>install</literal> is followed by one or more 
-                    packages desired for installation or upgrading. 
-                    Each package is a package name, not a fully qualified 
-                    filename (for instance, in a Debian GNU/Linux system, 
-                    libc6 would be the argument provided, not 
-                    <literal>libc6_1.9.6-2.deb</literal>). All packages required 
-                    by the package(s) specified for installation will also 
-                    be retrieved and installed. 
-                    The <filename>/etc/apt/sources.list</filename> file is 
-                    used to locate the desired packages. If a hyphen is 
-                    appended to the package name (with no intervening space), 
-                    the identified package will be removed if it is installed. 
-                    Similarly a plus sign can be used to designate a 
-                    package to install. These latter features may be used 
-                    to override decisions made by apt-get's conflict 
-                    resolution system.
-            </para>
+        <para><literal>install</literal> is followed by one or more 
+        packages desired for installation or upgrading. 
+        Each package is a package name, not a fully qualified 
+        filename (for instance, in a Debian GNU/Linux system, 
+        libc6 would be the argument provided, not 
+        <literal>libc6_1.9.6-2.deb</literal>). All packages required 
+        by the package(s) specified for installation will also 
+        be retrieved and installed. 
+        The <filename>/etc/apt/sources.list</filename> file is 
+        used to locate the desired packages. If a hyphen is 
+        appended to the package name (with no intervening space), 
+        the identified package will be removed if it is installed. 
+        Similarly a plus sign can be used to designate a 
+        package to install. These latter features may be used 
+        to override decisions made by apt-get's conflict 
+        resolution system.
+        </para>
 
      <para>A specific version of a package can be selected for installation by 
      following the package name with an equals and the version of the package 
 
      <varlistentry><term>remove</term>
      <listitem><para><literal>remove</literal> is identical to <literal>install</literal> except that packages are 
-     removed instead of installed. If a plus sign is appended to the package 
+        removed instead of installed. Note the removing a package leaves its
+        configuration files in system. If a plus sign is appended to the package 
      name (with no intervening space), the identified package will be 
      installed instead of removed.</para></listitem>
      </varlistentry>
 
      <varlistentry><term>purge</term>
      <listitem><para><literal>purge</literal> is identical to <literal>remove</literal> except that packages are 
-     removed and purged.</para></listitem>
+     removed and purged (any configuration files are deleted too).</para></listitem>
      </varlistentry>
 
      <varlistentry><term>source</term>
      <listitem><para><literal>source</literal> causes <command>apt-get</command> to fetch source packages. APT 
      will examine the available packages to decide which source package to 
      fetch. It will then find and download into the current directory the 
-     newest available version of that source package. Source packages are 
-     tracked separately from binary packages via <literal>deb-src</literal> type lines 
-     in the &sources-list; file. This probably will mean that you will not 
-     get the same source as the package you have installed or as you could 
-     install. If the --compile options is specified then the package will be 
-     compiled to a binary .deb using dpkg-buildpackage, if --download-only is 
-     specified then the source package will not be unpacked.</para>
+     newest available version of that source package while respect the
+     default release, set with the option <literal>APT::Default-Release</literal>,
+     the <option>-t</option> option or per package with the
+     <literal>pkg/release</literal> syntax, if possible.</para>
+
+     <para>Source packages are tracked separately
+     from binary packages via <literal>deb-src</literal> type lines 
+     in the &sources-list; file. This means that you will need to add such a line
+     for each repository you want to get sources from. If you don't do this
+     you will properly get another (newer, older or none) source version than
+     the one you have installed or could install.</para>
+
+     <para>If the <option>--compile</option> option is specified
+     then the package will be compiled to a binary .deb using
+     <command>dpkg-buildpackage</command>, if <option>--download-only</option>
+     is specified then the source package will not be unpacked.</para>
 
      <para>A specific source version can be retrieved by postfixing the source name
      with an equals and then the version to fetch, similar to the mechanism
      <varlistentry><term><option>-f</option></term><term><option>--fix-broken</option></term>
      <listitem><para>Fix; attempt to correct a system with broken dependencies in            
      place. This option, when used with install/remove, can omit any packages
-     to permit APT to deduce a likely solution. Any Package that are specified
-     must completely correct the problem. The option is sometimes necessary when 
+     to permit APT to deduce a likely solution. If packages are specified,
+     these have to completely correct the problem. The option is sometimes necessary when 
      running APT for the first time; APT itself does not allow broken package 
      dependencies to exist on a system. It is possible that a system's 
      dependency structure can be so corrupt as to require manual intervention 
      actually change the system. 
      Configuration Item: <literal>APT::Get::Simulate</literal>.</para>
 
+     <para>Simulation run as user will deactivate locking (<literal>Debug::NoLocking</literal>)
+     automatic. Also a notice will be displayed indicating that this is only a simulation,
+     if the option <literal>APT::Get::Show-User-Simulation-Note</literal> is set (Default: true).
+     Neither NoLocking nor the notice will be triggered if run as root (root should know what
+     he is doing without further warnings by <literal>apt-get</literal>).</para>
+
      <para>Simulate prints out
      a series of lines each one representing a dpkg operation, Configure (Conf),
-     Remove (Remv), Unpack (Inst). Square brackets indicate broken packages with
+     Remove (Remv), Unpack (Inst). Square brackets indicate broken packages
      and empty set of square brackets meaning breaks that are of no consequence
      (rare).</para></listitem>
      </varlistentry>
      Configuration Item: <literal>APT::Get::Compile</literal>.</para></listitem>
      </varlistentry>
 
+     <varlistentry><term><option>--install-recommends</option></term>
+     <listitem><para>Also install recommended packages.</para></listitem>
+     </varlistentry>
+
+     <varlistentry><term><option>--no-install-recommends</option></term>
+     <listitem><para>Do not install recommended packages.</para></listitem>
+     </varlistentry>
+
      <varlistentry><term><option>--ignore-hold</option></term>
      <listitem><para>Ignore package Holds; This causes <command>apt-get</command> to ignore a hold 
      placed on a package. This may be useful in conjunction with 
      Configuration Item: <literal>APT::Get::Upgrade</literal>.</para></listitem>
      </varlistentry>
 
+     <varlistentry><term><option>--only-upgrade</option></term>
+     <listitem><para>Do not install new packages; When used in conjunction with <literal>install</literal>,
+     <literal>only-upgrade</literal> will prevent packages on the command line
+     from being upgraded if they are not already installed.
+     Configuration Item: <literal>APT::Get::Only-Upgrade</literal>.</para></listitem>
+     </varlistentry>
+
      <varlistentry><term><option>--force-yes</option></term>
      <listitem><para>Force yes; This is a dangerous option that will cause apt to continue 
      without prompting if it is doing something potentially harmful. It 
      <varlistentry><term><option>--purge</option></term>
      <listitem><para>Use purge instead of remove for anything that would be removed.
      An asterisk ("*") will be displayed next to packages which are
-     scheduled to be purged.
+        scheduled to be purged. <option>remove --purge</option> is equivalent to the
+        <option>purge</option> command.
      Configuration Item: <literal>APT::Get::Purge</literal>.</para></listitem>
      </varlistentry>
 
      of this option. In short, this option
      lets you have simple control over which distribution packages will be
      retrieved from. Some common examples might be 
-     <option>-t '2.1*'</option> or <option>-t unstable</option>.
+     <option>-t '2.1*'</option>, <option>-t unstable</option>
+     or <option>-t sid</option>.
      Configuration Item: <literal>APT::Default-Release</literal>;
      see also the &apt-preferences; manual page.</para></listitem>
      </varlistentry>
 
  <refsect1><title>Files</title>
    <variablelist>
-     <varlistentry><term><filename>/etc/apt/sources.list</filename></term>
-     <listitem><para>Locations to fetch packages from.
-     Configuration Item: <literal>Dir::Etc::SourceList</literal>.</para></listitem>
-     </varlistentry>
-     
-     <varlistentry><term><filename>/etc/apt/apt.conf</filename></term>
-     <listitem><para>APT configuration file.
-     Configuration Item: <literal>Dir::Etc::Main</literal>.</para></listitem>
-     </varlistentry>
-     
-     <varlistentry><term><filename>/etc/apt/apt.conf.d/</filename></term>
-     <listitem><para>APT configuration file fragments.
-     Configuration Item: <literal>Dir::Etc::Parts</literal>.</para></listitem>
-     </varlistentry>
-     
-     <varlistentry><term><filename>/etc/apt/preferences</filename></term>
-     <listitem><para>Version preferences file.
-     This is where you would specify "pinning",
-     i.e. a preference to get certain packages
-     from a separate source
-     or from a different version of a distribution.
-     Configuration Item: <literal>Dir::Etc::Preferences</literal>.</para></listitem>
-     </varlistentry>
-     
-     <varlistentry><term><filename>&cachedir;/archives/</filename></term>
-     <listitem><para>Storage area for retrieved package files.
-     Configuration Item: <literal>Dir::Cache::Archives</literal>.</para></listitem>
-     </varlistentry>
-     
-     <varlistentry><term><filename>&cachedir;/archives/partial/</filename></term>
-     <listitem><para>Storage area for package files in transit.
-     Configuration Item: <literal>Dir::Cache::Archives</literal> (implicit partial). </para></listitem>
-     </varlistentry>
-     
-     <varlistentry><term><filename>&statedir;/lists/</filename></term>
-     <listitem><para>Storage area for state information for each package resource specified in
-     &sources-list;
-     Configuration Item: <literal>Dir::State::Lists</literal>.</para></listitem>
-     </varlistentry>
-  
-     <varlistentry><term><filename>&statedir;/lists/partial/</filename></term>
-     <listitem><para> Storage area for state information in transit.
-     Configuration Item: <literal>Dir::State::Lists</literal> (implicit partial).</para></listitem>
-     </varlistentry>     
+     &file-sourceslist;
+     &file-aptconf;
+     &file-preferences;
+     &file-cachearchives;
+     &file-statelists;
    </variablelist>
  </refsect1>
 
         <title>CURRENT AUTHORS</title>
         <para>
                 &apt-author.team;
-                &apt-qapage;
         </para>
+                &apt-qapage;
  </refsect1>
  &manbugs;
 </refentry>