The EMCOPY.EXE tool provides an user the way to copy a file or a directory and included subdirectories from and to a NTFS partition with security intact.
The user account must grant the Backup and Restores privileges. It must be also a member of administrators or account operators on both the source and the destination computers.
Emcopy.exe copies and migrate the local user and group security entries. This tool does not copy the local user(s) and group(s) database from one computer to another. You must prior use EMC utility LGDUP.EXE if you whish to enable the "/lg" or the "/lu" option (local group or local user copy).
The "/nosec" option disables the copy of the NT security properties of the file or the directory. By default, discretionary access control-lists are replicated on the created file or directory. This option takes priority on the "/o", "/a", "/lg", "/i" options.
The "/o" option enables the copy of a file's owner. Without this option, the account used for the copy will be the owner of the copied files and directories.
The "/a" option enables the copy of auditing informations. The "Manage Auditing" privilege must also be granted by the user account.
The "/secfix" option enables to force update of the NT security properties even if the destination file or directory already exists.
The "/lg" option enables the copy of local group security entries. Without this option, local group entries are ignored.
The "/lu" option enables the copy of local user security entries. Without this option, local user entries are ignored.
The "/i" option is usefull to ignore security entries with local users. By definition, local users are only unknown for the NT server or worktstation where they are created. To avoid security replication error on the dextination server, it is possible to remove this type of user in the copied properties.
The "/create" creates 0 file length rather than copy the data.
The "/s" option enables the copy of the subdirectories.
The "/lev:n" sets the depth level of scanned directories.
The "/d" option provides to copy only the files which have the LAST MODIFICATION time greater than the existing target copy.
The "/de" option provides to copy only the files which have the LAST MODIFICATION time greater than the existing target copy or the files that have the same LAST MODIFICATION time and a diference in the size.
The "/sd" option is to preserve the security.In this case, the file content is not copied if any error occurred during the security setting.
The "/l" option evaluates the number of files to copy without to do any file duplication. Compares also the NT security if the "/secfix" option security. In that case, the "/o" and "/a" switches are used to specify the owner and the audit properties comparison. When differences occur, the properties of both the source and destination files or directory are printed.
The "/c" switch allows the process to continue after the retries.
The "/z" switch is the restartable mode: restarts the copy process from the point of failure rather from the beginning of the file.
The "/r:n" option specifies the maximum number of retries. By default it is set up to 100.
The "/w:n" option specifies the time in seconds to wait between two retries. By default it is set up to 30 seconds.
The "/th n" option specifies the maximum number of thread. By default it is set up to 64.
The "/purge" option enables the deletion of the files and directories from the destination tree which do not exist in the source one.
The "/sdd" option forces the target directory's dates to be synchronized with the source directory's dates.
The "/stream" option enables the copie of files and directories datastreams. Without that option only the main datastream of files are copied.
The "/log:filename" option allows to redirect the console messages to a new file. The "/log+:filename" option appends the new messages to an existing file. The "/u" option force logfile to be filled up with unicode character set.
The "/q" switch allows the user to disable the print of the files on stdout.
The "/f" switch allows the user to ask for the fullpath print, both the source and the destination paths are printed. By default, only the source path is printed.
The "/BackupSD" and "/RestoreSD" switches allow to backup and restore the security properties without copying the file content. There is no local group translation and local SID suppression.
The "/nd:domain_name" switch allow to translate SD using new domain domain_name instead of original domain.
The "/preserverSIDh" switch allow to preserve SID from previous domain. By default emcopy replace obsolete SID by corresponding SID in current domain.
The "/nodf switch allow to only do a name filtering on file. By default directories and files are processed only if they feet with the list of names that are specified in the command line.
The "/xd dir [dir ...] switch allow to excludes directories with the specified names, paths, or wildcard characters
The "/xf file [file ...] switch allow to excludes files with the specified names, paths, or wildcard characters
MODIFICATION HISTORY : ----------------------
01.00 : Initial Release.
01.01 : The summary is printed even after an CTRL-C from the user. The amount of copied bytes is printed in GB, MB, KB or Bytes according to the number of bytes. The /l options lists only the files to copy or the directories to create.
01.02 : Optimizations in - Setting the security descriptor by using NT_TRANSACT_CREATE SMB request. - If the parent dir of the target file or directory to copy did not exist before the copy, the current target can not exist. - Getting file or directory info with findfirstfile() instead of getfileinfo.
02.00 : - New optional third argument which provides a list of selected files to copy. Wildcards are supported in these fields.
02.01 : - Added EMC ACEs for backup. - Fixed issue: the restartable mode verifies if the source file has changed between two retries. If changed, the copy is restarting from the beginning. - Bug Fixed when a local group name is equal to the server name. - New SID cache implementation using Hash table.
02.02 : - Account names are NO case sensitive. - Fixed issue: when the source server is a Domain controller - the lookup for Domain sid is now running. - local user accounts can be duplicated because they are in a domain.
02.03 : - Added the /purge option. - Fixed issue in DACL comparison with Generic rights. - Fixed issue in Owner setting on a Security descriptor update - Fixed issue in SACL comparison and print. - The number of retry value is now defaulted to 100.
02.04 : - Fixed issue when there is a file sharing violation error from the source tree during the purge process. This caused a stop of the purge in the current directory.
02.04a: - Fixed issue about the comparison of the date. With the /d option, the creation date is now ignored and the data of the files are updated only if the last modification time of the source files is greater than the destination files.
02.04b: - Fixed issue about audit replication, the "Manage auditing and security log" privilege is checked when the /a (audit) switch is specified.
02.05 : - XCOPY interface implementation. When you rename EMCOPY.EXE to XCOPY.EXE, the tools proposes the same interface as XCOPY.EXE. - Added /q (quiet) and /f (fullpath) switches.
02.06 : - Added /nocase switch to create all files and directories in lower case characters.
02.07 : - Added two new switches /BackupSD and /RestoreSD to allow the backup and the restore of the security descriptors without copy of file content. - Added note in usage about extended attributes duplication. - Builtin SID of owner are treated as other SIDs. - The purge process is following the depth level.
02.08 : - Take in account the prefixed local group name with the source server name, format _ .
02.09 : - Change source and target tree scanning for performance enhancement.
02.10 : - Check and set privilege are removed when running in xcopy mode. This allow a user without backup, restore and security privileges to perform a copy. - Add a fix for a problem when using the /purge switch - Add the /nd:domain_name switche that allow to translate ACE in domain domain_name rather than in original domain - Content of not empty files on the target side are no more cleared when doing a copy with the /create switch.
02.11 : - Add the /preserveSIDh switche that allow to preserve previous SID instead of replacing them by corresponding SID in current valid domain. - Fix a problem when working in windows XP using UNC path. - Suppression of the path length limitation.
02.12 : - Fix a problem when restoring SD when /RestoreSD switch is set.
02.13 : - Fix a problem in the SID migration engine.
02.14 : - Fix a performance issue when copying files with application of security - and without historical SID preservation.
02.15 : - Fix an issue when copying offline file. Offline file size was - set to 0 after a copy.
02.16 : - Added /xd and /xf switches to exclude specified files and - directories from the copy.
02.17 : - SID of Deleted account are now migrated as they are when setting the security information without preservation of historical SID. Lookup account name for deleted account are no more done.
02.18 : - Added the /lu switche to allow local user migration
02.19 : - Fixed issue when the target is a standalone server and when the /o option is set. In that case the default owner's sid is now the sid of the user connected to the target server. The default owner's sid is applied when the original owner's sid can not be migrated.
02.20 : - Fixed issue when the owner's SID of the source file can not be resolved and when target and source are the same machine. In That case the owner's sid of the target file was set to an unvalid SID.
- Fixed issue when the group owner of a file is not set and when the /o switch is set.
02.21 : - Fixed issue when the target or source resource is not connected when the tool is started.
02.22 : - Added the /stream option that allow the copie of files and directories datastream.
02.23 : - Changed the choice's strategy of the default primary group. This affect emcopy when the /o option is set. The default primary group is only needed when there is no way to migrate the original primary group of an object. In that case the "domain user" group will be applied to the primary group of the created object.
02.24 : - Fixed timestamp issue when a file to copy is marked as offline. In that case Creation date, Last access date and Modification date were not set to the original date.
02.25 : - Fixed file inconsistency issue when the source file is partially locked for read. In that case the content, the last access time and the last modification time of the target file were wrong.
02.26 : - Fixed issue when the source machine is a DC and security information migration is requested. In that case domain user or group were considered as local to the source machine. So emcopy tried to translate them as local to the target machine instead of migrating them as there are.
02.27 : - Fixed issue when a file when a name that will be used for 8.3 name already exists. Emcopy overwrote a file when the short name generated for a file matches the name of a file in the same directory.
02.28 : - Fixed issue when more than one file filter is specified in the command line. This produced emcopy crash. - Fixed issue when there is no group on at least one file or directorie on the soure. This produced emcopy crash. - Total transferred size greater than 2 GB is now well printed out.
02.29 : - Fixed issue when a file to copy is marked as offline. In that case the created file on the target was never closed. - Fixed issue when the size of a file to copy is larger than 4Gb. In that case the file is copied but a wrong size mismatch error is detected. This causes emcopy to stop.
02.30 : - Nonexisting directory added in the middle of the target path is now supported. In that case the missing directory is created. The default inherited ACL is applied to the new directory. - Generalized the support of UNICODE string. - Added the /u option that forces emcopy to write the log file using UNICODE character set.
02.31 : - Fixed regression issue that prevents emcopy to run on a NT4 system. - Added the display of the version of the system that host emcopy. - Added support of the special EMC ACE type 0xa9.
03.00 : - Added embedded manifest that allows to be run on a Vista system.
03.01 : - Fixed error when, in copy datastream mode, a directory with datastream is processed. In that case emcopy wasn't abble to process the directory and its content.
04.00 : - Changed working model from single threaded to multi threaded. - Added new options : /th n, /de, /nodf, /sdd.
I am not an emcopy expert, but I would make sure that I am using the latest version of emcopy and that the user running the emcopy has Backup Operator privileges on the data mover.
what emcopy version do you use ?
If you use emcopy a lot there is (or soon) a new multi-threaded version that should boost throughput.
The workaround at the moment is to start the copy then kill it off before it opens too many files on the Celerra. This isn't great when you've got a lot of files to copy.
To be fair this wasnt easy for support to find. Apparently the only place the emcopy changes are documented is the readme file on the CD itself. And even for them its not that easy getting a new Tool&Apps iso
You could do other customers a favor and ask your support guy to create a knowledgebase entry for that problem. Just send him the forum link or email If he includes the text from the readme than at least people searching for emcopy can find it.
Rainer_EMC
4 Operator
•
8.6K Posts
0
November 26th, 2008 04:00
that explains it
see the Readme from the latest and greatest emcopy (5.6.40 Tools&Apps CD)
Rainer
----
========================================================================
CONSOLE APPLICATION : EMCOPY.EXE 04.00
========================================================================
Usage: EMCOPY srcdir destdir [name [name]...] [/nosec] [/secfix]
[/lg] [/lu] [/create] [/lev:n] [/de] [/sd]
[/th n] [/purge] [/stream] [/nocase] [/sdd]
[/BackupSD] [/RestoreSD] [/nd:domain_name]
[/preserveSIDh] [/nodf] [/xd dir [dir]...] [/xf file [file]...]
The EMCOPY.EXE tool provides an user the way to copy a file or a
directory and included subdirectories from and to a NTFS partition with
security intact.
The user account must grant the Backup and Restores privileges. It must
be also a member of administrators or account operators on both the
source and the destination computers.
Emcopy.exe copies and migrate the local user and group security entries.
This tool does not copy the local user(s) and group(s) database from one
computer to another. You must prior use EMC utility LGDUP.EXE if you whish
to enable the "/lg" or the "/lu" option (local group or local user copy).
The "/nosec" option disables the copy of the NT security properties of
the file or the directory. By default, discretionary access control-lists
are replicated on the created file or directory. This option takes priority
on the "/o", "/a", "/lg", "/i" options.
The "/o" option enables the copy of a file's owner. Without this option,
the account used for the copy will be the owner of the copied files and
directories.
The "/a" option enables the copy of auditing informations. The "Manage
Auditing" privilege must also be granted by the user account.
The "/secfix" option enables to force update of the NT security properties
even if the destination file or directory already exists.
The "/lg" option enables the copy of local group security entries. Without
this option, local group entries are ignored.
The "/lu" option enables the copy of local user security entries. Without
this option, local user entries are ignored.
The "/i" option is usefull to ignore security entries with local users.
By definition, local users are only unknown for the NT server or worktstation
where they are created. To avoid security replication error on the dextination
server, it is possible to remove this type of user in the copied properties.
The "/create" creates 0 file length rather than copy the data.
The "/s" option enables the copy of the subdirectories.
The "/lev:n" sets the depth level of scanned directories.
The "/d" option provides to copy only the files which have the
LAST MODIFICATION time greater than the existing target copy.
The "/de" option provides to copy only the files which have the
LAST MODIFICATION time greater than the existing target copy or the
files that have the same LAST MODIFICATION time and a diference in
the size.
The "/sd" option is to preserve the security.In this case, the file content
is not copied if any error occurred during the security setting.
The "/l" option evaluates the number of files to copy without to do any file
duplication. Compares also the NT security if the "/secfix" option security.
In that case, the "/o" and "/a" switches are used to specify the owner and
the audit properties comparison. When differences occur, the properties of both
the source and destination files or directory are printed.
The "/c" switch allows the process to continue after the retries.
The "/z" switch is the restartable mode: restarts the copy process from the point
of failure rather from the beginning of the file.
The "/r:n" option specifies the maximum number of retries. By default it is set up
to 100.
The "/w:n" option specifies the time in seconds to wait between two retries.
By default it is set up to 30 seconds.
The "/th n" option specifies the maximum number of thread. By default it is set up
to 64.
The "/purge" option enables the deletion of the files and directories from
the destination tree which do not exist in the source one.
The "/sdd" option forces the target directory's dates to be synchronized
with the source directory's dates.
The "/stream" option enables the copie of files and directories datastreams.
Without that option only the main datastream of files are copied.
The "/log:filename" option allows to redirect the console messages to a new file.
The "/log+:filename" option appends the new messages to an existing file.
The "/u" option force logfile to be filled up with unicode character set.
The "/q" switch allows the user to disable the print of the files on stdout.
The "/f" switch allows the user to ask for the fullpath print, both the source and
the destination paths are printed. By default, only the source path is printed.
The "/BackupSD" and "/RestoreSD" switches allow to backup and restore the security
properties without copying the file content. There is no local group translation and
local SID suppression.
The "/nd:domain_name" switch allow to translate SD using new domain domain_name instead of
original domain.
The "/preserverSIDh" switch allow to preserve SID from previous domain. By default emcopy
replace obsolete SID by corresponding SID in current domain.
The "/nodf switch allow to only do a name filtering on file. By default directories and files
are processed only if they feet with the list of names that are specified in the command line.
The "/xd dir [dir ...] switch allow to excludes directories with the specified
names, paths, or wildcard characters
The "/xf file [file ...] switch allow to excludes files with the specified
names, paths, or wildcard characters
MODIFICATION HISTORY :
----------------------
01.00 : Initial Release.
01.01 : The summary is printed even after an CTRL-C from the user.
The amount of copied bytes is printed in GB, MB, KB or Bytes according to
the number of bytes.
The /l options lists only the files to copy or the directories to create.
01.02 : Optimizations in
- Setting the security descriptor by using NT_TRANSACT_CREATE SMB request.
- If the parent dir of the target file or directory to copy did not exist
before the copy, the current target can not exist.
- Getting file or directory info with findfirstfile() instead of getfileinfo.
02.00 : - New optional third argument which provides a list of selected files to copy.
Wildcards are supported in these fields.
- New options:
/nosec
/secfix
/create
/lev:n
/c
/z
/r:n
/w:n
/log:filename /log+:filename
- Exit code encoding.
02.01 : - Added EMC ACEs for backup.
- Fixed issue: the restartable mode verifies if the source file has changed
between two retries. If changed, the copy is restarting from
the beginning.
- Bug Fixed when a local group name is equal to the server name.
- New SID cache implementation using Hash table.
02.02 : - Account names are NO case sensitive.
- Fixed issue: when the source server is a Domain controller
- the lookup for Domain sid is now running.
- local user accounts can be duplicated because they
are in a domain.
02.03 : - Added the /purge option.
- Fixed issue in DACL comparison with Generic rights.
- Fixed issue in Owner setting on a Security descriptor update
- Fixed issue in SACL comparison and print.
- The number of retry value is now defaulted to 100.
02.04 : - Fixed issue when there is a file sharing violation error from the source
tree during the purge process. This caused a stop of the purge in the current
directory.
02.04a: - Fixed issue about the comparison of the date. With the /d option, the creation date
is now ignored and the data of the files are updated only if the last modification
time of the source files is greater than the destination files.
02.04b: - Fixed issue about audit replication, the "Manage auditing and security log" privilege
is checked when the /a (audit) switch is specified.
02.05 : - XCOPY interface implementation. When you rename EMCOPY.EXE to XCOPY.EXE, the
tools proposes the same interface as XCOPY.EXE.
- Added /q (quiet) and /f (fullpath) switches.
02.06 : - Added /nocase switch to create all files and directories in lower case characters.
02.07 : - Added two new switches /BackupSD and /RestoreSD to allow the backup and the
restore of the security descriptors without copy of file content.
- Added note in usage about extended attributes duplication.
- Builtin SID of owner are treated as other SIDs.
- The purge process is following the depth level.
02.08 : - Take in account the prefixed local group name with the source server name,
format _ .
02.09 : - Change source and target tree scanning for performance enhancement.
02.10 : - Check and set privilege are removed when running in xcopy mode. This allow a user
without backup, restore and security privileges to perform a copy.
- Add a fix for a problem when using the /purge switch
- Add the /nd:domain_name switche that allow to translate ACE in domain
domain_name rather than in original domain
- Content of not empty files on the target side are no more cleared when doing
a copy with the /create switch.
02.11 : - Add the /preserveSIDh switche that allow to preserve previous SID instead of
replacing them by corresponding SID in current valid domain.
- Fix a problem when working in windows XP using UNC path.
- Suppression of the path length limitation.
02.12 : - Fix a problem when restoring SD when /RestoreSD switch is set.
02.13 : - Fix a problem in the SID migration engine.
02.14 : - Fix a performance issue when copying files with application of security
- and without historical SID preservation.
02.15 : - Fix an issue when copying offline file. Offline file size was
- set to 0 after a copy.
02.16 : - Added /xd and /xf switches to exclude specified files and
- directories from the copy.
02.17 : - SID of Deleted account are now migrated as they are when setting the
security information without preservation of historical SID. Lookup
account name for deleted account are no more done.
02.18 : - Added the /lu switche to allow local user migration
02.19 : - Fixed issue when the target is a standalone server and when the /o
option is set. In that case the default owner's sid is now the sid
of the user connected to the target server. The default owner's sid is
applied when the original owner's sid can not be migrated.
02.20 : - Fixed issue when the owner's SID of the source file can not be
resolved and when target and source are the same machine. In That case
the owner's sid of the target file was set to an unvalid SID.
- Fixed issue when the group owner of a file is not set and when the /o
switch is set.
02.21 : - Fixed issue when the target or source resource is not connected when
the tool is started.
02.22 : - Added the /stream option that allow the copie of files and directories
datastream.
02.23 : - Changed the choice's strategy of the default primary group. This affect
emcopy when the /o option is set. The default primary group is only needed
when there is no way to migrate the original primary group of an object. In
that case the "domain user" group will be applied to the primary group of
the created object.
02.24 : - Fixed timestamp issue when a file to copy is marked as offline. In that case
Creation date, Last access date and Modification date were not set to the
original date.
02.25 : - Fixed file inconsistency issue when the source file is partially locked for
read. In that case the content, the last access time and the last modification
time of the target file were wrong.
02.26 : - Fixed issue when the source machine is a DC and security information
migration is requested. In that case domain user or group were considered as
local to the source machine. So emcopy tried to translate them as local to the
target machine instead of migrating them as there are.
02.27 : - Fixed issue when a file when a name that will be used for 8.3 name already exists.
Emcopy overwrote a file when the short name generated for a file matches the name
of a file in the same directory.
02.28 : - Fixed issue when more than one file filter is specified in the command line. This
produced emcopy crash.
- Fixed issue when there is no group on at least one file or directorie on the soure.
This produced emcopy crash.
- Total transferred size greater than 2 GB is now well printed out.
02.29 : - Fixed issue when a file to copy is marked as offline. In that case the created file
on the target was never closed.
- Fixed issue when the size of a file to copy is larger than 4Gb. In that case the file
is copied but a wrong size mismatch error is detected. This causes emcopy to stop.
02.30 : - Nonexisting directory added in the middle of the target path is now supported.
In that case the missing directory is created. The default inherited ACL is applied
to the new directory.
- Generalized the support of UNICODE string.
- Added the /u option that forces emcopy to write the log file using UNICODE character set.
02.31 : - Fixed regression issue that prevents emcopy to run on a NT4 system.
- Added the display of the version of the system that host emcopy.
- Added support of the special EMC ACE type 0xa9.
03.00 : - Added embedded manifest that allows to be run on a Vista system.
03.01 : - Fixed error when, in copy datastream mode, a directory with datastream is processed. In
that case emcopy wasn't abble to process the directory and its content.
04.00 : - Changed working model from single threaded to multi threaded.
- Added new options : /th n, /de, /nodf, /sdd.
/////////////////////////////////////////////////////////////////////////////
Rainer_EMC
4 Operator
•
8.6K Posts
0
November 25th, 2008 09:00
what emcopy version do you use ?
If you use emcopy a lot there is (or soon) a new multi-threaded version that should boost throughput.
sheppie
1 Rookie
•
108 Posts
0
November 26th, 2008 01:00
The workaround at the moment is to start the copy then kill it off before it opens too many files on the Celerra. This isn't great when you've got a lot of files to copy.
Sheppie
sheppie
1 Rookie
•
108 Posts
0
November 27th, 2008 03:00
I wonder why EMC support couldn't just have told me that.
Sheppie
Rainer_EMC
4 Operator
•
8.6K Posts
0
November 27th, 2008 04:00
you're welcome. glad it worked.
To be fair this wasnt easy for support to find.
Apparently the only place the emcopy changes are documented is the readme file on the CD itself.
And even for them its not that easy getting a new Tool&Apps iso
You could do other customers a favor and ask your support guy to create a knowledgebase entry for that problem.
Just send him the forum link or email
If he includes the text from the readme than at least people searching for emcopy can find it.
happy thanksgving
Rainer