windows - 使用 powershell Invoke 命令自动化 robocopy - 远程会话
问题描述
我想通过 Azure powershell runbook 自动执行 robocopy,我正在采取以下步骤,但它失败并出现源位置的访问被拒绝错误。用于创建远程连接的服务帐户是两台服务器上的管理员用户
在目标服务器上创建远程会话(使用在混合工作者上运行的 Azure 自动化帐户运行手册)
为 ROBOCopy 运行 Invoke-command 以将数据从源服务器拉到目标 D 驱动器。
下面的代码没有做任何事情,但运行手册状态显示为完整
$serviceAccountPassword = (Get-AzureKeyVaultSecret -VaultName 'kvname' -Name 'secname').SecretValue $credential = 新对象 System.Management.Automation.PSCredential('serviceaccountname', $serviceAccountPassword) $session = New-PSSession -ComputerName 'destination_server' -Credential $credential $scriptblock = {c:\Windows\System32\robocopy.exe \\source_server\Backups\ \\destination_server\d$\data\} 调用命令 -session $session -scriptblock $scriptblock
我还启用了 Psremoting,并将服务帐户作为管理员添加到两台服务器
编辑:如果我不作为 JOB 运行,我会收到拒绝访问错误
解决方案
推荐阅读
- spring - Spring 引起:org.springframework.core.serializer.support.SerializationFailedException:无法反序列化有效负载?集群模式
- javascript - 如何使它在我选择错误答案时弹出“重试”按钮
- git - 无法将我的 git 存储库连接到 Jenkins
- architecture - 微服务架构 - 每个服务是否需要 API
- javascript - 如何在 React 项目中正确使用/导入 JavaScript 文件?
- java - CompletableFuture:在抛出异常之前获取对象
- angular - VS Code - Angular:对装饰器的实验性支持警告
- typescript - TypeScript 在 VS Code 中有哪些内置代码片段?
- json - 创建kotlin代码修改生成json文件
- python - 如何分隔列表中的元组?