电脑软硬件应用网
当前位置: 电脑软硬件应用网 > 电脑学院 > 软件教程 > 系统工具 > 正文
ghost后无需人工干预,全自动修改IP等设置
ghost后无需人工干预,全自动修改IP等设置
2006-8-14 8:43:30  文/未知   出处:电脑软硬件应用网   

原来开的网吧小,只有六十几台机器,如果要重做系统,就每台机器ghost,然后启动改IP、网关等,没感到怎么费力,现在的网吧有近300台,每次 ghost后再改IP之类的,想想就头晕,于是写了个VBS,几个BAT,使机器克隆后能自动修改IP、标识、网关,工作组、CS-CDKEY、美萍的机号和注册号,就是说:ghost 后基本不用改配置,直接能用。

网吧ghost 无非以下几种:

1、单机克隆,文件到分区:

简单、快速,推荐使用。一个系统备份也就300~400兆,不占多少硬盘空间,一旦系统有问题恢复容易。

2、单机克隆,分区到分区(不开机箱):

从服务器复制系统备份然后克隆,用于系统更新。优点:想克哪台克哪台,不受顾客上机限制,不拖网速。

3、单机克隆,分区到分区(开机箱):

从母盘克隆系统,一般用于系统更新,要开机箱,不推荐。

4、单机克隆,DISK TO DISK:

你不觉得累吗?

5、多机克隆,文件到分区:

批量更新系统,好处多多,就是改IP有点烦,哦!

6、多机克隆,盘到盘:

不管是哪种克隆,思想差不多,就是在非系统盘(如e:\ghostbak\)放以下几个文件:

1、系统的ghost备份(如win98.gho),如果有不同的机器配置也放在一起(如win98A.gho、win98B.gho、win98C.gho)

2、ip.reg:IP、标识、网关,工作组、CS-CDKEY、美萍机号和注册号的注册表文件。下面介绍。

3、st.bat:用于第1、2种情况。下面介绍。

4、ghost.exe:少了它什么也不能干!

ip.reg内容:

REGEDIT4

;计算机名(如zx001,zx123)

[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\ComputerName\ComputerName]

"ComputerName"="zx203"

;IP:

[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Class\NetTrans\0000]

"IPAddress"="192.168.0.203"

;网关:

[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Class\NetTrans\0000]

"DefaultGateway"="192.168.0.15"

;计算机说明:

[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\VxD\VNETSUP]

"Comment"="zx203"

;计算机名:

[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\VxD\VNETSUP]

"ComputerName"="zx203"

;工作组(大型网吧最好多分几个):

[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\VxD\VNETSUP]

"Workgroup"="lan3"

;CS-CDKEY

[HKEY_CURRENT_USER\Software\Valve\CounterStrike\Settings]

"key"="2317233759548"

;美萍机号:

[HKEY_LOCAL_MACHINE\Software\Mpsoft\Smenu]

"computernum"="203"

;美萍注册码:

[HKEY_LOCAL_MACHINE\Software\Mpsoft\Smenu\Reg]

"RegNum"=dword:00019DB6

getreg.vbs内容(自动生成以上注册表文件):

dim msginf,bkey,machname

msginf=msgbox("提取注册表文件,是否继续?",65,"getreg") '信息提示

if msginf=1 then ' 如果按确定,则

Set WshShell = WScript.CreateObject("WScript.Shell")

bKey = WshShell.RegRead("HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\ComputerName\ComputerName\ComputerName") ' 提取机算机名到变量bKey

machname=inputon(bkey) ' 用函数inputon()分析

if machname<>"quit" then ' 如果返回值不等于"quit",则

setreg(machname) ' 运行函数setreg()生成注册表ip.reg

backtoserver(machname) ' 将ip.reg 文件备份到服务器(绝对有用)

end if

end if

function inputon(t1) ' 函数inputon()

dim lt,rt,t2 ' 变量

while true ' 循环直到退出函数

t2=inputbox("请输入机器标识!","输入",t1) ' 输入机算机名,默认值为现在的计算机名

if t2="" then ' 如果t2等于空(按了取消键),则

inputon="quit" ' 返回值为"quit"

exit function ' 退出程序

end if

if len(t2)=5 then ' 计算机号的长度,本网吧必须为5位

lt=left(LCase(t2),2) ' lt 等于前二位

rt=right(LCase(t2),3) ' rt 等于后三位

if lt="zx" and rt<>"" and Cint(rt)>=0 and Cint(rt)<=280 then ' 验证

inputon=t2 ' 返回需要的计算机名

exit function

end if

end if

wend

end function

sub setreg(t) ' 生成注册表

Dim fso, f1,f2,rt,ipt,pt,gateway,lan,cskey,mpkey ' 变量

rt=cint(right(t,3)) ' 机号转换为数字值

if rt>140 then

ipt=0

else

ipt=1

end if ' 大于140号,IP:192.168.0.X 小于140号,IP:192.168.1.X

if (rt>=1 and rt<=39) or (rt>=223 and rt<=280) then

lan="lan1"

elseif (rt>39 and rt<=140) then

lan="lan2"

elseif (rt>140 and rt<223) then

lan="lan3"

end if ' 根据不同的机号设置工作组

if (rt>=1 and rt<=140) or (rt>=223 and rt<=280) then

gateway=rt mod 4

if gateway=0 then

gateway=4

end if

gateway=1 & gateway

else

gateway=rt mod 2

if gateway=1 then

gateway=15

elseif gateway=0 then

gateway=16

end if

end if ' 根据不同的机号设置网关

pt=rt

if pt=200 then

pt=252

end if

if pt=250 then

pt=253

end if ' 历史原因,ip 200和250被服务器用了,改为252,253

Set fso = CreateObject("Scripting.FileSystemObject")

if fso.fileexists("e:\ghostbak\ip.reg") then

set f2=fso.getfile("e:\ghostbak\ip.reg")

f2.delete

end if ' 如果存在ip.reg,先删了

cskey=getcskey() ' 函数getcskey() 得到CS的CDKEY

mpkey=getmpkey() ' 函数getmpkey()得到美萍的CDKEY

set f1 = fso.CreateTextFile("e:\ghostbak\ip.reg", True) ' 建立文件ip.cfg

f1.WriteLine("REGEDIT4") ' 以下为生成注册表

f1.WriteBlankLines(1)

f1.WriteLine("[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\ComputerName\ComputerName]")

f1.WriteLine(chr(34) & "ComputerName" & chr(34) & "=" & chr(34) & t & chr(34)) ' 计算机名

f1.WriteLine("[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Class\NetTrans\0000]")

f1.WriteLine(chr(34) & "IPAddress" & chr(34) & "=" & chr(34) & "192.168." & ipt & "." & pt & chr(34)) ' IP

f1.WriteLine("[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Class\NetTrans\0000]")

f1.WriteLine(chr(34) & "DefaultGateway" & chr(34) & "=" & chr(34) & "192.168.0." & gateway & chr(34)) ' 网关

f1.WriteLine("[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Class\NetTrans\0000]")

f1.WriteLine(chr(34) & "IPMask" & chr(34) & "=" & chr(34) & "255.255.254.0" & chr(34)) ' 子网掩码

f1.WriteLine("[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\VxD\VNETSUP]")

f1.WriteLine(chr(34) & "Comment" & chr(34) & "=" & chr(34) & t & chr(34)) ' 计算机说明

f1.WriteLine("[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\VxD\VNETSUP]")

f1.WriteLine(chr(34) & "ComputerName" & chr(34) & "=" & chr(34) & t & chr(34)) ' 计算机名

f1.WriteLine("[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\VxD\VNETSUP]")

f1.Writeline(chr(34) & "Workgroup" & chr(34) & "=" & chr(34) & lan & chr(34)) ' 工作组

f1.WriteLine("[HKEY_CURRENT_USER\Software\Valve\CounterStrike\Settings]")

f1.WriteLine(chr(34) & "key" & chr(34) & "=" & chr(34) & cskey & chr(34)) ' CS-CDKEY

f1.WriteLine("[HKEY_LOCAL_MACHINE\Software\Mpsoft\Smenu]")

1.WriteLine(chr(34) & "computernum" & chr(34) & "=" & chr(34) & rt & chr(34)) ' 美萍机号

f1.WriteLine("[HKEY_LOCAL_MACHINE\Software\Mpsoft\Smenu\Reg]")

f1.WriteLine(chr(34) & "RegNum" & chr(34) & "=dword:" & mpkey) ' 美萍注册码

end sub

function getmpkey() ' 函数getmpkey()得到美萍的CDKEY

dim mpkey,lenmpkey

Set WshShell = WScript.CreateObject("WScript.Shell")

mpkey=hex(WshShell.RegRead("HKEY_LOCAL_MACHINE\Software\Mpsoft\Smenu\Reg\RegNum"))

mpkey="0000" & mpkey

getmpkey=mpkey

end function

' 函数getcskey() 从服务器的\\Server\系统更新\cs-cdkey.txt文件得到CS的CDKEY(随机)

function getcskey()

dim fso,ts,rndnumb,count

Randomize

rndnumb=Int(100 * Rnd + 1)

Set fso = CreateObject("Scripting.FileSystemObject")

Set ts = fso.OpenTextFile("\\Server\系统更新\cs-cdkey.txt", 1)

for count=1 to rndnumb

ts.skipline

next

getcskey=trim(ts.ReadLine)

end function

function backtoserver(t) ' 将ip.reg 文件备份到服务器

Set fso = Wscript.CreateObject("Scripting.FileSystemObject")

if fso.fileexists("e:\ghostbak\ip.reg") then

set c=fso.getfile("e:\ghostbak\ip.reg")

c.copy ("\\Server\系统更新\ip\" & t & ".reg")

end if

end function

cs-cdkey.txt 文件内容(共100个,每行一个)

2696734026608

5498338402186

3865568763903

2696734026608

1154

[1] [2] 下一页

  • 上一篇文章:

  • 下一篇文章:
  • 最新热点 最新推荐 相关文章
    设置UDMA模式加快Ghost系统恢复速度
    如何删除Ghost留下的镜像文件和Ghos…
    Ghost重装提示Error loading system
    不能GHOST系统的原因及解决办法总结
    使用Ghost恢复系统速度慢的解决办法
    装双系统能不能用Ghost?
    硬盘出现l. 之后无法启动
    用什么软件能打开GHO文件呢?
    重装Ghost系统时出现File Name(546)
    用Ghost修复SD卡
    关于45IT | About 45IT | 联系方式 | 版权声明 | 网站导航 |

    Copyright © 2003-2011 45IT. All Rights Reserved 浙ICP备09049068号