makesoft 发表于 2009-7-2 09:49:42

请教关于无显示器无键盘无鼠标服务器快捷关机的问题

利用网络架设了一个SVN服务器,仅仅使用了一台主机,关机一直通过远程桌面关机,觉得很麻烦。

有没有可能配置成通过串口设备或者电源按键关机,这样可以利用DIY的SMS远端值守设备实现任何时间的开关机操作。

使用操作系统不限,最好是基于2003或者XP

mail2li 发表于 2009-7-2 09:54:50

查ATX电源定义
把开关机信号引出到你单片机io口即可

makesoft 发表于 2009-7-2 09:58:43

【1楼】 mail2li

积分:342
派别:
等级:------
来自:SZ
        查ATX电源定义
把开关机信号引出到你单片机io口即可

不是想像的这样,服务器要终止很多服务才能关机的,不信你把显示器、键盘、数码拔掉,按电源开关关机试试?

helloshi 发表于 2009-7-2 10:12:47

控制面板进入“电源选项”,“高级”,电源按钮---》选关机。

yzlyear 发表于 2009-7-2 10:16:20

直接拔掉電源插頭
./emotion/em006.gif ./emotion/em006.gif

makesoft 发表于 2009-7-2 10:20:18

【3楼】 helloshi

积分:369
派别:
等级:------
来自:
        控制面板进入“电源选项”,“高级”,电源按钮---》选关机。


呵呵,这个问题还能想不到吗?

makesoft 发表于 2009-7-2 10:21:50

【4楼】 yzlyear 天地一号

积分:495
派别:
等级:------
来自:东莞
        直接拔掉電源插頭

是有这样的想法,用继电器控制AC电源,估计应该有副作用吧,特别对数据。

fsclub 发表于 2009-7-2 10:22:06

直接电源按钮。但操作系统的电源驱动要装好,OS会帮你关了服务。“WINDOWS 正在关机。。。”

makesoft 发表于 2009-7-2 10:26:13

【7楼】 fsclub

积分:4370
派别:
等级:------
来自:孩子还小,我就全国到处跑。
        直接电源按钮。但操作系统的电源驱动要装好,OS会帮你关了服务。“WINDOWS 正在关机。。。”

不可以的,我用了815和845主板测试,都是有问题的。

从道理上说,815、845这一类的老主板,安装WINXP SP3电源驱动一定不需要单独安装的.

makesoft 发表于 2009-7-2 10:27:45

当然有显示器、键盘、鼠标一切都没问题,电源开关机一切正常。

mail2li 发表于 2009-7-2 11:18:53

明白楼主的意思了
你不是简单的想关闭电源
因为是服务器 所以需要在关闭电源前停止跑的服务 保存数据
而直接给硬件的关机信号对数据而言就相对比较危险

你还是老老实实用远程关机吧 可以忍受的麻烦 呵呵

hsztc 发表于 2009-7-2 11:48:12

试试串口可能可以,用VB写个串口程序,比如发个0x25 然后VB判断是否是0x25 是的话用DOS输出 Shutdown

aozima 发表于 2009-7-2 11:55:37

我都是SSH过去关机的..(按按钮也一样 ,只是不想动)

貌似你都是用的MS 那就不知道
不过直接按扭应该也是一样 系统会关服务,而服务被关时都会停止服务并保存数据..

hsztc 发表于 2009-7-2 12:08:51

VB串口接收,判断是否为关机,是执行以下:
Open "D:\autooff.bat" For Output As #1
Print #1, "Shutdown -s"
Print #1, "del D:\autooff.bat"
Close #1
Shell "D:\autooff.bat"
Unload Me

-----------------------------
D:\autooff.bat 只是随意的,使用时可以改,不过三个D:\autooff.bat要一起改

makesoft 发表于 2009-7-2 12:50:06

【12楼】 aozima 残剑饮血

积分:919
派别:
等级:------
来自:
        我都是SSH过去关机的..(按按钮也一样 ,只是不想动)

貌似你都是用的MS 那就不知道
不过直接按扭应该也是一样 系统会关服务,而服务被关时都会停止服务并保存数据..

呵呵,我开始也是这么认为的,但直接按扭确实关不了仅仅有主机的机器,当然持续按住了超过3秒硬件关机没问题的,但这么没有什么意义。

大家有更好的办法吗?

tage 发表于 2009-7-2 12:53:02

别问了,花20元买个键盘吧。上面就一个关机键,其他都抠掉。

makesoft 发表于 2009-7-2 13:06:08

呵呵,有键盘,只是不想用罢了

因为是SVN服务,有的时候需要远程开关机,目前DIY个短信启闭平台,就是关闭系统不理想。

helloshi 发表于 2009-7-2 13:14:48

在BIOS设置中"ACPI fnuction"设置为"Enabled"了吗

makesoft 发表于 2009-7-2 13:17:25

谢谢楼上,设置过了,配置齐全的时候按电源键关机是正常的,独立主机就不行了

helloshi 发表于 2009-7-2 15:02:49

为什么呢

makesoft 发表于 2009-7-5 23:10:37

看来还是没有好的方案啊

wxws 发表于 2009-7-5 23:19:31

当然有啦

你去研究下在线式UPS关机问题吧,跟你是一个道理。
原理是PC端 会运行一个软件,他会监控UPS,如果失电,再测电池容量,如果电很少了,就自动关机,如果电量足,就不关。

这样你只要做一个串口设备模拟一下UPS给电脑的数据就行了,PC端不用做啥软件。

还有一个方案就是在PC机写个软件,从网络或串口取得命令后软件 关机。

wxws 发表于 2009-7-5 23:24:44

当然开机,还得用单片机控制电源键。取电也可直接从计算机电源取,很多ATX电源,关机时5V电还是存在的。

LZ 18楼的事,跟主板有关,其实你就用单片机仿个键盘就完事了嘛,用支持键盘开关机的主板。
用单片机输出开关机相关的键值,哈,这个方法不错。你PC上一个软件都不用写。

makesoft 发表于 2009-7-5 23:25:57

呵呵,谢谢楼上,这样工程量很大啊

继续寻找一种更简单有效的办法

wxws 发表于 2009-7-5 23:30:25

那就买个键盘,将电路板搞出来,引出那两个用得着的键,开机与关机的,然后你单片机去控制就OK了,一点都不费力,还便宜。

wxws 发表于 2009-7-5 23:34:05

你再说麻烦,我就要敲你脑袋了,哈./emotion/em026.gif

lilith 发表于 2009-7-21 23:41:50

Windows 的话,用 .net 写一个服务,.net 提供了服务类,写服务很容易的,服务不需要用户登录也能运行,所以在这个情况下最好写成服务,然后服务中用串口类,打开串口的 DTR,这样 DTR 就是高电平,然后用一个开关接到 DSR,在服务中使用串口电平变化事件(就好像 AVR 的电平变化中断),检测到 DSR = 1 执行关机,Windows 提供了关机 API,你可以自己看一下那个 API 流程,它会通知程序和服务正确保存数据、退出、关机。

helloshi 发表于 2009-7-22 07:08:28

设置          说明
PNP OS
设置为 Yes    BIOS 仅配置关键设备(例如,视频、硬盘和键盘)。注意:在此模式下,BIOS 和 Windows 都不会在启动时配置
            主板设备。因此,对于早期的计算机,必须将 PNP OS 设置为 No。

PNP OS
设置为 No   BIOS 将假定 Windows 不会配置关键设备和所有主板设备,而代为执行这些任务。

早期(旧式)
ACPI BIOS
PNP BIOS
或 APM BIOS   PNP OS 选项是无关选项。Windows(仅 Windows 98、Millennium Edition、2000 和 XP 版)使用高级配置和电源
            界面 (ACPI) BIOS 接口配置主板设备和检索系统信息。注意:虽然每个系统都具有 ACPI BIOS,但 Windows 可能
            会因 ACPI BIOS 中的错误而禁用 ACPI。在这种情况下,Windows 会回到 PNP BIOS 和 APM BIOS 的只读模式。因
            此,对于 ACPI BIOS 存在错误的任何计算机,请将 PNP OS 设置为 No。




这个有用么?
页: [1]
查看完整版本: 请教关于无显示器无键盘无鼠标服务器快捷关机的问题