开篇:润墨网以专业的文秘视角,为您筛选了一篇自己动手利用U盘制作电脑钥匙盘范文,如需获取更多写作素材,在线客服老师一对一协助。欢迎您的阅读与分享!
摘要:介绍一种利用U盘制作电脑钥匙盘的方法,该方法利用windows的任务计划,实现对U盘的钥匙数据进行检测,从而对电脑开机使用的用户进行身份鉴别。实验结果表明,该方法可以有效地利用U盘实现对电脑使用的保护。
关键词:U盘;用户鉴别;批处理
中图分类号:TP391文献标识码:A文章编号:1009-3044(2010)17-4836-02
Made Computer Key Using U Disk by Yourself
LIU Pei-lun
(The High School attached to Huazhong University of Science and Technology, Wuhan 430074, China)
Abstract: This paper describes a method of authentication of computer users using portable disk.The method can detect encrypted files in portable disk with windows scheduled tasks, to identify the computer user. Experimental results show that the method can prevent others from free use of your computer.
Key words: U disk; user identify; batch
目前,U盘已经非常普及,它已成为携带数据文件的主要工具。不过,如果只是把它用来存储数据的话,也许有点可惜了。其实,我们还可以让U盘发挥更大的功能!本文介绍一种方法,能让你的U盘瞬间变为电脑钥匙盘。当你插上你制作好的U盘才能正常进入系统操作,而一旦拔出U盘,电脑便将在一定时间内自动关机或锁定。该方法除了可以保护自己的计算机不被他人使用之外,还可以在家庭中防止中学生过度上网和玩游戏,预防中学生上网成瘾导致影响学习。以下是该方法的实现过程:
1 设置启动任务计划
1) 在U盘里创建一个文件,文件名和扩展名均任意输入,比如创建的文件为pass.word;
2) 当多个U盘入一台计算机上的时候,它们的盘符实际上是根据插入的顺序决定的。因此脚本应该搜索所有已经插入的U盘并在其上检索密钥文件,以保证插入多个U盘也能正常工作[1]。
3) 在本地磁盘上创建一个批处理文件(用记事本另存为start-up.bat 即可),其内容为如下语句:
@echo off
set "var1=fsutil fsinfo drives"
set "var2=fsutil fsinfo drivetype"
for /f "delims=驱动器:\ " %%a in ('%var1%^|more') do (
for /f "delims=:" %%i in ('%var2% %%a: ^| find/i "可移动驱动器"') do (
if exist %%i%:\pass.word goto eof))
shutdown -s -t 10 -c "你无法使用该计算机"
:eof
上面的第一个for语句是寻找所有的驱动器,第二个for是判断驱动器的类型。这个批处理的作用是如果插入的U盘中不存在pass.word 这个文件,则在10秒后关闭该计算机,并显示“你无法使用该计算机”这一提示信息。
4) 在Windows菜单中“开始”“程序”“附件”“系统工具”“计划任务”“下一步”“浏览”,选中start-up.bat,选择“计算机启动时”执行该计划任务,然后,在随后的对话框中输入你的用户密码及确认密码即可。
2 设置定时保护计划
1) 在本地磁盘上创建另一个批处理文件(用记事本另存为lock.bat即可),其内容为如下语句:
@echo off
set "var1=fsutil fsinfo drives"
set "var2=fsutil fsinfo drivetype"
for /f "delims=驱动器:\ " %%a in ('%var1%^|more') do (
for /f "delims=:" %%i in ('%var2% %%a: ^| find/i "可移动驱动器"') do (
if exist %%i%:\pass.word goto eof))
rundll32 powrprof.dll, SetSuspendState
:eof
如果执行该文件,则在当前插入电脑中的所有U盘中都找不到“pass.word”文件时,将使电脑进入待机状态,从而达到锁定电脑的目的[2]。
2) 在“开始”“程序”“附件”“系统工具”“计划任务”“下一步”“浏览”,选中lock.bat,选择“登录时”执行该计划任务,然后你的用户密码并确认;
3) 选中刚才添加的“lock”任务,点击鼠标右键,选择“属性”,选择“计
划”标签,将计划任务改为“空闲时”,同时将时间设为1分钟,如图1所示。
选择“设置”标签,按图2方式设置。
到这里就大功告成了,这时,只有在开机时插入有密钥文件“pass.word”的U盘才能启动计算机并进入系统,否则将出现提示并在指定时间内关闭计算机。当电脑处于空闲状态超出指定时间时(如1分钟之后),便进入待机状态,如果不插入钥匙盘,则始终处于待机状态。
当然,也可以将pass.word密钥文件放到一个经过简单加密的目录下,防止别人看到这个文件名。比如:在你的U盘上新建一个目录,将pass.word复制到该目录下,然后,将这个目录更名为:
“控制面板.{21EC2020-3AEA-1069-A2DD-08002B30309D}”, 这样,就成功地骗过了资源管理器,当使用资源管理器点击这个目录时,则会打开控制面板窗口,而非进入该目录了,因此,隐藏在该目录下的pass.word文件便不能被资源管理器所发现了。
3 结束语
最后,再说说在U盘遗失情况下的解决办法:
1) 如果关机延迟的时间足够多,如start-up.bat中shutdown -s -t 10 -c "你无法使用该计算机"中设置的10秒,可以在10秒中内“开始”“运行”中输入"shutdown -a"来解除关机指令[3]。如果需要更强的保护,可以把10秒改短为2秒;
2) 也可以将计算机启动到安全模式下将启动脚本删除,因为在安全模式下是不会加载开机脚本的。
参考文献:
[1] 张发凌.批处理命令在WINDOW操作中的典型应用[M].北京:人民邮电出版社,2008.
[2] 布鲁斯,顾卫华.Microsoft Windows XP实用工具大全[M].北京:清华大学出版社,2004.
[3] 罗斯,所罗门.深入解析:Windows操作系统[M].4版.北京:电子工业出版社,2007.