2012-07-10 202 views
3

我有兩臺計算機說 計算機-A:雲上的天藍色虛擬機角色。機器B:我的網絡域上的一臺機器。將文件夾從遠程計算機(Azure)複製到遠程計算機

可以遠程登錄到兩個 MACHINEA和到machineB(使用RDP)和複製說從位置的文件夾 '臨時' \ MachineA.cloudapp.net \ C $ \ TEMP到\到machineB \ C $ \

如何通過編程實現這個功能,最好通過PowerShell腳本實現?

我想:

$rm = new-object RemoteMachine 
$pass = ConvertTo-SecureString -AsPlainText $rm.Password -Force 
$Cred = New-Object System.Management.Automation.PSCredential -ArgumentList $rm.Username,$pass 
Invoke-Command -ComputerName $rm.MachineName -Credential $Cred -ScriptBlock{ 
# Copy folder 
} 

其中RemoteMachine是:

public class RemoteMachine 
{ 
    public string MachineName="MachineA.cloudapp.net"; 
    public string Username="remote"; 
    public string Password="password";  
    } 
} 

它失敗,登錄失敗,雖然我使用相同的憑據爲RDP。 我有另一個疑問,即使登錄是可能的,那麼MachineA將如何知道MachineB?

可能我缺少一些簡單而直接的東西!

回答

0

PowerShell遠程需要在VM上啓用:

PS> Enable-PSRemoting 

然後,您應該能夠偏遠,經過管理員的憑據機器上:

Invoke-Command -ComputerName MachineA -Credential username -ScriptBlock { 
# Copy folder 
} 

如果username是一個域帳戶,請確保包含該域(例如DOMAIN\username)。 PowerShell會提示你輸入密碼。

因爲您從MachineA複製到MachineB,您可能遇到雙跳問題。要從MachineA連接到MachineB,PowerShell需要再次輸入憑證(用戶名/密碼),並且MachineA上沒有它們。您必須啓用名爲CredSSP的功能才能允許在機器之間存儲和共享憑證。

  • 機器接收所述憑證必須被配置爲接收它們(即,充當服務器)
  • 機器發送所述憑證必須被配置爲發送它們(即充當客戶端)

有關啓用CredSSP的詳細信息,請參閱我在this question上的回答。

+0

Nope已經嘗試過。 :(沒有成功,即使登錄是可能的,那麼MachineA將如何知道MachineB? – dushyantp 2012-07-11 14:08:08

相關問題