1 03/28/87  copy_disk_volume
 2 
 3 Syntax as a command:  copy_disk_volume  source_device_name
 4                         target_device_name  {-control_args}
 5 
 6 
 7 Function: copies data from one Multics physical volume to another of
 8 the same device type when the source is a system-storage disk and both
 9 disk packs are mounted on non-system-storage (I/O) disk drives.  This
10 command can be used to recover data from a failing disk pack without
11 shutting down the system.
12 
13 
14 Arguments:
15 source_device_name
16    is the name of the disk drive to be copied from, in the form
17    dska_xx{s}.
18 target_device_name
19    is the name of the disk drive to be copied to, in the form
20    dskb_xx{s}.
21 
22 
23 Control arguments:
24 -brief, -bf
25    suppresses the informative messages produced by default.
26 -check, -ck
27    causes the target disk to be written in "wrtcmp" mode, which uses
28    write-compare DCWs to do the writing.
29 -error_threshold {N}
30    sets the threshold for number of bad pages allowed on the disk
31    before you will be queried whether or not you wish to continue
32    copying.  (Default 10).
33 -long, -lg
34    prints informative messages at the beginning and end of the copy,
35    and announces the location after every hundred cylinders are copied.
36    (Default)
37 
38 
39 -no_check, -nck
40    writes the target disk using ordinary write DCWs. (Default)
41 -no_query
42    no queries will be issued.  If -no_query is used in conjunction with
43    -error_threshold, when the threshold is reached, the program will
44    exit.
45 -no_trace
46    suppresses the trace messages. (Default)
47 -pv_name name, -pv name
48    optional argument to allow specification of a volume name for
49    either the source_device or the target_device.  This argument is
50    considered a modifier for either source_device_name or
51    target_device_name and must appear after the device name to which it
52    applies.  For example:
53 
54 
55    copy_disk_volume dska_nn{s} -pv foo dska_nn{s}
56    copy_disk_volume dska_nn{s} dska_nn{s} -pv bar
57    copy_disk_volume dska_nn{s} -pv foo dska_nn {s} -pv bar
58 
59    If no pv_name is given, the default pv_name "scratch" will be used
60    in the attach description for the volume.
61 
62 -query
63    allows issuing of queries and the chance to respond with an
64    appropriate answer.  (Default).
65 
66 
67 -trace {N}
68    prints a message for every N I/Os performed by copy_disk_volume,
69    giving the disk name, elapsed time, sector number, and length.
70    N is an optional parameter designating the increment for number of
71    I/Os (default 1).  The trace is off when copying in page-mode on a
72    retry after an unrecoverable read error.
73 
74 
75 Notes:
76 
77 Access required -  Access to workspace.acs is required so that large
78 DCW lists can be used.  Access to the dskX_NN.acs segments for the disk
79 drives is required.  Access to rcp_sys_ is required in order to attach
80 system storage volumes.
81 
82 Error Recovery -  When an error occurs while reading the source disk,
83 copy_disk_volume retries the I/O by breaking it into single records.
84 Errors in writing the target disk will cause the program to exit.  Any
85 errors which persist during single record I/O are considered
86 unrecoverable, the record is skipped and an error message is printed
87 with information about which sectors of the disk are unreadable.
88 
89 
90 The use of very large I/O buffers requires that only one copy of
91 copy_disk_volume be performed at a time in a given process.  It is also
92 recommended that this command not be performed from the initializer
93 because of the I/O requirements.