See my documention of how to install Jukeman at

http://w3/~jasper/imgservV4.html


==================================================================
To see the list of defined jukeboxes on an image server,
  /arc/ixos/cdadm survey -d +d s:d
or /jukeman/cdadm survey -d +d s:d

or you can
  grep startup /ips/ixos/server.cfg

Or at the BIE, where they have Juke1-Juke12,
  grep startup /arc/ixos/server.cfg

==================================================================
To get a list of CD labels on a particular jukebox,
   /jukeman/cdadm survey -s d=s2jb1.dev +p

To get  US CD's,   | grep ^[0-9] > /s2jb1.us
       PCT CD's,   | grep ^pct   > /s2jb1.pct
       ESA CD's,   | grep ^esa   > /s2jb1.esa
       ESB CD's,   | grep ^esb   > /s2jb1.esb
       ESP CD's,   | grep ^esp   > /s2jb1.esp
       EPB CD's,   | grep ^epb   > /s2jb1.esp

To get a list of all slots of a jukebox at the BIE,
   /arc/ixos/cdadm survey -v +sp     d=Juke1.dev
or only the filled slots,
   /arc/ixos/cdadm survey -v +sp u=+ d=Juke1.dev
or only the empty slots,
   /arc/ixos/cdadm survey -v +sp u=- d=Juke1.dev

==================================================================
To load a CD into slot 558,
   /jukeman/cdadm insert s1jb0 558

And to remove it,
   /jukeman/cdadm remove s1jb0 558

==================================================================
To query the queue on any image server, type
   /ips/bin/rtebrows -# rtework.que.status

==================================================================
To see which CDs are currently loaded in the drives of a juke,
   /jukeman/cdadm survey -v +ap d=s1jb0.dev | grep @

or in Japan,
   /ips/ixos/cdadm survey -v +ap d=ips07ijb1.dev | grep @

or better, 
   /jukeman/cdadm survey -r +isfun           
will return something like this on patimg1,
   1  76 - - /dev/iXOS_SCSI5/0
   2 287 - - /dev/iXOS_SCSI5/1
   3  99 - u /dev/iXOS_SCSI5/2
   4   0 - - /dev/iXOS_SCSI5/3
   5   0 - - /dev/iXOS_SCSI5/4
   6   0 f u /dev/iXOS_SCSI5/5
where the 1st column = Logical Drive # (what you'd use in a detach/attach cmd)
      the 2nd column = Slot # of Occupying CD else 0 if empty, so here,
                       drive 1 has the CD from slot 76,
                       drive 2 has the CD from slot 287,
                       drive 3 has the CD from slot 99,
                       and drives 4-6 are empty.
      the 3rd column = "f" if drive is defective (drive 6) else "-"
      the 4th column = "u" if drive is locked (drives 3 & 6) else "-"
      the 5th column = Drive name from /jukeman/s1jb0.dev, which shows the
                       SCSI id (0-5) after the last slash.

To move the CD in drive 3 back to its home slot (slot 99 in the above example),
   /jukeman/cdadm movecd s1jb0 3  

To move the CD in slot 99 in drive 5,
   /jukeman/cdadm movecd s1jb0 5 99

==================================================================
To test if a CD is really there, according to the iXos code, type
  /jukeman/cdadm survey -s +sp d=s4jb1.dev | grep empty

For example, on 10-18-2000, when we did the above command, we saw
402 -empty-    

But if you check against the /dfs/users/kourtny/jukes*.lst files,
e.g.  grep ^402 jukes456.lst
shows you (with these implied column headings)
             s4jb0      s4bj1      s5jb0      s5jb1      s6jb0      s6jb1
      402 esp1979009 epb1992042 esp1991009 esp1991042 esp1999079 wld1996002

which is saying that on s4jb1, one should see the epb1992042 CD.

To fix this, we typed
  /jukeman/cdadm testcd s4jb1 402
which restored the epb1992042 CD.

==================================================================
To determine which CD a given patent image is on,

login to an image server
   cd /ips/etc
or in Japan or at the BIE,
   cd /ips/idx

In this directory are a bunch of index files.  You've got to know
what kind of patent you're looking for, else you can search them all.
CHA0____.idx               US__BRE_.idx               WOA1____.idx
CHA3____.idx               US__B___.idx               WOA2____.idx
CHA5____.idx               US__D___.idx               WOA3____.idx
CHA_____.idx               US__H___.idx               WOA4____.idx
CHB5____.idx               US__PP__.idx               WOA5____.idx
                           US__P___.idx               WOA6____.idx
EPA0____.idx               US__RE__.idx               WOA8____.idx
EPA1____.idx               US__XBRE.idx               WOA9____.idx
EPA2____.idx               US__XB__.idx               WOAA____.idx
EPA3____.idx               US__XD__.idx               WOAB____.idx
EPB0____.idx               US__XRP_.idx               WOAC____.idx
EPB1____.idx               US__XRE_.idx
EPB2____.idx               US__X___.idx               JPA_____.idx
EPB_____.idx               US______.idx               exchange.idx

The first step is find the disc ID number by
   /ips/bin/browseidx -n US__D___.idx | grep 409403 <<< No leading zeros.
or in Japan or at the BIE,
   /ips/bin/browseidx -n /ips/idx/WOA1____.idx | grep 70042

It returns something like
409403 5378 1
That second number is the disc ID #.  Use that in this command
   grep 5378 jukebox.parm
or in Japan,
   grep 2550 /ips/idx/jukebox.parm
or in the BIE,
   grep 6538 /ips/idx/jukebox.parm

It returns something like
DISC.5378=199905112,s5jb0,-,1,1,
or for Japan,
DISC.2550=miwo2000229,ips07ijb1,-,52,4,
or for the BIE,
DISC.6538=miwo2000229,bidocw2jb12,-,52,4,

Which says that patent's image is on jukebox s5jb0 (on as0145e1),
on the CD labeled 199905112.
or for the Japan example, it's on jukebox ips07ijb1 (on ips07i)
on the CD labeled miwo2000229.
or for the BIE example, it's on jukebox bidocw2jb12 (on bidocw2=spn09)

========================================================================

Here's a quick & dirty script I crafted one day (4-3-2001) to completely
reset the state of the WO00058473A2 image in JAPIO.

#!/bin/ksh

#  Insure miwo2000192 is not loaded in ips07ijb1

was_in_drive=0
drive=0
while /ips/ixos/cdadm survey -v +sap d=ips07ijb1.dev | grep miwo2000192 | grep @
do was_in_drive=1
   ((drive=$drive+1))
   echo "miwo2000192 is loaded in some drive.  Will unload drive $drive ..."
   /ips/ixos/cdadm movecd ips07ijb1 $drive
done

if (( $was_in_drive ))
then echo "That got it.  It must have been in drive $drive."
else echo "miwo2000192 was not in a drive."
fi

if ls /dfs/gifcache/WO00058473A2* 1>/dev/null 2>&1
then for i in /dfs/gifcache/WO00058473A2*
  do echo "Erasing $i ..."
    rm -f $i
  done
fi

if ls /dfs/cache/73/84/WO00058473A2* 1>/dev/null 2>&1
then for i in /dfs/cache/73/84/WO00058473A2*
  do echo "Erasing $i ..."
    rm -f $i
  done
fi

if ls /dfs/dlcache/WO00058473A2* 1>/dev/null 2>&1
then for i in /dfs/dlcache/WO00058473A2*
  do echo "Erasing $i ..."
    rm -f $i
  done
fi

========================================================================
Another quick and dirty to do what the image servers do when they read
single-page tif files from CD, and create a multi-page tif file in
/dfs/cache.

This example was for WO09000852A1 on CD wld1990002 on ips07ijb2.

grep 'WOA1 09000852' /cdrom/wld1990002/exchange.idx | awk '{print $3}' | cut -d'\' -f2-6 | \
 sed 's?^?filename /cdrom/wld1990002/?;s?\\?/?g' > /tmp/raj.ctl
                    This filetype must be ctl ------------> ///

Then /ips/bin/any2any /tmp/raj.ctl /dfs/cache/52/08/WO09000852A1.tif
     rm /tmp/raj.ctl

========================================================================
The site-specific files are
  - /ips/cgi-bin/local.pl, which has a lot of things.  E.G. the pointer
                           which image servers to use.
  - /ips/etc/arcpat.cfg 
  - /ips/etc/arcroute.cfg 
  - /ips/etc/jukebox.parm
  - /ips/etc/idxfiles.lst
  - /ips/httpd/conf/httpd.conf
  - /etc/rc.local
  - ~ipsrun/.profile
  - /ips/include/prn_general.lst

See the "Delphion Image Server Version 4 Installation" document for the
details.

========================================================================
There are three places one could print from in the IPSfDB2 solution,

* The Shopping Basket, run by /ips/httpd/htdocs/macro/V4/basket.d2w.
* A Hitlist, run by /ips/httpd/htdocs/macro/V4/hitlist_sql.d2w.
* The Bulk Order screen, run by /ips/httpd/htdocs/macro/V4/patnr_bulk.d2w.

All three include /ips/htdocs/macro/v4/os_aix.d2w, which defines the
following two subroutines,
  - Dyn_PrnLst, which gives back a list of printers based on userid 
                This is done by calling /ips/cgi-bin/Dyn_PrnLst.pl,
                includes /ips/include/prn_general.lst, which has the
                list of possible printers, the first one being the
                default.
  - Dyn_PrnOK, which gives back "" if the user is part of printer
               group. Printer groups start with prn_.
               This is done by calling /ips/cgi-bin/Dyn_PrnOK.pl

The printer name is passed to /ips/bin/patreq via the -d option,
so the possible printer names must be defined as real AIX print queues
on all front-end web servers and image servers.

========================================================================
The iXos/Jukeman code has been through many owners.  I think this has
been their history,
   iXos - Original Owners
   Jukeman
   Smart Storage
   OTG
   Legato Systems
   EMC

On 6-15-2004, I saw at http://www.jukesan.com, this blurb;

  I am Hans Klunder.  This page is a brief history of my work.

  1988-1999: I worked with iXOS, developing several components of document
             archives. One of them was Jukeman, a portable file system for
             jukeboxes.

  1999-2003: SmartStorage bought Jukeman, OTG bought SmartStorage, Legato
             bought OTG, and EMC bought Legato. I worked with each of these
             companies, most of the time maintaining Jukeman.  EMC,
             Jukeman's current owner, is focussed more on hard disks than
             on optical storage. Since December 2003, I do no longer work
             on Jukeman, nor with EMC.

  December 2003: PoINT Software & Systems has a long experience in writing
                 software that manages mass storage devices. The company
                 keeps improving and extending these products, and since
                 December 2003 I am contributing to this process as an
                 employee of PoINT Software & Systems.

  Contact: Hans Klünder, Am Grünhaus 11, 85630 Grasbrunn, Germany, hans@jukesan.com

See also 
http://www.pointsoft.de/Downloads/demos/PFSX/README.TXT.


========================================================================
To get a Jukeman license, you  must call the "Legato Systems Product Support"
line at 1-800-579-3647 and tell them you want a new license for their
SmartStorage product.  They're in Maryland and their hours are M-F, 8-8 EST.

When I last did this on 8-14-2002 for patimg2, I had to
  - Verify the version of the Jukeman code by looking at the first few lines
    of /ips/ixos/logfile.txt, e.g.
       0 3/12:1649:227     SmartStor JUKEMAN 2.5 Server for AIX
       0 3/12:1649:227     Copyright (C) iXOS Software AG 1991-1999, SmartStorage Inc 1999-2000
       0 3/12:1649:227     This jukebox service was built Apr  1 2000, 20:52:00
       2 3/12:1649:227     no valid license in server.lic

  - Prove I had a valid license by giving them one by sending them the
    /jukeman/server.lic file from patimg1, to support@otg.com.

  - Convince them that there was no jukelic command.  The guy later confessed he was
    wrong about that.  He had thought that the "SmartStor licensing" software was in all
    Jukeman 2.5 releases, but the AIX version was the only platform that did not have it.

  - Give them the output of patimg2's /bin/uname -m command, which was
    000D337D4C00.

When you get the license, you'll put it in a 4-line file at /ips/ixos/server.lic
(or /jukeman/server.lic depending on how the Jukeman software was installed).
For example, patimg2's server.lic file is
      version=2
      oem=IBM
      volumes=1200
      license=zvingubd

Now if need be, restart the software.  As root,
      /ips/ixos/cdadm byebye
      /ips/ixos/cdnfsd
and now the logfile.txt line says
       2 8/14:1032:545     found valid license in server.lic

========================================================================

When the file system gets full during the loading of a new CD into the
image server index (e.g. /ips/idx/WOA1____.idx), oftentimes it's the
/ips/idx/idxfiles.lst file that get corrupted.

This file is a list of which idx files the image server (patprod to be
precise) loads when initializing.  When it get corrupted, it's missing
lines and those indexes don't get loaded.

To fix, manually add those lines in or recover from a backup, then as
ipsrun, type
    /ips/bin/patprod.stopall
and /ips/bin/patprod.startall

========================================================================

  In June, 2004, I was trying to find out who owns & supports this AIX
iXos/jukeman/SmartStor software.

I found in http://www.tim.de/Datenblattverzeichnis/Legato/ARCX_comp.pdf,
which was the "Legato ArchiveXtender Certified Device List" dated 09/12/03,
making it sound like Legato still owned this and had renamed it to
ArchiveXtender-Jukeman Edition for UNIX.

========================================================================

I downloaded a trial version of some Linux software called PoINT FSX
from a German company, PoINT Software & Systems GmbH (www.pointsoft.de).

See my aixnotes/fsx file.