|
NewsI've found an excellent guide to apt on debian's webpage: you should check out the following: In particular it details how to use some increadibly powerful tools such as auto-apt for automatically installing packages based on the files that a command needs (such as a ./configure: running auto-apt run ./configure will install all the packages that have the needed .h files for the configure script), netselect for automatically choosing the fastest debian mirror from a given list, apt-cache--an alternative to dpkg -l with better output, and some other great stuff. Another great command I found out about lately is dlocate. It is a fast, powerful alternative to the dpkg -S and dpkg -L commands. One of the really cool things it can do is check all the md5 checksums of files in a package and compare them to the checksums the file had when the package was installed. This could be very useful in checking to see if you're system has been hacked. See the manpage for details. Apt-getOne of the most brilliant aspects of the Debian GNU/Linux distribution is the package system. It is all based around the command "apt-get". All of the packages that debian produces are available directly from the internet, and can be retrieved from any computer via http or ftp. Debian's package manager knows this: the smart thing is that they have arranged it so that it can download them automatically for you. It is even smart enough that when a package depends on another package, it tells you this and offers the option of downloading, installing, and configuring all the required packages for you. Installing something nasty like gnucash, which has a lot of library dependencies, is as easy as "apt-get install gnucash". Debian has a policy of maintaining more than one distribution at once. For example, right now, debian has three linux distributions: "stable", "testing", and "unstable". The packages in stable are typically a version or two behind of the latest release, but are considered by the tough debian standards to be reliable, secure, and bug free. The stable distribution right now is version 2.2, which has the name "potato". There are about 4000 packages in potato. The "testing" distribution is a collection of packages that are getting ready to become the next stable distribution. These are packages of software that has been in the distribution for a while. These are usually very nearly the latest release of the software. This is currently named woody, and contains around 5000 packages. "Unstable" is the developers distribution. Whenever a debian developer downloads the updates from the software homepage and compiles it, it gets uploaded to the unstable distribution. The unstable distribution is also used for testing out new debian configuration tools and stuff. Software versions in unstable change on a daily basis, and the unstable distribution currently has more than 7000 packages. The most important configuration file for apt is "/etc/apt/sources.list". This file tells the apt-get program where to download it's packages and package information from. A sample one may look like: # See sources.list(5) for more information, especialy # Remember that you can only use http, ftp or file URIs # CDROMs are managed through the apt-cdrom tool. # Potato #deb ftp://ftp.us.debian.org/debian/ potato main non-free contrib #deb-src ftp://ftp.us.debian.org/debian/ potato main non-free contrib #deb http://non-us.debian.org/debian-non-US potato/non-US main contrib non-free #deb-src http://non-us.debian.org/debian-non-US potato/non-US main contrib non-free # Woody (testing) deb ftp://ftp.us.debian.org/debian/ woody main non-free contrib deb-src ftp://ftp.us.debian.org/debian/ woody main non-free contrib deb http://non-us.debian.org/debian-non-US woody/non-US main contrib non-free deb-src http://non-us.debian.org/debian-non-US woody/non-US main contrib non-free # Unstable #deb ftp://debian.crosslink.net/debian/ unstable main non-free contrib #deb-src ftp://debian.crosslink.net/debian/ unstable main non-free contrib #deb ftp://non-us.debian.org/debian-non-US unstable/non-US main contrib non-free #deb-src ftp://non-us.debian.org/debian-non-US unstable/non-US main contrib non-free Here you can see that I have uncommented out only one distribution. Debian usually only provides installation disks for the stable distribution. This is not a problem, though: you can just change which distribution you're using in your sources.list file, and start using packages from another distribution! It will update the packages it needs to (like libc) as it goes along. Things to be careful of: make sure you only pick one distribution at a time, and make sure you update the package manager after each time you change sources.list. The update is done by two commands: apt-get update; dselect update (Note: "apt-get update" updates apt-get's list of packages, and "dselect update" updates the package information database that the dpkg command uses.) The nice thing is that 90% of the time, you can find a debian package for software, as long as you don't mind using unstable (which, despite it's name, is really actually quite stable--more so than any redhat distribution...). But that's not it: the beauty is that anyone can set up their own repository of debian packages, and share the packages they've made with the rest of the debian community! This is really what the whole linux thing is all about. Many people have in fact done this. (See my apt sources list below.) More Useful Debian Package Management InfoHere's a list of debian package management commands that I use on a regular basis:
There are many more flags for the dpkg command. Consult the man page for more information. Here's a link to an excellent APT and dpkg quick reference sheet. Another great resource is the Debian package page. This has a web interface that can search the package names in all of the distributions. You can also search the entire contents of all the distributions for a file or directory name. This is particularly useful: for example, let's say you're compiling program x (which say doesn't have a debian package), but it gives you a message "command xyz not found". Maybe it's not obvious which debian package will contain command xyz. Just go to the debian package page, enter "xyz" into the distribution content search, pick your distribution, and if there's a debian package, "voila!", you've got the package name. It's pretty sweet. Useful apt sourcesHere's some of the useful apt sources I've found: # Java 1.2 deb ftp://www.ibiblio.org/pub/Linux/devel/lang/java/blackdown.org/debian woody non-free The blackdown.org java packages, mirrored on ibililo.org (formerly metalab, which was formerly sunsite). This may now be in testing or unstable. # Daily wine CVS deb http://gluck.debian.org/%7Eandreas/debian wine main deb-src http://gluck.debian.org/%7Eandreas/debian wine main The latest wine cvs packages built for debian. # OMS DVD Player deb http://linuxvideo.org/oms/data/debian/ ./ The OMS DVD player for linux. If you've found any apt sources you find useful, I'd love to know about them: email me and I'll add them to my list. Links
|