<!doctype debiandoc  PUBLIC  "-//DebianDoc//DTD DebianDoc//EN">
<!-- -*- mode: sgml; mode: fold -*- -->
<book>
<title>U�ywanie APT w trybie offline</title>

<author>Jason Gunthorpe <email>jgg@debian.org</email></author>
<author>Polskie t�umaczenie Krzysztof Fiertek <email>akfedux@megapolis.pl</email></author>
<version>$Id: offline.sgml,v 1.8 2003/02/12 15:06:41 doogie Exp $</version>

<abstract>
Dokument ten opisuje u�ywanie programu APT w �rodowiskach pozbawionych dost�pu,
do sieci, a w szczeg�lno�ci metod� pozwalaj�c� na robienie aktualizacji systemu.
</abstract>

<copyright>
Copyright &copy; Jason Gunthorpe, 1999.
<p>
Copyright &copy; polskiego t�umaczenia Krzysztof Fiertek, 2004.
<p>
"APT" i ten dokument s� oprogramowaniem wolnodost�pnym; mo�esz
rozpowszechnia� je i/lub zmienia� w zgodzie z postanowieniami
"Og�lnej Licencji Publicznej GNU" (GNU General Public License)
takiej, jak zosta�a opublikowana przez "Fundacje Wolnego
Oprogramowania (Free Software Foundation); albo w wersji 2 tej�e
licencji, albo (tw�j wyb�r) w dowolnej p�niejszej.

<p>
Wi�cej szczeg��w mo�na uzyska�, przegl�daj�c plik zawieraj�cy pe�ny tekst
licencji (w systemach Debian jest to plik /usr/share/common-licenses/GPL).
</copyright>

<toc sect>

<chapt>Wst�p
<!-- Overview                                                         {{{ -->
<!-- ===================================================================== -->
<sect>Wprowadzenie

<p>
Normalnie APT wymaga bezpo�redniego dost�pu do archiw�w Debiana przez
sie� lokaln� albo przez sie� internetow�. Kolejn� niedogodno�ci� mo�e by�
fakt, �e nasz komputer, kt�ry pracuje na powolnym ��czu takim jak modem,
jest znacznie oddalony od innego komputera z szybkim ��czem.

<p>
Rozwi�zaniem tego problemu jest u�ycie pojemnych przeno�nych no�nik�w
takich jak dyskietka Zip lub dysk SuperDisk. No�niki te nie s�
wystarczaj�co pojemne, by zgromadzi� kompletne archiwum Debiana, ale mo�na
�mia�o dopasowa� podzbi�r du�ego archiwum wystarczaj�cy dla wi�kszo�ci
u�ytkownik�w. Pomys� polega na tym, by u�y� programu APT do wygenerowania
listy pakiet�w, kt�re s� wymagane, a nast�pnie pobraniu ich na dysk, u�ywaj�c
innego komputera z w�a�ciw� zwarto�ci�. Jest nawet mo�liwe, by u�y� innego
komputera z Debianem z zainstalowanym programem APT lub zupe�nie innym
systemem operacyjnym i programem narz�dziowym do pobierania plik�w takim
jak wget.

<p>
Osi�gane jest to przez tw�rcze manipulowanie plikiem konfiguracyjnym
programu APT. Rzecz� niezb�dn� jest poinformowanie programu APT, aby wskazywa�
na dysk z plikami archiwum. Nale�y zauwa�y�, �e dysk powinien by�
sformatowany do obs�ugi systemu plik�w pozwalaj�cego pos�ugiwa� si� d�ugimi 
nazwami plik�w (np. ext2, fat32 albo vfat).


</sect>
                                                                  <!-- }}} -->

<chapt>U�ywanie programu APT na obu komputerach
<!-- Overview                                                         {{{ -->
<!-- ===================================================================== -->
<sect>Wprowadzenie

<p>
APT b�d�cy do dyspozycji na obu komputerach daje najprostsz� kombinacj�.
Zasadniczym pomys�em tej metody jest umieszczenie kopii pliku status na dysku
i u�ycie odleg�ego komputera, aby uzyska� najnowsze pliki pakiet�w
i zdecydowa�, kt�re pakiety trzeba pobra�. Struktura katalog�w na dysku
powinna wygl�da� nast�puj�co:

<example>
  /disc/
    archives/
       partial/
    lists/
       partial/
    status
    sources.list
    apt.conf
</example>

</sect>
                                                                  <!-- }}} -->
<!-- The configuration file                                            {{{ -->
<!-- ===================================================================== -->
<sect>Plik konfiguracyjny

<p>
Plik konfiguracyjny powinien informowa� program APT, aby przechowywa� swoje
pliki na dysku, a tak�e u�ywa� plik�w konfiguracyjnych z dysku. Plik
sources.list powinien zawiera� prawid�owe odno�niki, kt�rych nale�y 
u�y� na zdalnym komputerze, a plik status powinien by� kopi� 
<em>/var/lib/dpkg/status</em>. Zauwa�, �e je�li u�ywasz lokalnego archiwum 
musisz u�y� tych samych odno�nik�w o identycznej sk�adni.

<p>
<em>apt.conf</em> musi zawiera� niezb�dne wpisy, by APT korzysta� z dysku:

<example>
 APT
 {
   /* Ten wpis nie jest wymagany, je�li oba komputery maj� t� sam�
      architektur�; m�wi on programowi APT na komputerze pobieraj�cym 
      pakiety, jaka jest architektura naszego komputera */
   Architecture "i386";
   
   Get::Download-Only "true";
 };
 
 Dir
 {
   /* U�yj katalogu disc na informacje stanu i przekieruj plik status
      z domy�lnego /var/lib/dpkg */
   State "/disc/";
   State::status "status";

   // Katalog lokalnie przechowywanych pakiet�w binarnych
   Cache::archives "/disc/archives/";

   Cache "/tmp/";

   // Lokalizacja pliku sources.list.
   Etc "/disc";
 }; 
</example>

Wi�cej szczeg��w mo�na zobaczy� w stronie podr�cznika apt.conf i w przyk�adowym 
pliku konfiguracyjnym <em>/usr/share/doc/apt/examples/apt.conf</em>.

<p>
Pierwsz� rzecz�, jak� nale�y zrobi� na oddalonym komputerze z Debianem to
zamontowa� dysk i przekopiowa� na niego plik <em>/var/lib/dpkg/status</em>.
Trzeba tak�e utworzy� stuktur� katalog�w przedstawion� we "Wprowadzeniu":
<em>archives/partial/</em> i <em>lists/partial/</em>. Nast�pnie niesiemy
dysk do oddalonego komputera z szybkim ��czem i konfigurujemy plik
sources.list. Na oddalonym komputerze wykonujemy kolejno:

<example>
 # export APT_CONFIG="/disc/apt.conf"
 # apt-get update
 [ APT aktualizuje ustawienia ]
 # apt-get dist-upgrade
 [ APT pobiera wszystkie pakiety potrzebne do aktualizacji Twojego systemu ]

</example>

Polecenie dist-upgrade mo�na zast�pi� ka�dym innym podstawowym poleceniem
APT, w szczeg�lno�ci dselect-upgrade. Mo�na nawet u�y� APT jako metody
dost�pu dla <em>dselect</em>. Jednak stworzy to problem w przeniesieniu
Twoich operacji wybor�w z powrotem na lokalny komputer.

<p>
W tej chwili katalog disc zawiera wszystkie pliki indeksowe oraz archiwa
niezb�dne do aktualizacji maszyny z Debianem. Bierzemy dysk z powrotem do
siebie i wpisujemy:

<example>
  # export APT_CONFIG="/disc/apt.conf"
  # apt-get check
  [ APT tworzy lokaln� kopi� plik�w cache ]
  # apt-get --no-d -o dir::state::status=/var/lib/dpkg/status dist-upgrade
  [ Mo�e te� by� inne polecenie programu APT ]
</example>

<p> 
Do prawid�owego dzia�ania koniecznie nale�y poda� plik status z lokalnej
maszyny. To jest bardzo wa�ne!

<p>
Je�li u�ywasz dselect, mo�esz wykona� bardzo ryzykown� operacj� skopiowania
disc/status do /var/lib/dpkg/status, tak �e  wszystkie zmiany, kt�rych
dokona�e� na odleg�ym komputerze, b�d� przeniesione. Mocno zalecam, aby
dokonywa� doboru pakiet�w tylko na lokalnym komputerze, ale nie zawsze
jest to mo�liwe. NIE podmieniaj pliku status, je�li dpkg lub APT by�y
uruchamiane w mi�dzyczasie!!

</sect>
                                                                  <!-- }}} -->

<chapt>U�ywanie program�w APT i wget
<!-- Overview                                                         {{{ -->
<!-- ===================================================================== -->
<sect>Wprowadzenie

<p>
<em>wget</em> jest popularnym i przeno�nym programem narz�dziowym
pobierania plik�w, kt�ry dzia�a prawie na ka�dym komputerze.
W przeciwie�stwie do metody opisanej powy�ej ta wymaga, aby na lokalnym komputerze
by�a aktualna lista dost�pnych pakiet�w.

<p>
Nale�y stworzy� katalog disc tylko na pakiety do pobrania z innego
komputera. U�yta zostanie do tego opcja --print-uris programu apt-get,
a nast�pnie przygotujemy skrypt dla programu wget, kt�ry pobierze w�a�ciwe
pakiety.

</sect>
                                                                  <!-- }}} -->
<!-- Operation                                                         {{{ -->
<!-- ===================================================================== -->
<sect>Kolejne kroki

<p>
W odr�nieniu od poprzedniej metody dzia�ania ta nie wymaga specjalnych
plik�w konfiguracyjnych. U�ywamy jedynie podstawowych polece� APT, by
wygenerowa� list� plik�w.

<example>
 # apt-get dist-upgrade 
 [ Wybierz "no" po znaku zach�ty, upewnij si�, czy to w�a�ciwy wyb�r ]
 # apt-get -qq --print-uris dist-upgrade > uris
 # awk '{print "wget -O " $2 " " $1}' < uris > /disc/wget-script
</example>

Tak�e inne opcje ni� dist-upgrade mog� tu by� u�yte, w��czaj�c
dselect-upgrade.

<p>
Plik skryptu /disc/wget-script b�dzie teraz zawiera� list� wywo�a� programu 
wget, niezb�dnych do pobrania potrzebnych archiw�w.
Skrypt ten nale�y uruchomi� w bie��cym katalogu o punkcie montowania disc,
tak aby tu zapisywa� dane na dysku.

<p>
Na oddalonym komputerze nale�y wykona� co� takiego

<example>
  # cd /disc
  # sh -x ./wget-script
  [ czekaj.. ]
</example>

Gdy archiwa zostan� pobrane i dysk wr�ci do komputera z Debianem,
instalowanie mo�na prowadzi� dalej poleceniem:

<example>
  # apt-get -o dir::cache::archives="/disc/" dist-upgrade
</example>

kt�re u�yje pobranych uprzednio archiw�w z dysku.
</sect>
                                                                  <!-- }}} -->
</book>