Uzupełniono 4.07.2007
Do całej operacji będzie potrzebny pendrive (im większy tym lepszy) i komputer podłączony do internetu na którym działa apt. Może to być maszyna kolegi z zainstalowaną dystrybucją linuksa z aptem, komputer z uruchomionym Ubuntu z CD i skonfigurowanym połączeniem do internetu lub obraz iso Ubuntu odpalony na maszynie wirtualnej w Windowsie.
Na początek należy stworzyć na pendrivie hierarchie katalogów:
apt-off
==>archives ==>partial
==>cache
==>lists ==>partial
Zamontowac pena na własnym komputerze i skopiować do /apt-off pliki status (zawiera informacje o zainstalowanych paczkach) i sources.list (zawiera repozytoria) oraz apt.conf
Kod: Zaznacz cały
cd /media/usbdisk/apt-off
cp /etc/apt/sources.list ./
cp /var/lib/dpkg/status ./
cp /etc/apt/apt.conf ./
Następnie edytujemy apt.conf by wyglądał w ten sposób:
Kod: Zaznacz cały
Acquire::http::Proxy "false";
APT
{
Architecture "i386";
Get::Download-Only "true";
};
Dir
{
State "./";
State::status "status";
Cache "./cache/" {
Archives "./archives/";
};
Etc "./";
};
Debug
{
NoLocking "true";
}
Kod: Zaznacz cały
cd /media/usbdisk/apt-off
Kod: Zaznacz cały
sudo apt-get -c=./apt.conf update
Kod: Zaznacz cały
sudo apt-get -s -c=./apt.conf upgrade
Kod: Zaznacz cały
sudo apt-get -d -c=./apt.conf upgrade
Kod: Zaznacz cały
sudo apt-get --print-uris -c=./apt.conf upgrade > uris
Kod: Zaznacz cały
apt-cache -c=./apt.conf search paczka
Kod: Zaznacz cały
sudo apt-get -d -c=./apt.conf install paczka
Przepis jak założyć domowe repozytorium podaje za @suncez
dpkg-scanpackages jest częścią paczki dpkg-dev.Zrób katalog np. /home/debs:Umieść tam pakiety, dalej:Kod: Zaznacz cały
sudo mkdir /home/debs sudo chown 0:0 /home/debs sudo chmod 755 /home/debs
Kod: Zaznacz cały
cd /home/debs sudo dpkg-scanpackages ./ /dev/null | gzip -9c > Packages.gz sudo echo "deb file:///home/debs/ ./" >> /etc/apt/sources.list
Będę wdzięczny za wszystkie uwagi o dostrzeżonych błędach i nieścisłościach.
Pozdrawiam.
Edit:
W razie problemów proszę pisać na PW, postaram się pomóc w miarę możliwości.
Jak ściągać paczki z poziomu Windowsa.
Można korzystać z repozytoriów pod Windowsem przy pomocy małej, 50-cio megowej dystrybucji Damn Small Linux w wersji embedded.
Plik dsl-3.4-embedded.zip (najnowsza wersja) ściągamy z któregoś z mirrorów podanych w dziale download strony http://www.damnsmalllinux.org i rozpakowujemy zipem do dowolnego katalogu.
Linuksa uruchamiamy klikajac na dsl-base.bat. Domyślnie DSL przydziela sobie 128 MB RAM ale jeśli możemy poświęcić więcej to należy w pliku uruchamiającym zmienić parametr –m 128 na np. –m 256 lub więcej. Po załadowaniu systemu i sprawdzeniu czy działa internet załadowujemy dodatkowe moduły z repozytorium DSL. Klikamy na MyDSL i z zakładki SYSTEM wybieramy dsl-dpkg.dsl oraz z NET samba.dsl
W Windows musimy udostępnić jakiś katalog przez który będziemy wymieniać pliki z DSL.
Uruchamiamy z pulpitu sambę, przez ADD dodajemy naszą maszynę (grupa robocza, nazwa komputera, IP), klikamy na nią prawym klawiszem myszy i wybieramy scan as user ( grupa robocza, login i hasło użytkownika z Windowsa). Powinien się pojawić udostępniany katalog z Windowsa , który klikamy PKM i wybieramy mount. Zamontowany katalog pojawi się w /home/dsl/mnt/nazwa_komputera/nazwa_katalogu. Uruchamiamy menadżer plików Emelfm i przy jego pomocy kopiujemy do /home/dsl uprzednio wgrany do udostępnianego katalogu apt-off. Teraz otwieramy konsolę i przechodzimy do apt-off
Kod: Zaznacz cały
cd /home/dsl/apt-off
Po zakończeniu ściągania warto skopiować cały apt-off żeby przy kolejnym updatowaniu uniknąć ponownego ściągania list pakietów.
Można też zachować rozszerzenia dsl-dpkg.dsl i samba.dsl ( domyślnie są ściągane do /tmp) które można ponownie skopiować do DSL przez PKM -> Apps-> Net ->SMBclient
Kod: Zaznacz cały
get samba.dsl
get dsl-dpkg.dsl
exit