У меня есть 2 сервера в разных доменах. Я использую 3-й сервер для запуска пакетного скрипта. На всех серверах установлен Cygwin, поэтому я также использую команды оболочки Linux. Все серверы могут общаться друг с другом. Цель: скопировать папку с исходного сервера в место назначения. Поскольку в нем миллион файлов, я собираюсь использовать утилиту tar. Я могу запустить скрипт на 3-м сервере и создать файл tar из исходной папки, скопировать его в папку назначения и разархивировать. Это работает нормально ... за исключением того, что папки и файлы на целевом сервере не могут быть открыты, потому что у меня есть ошибка: доступ запрещен. Я вижу, что файлы не имеют разрешения на чтение. Если я запускаю chmod a+r * для файлов, он работает нормально. Примечание: я использую одного и того же пользователя на всех серверах. Как я могу сохранить доступ на чтение к файлам? Я приложу свою партию позже:

SET SRC1=\\source-server\D$ 
 SET CMD1=pushd %SRC1% 
 SET SRC2=MyTar\ 
 SET SRC3=result.tar 
 SET CMD2=tar cfpz %SRC2%%SRC3% %SRC2% 
 SET DST1=\\destination-server\D$ 
 SET CMD3=copy %SRC2%%SRC3% %DST1% /y 
 SET CMD4=pushd %DST1% 
 SET CMD5=tar xfpz %SRC3% 

 %CMD1% 
 %CMD2% 
 %CMD3% 
 %CMD4% 
 %CMD5%

0