ブランチネットワーク内のファイルの更新(SMB経由)

ブランチオフィスのネットワークが稼働しており、何かを更新するというタスクが定期的に発生します。

優れた管理者は怠け者の管理者であるため、自分自身で常に行うことは、少なくとも職業の宗教に反しています。



初期データ:ドメインコントローラーおよびファイルサーバーとしてのCentOS 5 + sambaバンドル。

すべてのブランチは、openVPNを使用してネットワーク化されます。



2GISファイルを更新するためのスクリプトを提供します(広告の場合は考慮しないでください)。 スクリプトは、他の目的のために簡単に変更できます。

組み込みの更新プログラムを使用したインプレース更新に関する質問にすぐに注意します。WindowsServerは使用していません。セキュリティ上の理由と忘れっぽさのため、オフィススタッフにオフィスの許可を与えるのは間違っています。



もちろん、更新タスクは他の方法でも実行できます。 利益として読むことをお勧めします。



重要な要件は、2gisフォルダーへの書き込み権限を持つユーザーがどこにいても必要であることです。

パスワードがpasswordのadminuserとします。

もう1つの注意点-すべてのブランチで、2GISを含むフォルダーはパブリックボールにあります。



更新されたファイルがあるコンピューターからスクリプトを実行する必要があります。



2gis_update.js:

var WshNetwork = WScript.CreateObject("WScript.Network"); FSO = new ActiveXObject("Scripting.FileSystemObject"); var WshShell = WScript.CreateObject("WScript.Shell"); //  IP  ,  ,       . var filials = new Array(); filials.push(new Array("192.168.3.2","PERM","Data_Perm.dgdat","portable\\2gis\\3.0")); filials.push(new Array("192.168.93.2","KRASNODAR","Data_Krasnodar.dgdat")); filials.push(new Array("192.168.61.200","ROSTOV","Data_Rostov.dgdat","2gis")); filials.push(new Array("192.168.72.2","TUMEN","Data_Tyumen.dgdat","portable\\2gis")); filials.push(new Array("192.168.2.2","UFA","Data_Ufa.dgdat","portable\\2gis\\3.0")); filials.push(new Array("192.168.1.200","SAMARA","Data_Samara.dgdat","info\\2gis")); //  ,      try { WshNetwork.RemoveNetworkDrive ("Q:",true,false); // force, dont update profile } catch(e) { } //    for (i in filials) { //    SMB try { WshNetwork.MapNetworkDrive ("Q:", "\\\\"+filials[i][0]+"\\public", false, filials[i][1]+"\\adminuser", "samplepassword"); } catch(e) { WScript.Echo(filials[i][1]+" (map): "); } path2gis = "Q:\\"+filials[i][3]+"\\grym.exe"; pathmap = "Q:\\"+filials[i][3]+"\\"+filials[i][2]; //     //    , .. DeleteFile -   try { WshShell.Run("cmd /C del /Q /F "+path2gis,0,true); WshShell.Run("cmd /C del /Q /F "+pathmap,0,true); } catch(e) { } //    if (FSO.FileExists(pathmap) || FSO.FileExists(path2gis)) { WScript.Echo(filials[i][1]+": can't delete"); } //  try { FSO.CopyFile("C:\\Program Files\\2gis\\3.0\\grym.exe", "Q:\\"+filials[i][3]+"\\",true); FSO.CopyFile("C:\\Program Files\\2gis\\3.0\\"+filials[i][2], "Q:\\"+filials[i][3]+"\\",true); } //    catch(e) { WScript.Echo(filials[i][1] + " (copy): " + e); } //   WshNetwork.RemoveNetworkDrive ("Q:",true,false); }
      
      







最後に、ドキュメントへのリンク:

Windowsスクリプトホスト



All Articles