用户登录脚本

Hodgen 2003-03-25 05:48:54
用的是2000 Advance Server,员工都是2000pro.我现在想让用户登录时自动运行一些脚本,该怎么做?
我在AD的组策略编辑器的用户的登录脚本添加了一个bat文件,但是没起作用。因为考虑到组策略有个刷新时间,但是现在两个小时了,我拿自己测试,反复登录都没有生效。
大虾指教,该如何做?
...全文
802 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
ohawz 2003-03-27
  • 打赏
  • 举报
回复
到日志里找找答案

一定要确保你的脚本路径是大家都可以访问到的UNC路径,比如\\mydomain.com\sysvol\samsparty.local\Policies\{31B2F340-016D-11D2-945F-00C04FB984F9}\Machine\Scripts\Startup
可以单击"显示文件"查看
gzdrlee 2003-03-27
  • 打赏
  • 举报
回复
指定某个共享路径
Hodgen 2003-03-27
  • 打赏
  • 举报
回复
改变思路,不用组策略了
假如我在AD的每个用户的属性里的logon scripts那栏填入我的bat文件名,我那个文件应该放哪里才生效?
Hodgen 2003-03-27
  • 打赏
  • 举报
回复
日志里查了,没有什么问题
用户也都能access到\\server\sysvol\domainname\plicies\gpid\user\scripts\logon\下面那个文件,他们直接运行也成功
但就是登录的时候不会自动运行,那个域策略我以前做强制让他们定时修改密码的时候改过,也生效了,但这次登录脚本却怎么也不成功
找不出原因啊
  • 打赏
  • 举报
回复
你搜索一下以前的帖子吧,很多的
Hodgen 2003-03-26
  • 打赏
  • 举报
回复
bat就一句话,因为我想先作个测试,就是
net use k: \\server\department
ysqu 2003-03-26
  • 打赏
  • 举报
回复
你把BAT贴出来
Hodgen 2003-03-26
  • 打赏
  • 举报
回复
现在的问题是我知道怎么设,就是在AD的组策略编辑器修改默认的域策略,在logon scripts那里添加了一个我自己写的bat文件,但是不管怎么样我自己登录几次都没有生效。
在我自己机器上已经立即刷新组策略了
ysqu 2003-03-25
  • 打赏
  • 举报
回复
需要修改“默认的域控制器策略” 它影响域内所有的用户。

1、使用管理工具“活动目录用户和计算机”;
2、在域上鼠标右击,选择“属性”,并定位到“组策略”标签;
3、选中“默认的域策略”,点击“编辑”;
4、定位到“用户配置”-Windows设置—脚本-登录脚本,查看属性;
5、点击“显示文件(show files)”按钮,将打开一个窗口,将你编辑的脚本文件拷贝进去,然后关闭该窗口;
6、然后点击“添加”,把你需要的脚本文件定义为要执行的脚本;
7、关闭所有窗口,用户重新登录,即可生效。
lmf2008 2003-03-25
  • 打赏
  • 举报
回复
一.简介

Win2000计算机启动/关机脚本(startup/shutdown
scripts)是Win2000的一个新特点.启动脚本是邀请用户登录之前运行的批文件,它的功能类似于Win9X和DOS中的自动执行批处理文件autoexec.bat;关机脚本是计算机关机之前运行的批文件.


与Win2000用户登录/注销脚本(logon/logoff
scripts)相比,它们之间的主要区别是:计算机启动/关机脚本在计算机启动和关机时运行,脚本程序只运行一次,通常在启动脚本运行完毕后才出现邀请用户登录的对话框;用户登录/注销脚本在邀请用户登录的对话框出现后,用户登录系统或从系统注销时运行,运行次数由用户登录/注销的次数决定,每登录/注销系统一次,脚本程序就运行一次.


二.指派

在启用计算机启动/关机脚本前,必须进行指派.指派计算机启动/关机脚本需要通过组策略MMC(管理控制台)管理单元进行,具体的操作如下:

1.单击"开始"菜单->"运行",在打开框内输入"MMC",打开微软管理控制台(Microsoft Management
Console,MMC).

2.单击"控制台"菜单->"添加/删除管理单元...",在跳出"添加/删除管理单元"对话框内单击"添加"按钮,添加独立管理单元.

3.在"添加独立管理单元"对话框的"可用的独立管理单元"列表内选择"组策略",按下面的"添加"按钮.

4.当系统询问使用哪一个组策略对象时,如果你要指派面向本地计算机,只在本地计算机执行的启动/关机脚本,请选择缺省的"本地计算机"组策略对象;如果你要指派面向Win2000域,在域内所有计算机上执行的启动/关机脚本,那请点击"选择组策略对象"对话框中的"浏览..."按钮,在"浏览组策略"对话框选定能应用到整个域中的组策略对象,这里以"Default
Domain Policy"对象为例,它是Win2000域缺省的域策略对象(图一)(t1.gif).

5.完成后依次关闭各对话框回到管理控制台,现在管理控制台上就有了一个相应的组策略对象树(图二)(t2.gif).

6.在管理控制台左侧的控制台树窗格中,依次展开组策略对象->"计算机配置"->"Windows设置"->"脚本(启动/关闭)"节点,双击右侧详细资料窗格中的"启动"或"关机"项目就可以设置计算机启动或关机时使用的脚本了(图三)(t3.gif)(因Win2000计算机启动和关机脚本的设置方法相同,下面的操作均以启动脚本为例).


7.双击右侧详细资料窗格中的"启动"项目,在跳出的"启动属性"对话框中点击"添加"按钮,添加新的计算机启动脚本.

8.一个启动脚本条目包括两方面的内容:脚本名和脚本参数(图四)(t4.gif).如果脚本名不包含文件路径,比如图中的脚本文件名只是"scripta.vbs",系统会到缺省的计算机启动脚本路径下寻找这个脚本文件.脚本的参数是可选的,可填可不填,看实际情况而定,图中的开机脚本使用了运行参数"start".


9.本地计算机脚本的缺省路径通常是"%systemroot%\system32\GroupPolicy\Machine\Scripts",如"C:\winnt\system32\GroupPolicy\Machine\Scripts".应用到域的计算机脚本的缺省路径通常是""\\\sysvol\\Policies\\Machine\Scripts",如"\\MyDC1\sysvol\Mydom.com\Policies\{31B2F340-016D-11D2-832F-00C04FB873F9}\Machine\Scripts".启动脚本文件存放在"Startup"子文件夹中,关机脚本文件存放在"ShutDown"子文件夹中.


10.我们可以根据需要重复点击"启动属性"对话框中的"添加"按扭,为计算机添加多个启动脚本(图五)(t5.gif).

11.设置完毕,保存后退出组策略MMC管理单元.等组策略刷新后,这些脚本就会在计算机启动和关机时起作用.

三.深入

1.我们对计算机启动/关机脚本的设置数据被Win2000保存在了一个名为scripts.ini的隐藏配置文件中,这个文件位于"C:\WINNT\system32\GroupPolicy\Machine\Scripts"目录下,可以使用任一款文件编辑软件如记事本进行编辑.


scripts.ini文件内容通常包含两个数据段:[Startup]和[Shutdown],[Startup]数据段下是启动脚本配置,[Shutdown]数据段下是关机脚本配置.每个脚本条目被分成脚本名和脚本参数两部分存贮,脚本名保存在XCmdLine关键字下,参数保存在XParameters关键字下,这里的X表示从0开始的脚本序号,以区别多个脚本条目和标志各脚本条目的运行顺序.下面是一个简单的scripts.ini文件的例子:


[Startup]
0CmdLine=d:\start\ss.bat
0Parameters=
1CmdLine=scriptsa.vbs
1Parameters=start
[Shutdown]
0CmdLine=shut.vbs
0Parameters=

从例子中我们可以看出,共设置了两个计算机启动脚本:ss.bat和scripta.vbs.ss.bat位于d:\start目录下,没有使用参数;scriptsa.vbs位于缺省的启动脚本目录C:\WINNT\system32\GroupPolicy\Machine\Scripts\Startup下,使用了参数"start".两个脚本的执行顺序是先执行ss.bat后执行scriptsa.vbs.设置了一个关机脚本shut.vbs,没有使用参数,该脚本位于缺省的关机脚本目录C:\WINNT\system32\GroupPolicy\Machine\Scripts\Shutdown下.


2.启动/关机脚本的运行情况,包含是否同步运行、是否显示运行状态、最长等待时间等,都可以在组策略中进行微调.具体操作如下:

(1)-(5)步同第二部分指派操作中的1-5步;

(6)在管理控制台左侧的控制台树窗格中,依次展开组策略对象->"计算机配置"->"管理模板"->"登录"节点,右侧详细内容窗格中显示的内容有四项与启动/关机脚本有关(图六)(t6.gif):非同步运行启动脚本,显示启动脚本的运行状态,显示关机脚本的运行状态,组策略脚本的最长等待时间.


(7)非同步运行启动脚本
在默认情况(也就是没有配置的情况,下同)下,系统要等每个启动脚本运行完毕才运行下一个启动脚本.如果启用这个策略,系统则不会协调启动脚本的运行顺序,启动脚本可以同时运行.如果停用或不配置这个策略,每个启动脚本要在上一个脚本运行完毕后才能运行.建议不配置.


这个策略对应的注册表值是"HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\policies\system\RunStartupScriptSync",这是一个REG_DWORD值,0表示启用,1表示禁用.


(8)显示启动/关机脚本的运行状态
在默认情况下,系统不显示启动脚本中的指令.如果启用这个策略,系统会在启动脚本运行时显示每个指令,指令将出现在命令窗口,或显示出人机交互界面。这个功能主要是为高级用户设计的.如果停用或不配置这个策略,指令则不会显示.建议不配置.


举个例子,假设你在启动脚本中有一条命令是"c:\winnt\explorer.exe
c:\winnt",如果启用了这一策略允许显示启动脚本的运行状态,那么当计算机启动时,一个资源管理器窗口就会跳出来,桌面被打开,系统以system用户的身份交互登录到计算机上,这无异于那个著名的输入法漏洞!由此可以看出,打开启动/关机脚本的运行状态有时是非常危险的.


这两个组策略条目对应的注册表值分别是"HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\policies\system\HideStartupScripts"和"HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\policies\system\HideShutdownScripts",均为REG_DWORD值,0表示启用,1表示禁用.


(9)组策略脚本的最长等待时间
这个策略限制了由组策略完成运行登录、开始和关闭脚本所需的全部时间.如果当指定时间已超过但脚本尚未完成运行,系统会停止脚本处理并记录一个错误事件.在默认情况下,系统允许合并的脚本集运行600秒(10分钟).


要使用这个策略,在第二个框中键入从1到32000之间的数目以确定您希望系统等待脚本完成的时间,单位是秒.要让系统一直等到完成运行脚本为止,无论等待时间多久,请键入0(图七)(t7.gif).但不建议这样,如果你的脚本写的很差,那后果将难以想象!


如果其它系统任务必须等待脚本完成才能进行,这个间隔时间就非常关键.在默认的情况下,必须完成每一个启动脚本后才能运行下一个,您还可以使用"非同步运行启动脚本"策略让系统等到完成启动脚本后再出现邀请用户登录的对话框.间隔过长可延缓系统并使用户不方便,如果间隔太短,所需的任务无法完成系统会可能会过早就绪,导致出现问题.


这个组策略条目对应的注册表值是"HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\policies\system\MaxGPOScriptWait",也是一个REG_DWORD值,它的值表示等待的时间,单位是秒.



6,185

社区成员

发帖
与我相关
我的任务
社区描述
windows网络管理与配置
社区管理员
  • 网络管理与配置社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧