在 Windows 和 RHEL6 中的 Active Directory 中添加 NISMap 对象的脚本

在 Windows 和 RHEL6 中的 Active Directory 中添加 NISMap 对象的脚本

我正在使用 Server 2008R2 Forest 来使用 NISMap 和 NisObject 类对象将 AutoFS 映射存储在现有架构中。我可以使用 ADSIedit 手动创建它们(并且可行)。我之前曾编写过创建用户的脚本(在 AutoIT 中),但这不是用户对象,并且具有不同的默认属性。我知道如何编辑任意属性,但不知道如何创建任意对象类。

我在谷歌上搜索到的所有文档都显示了通过 LDAP 或 AD 库创建用户的功能,但没有任何东西可以让我像在 ADSI gui 中那样指定(公认模糊的)对象类。

我对任何脚本语言都持开放态度,但最有可能的是使用 Windows 上的 AutoIT(可以使用 powershell)或 RHEL 上的 Bash 或 Python。

答案1

根据 Andy(他没有提供我可以标记为正确的答案)的建议,我最终使用 Powershell 来执行此操作:

powershell
Import-Module ActiveDirectory
New-ADObject -Name auto.folder2 -Path 'CN=autofs,DC=example' -Type nisMap -OtherAttributes @{'nisMapName'='auto.folder2'}
New-ADObject -Name /testldap/folder2 -Path 'CN=auto.master,CN=autofs,DC=example' -Type nisObject -OtherAttributes @{'nisMapName'='auto.master' ; 'nisMapEntry'='auto.folder2'}

这将创建 Map,然后在 auto.master 中创建 Mount 条目(假设之前已创建,可以像第一个命令那样完成)。

New-ADObject -Name test2 -Path 'CN=auto.testldap,CN=autofs,DC=example' -Type nisObject -OtherAttributes @{'nisMapName'='auto.testldap'; 'nisMapEntry'='lnx:/mnt/test'}

然后,这将在现有的地图条目内创建一个实际的挂载映射。

相关内容