From 271733ee8eb9a673747bdef320af5ca8e8f18273 Mon Sep 17 00:00:00 2001 From: Guillem Jover Date: Wed, 2 Jul 2014 02:22:32 +0200 Subject: doc: Convert from DebianDoc SGML to DocBook XML --- doc/offline.sgml | 236 ------------------------------------------------------- 1 file changed, 236 deletions(-) delete mode 100644 doc/offline.sgml (limited to 'doc/offline.sgml') diff --git a/doc/offline.sgml b/doc/offline.sgml deleted file mode 100644 index 659ca3147..000000000 --- a/doc/offline.sgml +++ /dev/null @@ -1,236 +0,0 @@ - - - -Using APT Offline - -Jason Gunthorpe jgg@debian.org -$Id: offline.sgml,v 1.8 2003/02/12 15:06:41 doogie Exp $ - - -This document describes how to use APT in a non-networked environment, -specifically a 'sneaker-net' approach for performing upgrades. - - - -Copyright © Jason Gunthorpe, 1999. -

-"APT" and this document are free software; you can redistribute them and/or -modify them under the terms of the GNU General Public License as published -by the Free Software Foundation; either version 2 of the License, or (at your -option) any later version. - -

-For more details, on Debian systems, see the file -/usr/share/common-licenses/GPL for the full license. - - - - -Introduction - - -Overview - -

-Normally APT requires direct access to a Debian archive, either from a local -media or through a network. Another common complaint is that a Debian machine -is on a slow link, such as a modem and another machine has a very fast -connection but they are physically distant. - -

-The solution to this is to use large removable media such as a Zip disc or a -SuperDisk disc. These discs are not large enough to store the entire Debian -archive but can easily fit a subset large enough for most users. The idea -is to use APT to generate a list of packages that are required and then fetch -them onto the disc using another machine with good connectivity. It is -even possible to use another Debian machine with APT or to use a completely -different OS and a download tool like wget. Let remote host mean the -machine downloading the packages, and target host the one with bad or -no connection. - -

-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 formated with a filesystem that can handle long file -names such as ext2, fat32 or vfat. - - - - -Using APT on both machines - - -Overview - -

-APT being available on both machines gives the simplest configuration. The -basic idea is to place a copy of the status file on the disc and use the -remote machine to fetch the latest package files and decide which packages to -download. The disk directory structure should look like: - - - /disc/ - archives/ - partial/ - lists/ - partial/ - status - sources.list - apt.conf - - - - - - -The configuration file - -

-The configuration file should tell APT to store its files on the disc and -to use the configuration files on the disc as well. The sources.list should -contain the proper sites that you wish to use from the remote machine, and -the status file should be a copy of /var/lib/dpkg/status from the -target host. Please note, if you are using a local archive you must use -copy URIs, the syntax is identical to file URIs. - -

-apt.conf must contain the necessary information to make APT use the -disc: - - - APT - { - /* This is not necessary if the two machines are the same arch, it tells - the remote APT what architecture the target machine is */ - Architecture "i386"; - - Get::Download-Only "true"; - }; - - Dir - { - /* Use the disc for state information and redirect the status file from - the /var/lib/dpkg default */ - State "/disc/"; - State::status "status"; - - // Binary caches will be stored locally - Cache::archives "/disc/archives/"; - Cache "/tmp/"; - - // Location of the source list. - Etc "/disc/"; - }; - - -More details can be seen by examining the apt.conf man page and the sample -configuration file in /usr/share/doc/apt/examples/apt.conf. - -

-On the target machine the first thing to do is mount the disc and copy -/var/lib/dpkg/status to it. You will also need to create the directories -outlined in the Overview, archives/partial/ and lists/partial/. -Then take the disc to the remote machine and configure the sources.list. -On the remote machine execute the following: - - - # export APT_CONFIG="/disc/apt.conf" - # apt-get update - [ APT fetches the package files ] - # apt-get dist-upgrade - [ APT fetches all the packages needed to upgrade the target machine ] - - -The dist-upgrade command can be replaced with any other standard APT commands, -particularly dselect-upgrade. You can even use an APT front end such as -dselect. However this presents a problem in communicating your -selections back to the local computer. - -

-Now the disc contains all of the index files and archives needed to upgrade -the target machine. Take the disc back and run: - - - # export APT_CONFIG="/disc/apt.conf" - # apt-get check - [ APT generates a local copy of the cache files ] - # apt-get --no-d -o dir::state::status=/var/lib/dpkg/status dist-upgrade - [ Or any other APT command ] - - -

-It is necessary for proper function to re-specify the status file to be the -local one. This is very important! - -

-If you are using dselect you can do the very risky operation of copying -disc/status to /var/lib/dpkg/status so that any selections you made on the -remote machine are updated. I highly recommend that people only make selections -on the local machine - but this may not always be possible. DO NOT copy -the status file if dpkg or APT have been run in the mean time!! - - - - -Using APT and wget - - -Overview - -

-wget is a popular and portable download tool that can run on nearly -any machine. Unlike the method above this requires that the Debian machine -already has a list of available packages. - -

-The basic idea is to create a disc that has only the archive files downloaded -from the remote site. This is done by using the --print-uris option to apt-get -and then preparing a wget script to actually fetch the packages. - - - - - -Operation - -

-Unlike the previous technique no special configuration files are required. We -merely use the standard APT commands to generate the file list. - - - # apt-get dist-upgrade - [ Press no when prompted, make sure you are happy with the actions ] - # apt-get -qq --print-uris dist-upgrade > uris - # awk '{print "wget -O " $2 " " $1}' < uris > /disc/wget-script - - -Any command other than dist-upgrade could be used here, including -dselect-upgrade. - -

-The /disc/wget-script file will now contain a list of wget commands to execute -in order to fetch the necessary archives. This script should be run with the -current directory as the disc's mount point so as to save the output on the -disc. - -

-The remote machine would do something like - - - # cd /disc - # sh -x ./wget-script - [ wait.. ] - - -Once the archives are downloaded and the disc returned to the Debian machine -installation can proceed using, - - - # apt-get -o dir::cache::archives="/disc/" dist-upgrade - - -Which will use the already fetched archives on the disc. - - - - -- cgit v1.2.3