Ako imate pristup high bandwidth internet konekciji negde (na poslu,faksu,kod prijatelja i sl.) a kući
samo dialup ovaj tip će vam biti od koristi. Znači, kako dialup korisnik može update-ovati gentoo:
Prvo skinite najsvežiji snapshot portage-a, ne morate koristiti komandu emerge sync ili emerge-webrsync
već ga skinite sa vama najbližeg mirora. Izbrišite ceo direktorijum /usr/portage i otpakujte novi komandom
tar -xvjf portage-*.tar.bz2 -C /usr ili iz mc-a udjite u arhivu i iskopirajte je u /usr.
Za svaki paket koji želite da instalirate uradite sledeće:
emerge -fp package1 package2 2> linkovi.txt
ili za ceo sistem
emerge -fpu world 2> world.txt
emerge -fpu system 2> system.txt
Ove fajlove snimite na disketu ili šta već i na mašini(koja je na netu naravno) kucajte sledeće:
wget -i linkovi.txt
Download-ovane fajlove ponesete kući i snimite ih u /usr/portage/distfiles i to je to. Sada možete
koristiti komande
emerge -u systememerge -u world U zavisnosti od verzije, wget možda i neće raditi, u tom slučaju koristite sledeću Python skriptu
napravite novi fajl i nazovite ga distfile-grabber i u njega paste-ujte sledeće:
#!/usr/bin/env python
#
# Copyright Graham Ashton <ashtong at users dot sourceforge dot net>, 2004.
"""Download tarballs for Gentoo upgrade
Downloads distfiles (i.e. the contents of /usr/portage/distfiles)
specified by an input file. You can generate suitable input with a
command such as this:
emerge --fetchonly -uDp world 2> distfiles.txt
Transfer the distfiles.spec file to a different machine, and run:
distfile-grabber distfiles.txt
All the files required to upgrade the first computer will be
downloaded to a temporary directory on the second. It is intended to
be used to download files on machines that have lots of bandwidth (and
perhaps a CD burner), on behalf of those that don't.
"""
import os
import sys
import tempfile
def get_filename():
try:
return sys.argv[1]
except IndexError:
sys.stderr.write('Usage: %s <file>
' % os.path.basename(sys.argv[0]))
sys.exit(1)
def download_file(urls, temp_dir):
for url in urls.split():
rval = os.system('wget -c -P %s %s' % (temp_dir, url))
if rval == 0:
break
def main():
filename = get_filename()
tempfile.tempdir = '/var/tmp'
temp_dir = tempfile.mkdtemp()
for i, urls in enumerate(file(filename)):
download_file(urls, temp_dir)
print '%s files successfully downloaded to %s' % (i, temp_dir)
if __name__ == '__main__':
main()
Fajl mora da bude executable - chmod +x distfile-grabber
Iskopirajte ga u neki direktorijum koji je u PATH-u na primer /usr/local/bin i pokrenite ga ovako:
distfile-grabber linkovi.txt