【发布时间】:2019-09-25 04:57:20
【问题描述】:
我正在尝试使用 Powershell 将文件夹共享给特定机器/用户。
一些背景知识:我有许多 Windows 机器有一个需要备份的文件夹(数据文件夹)。这些文件夹与运行备份软件的“特殊”机器共享。该软件每天检查数据文件夹的内容并将数据备份到其本地硬盘。当新机器到货时,我们使用资源管理器手动共享文件夹。 (属性-> 共享-> 共享...)。所有机器都是大型网络的一部分,我们不想与所有机器共享数据。因此,我们只允许备份机器对数据文件夹的读取访问(让我们调用备份机器上的用户domain\BackupUser)。我想将这些共享数据文件夹的创建移动到一些我们可以从 Powershell 运行的脚本中。
我找到的命令是:New-SmbShare -Path C:\Data\ -Name Data -ReadAccess "domain\BackupUser"。该命令将按预期创建(smb)共享,我可以通过备份机器观察它。但是在访问它时,权限被拒绝。
列出共享文件夹访问权限 (Get-SmbShareAccess -Name "Data") 时,它确实显示了预期的用户。
我还尝试使用以下命令创建共享文件夹:net share Data=C:\Data /grant:BackupUser,FULL,但仍然得到权限被拒绝错误。
奇怪的是,当使用资源管理器共享文件夹并列出访问权限时(`Get-SmbShareAccess -Name "Data")。未列出用户 (BackupUser),但显示了“所有人”。但是,当尝试从另一台(随机)机器访问数据文件夹时,它不会根据需要提供访问权限。备份机器确实有访问权限。
那么,主要问题是:哪些 powershell 命令会为特定机器/用户创建一个新的共享文件夹?
【问题讨论】:
-
检查文件夹的文件系统权限。
标签: powershell smb shared-directory