教你使用dsadd命令一键批量创建OU和用户(包含基础属性信息)

对于如何批量创建用户,网络上已经有不少相关的贴子教程,但大多都是使用csvde及ldifde命令创建的贴子文章,经过测试,发现使用这种方法创建用户并不方便,步骤多而且较为复杂。那么有没有一种既简单又快捷的方法呢?有········ 那就是DSADD命令,直接运行批处理即可实现一键批量创建。当然,创建虽方便快捷,但前期的信息收集也是需要时间的,下面就为大家介绍下dsadd的使用。

       首先在使用DSADD之前我们先来了解一下LDAP协议,目录服务使用LDAP这个公用协议来查找和定位对象,LDAP可以描述对象在那个域,对象在那个OU,对象自己的名字。通常它的语法为“OU=OU对象,CN=非域非OU对象,DC=域对象”。比如:CN=xd,OU=Sales,OU=gongsi,DC=china,DC=ds.

接下来我们来看一看DSADD的语法:
dsadd computer - 将计算机添加到目录。
dsadd contact - 将联系人添加到目录。
dsadd group - 将组添加到目录。
dsadd ou - 将组织单位添加到目录。
dsadd user - 将用户添加到目录。

在这里,我只用到了:dsadd ou - 将组织单位添加到目录;dsadd user - 将用户添加到目录这两个命令。

案例需求:
       某公司网管为集中规范管理用户,将公司网络从原来的工作组环境升级至域网络,需要新增大量用户信息,这些信息要求包括:部门、电话、职务、电子邮件等。

我们先来了解下dsadd命令的可使用参数释议:
参数
UserDN
必需。指定要添加的用户的可分辨名称。如果省略可分辨名称,则将从标准输入 (stdin) 中获取该名称。
-samid SAMName
指定 SAM 名称作为该用户的唯一 SAM 帐户名(例如,Linda)。如果未指定,dsadd 将尝试使用 UserDN 的公用名 (CN) 值的至多前 20 个字符创建 SAM 帐户名。
-upn UPN
指定要添加的用户的用户主体名称(例如,Linda@widgets.microsoft.com)。
-fn FirstName
指定要添加的用户的名字。
-mi Initial
指定要添加的用户的中间名首字母。
-ln LastName
指定要添加的用户的姓氏。
-display DisplayName
指定要添加的用户的显示名。
-empid EmployeeID
指定要添加的用户的雇员 ID。
-pwd {Password | *}
指定将用户密码设置为 Password 或 *。如果设置为 *,将提示您输入用户密码。
-desc Description
指定要添加的用户的描述。
-memberof GroupDN ...
指定希望用户加入的组的可分辨名称。
-office Office
指定要添加的用户的办公室位置。
-tel PhoneNumber
指定要添加的用户的电话号码。
-email Email
指定要添加的用户的电子邮件地址。
-hometel HomePhoneNumber
指定要添加的用户的家庭电话号码。
-pager PagerNumber
指定要添加的用户的寻呼机号码。
-mobile CellPhoneNumber
指定要添加的用户的移动电话号码。
-fax FaxNumber
指定要添加的用户的传真号码。
-iptel IPPhoneNumber
指定要添加的用户的 IP 电话号码。
-webpg WebPage
指定要添加的用户的 Web 页的 URL。
-title Title
指定要添加的用户的称谓。
-dept Department
指定要添加的用户的部门。
-company Company
指定要添加的用户的公司信息。
-mgr ManagerDN
指定要添加的用户的管理器的可分辨名称。
-hmdir HomeDirectory
指定要添加的用户的主目录位置。如果 HomeDirectory 是作为通用命名约定 (UNC) 路径给出,则必须使用 -hmdrv 参数指定要映射到此路径的驱动器号。
-hmdrv DriveLetter:
指定要添加的用户的主目录驱动器号(例如,E:)。
-profile ProfilePath
指定要添加的用户的配置文件路径。
-loscr ScriptPath
指定要添加的用户的登录脚本路径。
-mustchpwd {yes | no}
指定用户是否必须在下次登录时更改其密码(yes 必须更改,no 不必更改)。默认情况下,用户不必更改密码 (no)。
-canchpwd {yes | no}
指定用户是否可以更改其密码(yes 可以更改,no 根本不能更改)。默认情况下,允许用户更改密码 (yes)。如果 -mustchpwd 参数的值为 yes,则该参数的值必须为 yes。
-reversiblepwd {yes | no}
指定是否应使用可逆加密来存储用户密码(yes 表示应该,no 表示不应该)。默认情况下,用户不能使用可逆加密 (no)。
-pwdneverexpires {yes | no}
指定用户密码是否永不过期(yes 表示是,no 表示不是)。默认情况下,用户密码会过期 (no)。
-acctexpires NumberOfDays
指定从今天算起用户帐户将到期的天数。0 值表示将今天的结束时间设置为到期时间。正值表示将将来的时间设置为到期时间。负值表示将以前的时间设置为到期时间。值 never 将帐户设置为永不过期。例如,0 值表示该帐户在今天结束时过期。值 -5 表示该帐户 5 天前就已经到期,并将以前的时间设置为到期日期。值 5 表示该帐户将在 5 天后到期。
-disabled {yes | no}
指定是否禁用用户帐户登录(yes 禁用登录,no 允许登录)。默认情况下,启用用户帐户登录 (no)。
{-s Server | -d Domain}
连接到指定的远程服务器或域。默认情况下,计算机与登录域中的域控制器相连接。
-u UserName
指定用户要用于登录到远程服务器的用户名。默认情况下,-u 使用用户登录时的用户名。您可以使用下列任一格式指定用户名:
用户名(例如 Linda)
域\用户名(例如 widgets\Linda)
用户主体名称 (UPN)(例如 Linda@widgets.microsoft.com
-p {Password | *}
指定使用密码或 * 登录到远程服务器。如果键入 *,将提示您输入密码。
-q
将所有输出降低为标准输出(安静模式)。

       从以上释议可以得知,如果我要创建用户名为林坚、属于总经办部门、职务为总经理、电话分号为6168、指定电子邮件帐号为Darren.Lam@mj0763.com、用户在下次登录时不需要更改密码、密码为不过期、帐户状态为启用、密码为123.com(注,密码必需符合微软要求的复杂程度,即大、小写字母、数字、符号其中的三种即可)。

即完整的批处理写法为:(在空白记事本里输入)
    dsadd user cn=林坚,ou=总经办,dc=mj0763,dc=com -upn Darren.Lam@mj0763.com -pwd 123.com -display 林坚 -fn 坚 -ln 林 -dept 总经办 -title 总经理 -tel 6181 -email Darren.Lam@mj0763.com -mustchpwd no -pwdneverexpires yes -disabled no -samid Darren.Lam

       其他用户内容即按照这个模板来进行修改,完成后别存为dsadd user.bat 文件即可,如下图:
 


        当然,为了规范管理,一般都会创建不同的OU来存放不同的用户,这时,你需要先导入OU,然后再导入用户,上图也包括创建OU的命令编写。

       最后,把编写好的TXT文档另存为或更改后缀名为.bat,然后双击运行即可。。。。。(后面的图省略)
       具体个中的简单程度,速度与效率,绝对会比csvde及ldifde容易兼高效,心动的朋友们可以放心的去干吧,你会发觉,一键创建原来就是这么的简单。   

posted on 2013-01-05 20:47  周德顺  阅读(1836)  评论(0编辑  收藏  举报