[ powrót ] [ Spis treści ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ] [ 10 ] [ 11 ] [ 12 ] [ 13 ] [ dalej ]
Do części swoich operacji APT używa pliku zawierającego listę `źródeł', z których mogą być pobierane pakiety. Tym plikiem jest /etc/apt/sources.list.
Wpisy w tym pliku mają następujący format:
deb http://witryna.http.org/debian dystrybucja sekcja1 sekcja2 sekcja3 deb-src http://witryna.http.org/debian dystrybucja sekcja1 sekcja2 sekcja3
Oczywiście powyższe wpisy są fikcyjne i nie powinny być używane. Pierwszym słowem w każdej linii jest deb lub deb-src, które wskazuje typ archiwum. Mówi ono czy archiwum zawiera pakiety binarne (deb), czyli skompilowane już pakiety, których zazwyczaj używamy czy pakiety źródłowe (deb-src), którymi są oryginalne źródła programów wraz z plikiem zawierającym opis (.dsc) oraz plikiem przechowującym zmiany potrzebne do `zdebianizowania' programu (.diff.gz).
The word that goes where we read distribution in the above example defines what is the Debian suite we're targeting. They can be generic names, like "stable", "testing", or specific names like "sarge" and "etch". Let's say the current testing is called "etch" and you want to keep tracking "etch" even when it becomes stable; in this case you should use "etch" for distribution. In case you want to keep tracking testing you should use "testing" instead.
So, if you want to always have the latest stable distribution, and upgrade as soon as a new release is made, you should be using "stable" as distribution. This may not be a good idea, for you may want to plan the upgrade for stable releases, which sometimes involves more than simply answering a few new questions, besides doing some testing and backuping before proceeding, so I recommend you always use the codenames.
Zwykle plik sources.list zawiera domyślnie następujące wpisy:
deb http://http.us.debian.org/debian stable main deb http://security.debian.org stable/updates main #deb-src http://http.us.debian.org/debian stable #deb-src http://security.debian.org stable/updates main
Linie te są potrzebne do podstawowej instalacji Debiana. Pierwsza linia ze słowem deb wskazuje na oficjane archiwum, druga na archiwum non-US, a trzecia na archiwum z uaktualnieniami pakietów związanych z bezpieczeństwem Debiana.
Dwie ostatnie linie są wykomentowane (za pomocą znaku `#' na początku linii), więc apt-get po prostu je zignoruje. To są linie ze słowem deb-src, które wskazują na pakiety źródłowe Debiana. Jeśli często pobierasz źródła programów do testowania ich lub rekompilacji, to odkomentuj te linie.
Plik /etc/apt/sources.list może zawierać kilka typów linii. APT wie jak sobie radzić z archiwami typu http, ftp, file (lokalne pliki, np. katalog zawierający zamontowany system plików ISO9660) i ssh.
Remember: everytime you want to add a source for APT to grab packages from this is the file you're going to edit.
Nie zapomnij wydać polecenia apt-get update po zmodyfikowaniu zawartości pliku /etc/apt/sources.list. Jest to konieczne, aby APT pobrał listy dostępnych pakietów ze źródeł wymienionych w tym pliku.
As of APT version 0.6, packages are authenticated to ensure that they originate from the source that they claim to originate from. This is an optional security feature. If the system can't authenticate the package upon installation, it'll ask you whether or not you want to abort the installation.
Since this authentication is based on cryptographic methods, APT maintains it's own keyring. Each of the entries in your sources.list file will have a corresponding key. However, if you're using unofficial APT sources, it's possible that a source you're using won't be authenticated. If this is the case, you should encourage the maintainer of that source to implement authentication on their site.
To take advantage of this security feature, you need to add a key to APT's
keyring for each authenticated source. This can be done with GPG, but APT
provides a tool, apt-key
, which is a simplified wrapper to GPG.
apt-key
is easy to use. The tricky part of this process is
getting a key for each of your sources, and making sure that you can trust that
key.
Debian's archive key will be installed in
/usr/share/apt/debian-archive.gpg
, so you can simply use that file
to add the official archives' key to your APT keyring by doing this:
# apt-key add /usr/share/apt/debian-archive.gpg
For external, unofficial sources you'll need to find out where did they provide their public key so that you can import it into your APT keyring.
If you choose to disable the cryptographic checking of Release files for some reason you can add the following to APT's configuration (see The APT configuration file, Rozdział 3.4):
APT::Get::AllowUnauthenticated "true";
Jeśli raczej używasz napędu CD-ROM do instalowania pakietów lub automatycznego
uaktualniania Twojego systemu przy pomocy APT-a, to możesz go umieścić w pliku
sources.list. Aby to zrobić, możesz użyć programu
apt-cdrom
w poniższy sposób:
# apt-cdrom add
z umieszczoną w napędzie CD-ROM płytą z pakietami Debiana. Polecenie te zamontuje napęd i poszuka na płycie informacji na temat pakietów. Jeśli konfiguracja Twojego CD-ROM-u jest trochę nietypowa, możesz także użyć następujących opcji:
-h - Pomoc ekranowa do programu -d katalog - Katalog, w którym montowany jest CD-ROM -r - Zmiana nazwy rozpoznanego CD-ROM-u -m - Bez montowania -f - Tryb szybki, bez sprawdzania plików z pakietami -a - Tryb dokładnego przeszukiwania
Na przykład:
# apt-cdrom -d /home/ala/mojcdrom add
Możesz także zidentyfikować swój CD-ROM, bez dodawania go do listy:
# apt-cdrom ident
Zwróć uwagę, że ten program będzie działał tylko wtedy, gdy Twój CD-ROM jest właściwie skonfigurowany w systemowym pliku /etc/fstab.
APT uses /etc/apt/apt.conf
as its main configuration file.
Although, as you will find out, there's no file named like that in a default
install, you can safely create one and add your edits there. If you prefer,
there's a more modular way of handling configuration: you can place individual
files with whatever names you choose into /etc/apt/apt.conf.d/
.
Beware of two facts when you choose the modular way: some Debian packages will drop their configuration stuff into that directory, so you have to try to prevent name clashes by, for example, adding a -local suffix to the name. Also, the configuration is read ordered by the file name, so you can add a number at the very beginning of your filename to position it on the sequence. For example, you can name it 00000myconf-local if you want to make sure it will be the first configuration to be considered.
To know the syntax and options accepted by those configuration files, check out the apt.conf(5) manpage.
APT uses a prioritization algorythm to decide what repository it should grab a given package from. Here's a simple example:
$ apt-cache policy apt-howto apt-howto: Installed: 1.8.10.3-1 Candidate: 1.8.11-1 Version table: 1.8.11-1 0 500 http://ftp.nl.debian.org sid/main Packages *** 1.8.10.3-1 0 500 http://ftp.nl.debian.org sarge/main Packages 100 /var/lib/dpkg/status
I have two sources here: a sid and a sarge one, and that's all.
The installed version is marked with ***. We can see its
installed because of the mention of the /var/lib/dpkg/status
file,
too, which holds the information about the current state of the system. We can
also see that the package comes from sarge. The sid version is also listed as
available.
APT gives priority 100 for installed packages, as we can see, and 500 for all other sources with a single exception: the experimental suite, which, as we already said, is treated in a special way by many tool. APT's algorythm will prefer to install packages from sources with higher priority. If priorities are the same, then it will prefer the highest version. You can see that by looking at the Candidate field, which lists the newer version, from unstable, as candidate for instalation: it wants to upgrade it.
If you want to have the sid source only to install selected packages and don't want APT to automaticaly consider packages from that source as candidates for upgrades, then you must tweak its priorities. You do that using the Archive field of the Release file of the source you want to give priority to. You can find that information out by looking at the Release file which the update process downloaded:
$ cat /var/lib/apt/lists/ftp.debian.org.br_debian_dists_potato_main_binary-i386_Release Archive: stable Version: 2.2r3 Component: main Origin: Debian Label: Debian Architecture: i386
Notice that the filename changes depending on your source line. To make APT
keep your packages at the stable suite, then, you add a file with the following
contents to /etc/apt/apt.conf.d/
:
APT::Default-Release "wersja";
Then, APT policy will have changed:
$ apt-cache policy apt-howto apt-howto: Installed: 1.8.10.3-1 Candidate: 1.8.10.3-1 Version table: 1.8.11-1 0 500 http://ftp.nl.debian.org sid/main Packages *** 1.8.10.3-1 0 990 http://ftp.nl.debian.org sarge/main Packages 100 /var/lib/dpkg/status
APT will give priority 990 for its default source for any package, the other sources remain just like before. Packages from other sources which are installed will have their priority raised from 100 to 500. Why is APT not going to downgrade them? Because APT will only consider a downgrade in case something is given a priority above 1000. That means, though, that APT will not automaticaly upgrade the versions from the non-default sources unless the tool you're using wants to try to to help you there, which is the case for aptitude.
Defining priority for groups of packages based on many other criteria is also
possible by using the /etc/apt/preferences
configuration file.
You can even convince APT to try to downgrade your whole system, althought
that's not supported and should not be tried by the faint of heart. You can
have more information about that by reading the apt_preferences(5)
manpage..
If you are using APT in a network in which all http and ftp connections are
made through a proxy, then you'll have to setup APT to use that proxy. You can
do this by editing the /etc/apt/apt.conf
configuration file or by
placing a configuration file inside the /etc/apt/apt.conf.d/
directory, which makes it is easier to organize the configuration stuff (take a
look at The APT configuration file, Rozdział 3.4).
If that file does not exist, then create it and add lines like these:
Acquire::http::proxy "http://proxy:port"; Acquire::ftp::proxy "http://proxy:port";
Replace proxy and port for those given by your network administrator. You can also specify user and password if the proxy requires like this:
Acquire::http::proxy "http://user:password@proxy:port";
There are many other useful options you can set for APT on the
/etc/apt/apt.conf
configuration file, see The APT configuration file, Rozdział 3.4.
[ powrót ] [ Spis treści ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ] [ 10 ] [ 11 ] [ 12 ] [ 13 ] [ dalej ]
APT HOWTO
2.0.2 - October 2006kov@debian.org
ptecza@debianusers.pl