Używanie APT w trybie offline
-----------------------------------------------------------------------------
Jason Gunthorpe
<jgg@debian.org>
Version 2.4.14
-----------------------------------------------------------------------------
Copyright © 1999 Jason Gunthorpe
License Notice
"APT" i ten dokument są oprogramowaniem wolnodostępnym, które można
rozpowszechniać oraz zmieniać zgodnie z postanowieniami drugiej albo
(wedle uznania) dowolnej późniejszej wersji "Ogólnej Licencji Publicznej
GNU" (GNU General Public License) publikowanej przez "Fundację Wolnego
Oprogramowania (Free Software Foundation).
Więcej szczegółów można uzyskać, przeglądając plik zawierający pełen
tekst licencji (w systemach Debian jest to plik /usr/share/
common-licenses/GPL).
Abstrakt
Dokument ten opisuje używanie programu APT w środowiskach pozbawionych
dostępu, do sieci, a w szczególności metodę pozwalającą na przeprowadzanie
aktualizacji systemu.
-----------------------------------------------------------------------------
Spis treści
1. Wstęp
1.1. Wprowadzenie
2. Używanie programu APT na obu komputerach
2.1. Wprowadzenie
2.2. Plik konfiguracyjny
3. Używanie programów APT i wget
3.1. Wprowadzenie
3.2. Kolejne kroki
Rozdział 1. Wstęp
Spis treści
1.1. Wprowadzenie
1.1. Wprowadzenie
Zazwyczaj 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.
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.
This is achieved by creatively manipulating the APT configuration file.
The essential premise to tell APT to look on a disc for it's archive
files. Note that the disc should be formatted with a filesystem that can
handle long file names such as ext2, fat32 or vfat.
Rozdział 2. Używanie programu APT na obu komputerach
Spis treści
2.1. Wprowadzenie
2.2. Plik konfiguracyjny
2.1. Wprowadzenie
APT dostępny 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:
/disc/
archives/
partial/
lists/
partial/
status
sources.list
apt.conf
2.2. Plik konfiguracyjny
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ą /var/lib/
dpkg/status. Należy zauważyć, że podczas używania lokalnego archiwum
trzeba użyć tych samych odnośników o identycznej składni.
apt.conf musi zawierać niezbędne wpisy, by APT korzystał z dysku:
APT
{
/* Wpis nie jest wymagany, jeśli oba komputery mają tę samą architekturę;
podaje architekturę naszego komputera programowi APT na odległym komputerze */
Architecture "i386";
Get::Download-Only "true";
};
Dir
{
/* Używaj 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";
};
Więcej szczegółów można zobaczyć w stronie podręcznika apt.conf i w
przykładowym pliku konfiguracyjnym /usr/share/doc/apt/examples/apt.conf.
Pierwszą rzeczą, jaką należy zrobić na oddalonym komputerze z Debianem to
zamontować dysk i przekopiować na niego plik /var/lib/dpkg/status. Trzeba
także utworzyć strukturę katalogów przedstawioną we "Wprowadzeniu":
archives/partial/ i lists/partial/. Następnie należy przenieść dysk do
oddalonego komputera z szybkim łączem i skonfigurować plik sources.list.
Na oddalonym komputerze wykonujemy kolejno:
# 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 ]
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 dselect. Jednak stworzy to problem w przeniesieniu Twoich
operacji wyborów z powrotem na lokalny komputer.
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:
# 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 ]
Do prawidłowego działania koniecznie należy podać plik status z lokalnej
maszyny. To jest bardzo ważne!
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!
Rozdział 3. Używanie programów APT i wget
Spis treści
3.1. Wprowadzenie
3.2. Kolejne kroki
3.1. Wprowadzenie
wget 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.
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.
3.2. Kolejne kroki
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.
# 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
Można tu użyć także polecenia innego niż dist-upgrade, na przykład
dselect-upgrade.
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
zapisywał dane na tym dysku.
Na oddalonym komputerze należy wykonać coś takiego
# cd /disc
# sh -x ./wget-script
[ czekaj.. ]
Gdy archiwa zostaną pobrane i dysk wróci do komputera z Debianem,
instalowanie można prowadzić dalej poleceniem:
# apt-get -o dir::cache::archives="/disc/" dist-upgrade
Które użyje pobranych uprzednio archiwów z dysku.
Generated by dwww version 1.14 on Sat Jun 13 10:21:36 CEST 2026.