.* ******************************************************************** .* FILE: GENSFS SCRIPT .* .* (c) Copyright Sine Nomine Associates, Ashburn, VA, 2012-2015 .* All Rights Reserved. .* .* Format this document with BookMaster. .* .* Revision Log: .* 09 Jul 2015 DB Created Document .* .* ******************************************************************** :userdoc. :prolog. :docprof layout=off justify=yes ldrdots=yes toc=01234 duplex=sb. :title stitle='SFS Server for Large Files'. General-Purpose SFS Server for Large File Transfer :etitle. .* :date. :address. Sine Nomine Associates 43596 Blacksmith Square Ashburn, VA 20147 :eaddress. :eprolog. :frontm. :tipage. :toc. :figlist. :tlist. :body. :h1.About This Document :p.This document describes the creation of a general-purpose SFS space for the transfer of files larger than a single 3390 model 3. This document spawned from the annoyance that CMS didn't provide a way to transfer files bigger than a mod 3 if you didn't have bigger disks defined -- it provides work space for MAINT and a cookbook setup for a SFS server enabled for FTP access. :p.It describes how to create a SFS server and enable it for FTP access. :h0.Installing the Generic SFS Server :h1.Installing the Generic SFS Server :p.When you need to transfer a bunch of files that are larger than a full 3390 model 3, you need some way to store and manipulate these files conveniently. Fortunately, CMS provides a way to do this&colon. a SFS server. You can expand the design shown here using larger data disks, but here's what you need to do. :h2.Prerequisites :ul. :li.6 3390 model 3 DASD for the SNASYS&colon. filepool. :p.If your system does not have 3390 model 3 DASD defined, equivalent space on larger DASD is acceptable. :li.545 cylinders of 3390 DASD for miscellaneous minidisks. :eul. :h3.Authorizations and/or Permissions :p.To install the generic SFS server, you need the following permissions/authorizations&colon. :ul. :li.Access to a privileged CMS user (such as MAINT) that can create new VM userids and allocate DASD space. :li.If you are using an external security manager (ESM) such as RACF/VM or VM:Secure, access to a privileged CMS user (such as MAINT) that can create security rules to link disks and access other resources. :eul. :h1.Installing the SNASYS&colon. Filepool Machine :p.This process illustrates creating a file pool by the name of SNASYS&colon. :h2.Create a SNASYS Userid :p.A SFS file poll needs a CMS userid to run in. The CP directory entry should look similar to the following&colon. :fig place=inline width=column. :figcap.Sample CP Directory Entry for SNASYS :lines. :xmp. USER SNASYS LBYONLY 32M 32M BG ACCOUNT 1 SNASYS OPTION MAXCONN 2000 NOMDCFS APPLMON ACCT QUICKDSP SVMSTAT SHARE REL 1500 MACHINE XC XCONFIG ADDRSPACE MAXNUMBER 100 TOTSIZE 8192G SHARE XCONFIG ACCESSLIST ALSIZE 1022 IUCV ALLOW IUCV *IDENT RESANY GLOBAL IPL CMS POSIXOPT SETIDS ALLOW LOGONBY MAINT CONSOLE 009 3215 T userid SPOOL 00C 2540 READER * SPOOL 00D 2540 PUNCH A SPOOL 00E 1403 LINK MAINT 190 190 RR LINK MAINT 193 193 RR LINK MAINT 19D 19D RR :exmp. :elines. :efig. :p.Use your local procedures to create the CP userid SNASYS. :h2.Add Minidisks to SNASYS Userid :p.Once the SNASYS userid is created, we need to add minidisks to it. Create the minidisks shown in :tref refid=smdisk1.. :table id=smdisk1 cols='* * * *' width=col split=5. :tcap.Minidisks for SNASYS Filepool :thd. :c.Virtual Address :c.Size (3390 cyl) :c.Description :c.Notes :ethd. :row. :c.191 :c.5 cyl :c.Work minidisk :c. :row. :c.200 :c.120 cyl :c.SFS control minidisk :c. :row. :c.300 :c.120 cyl :c.Log disk 1 :c. :row. :c.301 :c.120 cyl :c.Log disk 2 :c.Should be on different volume from log disk 1 :row. :c.400 :c.100 cyl :c.SFS catalog disk :c.Should be on same disk as 200 :row. :c.500 :c.3338 cyl :c.Data disk 1 :c.Should be entire pack (minus cyl 0) :row. :c.501 :c.3338 cyl :c.Data disk 2 :c. :row. :c.502 :c.3338 cyl :c.Data disk 3 :c. :row. :c.503 :c.3338 cyl :c.Data disk 4 :c. :row. :c.504 :c.3338 cyl :c.Data disk 5 :c. :row. :c.505 :c.3338 cyl :c.Data disk 6 :c. :row. :c.600 :c.100 cyl :c.Control data backup :c. :etable. :p.The virtual addresses for the minidisks are referenced in the DSMPARMS file for the filepool and should match these entries. The minidisk sizes shown here are calculated for a small number of users (system administrators) manipulating large files. :h2.Edit Directory Entry and Insert Special Options :p.Do a DIRM FOR SNASYS GET (or equivalent for your directory manager). Insert the line :xph.MINIOPT NOMDC:exph. following the MDISK statement for virtual addresses 200, 300, and 301. The directory should appear similar to the following&colon. :lines. :xmp. MDISK 200 3390 cyl 100 volser2 R readpw writepw MINIOPT NOMDC MDISK 300 3390 cyl 120 volser3 R readpw writepw MINIOPT NOMDC MDISK 301 3390 cyl 120 volser4 R readpw writepw MINIOPT NOMDC :exmp. :elines. :p.MDISK 191 should be changed to use W access. The entry should appear similar to&colon. :lines. :xmp. MDISK 191 3390 cyl 5 volser1 W :exmp. :elines. :p.Finally, the remainder of the minidisks for the id should be set to R access. The entries should appear similar to&colon. :lines. :xmp. MDISK 200 3390 cyl 100 volser2 R readpw writepw MINIOPT NOMDC MDISK 300 3390 cyl 120 volser3 R readpw writepw MINIOPT NOMDC MDISK 301 3390 cyl 120 volser4 R readpw writepw MINIOPT NOMDC MDISK 400 3390 cyl 100 volser2 R readpw writepw MDISK 500 3390 1 3335 volser5 R readpw writepw MDISK 501 3390 1 3335 volser6 R readpw writepw MDISK 502 3390 1 3335 volser7 R readpw writepw MDISK 503 3390 1 3335 volser8 R readpw writepw MDISK 504 3390 1 3335 volser9 R readpw writepw MDISK 505 3390 1 3335 volserA R readpw writepw :exmp. :elines. :p.Note that ALL the disks MUST have a read and write password defined, or equivalent permissions granted in the ESM. SFS requires this element. :p.Once the changes are made, update the CP directory using DIRM REP SNASYS or the equivalent for your directory manager. :h2.Log In to SNASYS and Create Configuration Files :p.Log into the SNASYS userid and format the 191 disk&colon. :lines. :xmp. format 191 a DMSFOR603R FORMAT will erase all files on disk A(100). Do you wish to continue? Enter 1 (YES) or 0 (NO). 1 DMSFOR605R Enter disk label: md191 DMSFOR733I Formatting disk A DMSFOR732I 5 cyls formatted on A(191) Ready; T=0.01/0.01 12:31:50 :exmp. :elines. :p.Format the control backup disk (600) for later use. :lines. :xmp. format 600 q DMSFOR603R FORMAT will erase all files on disk Q(600). Do you wish to continue? Enter 1 (YES) or 0 (NO). 1 DMSFOR605R Enter disk label: md600 DMSFOR733I Formatting disk Q DMSFOR732I 100 cyls formatted on Q(600) Ready; T=0.01/0.01 12:31:50 :exmp. :elines. :p.This disk will be used later to back up SFS control information if needed. :p.Create a file called SNASYS DMSPARMS A and insert the following&colon. :lines. :xmp. ADMIN MAINT FTPSERVE NOBACKUP SAVESEGID CMSFILES FILEPOOLID SNASYS USERS 1000 :exmp. :elines. :p.Create a SETUP EXEC for future standalone processing, containing&colon. :lines. :xmp. /* REXX */ 'ACCESS 193 C' 'ACCESS 600 Q' 'CP SET EMSG ON' :exmp. :elines. :p.Type :xph.SETUP:exph. to execute the commands. MAINT 193 contains the necessary commands to generate a SFS filepool. :h2.Create the Filepool :p.Run the :xph.FILESERV GENERATE:exph. command. During processing of this command, you will be placed into XEDIT on file SNASYS $POOLDEF. Modify this file to appear exactly as shown in :figref refid=spool1.. :fig id=spool1 place=inline width=column. :figcap.SNASYS $POOLDEF Contents :lines. :xmp. MAXUSERS=1000 MAXDISKS=500 DDNAME=CONTROL VDEV=200 DDNAME=LOG1 VDEV=300 DDNAME=LOG2 VDEV=301 DDNAME=BACKUP DISK FN=SNASYS FT=BACKUP FM=Q DDNAME=MDK00001 VDEV=400 GROUP=1 BLOCKS=0 DDNAME=MDK00002 VDEV=500 GROUP=2 BLOCKS=0 DDNAME=MDK00003 VDEV=501 GROUP=2 BLOCKS=0 DDNAME=MDK00004 VDEV=502 GROUP=2 BLOCKS=0 DDNAME=MDK00005 VDEV=503 GROUP=2 BLOCKS=0 DDNAME=MDK00006 VDEV=504 GROUP=2 BLOCKS=0 DDNAME=MDK00007 VDEV=505 GROUP=2 BLOCKS=0 :exmp. :elines. :efig. :p.When you type FILE to store the configuration, the :xph.FILESERV:exph. command will perfom all the preparation necessary to create the filepool. :p.When :xph.FILESERV GENERATE:exph. is complete, type :xph.FILESERV BACKUP:exph. to take a snapshot of the filepool control data at this point. :p.Create a PROFILE EXEC on the A disk containing the following&colon. :lines. :xmp. /* REXX */ 'SET AUTOREAD OFF' 'ACCESS 600 Q' 'CP SET RUN ON' 'EXEC FILESERV START' :exmp. :elines. IPL CMS to restart the fileserver and run the new PROFILE EXEC. If the server initializes correctly, type :xph.#CP DISC:exph. to disconnect. :h2.Enroll User MAINT in SNASYS Filepool :p.Log into user MAINT. Once logged in, type&colon. :lines. :xmp. SET FILEPOOL SNASYS&colon. ENROLL USER MAINT SNASYS&colon. ( BLOCKS 999999999 STORGROUP 2 :exmp. :elines. :h2.Enroll PUBLIC in SNASYS&colon. Filepool Once MAINT is enrolled, then type&colon. :lines. :xmp. ENROLL PUBLIC SNASYS&colon. :exmp. :elines. :p.You now have a large scratch space that can be used for installation or other file transfers. :h1.Using the New Filepool :p.The new filepool can be accessed by FTP by connecting using :xph.ftp your-vm-system:exph. and logging in as MAINT. Once connected, then type&colon. :lines. :xmp. cd snasys&colon.maint. :exmp. :elines. :p.Files can be read or written at will, and may be larger than a single 3390 can hold. From CMS, you can access the SFS server via :xph.ACCESS SNASYS&colon.MAINT. fm:exph. (note the dot after MAINT). :p.This document describes using mod 3s as a worst-case scenario. If you use mod 9 or mod 27s as the basis for the data storage disks (virtual addresses 500 and up), you can create even larger storage pools or use fewer volumes. In any case, this'll fix the "not quite big enough" issue when transferring encoded volume images. :p.Additional information about SFS can be found in the z/VM CMS Filepool Planning, Administration and Operation manual. :ebody. :euserdoc.