home *** CD-ROM | disk | FTP | other *** search
/ BURKS 2 / BURKS_AUG97.ISO / BURKS / LINUX / HOWTO / mini / adsm.txt < prev    next >
Text File  |  1997-07-07  |  5KB  |  146 lines

  1.   Linux ADSM Mini-Howto
  2.   by Thomas K÷nig, Thomas.Koenig@ciw.uni-karlsruhe.de
  3.   $Date: 1997/01/15 20:36:34 $
  4.  
  5.   This document describes how to install and use a client for the com¡
  6.   mercial ADSM backup system for Linux/i386.
  7.  
  8.   1.  Introduction
  9.  
  10.   ADSM is a network-based backup system, sold by IBM, in use at many
  11.   organizations.  There are clients for a large variety of systems
  12.   (different UNIX brands, Windows, Novell, Mac, Windows NT).
  13.   Unfortunately, at the time of this writing, there is no native Linux
  14.   version.
  15.  
  16.   You will have to use the SCO binary, and install the iBCS2-emulator
  17.   for running ADSM.  This description is for ADSM v2r1.
  18.  
  19.   At the time if this writing, I am only aware of a version which works
  20.   with the i386 version of Linux.
  21.  
  22.   2.  Installing the iBCS module
  23.  
  24.   The iBCS2 module is available from
  25.   ftp://tsx-11.mit.edu/pub/linux/BETA/ibcs2.  If you are running kernel
  26.   version 1.2.13, get ibcs-1.2-950721.tar.gz, unpac it and apply the
  27.   patches ibcs-1.2-950808.patch1 and ibcs-1.2-950828.patch2.  You can
  28.   then type "make" and install the iBCS modlue with "insmod".
  29.  
  30.   For a 2.0 kernel version, get ibcs-2.0-960610.tar.gz, unpack it in a
  31.   suitable place, chdir into that directory, and apply the following
  32.   patch:
  33.  
  34.   --- iBCSemul/ipc.c.orig Wed Jan 15 21:32:15 1997
  35.   +++ iBCSemul/ipc.c      Wed Jan 15 21:32:31 1997
  36.   @@ -212,7 +212,7 @@
  37.           switch (command) {
  38.                   case U_SEMCTL:
  39.                           cmd = ibcs_sem_trans(arg3);
  40.   -                       arg4 = (union semun *)get_syscall_parameter (regs, 4);
  41.   +                       arg4 = (union semun *)(((unsigned long *) regs->esp) + (5));
  42.                           is_p = (struct ibcs_semid_ds *)get_fs_long(arg4->buf);
  43.    #ifdef IBCS_TRACE
  44.                           if ((ibcs_trace & TRACE_API) || ibcs_func_p->trace)
  45.  
  46.   Then, copy CONFIG.i386 to CONFIG, and type make.
  47.  
  48.   If you don't have them already, create the needed device files by
  49.   executing
  50.  
  51.   # cd /dev
  52.   # ln -s null XOR
  53.   # ln -s null X0R
  54.   # mknod socksys c 30 0
  55.   # mknod spx c 30 1
  56.  
  57.   3.  Installing the ADSM client
  58.  
  59.   The SCO binary is supplied as three tar files, or disks.  Change to
  60.   the root directory, set your umask according to your policies, and
  61.   unpack them from there (as root).  In your Directory /tmp, you will
  62.   find an installation script; execute that.
  63.   You will then have to hand-edit /usr/adsm/dsm.sys and
  64.   /usr/adsm/dsm.opt.  In dsm.sys, important lines to specify are:
  65.  
  66.      Servername
  67.         The name of the server
  68.  
  69.      TCPServeraddress
  70.         The fully qualified host name of the server
  71.  
  72.      NODename
  73.         Your own hostname
  74.  
  75.   In dsm.opt, you will have to specify
  76.  
  77.      Server
  78.         As before
  79.  
  80.      Followsymbolic
  81.         Wether or not to follow symbolic links (not a good idea, in
  82.         general)
  83.  
  84.      SUbdir
  85.         Wether to back up subdirectories (you usually want that)
  86.  
  87.      domain
  88.         The file systems to back up
  89.  
  90.   You will then have to create a SCO-compatible /etc/mnttab from your
  91.   /etc/fstab.  You can use the following Perl script, fstab2mnttab, for
  92.   this.
  93.  
  94.        ______________________________________________________________________
  95.        #!/usr/bin/perl
  96.  
  97.        $mnttab_struct = "a32 a32 I L";
  98.  
  99.        open(MTAB, "/etc/mtab") || die "Cannot open /etc/mtab: $!\n";
  100.        open(MNTTAB, ">/etc/mnttab") || die "Cannot open /etc/mnttab: $!\n";
  101.  
  102.        while(<MTAB>) {
  103.            next if /pid/;
  104.            chop;
  105.            /^(\S*)\s(\S*)\s(\S*)\s.*$/;
  106.            $device = $1;
  107.            $mountpt = $2;
  108.            $fstype = $3;
  109.            if($fstype ne "nfs" && $fstype ne "proc") {
  110.                $mnttab_rec =
  111.                    pack($mnttab_struct, $device, $mountpt, 0x9d2f, time());
  112.                syswrite(MNTTAB, $mnttab_rec, 72);
  113.                print "Made entry for: $device $mountpt $fstype\n";
  114.            }
  115.        }
  116.  
  117.        close(MNTTAB);
  118.        exit 0;
  119.        ______________________________________________________________________
  120.  
  121.   You do not need to install any shared libraries for these clients;
  122.   everything is linked statically.
  123.  
  124.   4.  Running the client
  125.  
  126.   There are two clients, dsm, which is an X11 interface, and dsmc, a
  127.   command-line interface.  Your computer centre will tell you how to run
  128.   it.  Some startup script at boot, for example
  129.  
  130.   dsmc schedule -quiet 2>&1 >/dev/null &
  131.  
  132.   will probably be required.
  133.  
  134.   5.  Known Problems
  135.  
  136.   Unfortunately, SCO can only deal with hostnames no longer than eight
  137.   characters.  If your hostname is longer, or fully qualified, you may
  138.   need to specify your hostname on the NODename line in
  139.   /usr/adsm/dsm.sys.
  140.  
  141.   If you use the DISPLAY variable, you will have to supply the fully
  142.   qualified host name (i.e. DISPLAY=host.full.do.main:0 instead of
  143.   DISPLAY=host:0).
  144.  
  145.  
  146.