-
Linux启动过程解析 - [PC技术]
2009-06-26
1)BIOS自检
2)启动Grub/Lilo
3)加载内核
4)执行init进程
5)通过/etc/inittab文件进行初始化
6)登陆Linux1)BIOS自检
a)POST(Power On Self Test),对硬件进行检测
计算机在通电后首先由BIOS进行自检,即所谓的POST(Power On Self Test),对硬件进行检测
依据BIOS内设置的引导顺序从硬盘、软盘或CDROM中读入"引导块"
在PC中,Linux是从BIOS中的地址0xFFFF0处开始的
BIOS的第一个步骤是加电自检(POST),对硬件进行检测
第二个步骤是进行本地设备的枚举和初始化
BIOS由两部分组成: POST代码和运行时服务
当POST完成后,它从内存中清理出来,但BIOS运行时服务依然保留在内存中,目标操作系统可以使用这些服务
要引导一个操作系统,BIOS运行时会按照CMOS的设置的顺序来搜索处于活动状态并可引导的设备:软盘、CD-ROM、硬盘上的分区、网络上的某个设备、USB(通常Linux是从硬盘引导的
主引导记录MBR中包含主引导加载程序。MBR是一个512字节大小的扇区,位于磁盘上的第一个扇区中(0道0柱面1扇区))当MBR被加载到RAM中之后,BIOS会把控制权交给MBR
b)提取MBR的信息
要看MBR的内容,请使用下面的命令
#从/dev/sda上读取前512个字节的内容,并将其写入mbr.bin文件中
[root@localhost pam.d]# dd if=/dev/sda of=mbr.bin bs=512 count=1
#以十六进制和ASCII码格式打印这个二进制文件的内容
[root@localhost pam.d]# od -xa mbr.bin
0000000 48eb 0090 d08e 00bc fb7c d88e b9fc 0080
k H dle nul so P < nul | { so X | 9 nul nul
0000020 f48b 00bf 8e06 f3c0 a566 2fea 0006 1000
vt t ? nul ack so @ s f % j / ack nul nul dle
2)启动GRUB/Lilo
GRUB和LILO都是引导加载程序,它们会引导操作系统。当机器引导它的操作系统时,BIOS会读取引导介质上最前面的512字节(即MBR: master boot record)
3)加载内核
当内核映像被加载到内存后,内核阶段就加开始了
内核映像并不是一个可执行的内核,而是一个压缩过的内核映像。通常它是一个zImage(压缩映像,小于512KB)或bzImage(较大的压缩映像,大于512KB),它是提前使用zlib进行压缩的
在这个内核映像前面是一个例程,它实现少量硬件设置,并对内核映像中包含的内核进行解压,然后将其放入高端内存中,如果有初始RAM磁盘映像,就会将它移动到内存中,并标明以后使用,然后此例程会调用内核,并开始启动内核引导的过程
在GRUB命令中,我们可以使用initrd映像引导一个特定的内核,方法如下:
grub> kernel /bzImage-2.6.14.2
[Linux-bzImage, setup=0x1400, size=0x29672e]
grub>initrd /initrd-2.6.14.2.img
[Linux-initrd @ 0x5f13000, 0xcc199 bytes]
grub> boot
Uncompressing Linux... Ok, booting the kernel.
如果不知道要引导的内核的名称,只需使用/然后按下Tab键,就会显示内核和initrd映像列表
对grub命令行进行加密
a)使用命令/sbin/grub-md5-crypt来产生grub使用的密码
[root@localhost pam.d]# /sbin/grub-md5-crypt
Password:
Retype password:
$1$3YbPF$zFVRY6J8VxNR9Ok4fXRkr1b)修改/etc/grub.conf加入password --md5 $1$3YbPF$zFVRY6J8VxNR9Ok4fXRkr1 一定要放在title之前
这样重启系统时在grub的启动grub菜单时,想再按e命令进行编辑时,必须先按p键后输入密码才成
4)执行init进程
init进程是所有进程的起点,内核在完成内核引导后,即在本线程(进程)空间内加载init程序,它的进程号为1
init进程是所有进程的发起者和控制者
init进程有两个作用:
扮演终结父进程的角色:所有的孤儿进程都会被init进程接管
进入某个特定的运行级别时运行相应的程序,以此对各种运行级别进行管理,这个作用由/etc/inittab文件定义的
5)通过/etc/inittab文件进行初始化
init进程的工作是根据/etc/inittab来执行相应的脚本进行系统初始化,如设置键盘、字体,装载模块,设置网络等,对于RedHat来说,按以下顺序执行
a)执行/etc/rc.d/rc.sysinit(由init执行的第一个脚本)
此步可进行的工作有:
设置$PATH变量
配置网络
为虚拟内存启动交换
设置系统的主机名
检查root文件系统,以进行必要的修复
检查root文件系统的配额
为root文件系统打开用户和组的配额
以读/写的方式重新装载root文件系统
清除被装载的文件系统表/etc/matb
把root文件系统输入到mtab
使用系统为装入模块做准备
查找模块的相关文件
检查文件系统,以进行必要的修复
加载所有其他文件系统
清除几个/etc文件,如/etc/mtab、/etc/fastboot和/etc/nologin
删除UUCP的lock文件
删除过时的子系统文件
删除过时的pid文件
设置系统时钟
打开交换
初始化串行端口
装入模块
b)执行/etc/rc.d/rcX.d[KS]
首先终止K开头的服务(用来关闭一个服务),然后启动S开头的服务(用来启动一个服务)
对每一个运行级别来说,在/etc/rc.d子目录中都有一个对应的下级目录。
这些运行级别的下级子目录的命名方法上rcX.d, 其中X就是代表运行级别的数字
在各个运行级别的子目录中,都建立有到/etc/rc.d/init.d子目录中命令脚本程序的符号链接
链接的名称在K与S后有一个数字,表示执行顺序,数字小的先执行如K01tog-pegasus 、 S00microcode_ctl
对以K开头的脚本执行时系统会传递stop参数,而S开头的脚本系统会传递start参数
c)执行/etc/rc.d/rc.local
Redhat中运行模式2,3,5都把/etc/rc.d/rc.local作为初始化脚本中的最后一个文件,所以用户可以自己在这个文件中添加一些需要在其他初始化工作之后,登陆之前执行的命令
6)执行/bin/login
login程序会提示使用者需输入帐号与密码,接着编码并确认密码的正确性,若二者相合,则为使用者进行初始化环境,并将控制权交给shell,即等用户登录。
----------------至此,Linux启动过程全部结束---------------------- -
Windows7的先进性 - [PC技术]
2009-06-12
从Windows 7测试版到RC版,相信大家都在体验它给我们带来的各种新特性。无论是安全性,可控性,高效性,简化管理等,Windows 7给我们带来了前所未有的期待。目前大多数企业都把XP系统升级到了SP3,而有一部分企业也早已部署了VISTA,而个人电脑中XP和VISTA基本持平,VISTA略显偏高,服务器级别Windows Server 2003还是占大数,但很明显升级到Windows Server 2008的趋势已经很清晰。以我个人观点,未来部署Windows 7的市场应该非常大,无论是企业还是个人PC。这篇文章旨在介绍企业部署Windows 7的版本选择以及优势。
微软发布了Windows 7的6个版本:
Windows 7初级版(Starter)
Windows 7家庭基础版(Home Basic)
Windows 7家庭高级版(Home Premium)
Windows 7专业版(Professional)
Windows 7企业版(Enterprise)
Windows 7旗舰版( Ultimate)。
作为微软Partner的技术联系人,我很关注微软发给Partner的各种文档,在上面6个版本中,微软给的建议是企业部署Windows 7 首选企业版,而不是旗舰版或专业版。
首先
Windows 7 企业版是包含了专为满足企业客户需求而设计的专门技术的 Windows 7 版本。构建于 Windows Vista 的基础之上,Windows 7 企业版将帮助人们在任何地方都可以高效地工作,增强安全性和可控性,同时简化电脑管理。和 Windows Vista 企业版一样,Windows 7 企业版也只通过微软软件保障(Software Assurance)许可向客户提供。
Windows 7 企业版包含的独有特性如下:
1. DirectAccess
通过 Windows 7 和 Windows Server 2008 R2 中的 DirectAccess 功能,增强了移动
办公用户的效率,他们只要拥有 Internet 连接,就可以无缝地、更安全地连接到
企业的网络,而不再需要 VPN。IT 部门启用 DirectAccess 后,整个公司网络中的
文件共享、内部网络(Intranet)上的网站以及业务应用程序,无论在哪只要有
Internet连接就都可以访问和使用。
PS:不再需要VPN,网络管理员在oh my god!
2. BranchCache™
提升应用程序的网络响应效率,让在远程办公室工作的用户拥有更像在总部办公
室工作一样的体验。当访问暂存在 Windows Server 2008 R2 上的内容时,分公司
的用户无需再长时间等待以从总部的服务器上下载文件。IT 部门启用 BranchCache
后,内部网络(Intranet)站点或文件服务器上的数据将被复制并缓存在分公司的
本地网络中。当同一网络中的其他用户要使用这些文件时,它就几乎可以立即获
得这些内容,因为这些内容可以直接从本地缓存下载,而不需要再通过有限的带
宽连接从总部获取。
PS:分支机构员工不会再为等待而一天多喝2杯咖啡了。
3. 企业搜索范围(Search Federation)
通过一个简单的用户界面,在网络位置,包括 SharePoint 站点中查找信息。利用
Windows 7 中的企业搜索范围(Enterprise Search Scopes)功能,IT 管理员可以
在开始菜单或资源管理器中添加链接。通过这些链接简化了对网络中最恰当、最
完整、最权威的数据资源的访问。这样可以使公司内部网络门户上的信息更容易
被发现并访问。IT 管理员可以通过组策略在用户电脑上部署企业搜索(Enterprise
Search)的范围。
PS:只有你想不到的,没有你搜不到的,千万别搜出***来噢!
4. BitLocker™ 和 BitLocker To Go
通过易管理的强制加密和恢复密钥备份功能,帮助保护电脑和可移动存储设备上
的数据。微软在 Windows Vista 中引入了 BitLocker 驱动器加密功能,帮助保护敏
感数据在电脑丢失、被盗或不当处理后,不被未经授权人员访问。Windows 7 不
仅将 BitLocker 的保护功能扩展到 USB 存储器,同时还让原有的功能更方便使用。
PS:赶快为你的U盘加个密吧,BitLocker To Go!
5. AppLocker™
Windows 7 通过 AppLocker 提供了新的应用程序控制策略,这种灵活、易用的管
理机制,可以允许 IT 专业人员明确指明在用户的桌面上允许运行何种应用程序。
它可以限制未经授权的软件运行,只允许运行用户所需的应用程序、安装程序和
脚本。通过这个功能,IT 专业人员可以实现安全性、操作性与合规性,并从应用
程序标准化中获益。
PS:我的地盘我做主,快去组策略里倒腾下吧。
6. 虚拟桌面基础架构 (VDI) 优化
利用服务器上承载的虚拟机提供桌面功能,这种被称为虚拟桌面基础架构
(Virtual Desktop Infrastructure, VDI)的解决方案是一种针对桌面部署的新兴
模式,可以让用户远程访问其桌面,由此可以集中管理数据、应用程序和操作
系统。VDI 是一种飞速发展的技术,Windows 7 带来了最新的增强,通过支持
多显示器和麦克风,能够提供更好的用户体验。同时还包含可以重新利用虚拟
机镜像(VHD)来启动实体电脑的能力。
PS:地球人都知道虚拟化,你是外星人吗?岳雷老师正在耕耘MDOP的菜园,你不知道吗?请点击这里。
7. 多语种用户界面
Windows 7 企业版中的语言包通过一个 Windows 主镜像支持用户使用多达36
种不同的语言,而无需再为企业内部使用的每一种语言创建单独的镜像。语言
包还支持多个用户共享同一台电脑,即使他们使用的是不同的语言。在
Windows 7 中,语言包占更少的内存,这样便降低了镜像大小,相比以前版本
的 Windows 让安装更快。
PS:负责HOL环境部署的网管可以早点下班了。
以上这7种功能是专业版不具有的,但旗舰版一定会拥有的。
其次
旗舰版并不是为了在一个企业环境中部署而设计的。旗舰版不提供批量许可介质,也就是说企业不能构建和部署定制化的系统镜像。同时,因为 Windows 7 旗舰版的目标受众为零售终端客户,所以批量激活的方法不适用于 Windows 7 旗舰版,而企业版可以批量激活。任何一台被 Windows 客户端的软件保障(SA)所覆盖的电脑,在Windows 7 发布时均可以免费获得 Windows 7 企业版,企业只需要拥有5台以上电脑就可以购买软件保障,这意味着几乎任何企业都可以获得Windows 7 企业版。虽然旗舰版拥有最多的功能,但有理由相信,企业版足够应付自如了。
最后PS:虽然XP的SP3确实很诱惑人,但随着虚拟化,Windows Server 2008的应用越来越广,部署最新的操作系统给企业带来的价值将会成倍增加。 -
转:这么多技术该怎样学啊 - [PC技术]
2009-05-29
一、这多东西啥时候能学完?
现在IT新技术日新月异。就常用编程语言而言,有c/c++、汇编、java,c#、Python等;操作系统平台有unix/linux,windows系列;开发工具有VC、VisualStudio2008、Eclipse、NetBeans等;每个大平台下,还有很多的的方向:如网络、数据库、脚本、HTML、动态网站、游戏开发等;有人还在学Dreamweaver做网页、Flash做动画、Photoshop做美工、3DMax做三维动画…………是的,我们什么都想学。恨不得把所有的知识统统都塞到肚子里去。看到什么,想学什么!
今天看这VC的书,明天又看Java,后天又看C#,东搞西搞!看到别人做网页。自己兴趣了来了。好,学html语言,我也做网页,听说做网页要会“网页三剑客”,所以又想学Dreamweaver、Flash。后来开始知道有JSP、PHP、ASP.NET做动态网站这玩意儿。也想去学,学学学……
这是几乎所有在校大学生的通病。但是,这不是坏事,甚至可以说是好事。说明了你“求知欲”高!总比那些,生活没有激情,整天知道泡妞、上网、打游戏、混日子的强。
但是如果你今天想学这个,明天又想学那个。这样你就能永远徘徊在技术的门外。很多人都有过或者正在经历这样的苦闷日子:总觉得有“太多东西”要学了,然而人的精力是有限的,总有永远学不完的感觉,所以心理特别急,整天惶惶不可终日,不知道先要学哪个,一会儿拿起这本书,一会拿起那本书,折腾了几个月,突然发现自己什么都没有学到……
每一个大方向如果没有上几年的学习,很难能学习出什么来。但程序设计的最根本的东西是相同的。所以我们学习要抓根本。俗话说:通一理,融百里。
学程序设计就像习武一样,如果内功学的好,其他功夫就很容易上手。君不见《倚天屠龙记》中的张无忌练了“九阳神功”8年,练“乾坤大挪移”只需12个时辰吗?
习武之人,谁不想在“江湖”上扬名立万,谁不想成为万人敬仰的大侠?大侠之所以能成为“大侠”,当然有他们的看家本领。狄云的“神照神功”,金世遗的正邪融合的“乔北冥内功心法”,张无忌的“九阳神功”,段誉的“六脉神剑”,令狐冲的“独孤九剑”,哇,太多了...
古人历经千辛万苦才能找到这些“武功秘籍”。我们现在这些后辈,比起古人来说:简直太幸运了。去书店,各种各样的心功心法,剑法,拳法,应有尽有,看得你眼花缭乱...你选什么呢?今天练“六脉神剑”几式,明天去学“降龙十八掌”几招,后天又去练“发暗器”,这样何时才有个尽头呢?你说,你什么武功都会,但是“形似而神不似”,不得要领,不够火候。一上擂台,就被别人一掌打趴了。试问哪个软件公司敢要一个号称任何编程语言都会,而是每种语言只能写出个“hello world!”的程序员,你不被人家扫地出门才怪。
二、学**还是学**更有前途?
看了上面的话,有的同学已经开始烦了,“知道了知道了,不止一个像你这样的所谓的‘老前辈’跟我说过‘学什么都一样,思想才是最重要’的大道理,可是你们站着说话不嫌腰疼呀,现实是有很多技术需要学,比如做Web开发就有JSP、PHP、ASP.NET等好多方向,我总得选一个吧!到底学哪个有前途呢?我必须要选择一个有前途的,选错了就麻烦了。”
其实像“学**还是学**更有前途”的话没意义,因为“选择JSP还是选择PHP”的前途的差别不像“选择英语还是选择日语”的前途差别那样大,不存在“选错方向”的问题,因为都是相通的,你也不能保证你毕业以后搞的就是你学的那个方向,更不能保证你靠你学的这点东西就能吃一辈子。比如我上大学的时候一直在钻研是Delphi语言,可是毕业校园招聘的时候我照样在Java职位的考试取得了第一名,而且工作以后经过简单的学习就掌握了Java语言,并且后来还写了三本关于Java语言的书;再如我毕业后两年多的时间一直在用Java开发,后来公司要做一套基于.NET的产品,我只用了一个礼拜熟悉了.NET体系以及C#的语法,然后就开始进行开发。
不过就像上边说的“做Web开发就有JSP、PHP、ASP.NET等好多方向,我总得选一个吧!”这个问题是非常实际的,因为只有先学一个才能深入这个方向,把这个方向学通了才能想以后“一通百通”。因此我的建议就是学校教过什么语言,你就继续深入学习这么语言,而不要去问“这么语言有没有前途”这样的傻问题。尽量不要去学一门所谓“有前途”的新语言,因为你去学一门新语言就要把很多精力耗费在语言、语法本身,而耽误了编程的实战,而以一个已经学过的语言来学习的话,起码语法本身不用再去学、开发工具本身不用再去熟悉,只要研究怎么使用这门语言开发有用的程序就ok了。比如大部分同学都学过C语言(有的学校直接开了C++的课,但是C++的面向过程编程部分还是C语言),所以咱们就开了《C语言也能干大事》的课程,让同学们把精力放到学以致用上,而不是学“有前途”的新语言上,这也是这个思想的一个体现。
举几个例子。咱们如鹏网的《计算机专业职业发展测评系统》是我用PHP开发的,但是在这之前我从来没写过PHP程序,但是我以前写过JSP、ASP的程序,因为写网站程序的原理都是相通的,只是语法不同而已,因此我只用了几个小时的时间熟悉了开发PHP用的工具并且快速浏览了一下PHP的语法,然后用半天时间就开发出了这个测评系统。想像一下一个整天在今天学JSP,明天学ASP,后天学PHP,大后天仰天长叹“到底学哪个有前途”的人能用半天时间学会一门新语言吗?
我大学时有一个同学,他看我当时Delphi学的比较好,写了很多程序,他就说他也想学软件开发,让我教他Delphi,可是我们专业前一个学期已经开了PowerBuilder的课,因此当时我就建议他还是继续深入学习PowerBuilder,用PowerBuilder写又实用价值的东西,而不是像上课那样写HelloWorld的程序。当时Delphi还是如日中天的流行的编程语言,而PowerBuilder则市场占有率比较小,他就说不想继续学PowerBuilder,因为PowerBuilder没前途,我就给他讲了“一通百通,从自己最熟悉的入手”这个道理,然后他就踏实的深入研究PowerBuilder起来,到了毕业的时候他已经能用PowerBuilder写非常复杂的程序而且还学习了用PowerBuilder写Web程序。毕业后没多久就应公司的要求用Delphi写程序,他只用了不到一周的时间学习了Delphi,然后就写出了一个符合公司要求的系统,当时他就给我打电话向我报喜。前一阵子我听说他已经开始指导一些新员工用Java开发一个中型规模的企业级系统了。可以说他的成功就得益于“一通百通,从自己最熟悉的入手”这个原则。
总结一下,不要管“哪门语言好就业、有前途”,因为那些“好就业、有前途”都是纸老虎。尽量不要学新语言,从自己最熟悉的语言入手,深入研究,出山后你就是被用人单位争抢的红人。
三、企业里都需要什么方面的才能?
这个要视用人单位的要求而定了。你现在还没有毕业,也不知道未来要面对什么样的岗位。因此建议大家在上学期间不要偏科,所以的课程都要好好学,学好专业课,培养自己的“内功心法”,然后进入一个大公司,那么大公司自然会为你安排一个人才培养计划,在工作的环境中学习就更有目的性。 -
WindowsXP用命令关机更完美 - [PC技术]
2009-04-18
用Windows XP内置工具使系统关机更完美
Windows XP操作系统中带有一个名为shutdown的功能强大的关机工具。利用它不但可以完成Windows图形操作界面下可以完成的功能:注销用户、关闭或重启计算机,更重要的是可以用它来定时关机、远程关机。这可是在Windows图形操作界面下完成不了的功能!如果某天您的计算机在下载一个软件,还需要30分钟才能完成,但您有事情要马上出去,这时您就需要用定时关机的功能了;同样,您管理了一个小型机房,每天关机的时候得一台一台地关,很麻烦!呵呵,用shutdown就可以帮您解决,而且不用在每台计算机上安装客户端程序!
shutdown程序是Windows XP操作系统安装时带来的,具体位置在Winntsystem32shutdown.exe,在Windows 9x/2000中是没有这个程序的,但由于Windows 2000和XP的内核基本一致,所以我们可以把这个shutdown.exe 程序拷贝到Windows 2000的Winntsystem32文件夹下面,就可以照常使用,但Windows 9x不行。
shutdown的具体的格式为:
shutdown [-i | -l | -s | -r | -a] [-f] [-m computername] [-t xx] [-c “comment”] [-d up:xx:yy]
具体参数解释如下:
-i:显示 GUI 界面,必须是第一个选项。
-l:注销(不能与选项-m一起使用)。
-s:关闭此计算机。
-r:关闭并重启动此计算机。
-a:放弃系统关机。
-m computername:远程计算机关机/重启动/放弃。
-t xx:设置关闭的超时为 xx 秒。
-c “comment”: 关闭注释(最大127 个字符)。
-f:强制运行的应用程序关闭而没有警告。
-d [p]:xx:yy:关闭原因代码(此项一般不会用到)。
定时关闭计算机
1.我们已经了解了shutdown命令的用法,如果现在我们想让本地计算机在60分钟后关闭,那么我们单击“开始”菜单,选择“运行”,然后在输入框中输入:
shutdown -s -t 3600
运行后系统会马上弹出一个“系统关机窗口”:“系统即将关机,请您保存好正在运行的工作……”,还有一个关机倒计时器,这个窗口是关不掉的,到达关机时,系统就会强行关机。
2.如果在这段时间内您想取消这次定时关机,那您可以在“运行”框中输入:
shutdown -a
这样这次定时关机就被取消了,“系统关机窗口”也会马上消失。很简单吧!
关闭远程计算机
与定时关机相比较,关闭远程计算机稍微要复杂点。首先要注意:shutdown只能远程关闭Windows 2000/XP系统的计算机,所以要被远程关闭的计算机只能是Windows XP或是Windows 2000系统的计算机,Windows 9x系统的计算机是不行的。
由于Windows 2000/XP系统的默认组策略中设定只有Administrator组的成员才有权从远程关机,所以我们要改变这个设置才行,不然每次远程关机都要进行身份认证多麻烦!具体步骤如下:
(1)单击“开始”菜单,选择“运行”,然后在输入框中输入“gpedit.msc”,然后单击“确定”,这样就打开了“组策略编辑器”。
(2)在“组策略编辑器”的左窗口中打开“计算机配置→Windows设置→安全设置→本地策略→用户权利指派”。
(3)在“组策略编辑器”的右窗口中选择“从远端系统强制关机”,双击,弹出的对话框中显示只有“adm
inistrator组的成员”才有权从远程关机,单击对话框下方的“添加用户或组”按纽,然后在新弹出的对话框中输入:“guest”,再单击“确定”,这时在“从远端系统强制关机”的属性框中便添加了一个“guest”用户,单击“确定”完成设置,这样这台计算机就授予了guest组用户“从远程关闭计算机”的权限了。
(4)按同样的方法设置好所有要远程关闭的计算机。
设置好远程关机权限后就可以真正体验远程关闭计算机的便利了。假如局域网里有两台主机A和B,我们要从A机上关闭B机,只要单击A机的“开始”菜单,选择“运行”,然后在输入框中输入(不换行):
shutdown -f -m
(B机的名字或IP地址)
然后单击“确定”就可以了,B机就会弹出“系统关机窗口”后关机(系统默认等待20秒后关机),如果要使远程主机也在60分钟后关机,只要加上定时关机的参数就行了(不换行):
shutdown -f -m
(B机的名字或IP地址)-t 3600
其他shutdown命令的各个功能也都可以在远程主机上实现的,大家有兴趣可以自己试试。
批量关闭远程计算机
文章到此,可能有朋友会问:“如果我想关闭的不止一台远程计算机,而是一批远程计算机,总不能让我每关一台都输一次命令吧,有什么好方法吗?”
有办法,而且很简单!前面我们介绍了shutdown 有个i参数,必须是第一个选项,是用来显示 GUI 界面,我们就可以利用这个 GUI 界面来批量关闭远程计算机。在“运行”栏中输入:
shutdown -i
系统会弹出一个“远程关机对话框”的图形界面,,单击右上方的“添加”按纽,弹出添加计算
机的输入框,在其中输入要关闭的计算机名字,按“确定”后这台计算机就列入要关闭的计算机列表中了,依次加入所有要关闭的计算机,然后在“远程关机对话框”中的“您想让这些计算机做什么”里选择“关机”,再在“警告用户此操作”的“显示警告时间”里添上您想要延迟的时间,最后在最下面的“注释”框里添入关机理由(可以随便添),按“确定”,这批计算机就被关闭了。是不是很简单!不过这种方法有个缺点,就是关机以后系统不会保存这次关机的计算机列表,也就说第二次您再想关闭这批计算机时又要重新添加一遍所有的计算机,很不方便。如果您经常要关闭一大批计算机,建议还是写个.bat文件,内容如下:
shutdown -f -m server1
shutdown -f -m server2
shutdown -f -m server3
……
具体的可以根据您的需要更改,这样每次关机就只要运行一下这个.bat文件就行了。当然您要是有兴趣可以以shutdown为基础编写一个具有详细的关机选项的小程序,那就更方便了。 -
在 XP SP3 中启用支持 NLA 的Remote Desktop - [PC技术]
2009-04-18
从 Windows Vista、Windows Server 2008 开始,远程桌面协议(Remote Desktop Protocol,简称 RDP)开始支持网络级身份验证(Network Level Authentication,简称 NLA)。通过启用 NLA,我们的 RDP 将更加坚固,当客户端进行 RDP 登录时将不再会先显示出远程系统的登录界面,并须在客户端得到正确的登录验证后,方能成功并直接登录到系统桌面。这样一来,除了避免的一些信息的泄漏,还有效地防止了远程客户端的恶意穷举。如下图所示,我们只需要在“远程设置”中,启用“只允许运行带网络级身份验证的远程桌面的计算机连接”即可!

一旦在服务器端的 RDP 服务上启用了 NLA,并且客户端是 Windows Vista 或以上版本,那么我们可以通过 Remote Desktop 直接登录,否则正如下图所示,即使在安装了最新版本 Remote Desktop 的 Windows XP SP3 上进行远程桌面访问还是会提示错误。(PS:不必惊慌而忙于通知相关人员在本地禁用 NLA。)

要验证当前的 Remote Desktop Connection(RDC)是否支持 NLA(网络级别的身份验证),我们只需要打开 RDC,单击左上角的图标点击关于,我们便可以查看到当前 RDC 的版本及 NLA 信息。注意:当前的 Remote Desktop Connection 支持 RDP 6.1。


其实在 Windows XP SP3 上启用 NLA 支持,并非难事。只需要对注册表进行修改即可,再执行下面的步骤前建议你先对注册表进行备份。
1.单击“开始”-“运行”,键入 regedit
2.定位至“HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlLsa”,在右边窗体中双击打开“Security Packages”值,添入“tspkg”
3.定位志“HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSecurityProviders”,在右边窗体双击打开“SecurityProviders”值,添入“, credssp.dll”,特别注意在英标逗号后面有一个空格在修改注册表后需要重新启动计算机,如果在未重启计算机前进行 RDP 的连接,会出现 Remote Desktop 的“0x507”错误。

如果大家感觉很麻烦的话,gOxiA 制作了在 Windows XP SP3 上启用 NLA 的注册表脚本,只要在本机上双击导入即可,非常方便!出于安全角度考虑,如果你不希望别人知道你当前服务器的操作系统版本,不希望别人看到你启动前后的补丁安装进度,并且服务器正在使用 Windows Server 2008 操作系统,gOxiA 强烈建议启用 NLA 支持的 RDP。







