Simple guide to sharing media via Stone+Wire

IRIX and IRIX software discussion including open source and commerical offerings.
Forum rules
Any posts concerning pirated software or offering to buy/sell/trade commercial software are subject to removal.
User avatar
uunix
Donor
Donor
Posts: 1727
Joined: Sun Mar 27, 2011 12:48 pm
Location: Stourbridge / England / UK

Simple guide to sharing media via Stone+Wire

Unread postby uunix » Thu Jan 19, 2017 3:55 am

I have spent the last few days configuring a Stone Wire network to enable media sharing. Here are my findings.

Simple guide to setting up stone-wire between discreet editing systems.

This is a real-life example. It includes one machine that is on a different network some 30 miles away connected via a site-to-site VPN with correct routing setup.

There are three machines:
OCTANE01: 192.168.110.53 Framestore ID = 16
OCTANE02: 192.168.111.61 Framestore ID=61
OCTANE03: 192.168.110.55 Framestore ID=64

The main steps are, System Environment, Exports directory, Setup the framestore map.

Code: Select all

Files to be edited:
/etc/host
/etc/exports
/usr/discreet/sw/cfg/sw_framestore_map
File to execute as root:
   /usr/etc/exportfs
   /usr/discreet/sw/sw_config
   /usr/discreet/sw/sw_stop
   /usr/discreet/sw/sw_start
   /usr/discreet/sw/sw_restart
   /usr/discreet/sw/tools/sw_makeframestoremap[s][/s]
   /usr/discreet/sw/tools/sw_framestore_dump

Instructions at this point state you should shut down the service /usr/discreet/sw/sw_stop
I have never bothered, and just restart the service at the end and when it all looks good I restart the machine to ensure everything is running and has been read correctly

System Environment

Ensure you have a good /etc/hosts and can ping each machine by name.
Ensure NFS is installed on all machines.
Ensure autofs is enabled: chkconfig autofs on
Ensure nfs is on: chkconfig nfs on
Ensure you have your stoneFS setup on each machine:/usr/discreet/sw/sw_config
An interesting point when setting up the stoneFS, the ID will be set to the last sector of your IP address, unless you set it at creation time. It may be possible to change it after by ‘keeping’ the filesystem and re-creating, but I never had the nerve. Why does this matter? Well, say you create a stoneFS and then change your IP address later and rebuild your map using /usr/discreet/sw/tools/sw_makeframestoremap. It will populate the map with the incorrect ID and you will not be able to start the product. If this occurs, simply edit /usr/discreet/sw/cfg/sw_framestore_map and change the ID to the original or change the ID on the framestore to keep it neat.
[EDIT CHANGING THE ID ON YOUR FRAMESTORE WILL RESULT IN LOSS OF DATA]
Example: Machine IP Address is 192.168.110.10, stoneFS ID will be 10
Ensure all your Stone+Wire ‘s match on each machine.
versions -n | grep -I stone

Export Directory

You will need to export /usr/discreet/clip via /etc/exports like thus:

Code: Select all

/usr/discreet/clip -rw,access=octane01:octane02:fuel01:fuel02,anon=0

/usr/discreet/clip is the folder I am exporting, which is your framestore.
-rw is for Read Write access.
access= octane01:octane02:fuel01:fuel02 is to identify the machines that should have access and must match your host entries.
anon=0 Sets the anonymous (request from a host for uid 0 or a request with null authentication) access to the user with id 0 (root)

Once done, type: /usr/etc/exportfs -a
Check that it appears on another machine, from the toolchest select Desktop-Shared Resources-On a remote workstation
Type in the name of the workstation you have exported from and you should see /usr/discreet/clip appear. If not, take a look at the steps above. Maybe as a resort, restart your machine? I have noticed that incorrect entries in the exports file affect the lines below.

Setup the framestore Map

Next let’s look at /usr/discreet/sw/cfg/sw_framestore_map

Code: Select all

octane03 8# cat sw_framestore_map
#
# octane03's Stone+Wire Framestore Map
# See the sw_framestore_map man page for details.
#
VERSION = 2.0
[FRAMESTORES]
FRAMESTORE=octane03     HADDR=192.168.110.55      ID=64
FRAMESTORE=octane01     HADDR=192.168.110.53      ID=16
FRAMESTORE=octane02     HADDR=192.168.111.61    ID=61
[INTERFACES]
#FRAMESTORE=octane03
#PROT=HIPPI     IADDR=0x03000001        DEV=1
#PROT=TCP       IADDR=192.168.110.55      DEV=1

The command to setup the map automatically (as per the example in the Wire-Tap book) is:
/usr/discreet/sw/tools/sw_makeframestoremap -h 0x03000001 > /usr/discreet/sw/cfg/sw_framestore_map
Now, the -h option creates a full map including hippi protocol. Even after adjustment to incorrect mappings I found I could not start any products. So as in the example above I commented out the items under [INTERFACES].
Why would I need hippi if I don’t have it installed or use it? The -f option produces a map without hippi. But even that failed, I had to comment out everything under [INTERFACES].
As mentioned, I had changed the machine IP address on two of the machines after the framestore was created so in this case I changed the relevant ID numbers.
As a point, if you do not have entries for all machines you wish to access, then they will appear in the network list, but you will have no access.
So, I added:

Code: Select all

FRAMESTORE=octane01     HADDR=192.168.110.53      ID=16
FRAMESTORE=octane02     HADDR=192.168.111.61    ID=61

Which are the two other machines I want access to.

Restart your service at this point, /usr/discreet/sw/sw_restart
This should show you possible errors.
Run /usr/discreet/sw/tools/sw_framestore_dump
This will display what discreet recognizes:

Code: Select all

octane03 20# ./sw_framestore_dump
Framestore Name:     ID:   Ping: Hardware Address: Resolved Address:   Creator:  OS:       Has FS:
   Protocol: Interface Address:  Device:
 --------------------------------------------------------------------------------------------------
octane03             64    0     192.168.110.55      octane03            Localhost IRIX      Yes
   TCP       192.168.110.55         1
octane01             16    0     192.168.110.53      OCTANE01            File      N/A       Yes
   TCP       192.168.110.53         1
octane02             61    0     192.168.111.61    OCTANE02            File      N/A       Yes
   TCP       192.168.111.61       1


If everything looks good, I give the machines a reboot.
So once in SMOKE or FLAME, I select Load and choose Network, clicking on each node shows me what projects are available, select the project I want, exit the network and then select the network path in the current project button and hey presto.. I can play, load media from other systems.

Finally
It's possible I may have missed something here, typing it out seems to indicate it’s very easy. Well I suppose once you have conquered it, it does seem that way.
Final note: I do have a problem with my setup, in that OCTANE01 can get files, but a machine trying to get media from OCTANE01 seems to hang, and restarting the service on OCTANE01 indicates an error that I think is relevant to the tape drive that is configured. I will look later.
-----------------------------------------------------------------------
Hey Ho! Pip & Dandy!
:Fuel: :Octane2: :O2: :Indigo: :Indy:
-----------------------------------------------------------------------

Return to “IRIX and Software”

Who is online

Users browsing this forum: Yahoo [Bot] and 2 guests