2017-08-15 107 views
2

我有服务器到FTP(NAS)备份文件夹的问题。我正在使用Cobian备份,但安全更新后,Cobian开始不处理某些文件以前没有问题(doc,pdf或某种类型的设置文件)。我尝试使用调度程序帮助更改为.bat文件脚本。我正在使用脚本备份从服务器,文件夹到FTP和传递问题

net use X: \\address\Backup /user:logins /p:no 






for /f "tokens=1* delims=" %%a in ('date /T') do set datestr=%%a 


md X:\*\*_"%date:/=_%" 
md X:\*\*_"%date:/=_%" 
md X:\*\*_"%date:/=_%" 
md X:\*\*_"%date:/=_%" 
md X:\*\*_"%date:/=_%" 


net stop MSSQL$PAYPREMIUM 
net stop ASANYs_labbis 
net stop ASANYs_FinvaldaMaxiServer 
net stop ASANYs_FinvaldaMaxiServern 

robocopy C:\Program Files\Microsoft SQL Server\MSSQL10_50.PAYPREMIUM\MSSQL\DATA X:\1\PAYPREMIUM\DATA /MIR /LOG:D:\LOG\log.txt 

robocopy /mir C:\*\ X:\*\*_"%date:/=_%" /COPY:DAT /E /LOG:D:\LOG\log.txt 

robocopy /mir C:\Program Files\Microsoft SQL Server\MSSQL10_50.PAYPREMIUM\MSSQL\DATA\ X:\*\*_"%date:/=_%" /COPY:DAT /E /LOG:D:\LOG\log.txt 

robocopy /mir C:\ProgramData\*\data\ X:\*\data_"%date:/=_%" /COPY:DAT /E /LOG:D:\LOG\log.txt 

robocopy /mir G:\*_K\ X:\*\*_K_"%date:/=_%" /COPY:DAT /E /LOG:D:\LOG\log.txt 

robocopy /mir G:\*\ X:\*\*_"%date:/=_%" /COPY:DAT /E /LOG:D:\LOG\log.txt 




net start MSSQL$PAYPREMIUM 
net start ASANYs_labbis 
net start ASANYs_FinvaldaMaxiServer 
net start ASANYs_FinvaldaMaxiServern 

net use X: * /delete /Y 

但是,robocopy和xcopy没有处理一些情况。所以,在这之后我尝试使用WinSCP赋予脚本

option batch abort 
option confirm off 
open ftp://logins 


put -preservetime E:\FILESERVER /disk1/ftp/SRV/FileServer_%TIMESTAMP#yyyymmddhhnnss% 

exit 

但即使这样也没有处理这种情况时,与从60 + GB的文件目录树只无文件闹事一个文件夹复制。麻烦的是,当你复制简单的时候,你会得到有关路径长的通知,以及关于那个不能复制权限pdf,doc,ppt文件的通知。所以我需要通过这些问题并复制尽可能多的文件,使路径长和路径长的文件没有问题,从而导致错误跳过。

回答

1

您必须通过缩短目标路径名称来解决长路径问题;有时SUBST可以用来帮助你解决这个问题,如果内存服务。喜欢的东西:

NET USE X: \\server\dir 
SUBST T: X:\subdir\subsubdir\subsubsubdir\anotherlongdir\blah 

清理:

SUBST T: /D 

至于继续复制一些文件后,文件出现错误,我相信robocopy /R:0 /W:0将有所帮助,并XCOPY /C它的对应物。