当每个用户在登陆到电脑的时候,其实都会在C盘(系统盘)根目录中有一个名字叫的“用户”这个文件夹中创建一个和自己用户名相同的文件夹,比如:“administrator”,这个文件夹实际上就是用来存放Windows Server 2008 R2 系统中的管理员帐户的一些配置文件的,比如“桌面”、“联系人”、“我的文档”、“收藏夹”、“我的图片”等个人资料(profile)的配置(如果你的电脑系统时以前的windows server 2003 或者是 XP的话,这个放在C盘根目录的文件夹就会是 “Documents and Setings” 。vitsa 以后叫做“users”)。
可是这样会有个问题:当用户在不同电脑登陆时,这些电脑的本地磁盘中都会出现一份用户配置文件(profile),并且是互不相干的。所有用户在某台电脑桌面上放的东西在另外一台可能就不会有,这样就很不方便。
我们可以想一个办法解决上述问题:集中把这些用户的配置文件(profiles)放在一个共享文件夹上,这种办法我们启个名字叫“漫游配置文件”。
做法:
1、 在服务器上创建一个共享文件夹,比方叫“profiles”,共享权限中添加“everyone”用户并设置为可以修改的权限,注意NTFS权限只需要有SYSTEM用户并给予完全控制就可以了;
2、 针对“Active Directory用户和计算机”中的用户属性中的“配置文件”进行设置。比方说:针对“user3”这个用户做配置,我们就可以双击user3这个用户打开“属性”,选择“配置文件”并在里面的“用户配置文件”的“配置文件路径”中设置刚刚共享的UNC路径\\WIN-2008DC\profiles\%username% (其中%username%是一个变量,代表用户名,确定后再重新看用户配置文件的属性就会发现名字已经变成user3)。这样user3这个用户的profile就会放在\\WIN-2008DC\profiles\user3 这个共享目录上;
3、 注销当前管理员账户并使用user3在客户端电脑登录域,此时user3所在的客户端电脑会去服务器上的共享目录中下载user3的配置文件。但这时在服务器上并没有user3的配置文件,所以这时user3会在本地磁盘创建一个本地配置文件。
为了让服务器上的共享目录中出现user3的配置文件,我们注销user3,此时user3所在的客户端电脑会向服务器上传刚刚创建的本地配置文件。
并且,如果我们使用其他用户是不能访问user3的profile的,因为只有user3才是所有者,所以我们拿管理员也访问不到,除非去夺取所有权。
所以,咱们再次使用user3登陆并查看自己的profile 是可以看到里面的“桌面”等等配置都有了。
实用真言:
这样设置了以后,不管企业用户在哪一台电脑上登陆都会从服务器的共享文件夹中把自己的所有桌面配置下载下来,当用户注销的时候再把自己修改过的配置上传到服务器的共享文件夹中。
如此一来,就保障了企业活动目录环境中的用户无论在哪一台电脑都可以有相同的桌面设置。除了位用户带来了极大的方便之外呢,对于IT人员来说:用户配置文件就可以集中管理了而且备份也十分方便。
一次要改变大量的用户配置文件路径是非常累的事,因此今天和大家分享如何通过命令行工具来批量修改用户配置文件的路径。
前面跟大家介绍了如何设置漫游配置文件,做法是需要在“Active Dircetory 用户和计算机”工具中找到用户然后右击用户选择属性中的“配置文件”并在“配置文件路径”后填写提前在服务器上设置好的共享文件夹的UNC路径。
这样的方法确实可以给“用户配置文件管理”这项工作内容带来很大的方便。但是,如果有1万个用户需要做漫游配置的话,我们就要做1万次。或者是我们已经设置好了,有一天公司因为更换存储员工配置文件的服务器,需要把所有做了漫游配置的员工的配置文件路径修改成新的UNC路径,一个一个改,那也是一件很累人的事情。
所以,咱们需要一个让IT人员减负的方法来做这件事。
做法:使用命令行下的工具dsquery +dsmod 来实现批量设置或修改。
1、查询用户的命令行工具dsquery:
打开命令提示符,输入:dsquery user "OU=_Demo,DC=itechy,DC=org"
注释:通过以上命令可以找到在“itechy.org”这个域中的“_Demo”的OU中有三个用户“user1”、“user2”、“user3”(命令中的"OU=_Demo,DC=itechy,DC=org"表示LDAP路径,dsquery是查询AD的一条命令);
执行结果如下:
2、修改用户配置的命令行工具dsmod:
在命令提示符中输入:dsmod user "CN=user1,CN=_Demo,DC=itechy,DC=org" -profile \\WIN-2008FILESRV\profies\$username$
注释:通过以上命令就可以将“itechy.org”域中“_Demo”OU中的用户“user1”的漫游配置路径从原来的“\\WIN-2008DC\profies\user3” 修改成“\\WIN-2008FILESRV\profies\$username$”(其中$username$是代表用户的变量),
“-profile” 这个参数就是用来设置新的配置文件路径的;
执行结果如下:
再次打开“Active Dircetory 用户和计算机”工具察看user3的配置文件路径会发现已经被咱们成功修改了。
3、批量设置或修改用户的配置文件命令dsquery +dsmod组合使用:
说明:这里我们可以使用管道符 连接前面的查询命令“dsquery user "OU=_Demo,DC=itechy,DC=org"”和后面的修改命令“dsmod user –profile \\WIN-2008FILESRV\profiles\$username$”来达到批量修改漫游用户配置文件的目的。
命令写法如下:
dsquery user "OU=_Demo,DC=itechy,DC=org" | dsmod user -profile
注释:通过管道符号(|)前面的命令dsquery我就把“itechy.org”域中“_Demo”OU里的所有用户的位置都抓出来并且给管道符号(|)后面的命令dsmod来修改,这样就实现了批量修改漫游用户配置文件路径的目的。
执行结果如下:
改完之后我们可以再次查看AD中用户的配置文件路径,并且他们都被统一修改成
“\\WIN-2008FILESRV\profiles\用户名” 这个样子了:
总结:当大家以后再工作中需要大量的设置或者是大量的修改用户的配置文件的时候就可以使用dsquery |dsmod 这两条命令结合的方式便捷的实现了。
dsquery user "ou=guangzhou,dc=contoso,dc=com"
dsmod user "CN=kim,ou=guangzhou,dc=contoso,dc=com" -profile \\WIN-2008FILESRV\profies\%username%
dsquery user "ou=guangzhou,dc=contoso,dc=com" | dsmod user -profile c:\profiles\%username%