PLD-doc/book/pl_book__pakiety/pl_pakiety__cechy.sec
qwiat
cvs at pld-linux.org
Mon May 15 00:44:59 CEST 2006
Author: qwiat
Date: Mon May 15 00:44:57 2006
New Revision: 7403
Modified:
PLD-doc/book/pl_book__pakiety/pl_pakiety__cechy.sec
Log:
- dodanie opisu requires i capablities
Modified: PLD-doc/book/pl_book__pakiety/pl_pakiety__cechy.sec
==============================================================================
--- PLD-doc/book/pl_book__pakiety/pl_pakiety__cechy.sec (original)
+++ PLD-doc/book/pl_book__pakiety/pl_pakiety__cechy.sec Mon May 15 00:44:57 2006
@@ -32,7 +32,7 @@
</para>
<para>
Menadżery pakietów pozwalają na ignorowanie powyższych
- zależności, jest to jednak operacja niezalecana, gdyż
+ zależności, jest to jednak operacja nie zalecana, gdyż
powoduje później trudny do ogarnięcia bałagan.
Wyjątki od tej zasady powinny być
robione jedynie w razie uzasadnionej konieczności,
@@ -52,7 +52,78 @@
odczujemy większych różnic i nie musimy się tym martwić.
</para>
</section>
-
+
+ <section id="pakiety_cechy_wymagania">
+ <title>Wymagania (requires) i własności (capablities)</title>
+ <para>
+ Ważnymi elementami mechanizmu zależności są tzw.
+ <emphasis>wymagania</emphasis> i <emphasis>własności</emphasis>.
+ Pierwsza z cech wskazuje listę wymaganych elementów
+ (pakietów, plików) do działania danego pakietu, druga
+ zaś informuje, które z elementów są dostarczane wraz z
+ pakietem. Aby poznać wymagania pakietu posłużymy
+ się Poldkiem w trybie interaktywnym:
+<screen>poldek:/all-avail> desc -r logrotate
+
+Package: logrotate-3.7-2
+PreReqs: /bin/sh, fileutils
+Requires: /bin/mail, /bin/sh, config(logrotate) = 3.7-2, crondaemon,
+ glibc, libc.so.6, libc.so.6(GLIBC_2.0), libc.so.6(GLIBC_2.1),
+ libc.so.6(GLIBC_2.2), libc.so.6(GLIBC_2.3), libpopt.so.0, libselinux,
+ libselinux.so.1, popt
+RPMReqs: rpmlib(CompressedFileNames) <= 3.0.4-1,
+ rpmlib(PayloadFilesHavePrefix) <= 4.0-1,
+ rpmlib(PayloadIsBzip2) <= 3.0.5-1</screen>
+ Powyższe polecenie ma zadanie czysto informacyjne, gdyż jak
+ już wspomniano zależnościami zajmie sie menedżer
+ pakietów.
+ </para>
+ <para>
+ Sprawa nico komplikuje się w przypadku
+ <emphasis>własności</emphasis>, ponieważ w PLD nierzadko
+ mamy dostępnych wiele pakietów spełniających podobne
+ wymagania. Aby sprawdzić dostarczaną funkcjonalność
+ ponownie użyjemy Poldka:
+<screen>poldek:/all-avail> desc -p vixie-cron
+
+Package: vixie-cron-4.1-7
+Provides: config(vixie-cron) = 4.1-7, crondaemon, crontabs >= 1.7,
+ group(crontab)</screen>
+ Analizując powyższe przykłady można dopatrzyć się
+ informacji o dostarczaniu własności
+ <literal>crondaemon</literal> przez vixie-cron, która
+ z kolei jest wymagana przez logrotate.
+ </para>
+ <para>
+ Własność <literal>crondaemon</literal>
+ jest dostarczana przez większą ilość pakietów,
+ możemy samodzielnie wybierać, który z
+ pakietów ma być instalowany lub ustawić automatyczny
+ wybór. O tym decyduje ustawienie opcji
+ <literal>choose equivalents manually</literal> w
+ konfiguracji Poldka. Jeśli ustawimy opcję na
+ <literal>yes</literal> (zalecane) to instalacja programu może
+ wyglądać następująco:
+<screen>poldek:/all-avail> install logrotate
+Przetwarzanie zależności...
+Więcej niż jeden pakiet udostępnia właściwość "crondaemon":
+a) anacron-2.3-22
+b) fcron-3.0.0-3
+c) hc-cron-0.14-22
+d) vixie-cron-4.1-7
+Which one do you want to install ('Q' to abort)? [b]</screen>
+ Na powyższym przykładzie widać listę pakietów
+ mogących pełnić funkcję demona
+ zegarowego (<literal>crondaemon</literal>),
+ dodatkowo podana jest domyślna wartość wyboru, nie
+ zawsze jest to najlepszy wybór dla konkretnej
+ instalacji, dlatego powinniśmy się upewnić, że
+ wybieramy najwłaściwszy pakiet. Więcej informacji o
+ obsłudze i konfiguracji Poldka odnajdziemy w
+ <xref linkend="poldek" />.
+ </para>
+ </section>
+
<section id="pakiety_cechy_zawartosc">
<title>Zawartość pakietów</title>
<para>
@@ -291,7 +362,7 @@
Kiedy odnajdziemy plik *rpmnew to możemy łatwo sprawdzić
czym różni się jego zawartość w stosunku do obecnie używanego
pliku konfiguracji. Posłużymy się w tym celu programem
- <command>diff</command> np.:
+ <command>diff</command> z pakietu diffutils np.:
<screen># diff jakis_plik.conf jakis_plik.conf.rpmnew</screen>
</para>
<para>
More information about the pld-cvs-commit
mailing list