Debian Package Management
This is a stub. Please feel free to give this article love and attention if you know more about this topic than we have here.
overview
this class should outline the basics of debian package management- searching, installing, updating and removing software.
background
prerequisites
- basic familiarity with commandline and Command Line 2
- basic familiarity with linux
suggested background
terms
tips for working environment
- keep a web browser pointed to this page
- open several terminal windows
- don't forget to use the "man" command, or -h and --help
- commandline reminders
- remember to use tab completion.
- hit tab twice, fast.
- hit tab again!
- remember to use the up arrow to re-do a previous command
- keep hitting tab!
topics covered
apt
available packages
where to get software from, /etc/apt/sources.list:
deb http://debian.oregonstate.edu/debian sarge main deb-src http://debian.oregonstate.edu/debian sarge main
lines that begin with "deb-src" are for source packages. unless you're building packages from source, you can usually comment these out. lines that begin with "deb" contain sources of debian packages.
update the list of available packages(do this after changing sources.list):
apt-get update
look in /var/lib/apt/lists, to see all the packaging files:
ls /var/lib/apt/lists/
take a look at what those files contain:
less /var/lib/apt/lists/*Packages
upgrading packages
upgrade packages:
apt-get upgrade
do a more thorough upgrade:
apt-get dist-upgrade
searching
- search for software:
apt-cache search browser apt-cache search firefox
- display information about a package:
apt-cache show firefox
- show available versions of a package:
apt-cache policy firefox
installing and removing packages
- install a package:
apt-get install firefox
- remove a package:
apt-get remove firefox
maintenance
/var/cache/apt/archives can build up a lot of cruft...
- only clear out package files no longer available:
apt-get autoclean
- clear out all downloaded package files:
apt-get clean
useful commandline arguments
- download only:
apt-get -d install firefox
- display upgraded packages:
apt-get -u dist-upgrade
- automatically proceed (i.e. answer yes; be careful with this!):
apt-get -yud dist-upgrade
pinning
pinning: /etc/apt/preferences
aptitude
similar to apt, but more sophisticated. has a text-only menu system.
dpkg
underneath it all, lies dpkg
list status of installed packages:
dpkg -l
another way to list the status of packages:
dpkg --get-selections
list the files in a package:
dpkg -L firefox
find out which package owns a certain file:
dpkg -S /bin/bash
install a package without using apt or aptitude(this does no dependency resolution- so avoid if at all possible):
dpkg -i hackme-script-foo_0.0.1_i386.deb
synaptic
it's graphical. point and click your way to carpal tunnel.