|
PurposeUse the MVSPut subcommand
to transfer MVS™ data sets from
a z/OS® FTP client to a z/OS FTP server without knowing
the details of the client data set allocation. The MVS data set can be one of the following data
set types: - z/OS physical sequential
data set
- z/OS PDS or library data
set
- z/OS generation data set
reference
For a physical sequential data set, MVSPut works
like a combination of the Site and PUt subcommands. For a partitioned
data set, MVSPut works like a combination of the SIte, MKdir (like
<local directory>, and MPut *. subcommands. Regardless of the
type of data set that is transferred, FTP reconfigures the server
to allocate the remote data set with the same attributes as the local
data set.
Format
>>-MVSPut--local_mvs_dataset--+--------------------+------------>
'-remote_mvs_dataset-'
>--+-------------+---------------------------------------------><
'-(REAllocate-'
Parameters- local_mvs_dataset
- Specifies the name of the data set to be sent from the local MVS host to the remote MVS host. If the server working directory is
a data set prefix, the local file is a data set with the local_mvs_dataset name appended to the local working
directory. You can override the local working directory in the local
file name by specifying the local_mvs_dataset value as a complete data set name that is enclosed in single quotation
marks.
- remote_mvs_dataset
- Specifies the name of the remote MVS data set that is created by using the MVSPut subcommand.
If the current server working directory is a data set prefix, the
remote file is a data set with the remote_mvs_dataset name appended to the current server working directory. You
can override the server working directory in the remote file name
by specifying the remote_mvs_dataset value
as a complete data set name enclosed in single quotation marks. If
the remote_mvs_dataset parameter is not
specified, the name of the remote MVS data set is the same as the local_mvs_dataset value.
- REAllocate
- Causes the MVS data set on
your remote MVS host to be deleted
and reallocated with the attributes of the local MVS data set, if the value is an existing MVS data set. If the MVS data set already exists and you do not use
the REAllocate parameter, the existing data
set is not deleted and reallocated, the MVSPut subcommand fails, and
a message is displayed.
The following example shows using the MVSPut subcommand
with the REAllocate parameter specified to transfer a physical sequential
data set to the server. mvsput 'user1.ps.source' 'user1.ps.target' (REAllocate
EZA1701I >>> XDSS 'user1.ps.target'
200-LASTREF=2011/12/07 DSEMPTY=FALSE
200 SITE DSNTYPE=BASIC RECFM=VB BLKSIZE=6233 LRECL=256 PRIMARY=1 SECONDARY=1 TRA
CKS EATTR=SYSTEM
EZA1701I >>> DELE 'user1.ps.target'
250 USER1.PS.TARGET deleted.
EZA1701I >>> SITE DSNTYPE=BASIC RECFM=VB BLKSIZE=6233 LRECL=256 PRIMARY=1 SECOND
ARY=1 TRACKS EATTR=SYSTEM
200 SITE command was accepted
EZA1701I >>> PORT 127,0,0,1,4,4
200 Port request OK.
EZA1701I >>> STOR 'user1.ps.target'
125 Storing data set USER1.PS.TARGET
250 Transfer completed successfully.
EZA1617I 2331 bytes transferred in 0.005 seconds.
Transfer rate 466.20 Kbytes/sec.
The following
example shows a sample entry and response that is displayed after
the MVSPut subcommand is used to transfer a PDS. mvsput 'user1.local.pds' 'user1.remote.pds' (REAllocate
EZA1701I >>> PWD
257 "'USER1.'" is working directory.
EZA1701I >>> XDSS 'user1.remote.pds'
200-LASTREF=2011/12/16 DSEMPTY=FALSE
200 SITE PDSTYPE=PDS RECFM=VB BLKSIZE=6233 DIRECTORY=27 LRECL=256 PRIMARY=1 SECO
NDARY=1 TRACKS EATTR=SYSTEM
EZA1701I >>> DELE 'user1.remote.pds'
250 USER1.REMOTE.PDS deleted.
EZA1701I >>> SITE PDSTYPE=PDS RECFM=VB BLKSIZE=6233 DIRECTORY=27 LRECL=256 PRIMA
RY=1 SECONDARY=1 TRACKS EATTR=SYSTEM
200 SITE command was accepted
EZA2081I Local directory name set to partitioned data set USER1.LOCAL.PDS
EZA1701I >>> MKD 'user1.remote.pds'
257 "'USER1.REMOTE.PDS'" created.
EZA1701I >>> CWD 'user1.remote.pds'
250 The working directory "USER1.REMOTE.PDS" is a partitioned data set
EZA1701I >>> PORT 127,0,0,1,4,11
200 Port request OK.
EZA1701I >>> STOR NEW1
125 Storing data set USER1.REMOTE.PDS(NEW1)
250 Transfer completed successfully.
EZA1617I 134 bytes transferred in 0.005 seconds.
Transfer rate 26.80 Kbytes/sec.
EZA1701I >>> PORT 127,0,0,1,4,12
200 Port request OK.
EZA1701I >>> STOR NEW2
125 Storing data set USER1.REMOTE.PDS(NEW2)
250 Transfer completed successfully.
EZA1617I 134 bytes transferred in 0.005 seconds.
Transfer rate 26.80 Kbytes/sec.
EZA2581I Local HFS directory is /u/user1.
EZA1701I >>> CWD 'USER1.'
250 "USER1." is working directory name prefix
EZA2108I Confidence=High for MVSPUT of USER1.LOCAL.PDS
Restrictions: - The MVSPut subcommand supports only the following data set types:
- z/OS physical sequential
data set
- z/OS PDS or library data
set
- z/OS generation data set
reference
- The MVSPut subcommand does not support transfer of an
empty PDS or library. You can use the MKdir subcommand with the (like
parameter for that purpose.
- The MVSPut subcommand supports checkpointing for block mode restart
of an interrupted file transfer. However, if you transfer
a PDS or library data set, the target data set is deleted when the
transfer fails. You cannot use the REStart subcommand to restart these
transfers.
- The target generation data set must be a positive reference and
cannot be a library data set.
- If the source data set is a PDS, the target generation data set
must be referenced with its absolute name.
- If the source data set is in physical sequential extended format,
the target data set is allocated as if the DSNTYPE parameter with
SYSTEM value was configured. If the system default DSNTYPE value is
not EXTREQ or EXTPREF, the source data set might exceed the architecture
size limitation of the system default DSNTYPE value and the transfer
fails.
- FTP can determine only approximate values for the primary allocation,
secondary allocation, and space type, but it uses an allocation that
is large enough to contain the data. For complete control over the
initial allocation, use the SIte subcommand with the PUt subcommand
instead of the MVSPut subcommand.
- If the target tape data set does not exist on the tape volume,
the transfer sometimes succeeds with the MVSPut subcommand. However,
the MVSPut subcommand does not support reallocating an existing tape
data set.
- For PDS and library data sets, FTP must read the directory of
the source data set at least twice when using the MVSGet subcommand.
Results: - FTP ignores the SendSite subcommand toggle when using the MVSPut
subcommand. A SITE command is always triggered and sent to the FTP
server.
- FTP ignores the SUnique subcommand setting when using the MVSPut
subcommand. If the target remote data set exists on the FTP server
without the REAllocate parameter specified, the MVSPut subcommand
fails no matter SUnique is turned on or off.
- FTP ignores the GLob subcommand toggle when using the
MVSPut subcommand. MVSPut works as if the GLob command is always toggled
on.
- The MVSPut subcommand of a PDS or library data set sends the data
set as a whole data set and transfers all the members of it to the
remote PDS or library data set.
- If an FTP file transfer ends prematurely for a physical sequential
data set, the new data set that is created on the remote host is disposed
according to the CONDDISP configuration on the remote host. See SIte subcommand—Send site-specific information to a host or CONDDISP (FTP
client and server) statement in z/OS Communications Server: IP Configuration
Reference for more information about the CONDDISP configuration
option. However, if you transfer a PDS or library data
set, the new data set that is created on the remote host is deleted
regardless of the CONDDISP configuration if the transfer ends prematurely.
- The MVSPut subcommand changes the FTP server configuration so
that the subcommand can allocate the remote data set as the local
data set.
- The MVSPut subcommand can determine only an approximate size of
the source data set when allocating the target data set, but the target
data set is large enough to complete the transfer. For complete control
over the initial allocation, use the SIte subcommand with the PUt
subcommand.
- If the local source data set is migrated, the FTP client inspects
the AUTORECALL setting to determine whether to recall the data set
or to fail the request. If AUTORECALL is set to true, FTP attempts
to recall the data set; otherwise, it fails the request. Similarly,
if the local source data set is not mounted, the FTP client inspects
the AUTOMOUNT setting to determine whether to mount the data set or
to fail the request. If AUTOMOUNT is set to true, the FTP client attempts
to mount the data set; otherwise, it fails the request. You can change
the AUTOMOUNT and AUTORECALL settings of the FTP client with the LOCSIte
subcommand. Choosing AUTOMOUNT or AUTORECALL could can a long delay
because the FTP client waits for the data set to become available.
Requirements: - The local and remote data sets must be MVS data sets.
- The remote FTP server must be z/OS V2R1
Communications Server or later releases.
- Users must have READ access to the source data set and
ALTER access to the target data set to use the MVSPut subcommand.
Guidelines: - An FTP server can specify one or more of the Storage Management
Subsystem (SMS) classes to manage characteristics that are associated
with or assigned to data sets. See “Specifying values for new data
sets - Storage Management System(SMS)” in z/OS Communications Server: IP Configuration
Guide for more information about SMS classes.
- The MVSPut subcommand can determine only an approximate size of
the source data set when allocating the target data set. For complete
control over the initial allocation, use the SIte subcommand with
the PUt subcommand instead of the MVSPut subcommand.
|