Installation commands
-
apt-get install <package_name>
-
apt-get build-dep <package_name>
This command searches the repositories and installs the build dependencies for <package_name>. If the package is not in the repositories it will return an error.
-
aptitude install <package_name>
Aptitude is an Ncurses viewer of packages installed or available. Aptitude can be used from the command line in a similar way to apt-get. See man aptitude for more information.
-
APT
and aptitude will accept multiple package names as a space delimited
list. For example:
apt-get install <package1_name> <package2_name> <package3_name>
Use the -s flag to simulate an action."sudo apt-get -s install <package_name>" will simulate installing the package showing you what packages will be installed and configured.
auto-apt
-
auto-apt run <command_string>
When invoked, the auto-apt command automatically installs packages upon missing file access. If a program tries to access a file known to belong in an uninstalled package, auto-apt will install that package using apt-get. This feature requires apt and sudo to work.
-
-
You're
compiling a program and, all of a sudden, there's an error because
it needs a file you don't have. The program auto-apt asks you to
install packages if they're needed, stopping the relevant process
and continuing once the package is installed.
# auto-apt run ./configure
It will then ask to install the needed packages and call apt-get automatically. If you're running X, a graphical interface will replace the default text interface.
-
You're
compiling a program and, all of a sudden, there's an error because
it needs a file you don't have. The program auto-apt asks you to
install packages if they're needed, stopping the relevant process
and continuing once the package is installed.
Maintenance commands
-
apt-get update
Run this command after changing /etc/apt/sources.list or /etc/apt/preferences . For information regarding /etc/apt/preferences, see PinningHowto. Run this command periodically to make sure your source list is up-to-date. This is the equivalent of "Reload" in Synaptic or "Fetch updates" in Adept.
-
apt-get upgrade
-
apt-get dist-upgrade
The same as the above, except add the "smart upgrade" checkbox. It tells APT to use "smart" conflict resolution system, and it will attempt to upgrade the most important packages at the expense of less important ones if necessary."apt-get dist-upgrade" does not perform distribution upgrade. See [http://www.ubuntu.com/getubuntu/upgrading upgrading] for more information. -
apt-get check
-
apt-get -f install
This command does the same thing as Edit->Fix Broken Packages in Synaptic. Do this if you get complaints about packages with "unmet dependencies".
-
apt-get autoclean
This command removes .deb files for packages that are no longer installed on your system. Depending on your installation habits, removing these files from /var/cache/apt/archives may regain a significant amount of diskspace.
-
apt-get clean
The same as above, except it removes all packages from the package cache. This may not be desirable if you have a slow Internet connection, since it will cause you to redownload any packages you need to install a program.
-
dpkg-reconfigure <package_name>
-
echo "<package_name> hold" | dpkg --set-selections
This command places the desired package on hold.
This command may have the unintended side effect of preventing upgrades to packages that depend on updated versions of the pinned package. apt-get dist-upgrade will override this, but will warn you first. If you want to use this command with sudo, you need to use echo "<package_name> hold" | sudo dpkg --set-selections not sudo echo "<package_name> hold" | dpkg --set-selections. -
-
echo "<package_name> install" | dpkg --set-selections
This command removes the "hold" or "locked package" state set by the above command. The note above about sudo usage applies to this command.
Removal commands
-
apt-get remove <package_name>
-
apt-get purge <package_name>
-
apt-get autoremove
-
While
there is no built in way to remove all of your configuration
information from your removed packages you can remove all
configuration data from every removed package with the following
command.
dpkg -l | grep '^rc' | awk '{print $2}' | xargs dpkg --purge
Search commands
-
apt-cache search <search_term>
This command will find packages that include <search_term>.
-
dpkg -l *<search_term>*
This will find packages whose names contain <search_term>. Similar to apt-cache search, but also shows whether a package is installed on your system by marking it with ii (installed) and un (not installed).
-
apt-cache show <package_name>
This command shows the description of package <package_name> and other relevant information including version, size, dependencies and conflicts.
-
dpkg --print-avail <package_name>
-
dpkg -L <package_name>
This command will list files in package <package_name>.
-
dpkg -c foo.deb
This command lists files in the package "foo.deb". Note that foo.deb is a pathname. Use this command on .deb packages that you have manually downloaded.
-
dlocate <package_name>
This command determines which installed package owns <package_name>. It shows files from installed packages that match <package_name>, with the name of the package they came from. Consider this to be a "reverse lookup" utility.
In order to use this command, the package dlocate must be installed on your system. -
dpkg -S <package_name>
This command does the same as dlocate, but does not require the installation of any additional packages. It is slower than dlocate but has the advantage of being installed by default on all Debian and Ubuntu systems.
-
apt-file search <package_name>
This command acts like dlocate and dpkg -S, but searches all available packages. It answers the question, "what package provides this file?".In order to use this command, the package apt-file must be installed on your system. -
apt-cache pkgnames
-
A
general note on searching: If searching for a generates a list that
is too long, you can filter your results by piping them through the
command grep.
Examples: