Powershell:New-SMBshare cmdlet无法在远程服务器上运行

时间:2014-05-14 23:16:10

标签: powershell share smb

我正在尝试创建一个一体化脚本,它将在服务器上创建共享文件夹,权限它(NTFS),共享它,设置共享权限,然后设置DFS文件夹和目标。到目前为止,所有这些工作都很好(至少在个别部分),除了Share部分。

我的代码看起来不错。

要测试,如果我在本地创建/许可共享,则没有问题。例如:

New-SmbShare -Name test1 -Path C:\ test -FullAccess Administrators

这很好用。

但是,如果我在服务器上尝试相同,我会收到此错误:“文件名,目录名称或卷标语法不正确。”例如:

New-SmbShare -name test1 -path \\ server \ e $ \ data -FullAccess管理员

我不确定错误意味着什么(Google也不是),但我想知道我是否错误地输入了服务器地址语法......或者甚至可以使用Powershell创建远程共享?我在网上看到的每个例子都显示了一个本地创作。

谢谢!

1 个答案:

答案 0 :(得分:1)

New-SmbShare cmdlet将使用cimsession进行远程管理(通过winrm)。

根据您的问题,这是一个示例和下面的帮助参考。

$c = new-CimSession -ComputerName Server
New-SmbShare -Name test1 -Path E:\data -CimSession $c



PS C:\> get-help New-SmbShare -Parameter cimsession

-CimSession <CimSession[]>
    Runs the cmdlet in a remote session or on a remote computer. Enter a computer name or a session object, such as
    the output of a New-CimSession or Get-CimSession cmdlet. The default is the current session on the local computer.

    Required?                    false
    Position?                    named
    Default value
    Accept pipeline input?       false
    Accept wildcard characters?  false