UPS/UPD Doc Home page | Computing Division| Fermilab at
Work | Fermilab
Home
|
||||||||||||
Complete Guide and Reference Manual for UPS, UPD and UPP v4 |
Chapter 8: Installing Products using FTP
8.1 "Quick and Dirty" Download of Product from KITS
8.1.1 Download Areas
8.1.2 Register your Node
8.1.3 Download a Product
8.1.4 Declare the Product to your Database
8.2 UPS Product Components to Download
8.3 Installing Products from fnkits.fnal.gov
8.3.1 Download the Files from fnkits
8.3.2 Download Areas
8.3.3 Run ftp
8.3.4 Unwind the Files into your Products Area
8.3.5 Declare the Product to your Database
8.4 Installing Products from Other Product Distribution Nodes
8.4.1 Locate the Product Files on the Server
8.4.2 Download the Files from the Server
8.4.3 Unwind the Files into your Products Area
8.4.4 Declare the Product to your Database
Chapter 8: Installing Products using FTP
This chapter describes how to download a product using FTP, install it, and declare it to a local UPS database. Anonymous FTP is available on fnkits, and may be available on other UPS product distribution nodes. FTP does not take advantage of the local node's UPD configuration. It can be used only to retrieve products; it is left to the installer to unwind and declare them. Furthermore, if the table file and/or the ups directory is (are) not included the tar file, each must be retrieved separately.
FTP is not recommended for installations into the usual local product area; UPD is designed and configured specifically for this purpose and should be used instead. FTP is more suited to product installations into non-standard locations on your node, e.g., into your own area for use just by you.
On fnkits, FTP is most useful for off-site users who want to download FermiTools products, which are located under the /pub directory in the KITS database. You do not need to be a registered user to obtain the FermiTools products.
8.1 "Quick and Dirty" Download of Product from KITS
8.1.1 Download Areas
Products are arranged (via symlinks) in several different file hierarchies to make browsing easier:
- The ftp://ftp.fnal.gov/products/ directory contains products organized by product name and version.
- The ftp://ftp.fnal.gov/KITS/ hierarchy contains products organized by operating system.
- The ftp://ftp.fnal.gov/pub/ hierarchy contains the FermiTools products which are available to the general public.
8.1.2 Register your Node
First, verify that your node is registered to obtain products from fnkits. If not, complete the product distribution registration form at http://www.fnal.gov/cd/forms/upd_registration.html. If you only want to access FermiTools products (which includes all products located under the /pub directory), registration is not required.
8.1.3 Download a Product
If you go to one of the web pages listed above, and select a product/version/flavor, you will find yourself at the download page for that product. The files listed here generally include the archive file containing the product (e.g., <product>_<version>_<flavor>.tar or zip), the archive file of the product's ups directory (e.g., <...>.ups.tar), and a table file (e.g., <product...>.table), as shown here for UPS:
ups_v4_6_SunOS+5.table ups_v4_6_SunOS+5.table.old ups_v4_6_SunOS+5.tar ups_v4_6_SunOS+5.ups.tarFor the installation of a product for use in a UPS environment, you need all three (the old table file is not needed). Click on a file to download it. See section 8.3.4 Unwind the Files into your Products Area for information on unwinding them in the proper order.
If you're downloading the UPS product itself, see the instructions at ftp://ftp.fnal.gov/products/bootstrap/current/manual_install.html for installation instructions, or see Chapter 14: Installing UPS and UPD from Bootstrap.
8.1.4 Declare the Product to your Database
If the product is installed in your machine's standard UPS area in the standard way, you should be able to use the ups declare command with only the following options and arguments to declare the product:
% ups declare <product> <version> -r /path/to/prod/root/dir/ -c -f <flavor> -m <table_name>.tableIf you need more information, see section 4.4 Declaring an Instance Manually and/or 23.5 ups declare.
8.2 UPS Product Components to Download
One of the features of UPS/UPD v4 is that it allows product developers to update certain portions of a product without cutting an entire new release of the product.1 Specifically, a developer can update any file within a product's ups directory and reissue the ups directory tar file, and/or update and reissue a product's table file independently of the product tar file. The disadvantage this feature presents is that you must download these elements separately when using FTP to install a product.
The files that are commonly found within a product's ups directory include:
- a README file which provides information about the product such as origin, developer, support level, and so on
- unformatted man pages (under ups/toman/man)
- formatted man pages (under ups/toman/catman)
- an INSTALL_NOTE file, when needed, with instructions for installers
- (sometimes) a table file2
8.3 Installing Products from fnkits.fnal.gov
First, verify that your node is registered to obtain products from fnkits. If not, complete the product distribution registration form at http://www.fnal.gov/cd/forms/upd_registration.html.
If you only want to access FermiTools products (which includes all products located under the /pub directory), registration is not required.
The naming conventions and file hierarchy on fnkits have been constructed to make finding and downloading product files relatively easy. We show the procedure by way of an example, using the (fictional) product sister, version v1_0, for flavor Linux+2. For the local database we use /fnal/ups/db and we take the local product area to be /fnal/ups/products.
8.3.1 Download the Files from fnkits
8.3.2 Download Areas
Products are arranged (via symlinks) in several different file hierarchies to make browsing easier:
- The ftp://ftp.fnal.gov/products/ directory contains products organized by product name and version.
- The ftp://ftp.fnal.gov/KITS/ hierarchy contains products organized by operating system.
- The ftp://ftp.fnal.gov/pub/ hierarchy contains the FermiTools products which are available to the general public.
You can click to download, or use the traditional ftp command as described below.
8.3.3 Run ftp
In order to download the product files from the server, first change to an appropriate directory and run FTP to the machine, e.g.,:
% cd /usr/tmp % ftp fnkits.fnal.govProvide the username anonymous, and use your <username>@<nodename> as the password.
Once you're logged on, you need to find the product you want. If you know the product's name, version, and flavor, you can just cd to the appropriate directory. If not, you may need to browse a bit. The product pathnames are listed in section 5.3.2 Product Pathnames for FTP Access. Products are arranged (via symlinks) in several different file hierarchies to make browsing easier:
- The /products directory contains products organized by product name and version.
- The /KITS hierarchy contains products organized by operating system.
- The /pub hierarchy contains the FermiTools products which are available to the general public.
We want to install the product sister version 1_0 for the flavor Linux+2, so we cd to the appropriate directory under /products and list the directory contents (this shows typical contents for products on fnkits):
ftp> cd /products/sister/v1_0/Linux+2 ftp> ls -ldrwxr-xr-x 4 100 kits 512 Sep 10 19:53 sister_v0_1_Linux+2 -rw-rw-r-x 1 100 kits 1538 Sep 10 19:53 sister_v0_1_Linux+2.table -rw-r--r-x 1 100 kits 9687040 Aug 19 21:05 sister_v0_1_Linux+2.tar -rw-rw-r-x 1 100 kits 60928 Sep 10 19:53 sister_v0_1_Linux+2.ups.tarThe directory sister_v0_1_Linux+2 contains the unwound ups directory files (to allow you to browse, read and/or download individually any of the files it contains). sister_v0_1_Linux+2.table is the table file, sister_v0_1_Linux+2.tar is the complete product tar file, and sister_v0_1_Linux+2.ups.tar is a separate tar file of the ups directory.
Set the mode to "binary", and get the two tar files:
ftp> binary ftp> get sister_v0_1_Linux+2.tar ftp> get sister_v0_1_Linux+2.ups.tarThen set the mode to "ascii", and get the table file:
ftp> ascii ftp> get sister_v0_1_Linux+2.tableftp> bye8.3.4 Unwind the Files into your Products Area
You need to unwind/copy the product files on your local node in the right order to ensure that:
- the individually-downloaded table file takes precedence over any previously existing table file as well as over one which may be contained within the product tar file
- the product's ups.tar file contents take precedence over any previously existing ups directory contents as well as over that which is contained within the product tar file.
This involves first unwinding the product tar file, then the ups directory, and finally copying the table file to its correct location. This procedure is illustrated below.
Note: From a technical standpoint, you are not required to follow any file naming/location conventions laid out in your system's updconfig file, if any, since you are not using UPD for the installation.
First make the product root directory:
% cd /fnal/ups/products % mkdir -p sister/v0_1/Linux+2Change to the product root directory and unwind the product tar file:
% cd sister/v0_1/Linux+2 % tar xvf /usr/tmp/sister_v0_1_Linux+2.tarNow change to the product's ups directory (or make one if it doesn't exist) and unwind the product's ups.tar tar file:
% cd ups % tar xvf /usr/tmp/sister_v0_1_Linux+2.ups.tarFinally, change to the directory in which you want to put the table file and copy it in. Here we use the product directory under the database (the other commonly used location is under the product's ups directory).
% cd /fnal/ups/db/sister % cp /usr/tmp/sister_v0_1_Linux+2.table ./sister.table8.3.5 Declare the Product to your Database
You now need to declare the product instance to your UPS database3. Declaring a product instance is described in section 4.4 Declaring an Instance Manually.
To declare the downloaded product sister to our /fnal/ups/db database, we run the ups declare command as follows:
% ups declare sister v0_1 -f Linux+2 -z /fnal/ups/db \ -r /fnal/ups/products/sister/v0_1/Linux+2 \ -m sister.tableThe -U and -M options are not included since we put the table file and ups directory in default locations where UPS will find them.
8.4 Installing Products from Other Product Distribution Nodes
The procedure for downloading from any standard UPS product distribution node is basically the same as illustrated for fnkits in section 8.3 Installing Products from fnkits.fnal.gov. The UPD configuration of the server node will most likely be different however, which means that the product and its associated files may be organized differently than on fnkits. You may need to verify that your node is registered to obtain products from the server. Contact the server maintainer or other designated person for information regarding node/user registration.
8.4.1 Locate the Product Files on the Server
The most reliable way to determine the location of the product files is to use the upd list command, e.g.,:
% upd list -h <hostname> -K+:@prod_dir:@ups_dir:@table_file \ sister v0_1 -f Linux+2(We show the output on separate lines for readability:)
"/P/tar/sisterv0_1Linux+2.tar" "/P/ups/sisterv0_1Linux+2.ups.tar" "/P/table/sisterv0_1Linux+2.table"In this example, files are organized on the server by type rather than by product:
- product tar files are stored under the /P/tar hierarchy
- product ups directory tar files are stored under the /P/ups hierarchy
- table files are stored under the /P/table directory.
8.4.2 Download the Files from the Server
Let's take special.upd.host as our server node. In order to download the product files from the server, first change to an appropriate directory and run FTP to the machine, e.g.,:
% cd /usr/tmp % ftp special.upd.hostProvide the username anonymous, and use your <username>@<nodename> as the password.
Once you're logged on, set the mode to "binary", and get the two tar files:
ftp> binary ftp> cd /P/tar ftp> get sister_v0_1_Linux+2.tar ftp> cd /P/ups ftp> get sister_v0_1_Linux+2.ups.tarThen set the mode to "ascii", and get the table file:
ftp> ascii ftp> cd /P/table ftp> get sister_v0_1_Linux+2.tableftp> bye8.4.3 Unwind the Files into your Products Area
Unwind the tar files and copy the table file as shown in section 8.3.4 Unwind the Files into your Products Area.
8.4.4 Declare the Product to your Database
Declare them as shown in section 8.3.5 Declare the Product to your Database.
1In versions of UPS/UPD prior to v4, KITS contained one tar file per product. If anything in the product changed, it required adding a brand new tar file of the whole product to KITS.
2Since the table file may get updated separately from the other ups directory files, the copy maintained in the ups directory is not always the most recent one.
UPS/UPD Doc Home page | Computing Division| Fermilab at
Work | Fermilab
Home
|
This page generated on: 10/15/02 14:05:12