<!ENTITY % aptent SYSTEM "apt.ent">
%aptent;
+<!ENTITY % aptverbatiment SYSTEM "apt-verbatim.ent">
+%aptverbatiment;
+
]>
<refentry>
&apt-email;
&apt-product;
<!-- The last update date -->
- <date>29 February 2004</date>
+ <date>08 November 2008</date>
</refentryinfo>
<refmeta>
<refentrytitle>apt-get</refentrytitle>
<manvolnum>8</manvolnum>
+ <refmiscinfo class="manual">APT</refmiscinfo>
</refmeta>
<!-- Man page title -->
<refsynopsisdiv>
<cmdsynopsis>
<command>apt-get</command>
- <arg><option>-hvs</option></arg>
- <arg><option>-o=<replaceable>config string</replaceable></option></arg>
- <arg><option>-c=<replaceable>file</replaceable></option></arg>
+ <arg><option>-sqdyfmubV</option></arg>
+ <arg>
+ <option>-o=
+ <replaceable>config_string</replaceable>
+ </option>
+ </arg>
+ <arg>
+ <option>-c=
+ <replaceable>config_file</replaceable>
+ </option>
+ </arg>
+ <arg>
+ <option>-t=</option>
+ <arg choice='plain'>
+ <replaceable>target_release</replaceable>
+ </arg>
+ </arg>
+ <arg>
+ <option>-a=</option>
+ <arg choice='plain'>
+ <replaceable>default_architecture</replaceable>
+ </arg>
+ </arg>
+
+
<group choice="req">
- <arg>update</arg>
- <arg>upgrade</arg>
- <arg>dselect-upgrade</arg>
- <arg>install <arg choice="plain" rep="repeat"><replaceable>pkg</replaceable></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" rep="repeat"><replaceable>pkg</replaceable></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'>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'>
+ <arg choice='plain'>
+ =<replaceable>pkg_version_number</replaceable>
+ </arg>
+ <arg choice='plain'>
+ /<replaceable>target_release</replaceable>
+ </arg>
+ </group>
+ </arg>
+ </arg>
+ </arg>
+ <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>
+ <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 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>
<varlistentry><term>install</term>
- <listitem><para><literal>install</literal> is followed by one or more packages desired for
- installation. 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>
+ <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>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
<para>Both of the version selection mechanisms can downgrade packages and must
be used with care.</para>
+ <para>This is also the target to use if you want to upgrade one or
+ more already-installed packages without upgrading every package
+ you have on your system. Unlike the "upgrade" target, which
+ installs the newest version of all currently installed packages,
+ "install" will install the newest version of only the package(s)
+ specified. Simply provide the name of the package(s) you wish
+ to upgrade, and if a newer version is available, it (and its
+ dependencies, as described above) will be downloaded and
+ installed.
+ </para>
+
<para>Finally, the &apt-preferences; mechanism allows you to
create an alternative installation policy for
individual packages.</para>
<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> for the architecture as
+ defined by the <command>--host-architecture</command> option.
+ 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>build-dep</term>
<listitem><para><literal>build-dep</literal> causes apt-get to install/remove packages in an
- attempt to satisfy the build dependencies for a source package.</para></listitem>
+ attempt to satisfy the build dependencies for a source package. By default the dependencies are
+ satisfied to build the package nativly. If desired a host-architecture can be specified
+ with the <option>--host-architecture</option> option instead.</para></listitem>
</varlistentry>
<varlistentry><term>check</term>
for broken dependencies.</para></listitem>
</varlistentry>
+ <varlistentry><term>download</term>
+ <listitem><para><literal>download</literal> will download the given
+ binary package into the current directory.
+ </para></listitem>
+ </varlistentry>
+
<varlistentry><term>clean</term>
<listitem><para><literal>clean</literal> clears out the local repository of retrieved package
files. It removes everything but the lock file from
<varlistentry><term>autoremove</term>
<listitem><para><literal>autoremove</literal> is used to remove packages that were automatically
- installed to satisfy dependencies for some package and that are no more needed.</para></listitem>
+ installed to satisfy dependencies for other packages and are now no longer needed.</para></listitem>
+ </varlistentry>
+
+ <varlistentry><term>changelog</term>
+ <listitem><para><literal>changelog</literal> downloads a package changelog and displays
+ it through <command>sensible-pager</command>. The server name and base
+ directory is defined in the <literal>APT::Changelogs::Server</literal>
+ variable (e. g. <ulink>http://packages.debian.org/changelogs</ulink> for
+ Debian or <ulink>http://changelogs.ubuntu.com/changelogs</ulink> for
+ Ubuntu).
+ By default it displays the changelog for the version that is
+ installed. However, you can specify the same options as for
+ the <option>install</option> command.
+ </para>
+ </listitem>
</varlistentry>
+
+
+
</variablelist>
</refsect1>
&apt-cmdblurb;
<variablelist>
+ <varlistentry><term><option>--no-install-recommends</option></term>
+ <listitem><para>Do not consider recommended packages as a dependency for installing.
+ Configuration Item: <literal>APT::Install-Recommends</literal>.</para></listitem>
+ </varlistentry>
+
+ <varlistentry><term><option>--install-suggests</option></term>
+ <listitem><para>Consider suggested packages as a dependency for installing.
+ Configuration Item: <literal>APT::Install-Suggests</literal>.</para></listitem>
+ </varlistentry>
+
<varlistentry><term><option>-d</option></term><term><option>--download-only</option></term>
<listitem><para>Download only; package files are only retrieved, not unpacked or installed.
Configuration Item: <literal>APT::Get::Download-Only</literal>.</para></listitem>
<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::Assume-Yes</literal>.</para></listitem>
</varlistentry>
+ <varlistentry><term><option>--assume-no</option></term>
+ <listitem><para>Automatic "no" to all prompts.
+ Configuration Item: <literal>APT::Get::Assume-No</literal>.</para></listitem>
+ </varlistentry>
+
<varlistentry><term><option>-u</option></term><term><option>--show-upgraded</option></term>
<listitem><para>Show upgraded packages; Print out a list of all packages that are to be
upgraded.
Configuration Item: <literal>APT::Get::Show-Versions</literal>.</para></listitem>
</varlistentry>
+ <varlistentry><term><option>-a</option></term>
+ <term><option>--host-architecture</option></term>
+ <listitem><para>This option controls the architecture packages are built for
+ by <command>apt-get source --compile</command> and how cross-builddependencies
+ are satisfied. By default is not set which means that the host architecture
+ is the same as the build architecture (which is defined by <literal>APT::Architecture</literal>)
+ Configuration Item: <literal>APT::Get::Host-Architecture</literal>
+ </para></listitem>
+ </varlistentry>
+
<varlistentry><term><option>-b</option></term><term><option>--compile</option></term>
<term><option>--build</option></term>
<listitem><para>Compile source packages after downloading them.
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>
<term><option>--target-release</option></term>
<term><option>--default-release</option></term>
<listitem><para>This option controls the default input to the policy engine, it creates
- a default pin at priority 990 using the specified release string. The
- preferences file may further override this setting. In short, this option
+ a default pin at priority 990 using the specified release string.
+ This overrides the general settings in <filename>/etc/apt/preferences</filename>.
+ Specifically pinned packages are not affected by the value
+ 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>
<refsect1><title>Diagnostics</title>
<para><command>apt-get</command> returns zero on normal operation, decimal 100 on error.</para>
</refsect1>
-
+ <refsect1>
+ <title>ORIGINAL AUTHORS</title>
+ <para>&apt-author.jgunthorpe;</para>
+ </refsect1>
+ <refsect1>
+ <title>CURRENT AUTHORS</title>
+ <para>
+ &apt-author.team;
+ </para>
+ &apt-qapage;
+ </refsect1>
&manbugs;
-
</refentry>