myrebcca 发表于 2011-9-25 12:02:03

远程连接计算机并且让它重启

公司有几台老式的服务器经常出现各类网络问题,我现在就是想写个脚本连接远程计算机,并且让它强制重启,计算机的名称和密码我都清楚
比如
a=PC1
b=PC2

我点a就会出个提示:A计算机将在XX秒后重启
点b:B计算机将在XX秒后重启

my788522 发表于 2011-9-25 15:20:34

给你找了个方法 你自己用RUN吧

23端口开放,使用管理员帐号密码
通过telnet命令进入对方的CMD
通过shutdown命令进行重启或关闭
命令参数:
telnet [-a][-e escape char][-f log file][-l user][-t term]]
-a      企图自动登录。除了用当前已登陆的用户名以外,与 -l 选项相同。
-e      跳过字符来进入 telnet 客户提示。
-f      客户端登录的文件名
-l      指定远程系统上登录用的用户名称。
         要求远程系统支持 TELNET ENVIRON 选项。
-t      指定终端类型。
         支持的终端类型仅是: vt100, vt52, ansi 和 vtnt。
host    指定要连接的远程计算机的主机名或 IP 地址。
port    指定端口号或服务名。

shutdown [-i | -l | -s | -r | -a] [-f] [-m \\computername] [-t xx] [-c "co
mment"] [-d up:xx:yy]

      没有参数                显示此消息(与 ? 相同)
      -i                      显示 GUI 界面,必须是第一个选项
      -l                      注销(不能与选项 -m 一起使用)
      -s                      关闭此计算机
      -r                      关闭并重启动此计算机
      -a                      放弃系统关机
      -m \\computername       远程计算机关机/重启动/放弃
      -t xx                   设置关闭的超时为 xx 秒
      -c "comment"            关闭注释(最大 127 个字符)
      -f                      强制运行的应用程序关闭而没有警告
      -d :xx:yy         关闭原因代码
                              u 是用户代码
                              p 是一个计划的关闭代码
                              xx 是一个主要原因代码(小于 256 的正整数)
                              yy 是一个次要原因代码(小于 65536 的正整数)

my788522 发表于 2011-9-25 15:22:43

顺便提一下 开23端口就是开telnet服务
控制面板---管理工具---组建服务---服务(本地)-Telnet

umprie 发表于 2011-9-25 15:25:25

我來試2樓的方法看看,謝謝提供!

gzh888666 发表于 2011-9-25 15:25:27

Windows下shutdown.exe命令
参数介绍
shutdown.exe -a 取消关机   
shutdown.exe -s 关机  
shutdown.exe -f 强行关闭应用程序。   
shutdown.exe -m \计算机名 控制远程计算机。   
shutdown.exe -i 显示图形用户界面,但必须是Shutdown的第一个参数。    
shutdown.exe -l 注销当前用户。   
shutdown.exe -r 关机并重启。  
shutdown.exe -t 时间 设置关机倒计时。   
shutdown.exe -c"消息内容" 输入关机对话框中的消息内容(不能超127个字符)。   
微软又加强了shutdown.exe,shutdown.exe -h 为休眠

xiehuahere 发表于 2011-9-25 22:23:48

我试过 shutdown -s -f -t 5 -m \\计算机名,但总是报 Access is denied.
ping是能ping通的,而且已经在远端被控机器的组策略"从远端系统强制关机"里面添加了guest账户。
Remote Registry服务也是打开的。
为啥还是报 Access is denied ?

xms77 发表于 2011-9-25 22:39:08

回复 6# xiehuahere
同样想知道这是为什么

myrebcca 发表于 2011-9-26 09:55:23

我试过 shutdown -s -f -t 5 -m \\计算机名,但总是报 Access is denied.
ping是能ping通的,而且已经在远 ...
xiehuahere 发表于 2011-9-25 22:23 http://www.autoitx.com/images/common/back.gif
NET SHARE 检查SEVER服务开了没

xms77 发表于 2011-9-26 11:33:07

回复 8# myrebcca
具体怎么检查,说说

xiehuahere 发表于 2011-9-26 12:50:40

回复 8# myrebcca


    net share 是用来检测网络上有哪些共享资源吧?
   结果如下:

Share name   Resource                        Remark

-------------------------------------------------------------------------------
IPC$                                       Remote IPC
D$         D:\                           Default share
ADMIN$       C:\WINDOWS                      Remote Admin
C$         C:\                           Default share
E$         E:\                           Default share
The command completed successfully.

说明什么问题呢?

netbullking 发表于 2011-9-26 16:24:05

本帖最后由 netbullking 于 2011-9-26 16:33 编辑

我试过 shutdown -s -f -t 5 -m \\计算机名,但总是报 Access is denied.
ping是能ping通的,而且已经在远 ...
xiehuahere 发表于 2011-9-25 22:23 http://www.autoitx.com/images/common/back.gif


    要想使用 shutdown 关闭远程计算机,目标计算机必须为管理机器设置合适的权限。以 pc1 为例:

    以管理员身份登录 pc1-> 开始-> 运行-> gpedit.msc -> Windows设置 -> 本地策略-> 用户权限指派-> 从远程系统强制关机-> 添加用户和组-> 输入管理机器名


    另外,你指定 访客 账户是不对的,这和 windows 的 基本安全策略相冲突,所以不会生效。

xiehuahere 发表于 2011-9-26 17:27:00

回复 11# netbullking


    请教一下,我在网上看到别人说,远程访问都认为是guest,所以添加guest即可。而且我尝试过添加远程管理机器名,但由于被控机器不在域中,Check Name 时不能识别到,添加不成功。

netbullking 发表于 2011-9-26 19:04:33

回复 12# xiehuahere


    如果被控机器不在同一域或工作组中,据我所知,就无法使用 shutdown 了。你可以考虑使用其他方法,例如my788522 提到的 telnet
页: [1]
查看完整版本: 远程连接计算机并且让它重启