• 网志分类
  • » 查看所有日志 (21)
    » 互连网技术 (10)
    » 网络经验 (5)
    » 个人随笔 (6)
  • 最新评论
  • 站内搜索
  • 友情链接
  • » 我的歪酷 非非共享界

    订阅 RSS

    歪酷博客

    0002065

    娱乐小虎 @ 2008-10-06 13:58

    一、从影片特技到蜜罐技术
    特洛伊》里庞大的希腊舰队、《终结者2》里随意改变形体的“液体金属”、《侏罗纪公园》里满地乱跑的恐龙们、《黑客帝国》里的“子弹时间”……随着计算机技术的不断发展,越来越多的电脑特技被应用在电影领域,不需要工资的虚拟演员不知辛劳地日夜工作,这些电脑技术使得导演可以构思现实中不可能存在的情节环境,也减少了影片开支。但是,在计算机的信息安全领域里,网络管理员要面对的是黑客真枪实干的入侵破坏,难道在电脑技术大量应用的今天,安全领域却得不到一点援助?答案是有的,它就是在安全领域里代替网络管理员上阵的“虚拟演员”——蜜罐技术。
    蜜罐,或称Honeypot,与应用于电影的特技相比,它并不神秘——所谓蜜罐,就是一台不作任何安全防范措施而且连接网络的计算机,但是与一般计算机不同,它内部运行着多种多样的数据记录程序和特殊用途的“自我暴露程序”——要诱惑贪嘴的黑熊上钩,蜂蜜自然是不可少的。在入侵者的角度来看,入侵到蜜罐会使他们的心情大起大落——从一开始偷着乐骂管理员傻帽到最后明白自己被傻帽当成猴子耍的过程。(图1.蜜罐网站)

    二、为什么要使用蜜罐
    《终结者2》里阿诺让约翰把自己放入熔炉,《特洛伊》里Achilles被王子射杀,战争片里的机枪扫射,甚至《黑衣人》里外星人发射的核弹毁灭了北极!如果这一切是真实的话,我们的明星已经成为墙上的照片了,拍一部片要死多少人?况且,我们只有一个地球,值得为了一部影片炸掉某个地区?所以人们必须采用电脑特技完成这些不能真实发生的剧情。同样,管理员也不会为了记录入侵情况而让入侵者肆意进入服务器搞破坏,所以蜜罐出现了。
    前面说过了,蜜罐是一台存在多种漏洞的计算机,而且管理员清楚它身上有多少个漏洞,这就像狙击手为了试探敌方狙击手的实力而用枪支撑起的钢盔,蜜罐被入侵而记录下入侵者的一举一动,是为了管理员能更好的分析广大入侵者都喜欢往哪个洞里钻,今后才能加强防御。
    另一方面是因为防火墙的局限性和脆弱性,因为防火墙必须建立在基于已知危险的规则体系上进行防御,如果入侵者发动新形式的攻击,防火墙没有相对应的规则去处理,这个防火墙就形同虚设了,防火墙保护的系统也会遭到破坏,因此技术员需要蜜罐来记录入侵者的行动和入侵数据,必要时给防火墙添加新规则或者手工防御。

    三、深入蜜罐
    既然使用蜜罐能有那么多好处,那么大家都在自己家里做个蜜罐,岂不是能最大程度防范黑客?有这个想法的读者请就此打住!蜜罐虽然在一定程度上能帮管理员解决分析问题,但它并不是防火墙,相反地,它是个危险的入侵记录系统。蜜罐被狡猾的入侵者反利用来攻击别人的例子也屡见不鲜,只要管理员在某个设置上出现错误,蜜罐就成了打狗的肉包子。而一般的家庭用户电脑水平不可能达到专业水平,让他们做蜜罐反而会引火烧身——蜜罐看似简单,实际却很复杂。虽然蜜罐要做好随时牺牲的准备,可是如果它到最后都没能记录到入侵数据,那么这台蜜罐根本就是纯粹等着挨宰的肉鸡了,蜜罐就复杂在此,它自身需要提供让入侵者乐意停留的漏洞,又要确保后台记录能正常而且隐蔽的运行,这些都需要专业技术,如果蜜罐能随便做出来,我们在家里也能拍摄《黑客帝国》了——故意开着漏洞却没有完善的记录处理环境的服务器不能称为蜜罐,它只能是肉鸡。
    所以,我们必须了解蜜罐,它到底是什么样的?

    1.蜜罐的定义
     //文章出处:网络技术论坛(http://bbs.nettf.net) 作者:小金
    首先我们要弄清楚一台蜜罐和一台没有任何防范措施的计算机的区别,虽然这两者都有可能被入侵破坏,但是本质却完全不同,蜜罐是网络管理员经过周密布置而设下的“黑匣子”,看似漏洞百出却尽在掌握之中,它收集的入侵数据十分有价值;而后者,根本就是送给入侵者的礼物,即使被入侵也不一定查得到痕迹……因此,蜜罐的定义是:“蜜罐是一个安全资源,它的价值在于被探测、攻击和损害。”(图2.John Daly的蜜罐模型)
    设计蜜罐的初衷就是让黑客入侵,借此收集证据,同时隐藏真实的服务器地址,因此我们要求一台合格的蜜罐拥有这些功能:发现攻击、产生警告、强大的记录能力、欺骗、协助调查。另外一个功能由管理员去完成,那就是在必要时候根据蜜罐收集的证据来起诉入侵者。

    2.涉及的法律问题
    蜜罐是用来给黑客入侵的,它必须提供一定的漏洞,但是我们也知道,很多漏洞都属于“高危”级别,稍有不慎就会导致系统被渗透,一旦蜜罐被破坏,入侵者要做的事情是管理员无法预料的,例如,一个入侵者成功进入了一台蜜罐,并且用它做“跳板”(指入侵者远程控制一台或多台被入侵的计算机对别的计算机进行入侵行为)去攻击别人,那么这个损失由谁来负责?设置一台蜜罐必须面对三个问题:设陷技术、隐私、责任。
    设陷技术关系到设置这台蜜罐的管理员的技术,一台设置不周全或者隐蔽性不够的蜜罐会被入侵者轻易识破或者破坏,由此导致的后果将十分严重。
    由于蜜罐属于记录设备,所以它有可能会牵涉到隐私权问题,如果一个企业的管理员恶意设计一台蜜罐用于收集公司员工的活动数据,或者偷偷拦截记录公司网络通讯信息,这样的蜜罐就已经涉及法律问题了。
    对于管理员而言,最倒霉的事情就是蜜罐被入侵者成功破坏了。有人也许会认为,既然蜜罐是故意设计来“牺牲”的,那么它被破坏当然合情合理,用不着小题大做吧。对,蜜罐的确是用来“受虐”的,但是它同时也是一台连接网络的计算机,如果你做的一台蜜罐被入侵者攻破并“借”来对某大学服务器进行攻击,因此引发的损失恐怕只能由你来承担了。还有一些责任是谁也说不清的,例如,你做的一台蜜罐不幸引来了Slammer、Sasser、Blaster等大名鼎鼎的“爬虫类”病毒而成了传播源之一,那么这个责任谁来负担?

    3.蜜罐的类型
    世界上不会有非常全面的事物,蜜罐也一样。根据管理员的需要,蜜罐的系统和漏洞设置要求也不尽相同,蜜罐是有针对性的,而不是盲目设置来无聊的,因此,就产生了多种多样的蜜罐……

    3.1.实系统蜜罐
    实系统蜜罐是最真实的蜜罐,它运行着真实的系统,并且带着真实可入侵的漏洞,属于最危险的漏洞,但是它记录下的入侵信息往往是最真实的。这种蜜罐安装的系统一般都是最初的,没有任何SP补丁,或者打了低版本SP补丁,根据管理员需要,也可能补上了一些漏洞,只要值得研究的漏洞还存在即可。然后把蜜罐连接上网络,根据目前的网络扫描频繁度来看,这样的蜜罐很快就能吸引到目标并接受攻击,系统运行着的记录程序会记下入侵者的一举一动,但同时它也是最危险的,因为入侵者每一个入侵都会引起系统真实的反应,例如被溢出、渗透、夺取权限等。

    3.2.伪系统蜜罐
    什么叫伪系统呢?不要误解成“假的系统”,它也是建立在真实系统基础上的,但是它最大的特点就是“平台与漏洞非对称性”。
    大家应该都知道,世界上操作系统不是只有Windows一家而已,在这个领域,还有Linux、Unix、OS2、BeOS等,它们的核心不同,因此会产生的漏洞缺陷也就不尽相同,简单的说,就是很少有能同时攻击几种系统的漏洞代码,也许你用LSASS溢出漏洞能拿到Windows的权限,但是用同样的手法去溢出Linux只能徒劳。根据这种特性,就产生了“伪系统蜜罐”,它利用一些工具程序强大的模仿能力,伪造出不属于自己平台的“漏洞”,入侵这样的“漏洞”,只能是在一个程序框架里打转,即使成功“渗透”,也仍然是程序制造的梦境——系统本来就没有让这种漏洞成立的条件,谈何“渗透”?实现一个“伪系统”并不困难,Windows平台下的一些虚拟机程序、Linux自身的脚本功能加上第三方工具就能轻松实现,甚至在Linux/Unix下还能实时由管理员产生一些根本不存在的“漏洞”,让入侵者自以为得逞的在里面瞎忙。实现跟踪记录也很容易,只要在后台开着相应的记录程序即可。(图3.实系统与伪系统)
    这种蜜罐的好处在于,它可以最大程度防止被入侵者破坏,也能模拟不存在的漏洞,甚至可以让一些Windows蠕虫攻击Linux——只要你模拟出符合条件的Windows特征!但是它也存在坏处,因为一个聪明的入侵者只要经过几个回合就会识破伪装,另者,编写脚本不是很简便的事情,除非那个管理员很有耐心或者十分悠闲。(图4.蜜罐脚本)

     //文章出处:网络技术论坛(http://bbs.nettf.net) 作者:小金
    4.使用你的蜜罐
    既然蜜罐不是随随便便做来玩的,管理员自然就不会做个蜜罐然后让它赋闲在家,那么蜜罐做来到底怎么用呢?

    4.1.迷惑入侵者,保护服务器
    一般的客户/服务器模式里,浏览者是直接与网站服务器连接的,换句话说,整个网站服务器都暴露在入侵者面前,如果服务器安全措施不够,那么整个网站数据都有可能被入侵者轻易毁灭。但是如果在客户/服务器模式里嵌入蜜罐,让蜜罐作为服务器角色,真正的网站服务器作为一个内部网络在蜜罐上做网络端口映射,这样可以把网站的安全系数提高,入侵者即使渗透了位于外部的“服务器”,他也得不到任何有价值的资料,因为他入侵的是蜜罐而已。虽然入侵者可以在蜜罐的基础上跳进内部网络,但那要比直接攻下一台外部服务器复杂得多,许多水平不足的入侵者只能望而却步。蜜罐也许会被破坏,可是不要忘记了,蜜罐本来就是被破坏的角色。
    在这种用途上,蜜罐不能再设计得漏洞百出了。蜜罐既然成了内部服务器的保护层,就必须要求它自身足够坚固,否则,整个网站都要拱手送人了。

    4.2.抵御入侵者,加固服务器
    入侵与防范一直都是热点问题,而在其间插入一个蜜罐环节将会使防范变得有趣,这台蜜罐被设置得与内部网络服务器一样,当一个入侵者费尽力气入侵了这台蜜罐的时候,管理员已经收集到足够的攻击数据来加固真实的服务器。
    采用这个策略去布置蜜罐,需要管理员配合监视,否则入侵者攻破了第一台,就有第二台接着承受攻击了……

    4.3.诱捕网络罪犯
    这是一个相当有趣的应用,当管理员发现一个普通的客户/服务器模式网站服务器已经牺牲成肉鸡的时候,如果技术能力允许,管理员会迅速修复服务器。那么下次呢?既然入侵者已经确信自己把该服务器做成了肉鸡,他下次必然还会来查看战果,难道就这样任由他放肆?一些企业的管理员不会罢休,他们会设置一个蜜罐模拟出已经被入侵的状态,做起了姜太公。同样,一些企业为了查找恶意入侵者,也会故意设置一些有不明显漏洞的蜜罐,让入侵者在不起疑心的情况下乖乖被记录下一切行动证据,有些人把此戏称为“监狱机”,通过与电信局的配合,可以轻易揪出IP源头的那双黑手。(图5.蜜罐的应用)

    三、结语
    随着网络入侵类型的多样化发展,蜜罐也必须进行多样化的演绎,否则它有一天将无法面对入侵者的肆虐。这也对网络管理员的技术能力有了更高的要求,因为蜜罐——这个活跃在安全领域的虚拟演员,它的一举一动,都是通过你来设计的,我们无法让蜜罐像T-X那样变化无常,但是,至少要防止我们设计的阿诺再次被T-X踏断脖子注入反叛指令。




     
    娱乐小虎 @ 2008-10-03 12:12

    对于建站系统的开发我一直有自己的一个美好设想,到现在为止还没有发现那套建站系统实现,我把自己的想法写了下来,希望与建站系统开发者共同探讨。

      一、建站系统的设计不应该直接面向终端用户而应该面向从事建站服务的公司和个人。

      很多建站系统的开发者都面向终端用户开发和推广,但我认为不对。

      因为真正有作为的终端用户不可能把精力放到网站的制作上,他们需要的是网站制作和推广人员的优质服务,而不是自己动手操作编辑器、整理模版。自己动手摸索建站系统的终端用户一般不是有潜力的消费者,真正有作为的终端用户他宁愿多花钱也不愿意在摸索系统方面浪费太多的时间,那样会使他失去更多。再说,有多少终端客户是直接找到系统开发商的呢?以我的经验,终端用户大部分都是网站建设公司开发的。该谁赚的钱谁赚,想赚别人钱的用户才不怕别人通过专业服务赚自己的钱。要知道,无论你的建站系统设计的多么人性化,利用它独立建站都是一门专业——建站专业,这都不是终端用户的专业,这个工作必须要从事网站建设的公司或者个人来完成。终端用户有自己的专业,他肯定知道专业和专注是任何行业成功的要领。所以我的第一个观念是建站系统的设计应该面向广大从事网站建站的公司或者个人。

      二、树立积木式建站系统概念。做网站应该让位于组合网站,做网站应该像组合积木一样容易。

      一个好的建站系统,网站建设公司不应该是通过过多的修改程序来满足终端用户的需求,这是很浪费时间的事情,一个好的建站系统应该可以让网站建设公司通过选项打钩的方式帮助终端用户组合他需要的功能,做网站应该让位于组合网站,做网站应该像组合积木一样容易。这个积木式网站的思路来源于actcms内容管理系统的开发者左岸提出的网站模型概念。系统开发者的主要工作应该是努力开发新的功能模块,并实现使用者通过选项打钩安装、组合。

      三、样式和程序要分离,建站系统模版要能任意更换,网站用户需要网站经常换衣服(更新网站界面)。

      只有样式和程序分离,才能造就这个系统的模版开发行业,才能使这个建站系统的界面非常美观并且容易更换。要知道界面的美观程度对于终端用户非常重要。但是一般的网站建设公司并不一定能开发出非常富有个性的模版。在网站建设这个行业上,网站建设公司的业务重点应该放到业务开拓上,及早开发和巩固一定数量的网站用户,才是网站建设公司的存活之道。模版开发越发展,系统就会越普及,系统开发者就会越有前途。同时,经常更新网站界面也是很多网站终端用户提出的要求,这本来就是个极大的市场,但很少有人重视。建站系统开发者应该及早公布模版开发标准并给予技术指导。在这方面动易系统的动易模版设计师认证工作做得不错。一个建站系统模版的交易是否火爆是衡量这个系统市场价值的重要参数。

      四、建站系统的设计要对终端用户友好并且简洁到顶。

      功能越多,终端用户越烦恼,什么风格导入功能,在线编辑功能,标签调用功能,这些都不是终端用户能用的,为什么还要在后台体现。我的观念是终端用户使用的后台除了需要的内容管理栏目其它一概不留,在这方面E流速建自助建站系统的用户后台生成功能思路不错。同时好的建站系统的内容管理应该全部是填表式的,样式全部定义好或者可以选择。文本粘贴到文本区就能做到首行缩进,字体大小、颜色、行距自动统一调正。这样终端用户就能立即上手管理。在线编辑器这样的工具终端用户往往不知所措或者不注重网站风格统一滥用导致网站内容排版效果差。

      五、建站系统开发必须熟悉各种搜索引擎收录原理、方式。保持系统对搜索引擎友好。

      一个合格的建站系统开发者必须首先是个网站优化高手,熟悉最新的seo理论和seo工具,建站系统至少应该具有Google地图生成操作、BaiDu地图生成操作、HTML格式地图生成操作、网站META网页描述、网站META关键词等等。

      六、建站系统开发者还要根据时代变化,不断调整和开发功能,满足和引领市场需求。

      比如3g时代的来临,要考虑手机访问,实现wap建站。要考虑增加掘客、标签置顶等新的网站元素。

      七、建站系统开发者的应该关注使用者的建议与意见,持续改进功能,做到操作人性化,永远把自己定位成服务者。

      建站系统开发者最大的错误往往就是按自己的思路开发而不是按使用者的思路开发。任何一个系统的开发者都应该找大量的系统评测人体验、反馈意见。不要上来就想着卖你的系统,等到你的评测人意见少了你就接近成功了,要是没有人评测你的系统,那你就等着失败吧。即使你占领了一部分市场那也不要忘了持续改进功能,做到操作人性化,要永远把自己定位成服务者。据说微软每年花8千万元的800电话费听取客户的意见,他们认为客户的意见是最有价值的设计思想。任何脱离客户意见的创意都可能是闭门造车。我们开发系统不能这样花钱,但是请问你在系统开发的时候听过八十个人的意见吗?请过一次专业的网站点评人员吗?

      八、建站系统开发者要有自己的软件产品的独特定位,要建立适合的营销模式,要考虑好盈利模式。

      所谓定位是在市场细分的基础上打算树立的形象和地位,定位又被称为掏心战略;所谓营销模式并没有最好的只有适合的,你建立的营销模式要能充分体现你的产品特点和优势,吻合用户的购买心理与购买行为,建站系统推广开源和免费是个重要的模式,但一定不能忽落公布模版开发标准,迅速指导出模版开发专业人员;所谓盈利模式是你系统持续开发的价值保证,在竞争日趋激励的今天,及早实现盈利是你成功的重要方式。你要是没有营销模式,即使是免费的东西大家都可能不敢使用,因为说也不能保证你能坚持到什么时候,一旦你放弃了系统的持续完善,这些前期的使用者就遭殃了。不要忘记速度是开发者的大敌,每个开发者都应该有自己的开发计划和进度推进时间表,否则你的系统很难及时开发出来。



     
    娱乐小虎 @ 2008-10-01 12:10

    在笔记本电脑早已普及到会议室的这个年代,商务人士拿笔记本来演示PPT以及做电子版的会议记录;在笔记本电脑已经普及到教室的这个年代,学生们甚至在用笔记本翻阅资料进行开卷考试。

      随着笔记本电脑正在成为人们生活中不可或缺的一部分,新的问题来了,盲目的追求性价比导致的是机身重量肆无忌惮的在力压人们的肩膀,也就是“扁担效应”。有笔记本常识的人都知道,性价比和便携性是笔记本领域的正反命题,它们之间永远对立而不可能和谐相处,即使国家在努力提倡和谐社会。


      很多对移动性有要求的用户,在吃了第一个笔记本的性价比甜头的同时却都在忍受着“扁担效应”的副作用。因此他们开始选择只为便携而存在的第二台机器,而这种机器大多有一个特点,就是无光驱设计!在市场里放眼望去,不带光驱的笔记本通常都是轻便型机器的代表,它们的重量很轻,性能却不马虎,虽然售价高高在上,但依然获得了很多受不了“扁担效应”,追求移动性强的笔记本用户的青睐。

    笔者就有不少朋友在使用不带光驱的笔记本,但是问题也来了,需要重装系统的时候,没有光驱,该怎么办?也许你会说可以在dos下硬盘安装,但有几个人会用dos?

      其实不仅仅不带光驱的笔记本用户愁怎么装系统,那些没有光驱的台式机用户也愁。为了给这类用户提供方便,笔者今天就来讲解一下,在没有光驱的情况下,如何方便快速的安装操作系统。

    ● 装系统前的准备

    http://i3.sinaimg.cn/IT/h/2008-03-03/88d08b2bd0e34152a67cae994ad11d20 http://i1.sinaimg.cn/IT/h/2008-03-03/75983c83463c07d70d38447b96fdd96b

    一个能启动电脑的U盘和一个系统的光盘镜像

      在安装系统前,需要准备好一些东西。一个是操作系统的镜像,另一个就是能启动的U盘。下面我们就来讲解怎么安装deepin版的XP系统。

    注:读懂本文需要了解安装操作系统的一些基础知识。

    ● 首先是制作一个能启动电脑的带WindowsPE的启动U盘

    ●老毛桃WinPE下载地址: www.duote.com/soft/8624.html  

    先到网上去下载一个叫“老毛桃WinPE”的工具到硬盘里,再把U盘接在电脑上,然后按下面的步骤一步步来就可以制作一个能启动的U盘了。

    http://i3.sinaimg.cn/IT/h/2008-03-03/413266892e7a14d186f253395bb9b97f

    选第4项,然后回车

    http://i2.sinaimg.cn/IT/h/2008-03-03/1f77c2d798caa6132df9232757fce238

    输入U盘的盘符,然后回车

    http://i3.sinaimg.cn/IT/h/2008-03-03/d1bf657007eadd4ffb67c0be77148758

    来到格式化步骤,按默认的设置,点“开始”就行

    http://i2.sinaimg.cn/IT/h/2008-03-03/e9dd03eb99047e9f0126a3a20631db8f

    顺利格式化

    http://i0.sinaimg.cn/IT/h/2008-03-03/486a1089a1ebba04f86efa95291389f0

    引导部分

      这里要说明一下,在“设备”里有两个选项,一个是电脑的硬盘,一个是要制作的U盘。这里一定要选对U盘而别选错硬盘,从大小就能分出来哪个是U盘。笔者的U盘是2G的,所以应该选择(hd1)[1898M]。下面的“选项”部分可以不用管,默认不勾选任何参数就行。确认好以上步骤后,点“安装”然后进行下一步。

    http://i0.sinaimg.cn/IT/h/2008-03-03/8a5f86679f9f76841a3bfe953e2488ad

    写入引导完毕,按任意键继续

    http://i3.sinaimg.cn/IT/h/2008-03-03/6c9c165039ab2ada8649abc081de9233

    要给启动U盘设个密码

      本来笔者不想设置启动U盘的密码,但这个步骤不能跳过,所以没办法只好设了一个密码。设置完后,一定要牢记你设好的密码,否则启动U盘会无法使用。

    http://i0.sinaimg.cn/IT/h/2008-03-03/7487aa37c17cc2f3e0e47ac5eb0c7cb3

    制作完毕

      当你完成以上步骤后,恭喜,一个具有启动功能的U盘已经来到你的身边。你再也不用心烦没有光驱不能从光驱启动了,因为以后你可以从U盘启动再安装操作系统!想知道怎么操作吗?下一页就开始。



    ● 把电脑的第一启动项设为USB设备启动

      以往用光盘装系统,必须调整启动项为光驱启动,而现在我们要用U盘装系统,所以要调整为U盘启动。关于这个,不同电脑不同版本的bios有不同的设置方法,不过都大同小异,目的就是让电脑的第一启动项变为U盘启动。下面我们举例几个不同bios的调整方法。

    http://i1.sinaimg.cn/IT/h/2008-03-03/58a505bc3872c93b3a5e5faee6712978

    最常见的Phoenix-Award的bios选项,选择USB-HDD即可


    http://i1.sinaimg.cn/IT/h/2008-03-03/95a3e0e55202d730958b628eccc9f355

    dell品牌机的bios调整选项

    http://i2.sinaimg.cn/IT/h/2008-03-03/dc7e56b34ef9e7f137dcb5e5c8fd3649

    ThinkPad系列笔记本的BIOS

    http://i1.sinaimg.cn/IT/h/2008-03-03/b6e056a47e9ce4bd5e4d4914321737c4

    惠普商用系列笔记本的BIOS

      可以看到以上的bios选项都各不相同,但是调整的选项都是为了一个目的:把电脑的启动项设为从USB设备启动,这样才能达到从U盘启动电脑的效果。

    ● 用能启动的U盘安装XP

    http://i3.sinaimg.cn/IT/h/2008-03-03/e4f22d4aa22b18035bef23a1765e3e7b

    先把具备启动功能的U盘接上电脑

    http://i3.sinaimg.cn/IT/h/2008-03-03/9e1b506fade10e3b7075968544979b5f http://i3.sinaimg.cn/IT/h/2008-03-03/7d1e6f6c71d9c5447ef378520764b920

    启动电脑

      启动电脑后,会要求你输入启动U盘的密码,也就是前文在制作这个启动U盘时设置的密码。当你输入正确的密码后,即可看到一个选择菜单,选择“WinPEBy:MAOTAO”。

    http://i3.sinaimg.cn/IT/h/2008-03-03/a9ad5a2c0e3308b052a392178fe1ac38

    进入WinPE

      然后就会进入一个运行在U盘上(不是运行在电脑的硬盘上)的迷你操作系统WinPE,它具备很多类似XP的功能,有了它我们就可以对电脑随心所欲了。

    http://i1.sinaimg.cn/IT/h/2008-03-03/5bb58aadfe12ee46171f2a5069b4733c http://i2.sinaimg.cn/IT/h/2008-03-03/602f6d3b71ee6cba7afbed60ebb04abe

    可以对C盘进行格式化

      怎么个随心所欲法?能直接对C盘进行格式化操作,这个够震撼了吧?在安装新的XP前,我们先对C盘进行格式化操作。

     用U盘上的WinPE把电脑里的C盘格式化后,请出虚拟光驱来接着帮忙。

    http://i2.sinaimg.cn/IT/h/2008-03-03/947e241790df5173ea414eb465be9f4b

    运行在U盘上的WinPE自带了一个虚拟光驱

    http://i1.sinaimg.cn/IT/h/2008-03-03/6fb5d59ff66d2a48fcc98f1eaedc2c52

    载入XP光盘的镜像

      我们选择的是一个deepin出品的ghost版本的光盘镜像,由大名鼎鼎的“8分钟快装版6.5”光盘制作而成。如果有光驱,只要把这个“8分钟快装版6.5”光盘放到光驱里直接安装就行,但由于没有光驱,所以我们费了一些周折来安装这个系统。

    http://i3.sinaimg.cn/IT/h/2008-03-03/80f3aff6c7d84fd4b86d0f44334c8854

    用虚拟光驱载入系统镜像后会多出一个驱动器

      我们看到,在用虚拟光驱载入系统镜像后,“我的电脑”目录里多了一个GHOSTXP-6.5NTFS的驱动器盘符。这就是我们即将要安装的系统所在位置。

    http://i3.sinaimg.cn/IT/h/2008-03-03/43bcaa6d016875423037516c46ffce1d

    启动WinPe的Ghost

      接着我们启动另外一个WinPE自带的软件诺顿Ghost。用它来把系统的ghost镜像恢复到之前被格式化的电脑的C盘里。

    http://i2.sinaimg.cn/IT/h/2008-03-03/f5700f0703929356dcee4454f216ecd2 http://i3.sinaimg.cn/IT/h/2008-03-03/f4413f4dbb67b6295bd6de7087c1964a

    http://i2.sinaimg.cn/IT/h/2008-03-03/90fa3b9ff4cfb6c70b736f7ec85443c4 http://i1.sinaimg.cn/IT/h/2008-03-03/0f6f9efa3bc9d8f284afb2951f092f27

    跟平时使用GHOST的步骤没什么两样

      启动GHOST后,使用方法就和通常使用GHOST来恢复系统没什么区别了。先选择FromImage,然后找到虚拟光驱载入的光盘目录,把GHOSTXP.GHO选上,接着选要恢复到的硬盘,然后选择要恢复到的分区。

    http://www.45it.com/Article/UploadFiles/200803/20080303142736277.jpg?2008-03-03%2007:02:17

    点击YES,等着它恢复完就行

      前面都选择好之后,会弹出一个对话框问你是否要将指定的GHO镜像恢复到电脑的C盘去,点击yes就可以。

    http://www.45it.com/Article/UploadFiles/200803/20080303142736932.jpg?2008-03-03%2007:02:17

    重启进入系统,重装完毕

      当GHOST镜像恢复完毕后,即可重启进入系统。至此,用U盘安装操作系统完毕!你可以忘掉没有光驱无法安装操作系统的烦恼了。

      值得一提的是,由于整个过程都是在硬盘里读取数据,所以在安装速度上比用光盘安装快很多。

      其实这只是用U盘安装系统的其中一种方法而已,还有很多其它方式可以安装系统,本文就不再一一举例。也许细心的你已经发现,有了这个启动U盘,就不用再害怕系统崩溃后,重要的资料保存在C盘里而无法挽救了,因为只要你用U盘启动WinPE,就可以进去将重要资料备份到其它分区里。希望网友们可以根据这个举一反三,灵活运用WinPE这个安装在U盘上的非常使用的工具。



     
    娱乐小虎 @ 2008-10-01 12:10

    在笔记本电脑早已普及到会议室的这个年代,商务人士拿笔记本来演示PPT以及做电子版的会议记录;在笔记本电脑已经普及到教室的这个年代,学生们甚至在用笔记本翻阅资料进行开卷考试。

      随着笔记本电脑正在成为人们生活中不可或缺的一部分,新的问题来了,盲目的追求性价比导致的是机身重量肆无忌惮的在力压人们的肩膀,也就是“扁担效应”。有笔记本常识的人都知道,性价比和便携性是笔记本领域的正反命题,它们之间永远对立而不可能和谐相处,即使国家在努力提倡和谐社会。


      很多对移动性有要求的用户,在吃了第一个笔记本的性价比甜头的同时却都在忍受着“扁担效应”的副作用。因此他们开始选择只为便携而存在的第二台机器,而这种机器大多有一个特点,就是无光驱设计!在市场里放眼望去,不带光驱的笔记本通常都是轻便型机器的代表,它们的重量很轻,性能却不马虎,虽然售价高高在上,但依然获得了很多受不了“扁担效应”,追求移动性强的笔记本用户的青睐。

    笔者就有不少朋友在使用不带光驱的笔记本,但是问题也来了,需要重装系统的时候,没有光驱,该怎么办?也许你会说可以在dos下硬盘安装,但有几个人会用dos?

      其实不仅仅不带光驱的笔记本用户愁怎么装系统,那些没有光驱的台式机用户也愁。为了给这类用户提供方便,笔者今天就来讲解一下,在没有光驱的情况下,如何方便快速的安装操作系统。

    ● 装系统前的准备

    http://i3.sinaimg.cn/IT/h/2008-03-03/88d08b2bd0e34152a67cae994ad11d20 http://i1.sinaimg.cn/IT/h/2008-03-03/75983c83463c07d70d38447b96fdd96b

    一个能启动电脑的U盘和一个系统的光盘镜像

      在安装系统前,需要准备好一些东西。一个是操作系统的镜像,另一个就是能启动的U盘。下面我们就来讲解怎么安装deepin版的XP系统。

    注:读懂本文需要了解安装操作系统的一些基础知识。

    ● 首先是制作一个能启动电脑的带WindowsPE的启动U盘

    ●老毛桃WinPE下载地址: www.duote.com/soft/8624.html  

    先到网上去下载一个叫“老毛桃WinPE”的工具到硬盘里,再把U盘接在电脑上,然后按下面的步骤一步步来就可以制作一个能启动的U盘了。

    http://i3.sinaimg.cn/IT/h/2008-03-03/413266892e7a14d186f253395bb9b97f

    选第4项,然后回车

    http://i2.sinaimg.cn/IT/h/2008-03-03/1f77c2d798caa6132df9232757fce238

    输入U盘的盘符,然后回车

    http://i3.sinaimg.cn/IT/h/2008-03-03/d1bf657007eadd4ffb67c0be77148758

    来到格式化步骤,按默认的设置,点“开始”就行

    http://i2.sinaimg.cn/IT/h/2008-03-03/e9dd03eb99047e9f0126a3a20631db8f

    顺利格式化

    http://i0.sinaimg.cn/IT/h/2008-03-03/486a1089a1ebba04f86efa95291389f0

    引导部分

      这里要说明一下,在“设备”里有两个选项,一个是电脑的硬盘,一个是要制作的U盘。这里一定要选对U盘而别选错硬盘,从大小就能分出来哪个是U盘。笔者的U盘是2G的,所以应该选择(hd1)[1898M]。下面的“选项”部分可以不用管,默认不勾选任何参数就行。确认好以上步骤后,点“安装”然后进行下一步。

    http://i0.sinaimg.cn/IT/h/2008-03-03/8a5f86679f9f76841a3bfe953e2488ad

    写入引导完毕,按任意键继续

    http://i3.sinaimg.cn/IT/h/2008-03-03/6c9c165039ab2ada8649abc081de9233

    要给启动U盘设个密码

      本来笔者不想设置启动U盘的密码,但这个步骤不能跳过,所以没办法只好设了一个密码。设置完后,一定要牢记你设好的密码,否则启动U盘会无法使用。

    http://i0.sinaimg.cn/IT/h/2008-03-03/7487aa37c17cc2f3e0e47ac5eb0c7cb3

    制作完毕

      当你完成以上步骤后,恭喜,一个具有启动功能的U盘已经来到你的身边。你再也不用心烦没有光驱不能从光驱启动了,因为以后你可以从U盘启动再安装操作系统!想知道怎么操作吗?下一页就开始。



    ● 把电脑的第一启动项设为USB设备启动

      以往用光盘装系统,必须调整启动项为光驱启动,而现在我们要用U盘装系统,所以要调整为U盘启动。关于这个,不同电脑不同版本的bios有不同的设置方法,不过都大同小异,目的就是让电脑的第一启动项变为U盘启动。下面我们举例几个不同bios的调整方法。

    http://i1.sinaimg.cn/IT/h/2008-03-03/58a505bc3872c93b3a5e5faee6712978

    最常见的Phoenix-Award的bios选项,选择USB-HDD即可


    http://i1.sinaimg.cn/IT/h/2008-03-03/95a3e0e55202d730958b628eccc9f355

    dell品牌机的bios调整选项

    http://i2.sinaimg.cn/IT/h/2008-03-03/dc7e56b34ef9e7f137dcb5e5c8fd3649

    ThinkPad系列笔记本的BIOS

    http://i1.sinaimg.cn/IT/h/2008-03-03/b6e056a47e9ce4bd5e4d4914321737c4

    惠普商用系列笔记本的BIOS

      可以看到以上的bios选项都各不相同,但是调整的选项都是为了一个目的:把电脑的启动项设为从USB设备启动,这样才能达到从U盘启动电脑的效果。

    ● 用能启动的U盘安装XP

    http://i3.sinaimg.cn/IT/h/2008-03-03/e4f22d4aa22b18035bef23a1765e3e7b

    先把具备启动功能的U盘接上电脑

    http://i3.sinaimg.cn/IT/h/2008-03-03/9e1b506fade10e3b7075968544979b5f http://i3.sinaimg.cn/IT/h/2008-03-03/7d1e6f6c71d9c5447ef378520764b920

    启动电脑

      启动电脑后,会要求你输入启动U盘的密码,也就是前文在制作这个启动U盘时设置的密码。当你输入正确的密码后,即可看到一个选择菜单,选择“WinPEBy:MAOTAO”。

    http://i3.sinaimg.cn/IT/h/2008-03-03/a9ad5a2c0e3308b052a392178fe1ac38

    进入WinPE

      然后就会进入一个运行在U盘上(不是运行在电脑的硬盘上)的迷你操作系统WinPE,它具备很多类似XP的功能,有了它我们就可以对电脑随心所欲了。

    http://i1.sinaimg.cn/IT/h/2008-03-03/5bb58aadfe12ee46171f2a5069b4733c http://i2.sinaimg.cn/IT/h/2008-03-03/602f6d3b71ee6cba7afbed60ebb04abe

    可以对C盘进行格式化

      怎么个随心所欲法?能直接对C盘进行格式化操作,这个够震撼了吧?在安装新的XP前,我们先对C盘进行格式化操作。

     用U盘上的WinPE把电脑里的C盘格式化后,请出虚拟光驱来接着帮忙。

    http://i2.sinaimg.cn/IT/h/2008-03-03/947e241790df5173ea414eb465be9f4b

    运行在U盘上的WinPE臢 style=


     
    娱乐小虎 @ 2008-09-28 11:07

    其一相同点就是我们可以自主控制;如果说为了什么利益,都是对国内民族企业有些私利。
    下面说说不同点,TD-SCDMA,如果没有他,我们很难想象今天会怎样,国外的专利费不知会让我们的设备供应商怎样的负担沉重,我们的企业是否还能像今天那样争夺海外电信设备市场。所有这些最终转嫁到我们用户头上,我们是否还能像现在这般即使很贵的通讯费,我们至少可以负担。总之,没有他,我们就像没有盔甲一样和别人争夺市场。
    UOF,为了我们国内某些软件企业自身利益搞出来的一个怪胎。如果没有他,我们可以尝试想想会怎样?ODF,如果我们靠拢的话,是否有人向我们收专利费?是否会有人控制我们的市场?所有这些不知在很多人的意象里是否可能。总之在我眼中,UOF就像是我们自己给自己套的枷锁和封闭的墙,为了我们很多扶不起来的软件企业。这就是开源在世界很多小国的政府盛行的时候,却在我们这搞不起来的原因。我想很多电脑盲的官老爷,即使电脑不会摆弄,至少别人把需要用的东西都设置好了,应该能自己用起来,对linux和windows这是相同的。可是政府机关的软件使用都能这样的牵扯利益瓜葛,从前我们的政府部门的巨额资金的微软正版系统的采购,里面就不知道有微软多么恰当的公关交易;同样很多的国内office的软件商也指望着UOF从政府采购中得到好处。开源里面那么多的珍宝就被那些有采购权力的官员置若罔闻,这些都是为了利益。国家就像一个冤大头,没有谁愿意为国家节省!



     
    娱乐小虎 @ 2008-09-20 09:06

    这篇讲了Web应用程序开发的基本知识,也是在用Java语言进行Web开发时所需知道的前置知识,有利用从整体上把握Web应用的程序的开发过程,不涉及具体的技术实现。

    Web应用程序运行原理

    用户通过客户端向服务器端发送请求,服务器端接收客户请求,并进行处理,将处理结果返回给客户端,从而实现Web应用系统的功能。其中的客户端可以是专门开发的软件,也可以是一个浏览器,总之是安装在客户端计算机上,为用户与服务器交互提供接口;服务器端可以是专门为指定的客户端软件开发的服务器,也可以是通用的服务器(IIS、Apache、Tomcat、JBoss等),安装在服务器端,捕获用户请求,进行处理,返回结果。

    B/S与C/S系统架构

    在Web应用程序中,与功能实现有关的信息集中放在网络上的数据库服务器中,然后使用多台计算机作为操作终端对应用程序进行操作。通常需要在B/S与C/S两种系统架构之间进行选择。传统的C/S架构需要同时开发客户端与服务器端的程序,由服务器端的程序提供基本服务,客户端提供访问接口给用户,用户可以通过客户端的软件访问服务器提供的服务;当前流行的B/S架构,不再单独开发客户端软件,客户端只需一个浏览器即可,也不用处理与通信相关的问题,开发人员只需专注于服务器端功能代码的开发(以网页的形式实现),用户通过浏览器就可以访问服务器端提供的服务。

    静态网页与动态网页

    客户端浏览器向Web服务器发送网页请求时,服务器将被请求的页面源代码以字符流的形式传输给浏览器,浏览器所获得的源代码在任何时刻都是相同的,不根据时间或其他条件发生变化,此网页为静态网页。如果Web服务器传送给浏览器的内容是在用户访问时由程序动态的生成,那么传输给浏览器的内容就可以随时变化,从而让用户得到一些实时变化的信息,这样的网页就是动态网页。(在静态网页中有一种情况,所获得的源代码相同,但在浏览器端也有动态效果和交互,这种情况不同于Web服务器动态生成网页的内容,而是使用了客户端脚本程序,通过浏览器内置的解释器解释这些脚本程序从而产生动态的效果,是浏览器执行的结果,网页源代码内容并没有改变。)

    动态网页程序与引擎

    创建动态网页,首先使用某种编程语言编写出相应的动态网页程序,然后由一个专门的Web服务器程序模块来解释执行该动态网页程序。编写的动态网页程序可以完成各种程序逻辑控制,获取客户端传递的数据,对数据库进行操作,创建输出内容等,动态页面程序需要一个专门的Web服务器程序模块来解释执行,这个模块称为引擎,如ASP引擎、Servlet引擎、JSP引擎,引擎以Web服务器的扩展模块形式提供。编写动态网页程序时,实现引擎提供的API,通过API,引擎将访问请求信息传递给动态网页程序,再将产生的结果传回给浏览器。所以引擎是客户端浏览器与动态程序之间通信的桥梁。(当客户端向Web服务器请求的URL资源路径是静态HTML文件时,由Web服务器直接在本地文件系统中查找文件,并从该文件中读取内容返回到客户端;当请求是符合某种引擎所处理的资源时,Web服务器将把请求转交给对应的引擎去处理,然后由引擎去调用某个程序文件,将动态产生内容返回给客户端)

    .NET与Java EE

    作为Web应用程序开发的技术框架,这两大框架的竞争不是一两天的事了,钟情与Windows的用户会选择.NET,而选择UNIX、Linux的用户更钟情与JavaEE,两种技术都有各自的优势和不足。在Windows平台的应用程序中,对用户界面的要求较高,所以.NET提供了更便捷的开发环境和工具,可视化的编程方式在Java中还不成熟,而且.NET运行在Windows操作平台中,都是微软公司的产品,.NET可以访问到操作系统的各个细节,也可以调用系统的各种功能,Java EE程序却很难实现这样的操作;但.NET只能运行在Windows平台中,不能跨平台,Java的跨平台性得到了很好的利用,随着网络的发展,为了使网络中装有不同平台的计算机可以访问同一个Web应用系统,用JavaEE开发就成了唯一的选择。总之,两个框架各有优缺点,在开发时根据具体情况进行选择。




     
    娱乐小虎 @ 2008-09-01 10:04

    BENET案例

    实验报告之SAMBA

     

     

     

     

     

    实验名称:

    安装和配置SAMBA服务

    实验目的:

    对samba服务器配置,实现Linux系统之间以及Linux与Windows系统之间的文件共享

    实验拓扑:

     

    http://static9.photo.sina.com.cn/bmiddle/59b052fa45870516889b8

     

     

    实验步骤:

     

    一、SAMBA服务器的安装与配置

    1.使用network配置服务器IP地址为192.168.100.1,并重新启动服务

    http://static3.photo.sina.com.cn/bmiddle/59b052fa06f3e6ee4d542

     

     2.在默认的情况下,RHEL4安装了Samba服务器和客户机的所有软件包,确认软件包已经在系统中存在。

     

     http://static4.photo.sina.com.cn/bmiddle/59b052fa06f3e6f1bc503

    3.现在只要启动服务就可以访问了,在客户端我们可以使用smbclient命令的-L选项来显示指定Samba服务器中的共享资源列表

     

     http://static7.photo.sina.com.cn/bmiddle/59b052fa06f3e6f3d6416

     

    二、使用匿名用户访问共享

     1.建立共享目录,名为tmp1,并将目录的权限修改为可读可写。

     

     http://static6.photo.sina.com.cn/bmiddle/59b052fa458705ac7ae55

    2.修改配置文件/etc/samba/smb.conf,把/tmp1目录共享,共享名为:dir。给与的权限:允许匿名访问和可写。

     

     http://static2.photo.sina.com.cn/bmiddle/59b052fa458705c26fb81

    3.在客户端使用匿名用户访问次共享,并把/a文件上传到samba服务器

    首先要在客户端建立a文件

     

     http://static3.photo.sina.com.cn/bmiddle/59b052fa458705edd62b2

     用匿名进行访问,并将a文件上传到tmp1共享目录中

     

     http://static7.photo.sina.com.cn/bmiddle/59b052fa45870639f2996

     

    三、配置samba用户访问共享文件

     1.建立两个samba用户分别为jack和rose,查看/etc/samba/smbpasswd

     

     http://static12.photo.sina.com.cn/bmiddle/59b052fa06f3e70923a9b

    2.建立共享目录,名为tmp2,并将目录的权限修改为可读可写。

     

     http://static6.photo.sina.com.cn/bmiddle/59b052fa4587066d1fd15

     

    3.修改配置文件/etc/samba/smb.conf,把/tmp2目录共享,共享名为:abc。给与的权限:允许rose用户拥有上传的权限,jack只能下载。

     

     http://static15.photo.sina.com.cn/bmiddle/59b052fa458706830fa7e

    4.使用rose用户在客户端验证

    首先先在客户端建立两个文件分别为rose1和rose2

    http://static11.photo.sina.com.cn/bmiddle/59b052fa458706951e4fa

     

     上传到tmp2共享目录中

    http://static8.photo.sina.com.cn/bmiddle/59b052fa458706ad61347

     

    5.使用jack用户在客户端验证

    首先先在客户端建立一个文件叫:jack1

    http://static5.photo.sina.com.cn/bmiddle/59b052fa45870701cdb54

     

    想上传jack1文件,可惜不能上传

     

    http://static1.photo.sina.com.cn/bmiddle/59b052fa4587071ec3380

    但是可以下载文件,下载rose1

     

     http://static13.photo.sina.com.cn/bmiddle/59b052fa06f3e71e8686c

    四、建立公共信息交换的共享文件

    1.建立共享目录:/public,共享名为public

    2.是每个用户都能够上传,下载文件,但是只能删除属于自己的文件,不能删除别人的文件

    1)首先修改他的目录权限使用:chmod 1777 /public

    2)修改配置文件/etc/samba/smb.conf,把/public目录共享,共享名为:public。给与的权限:所有用户可读可写!

     

     http://static10.photo.sina.com.cn/bmiddle/59b052fa4587075a25459

    3)客户端检验,jack1是用户jack上传的,rose1是用户rose上传的,用rose客户端登陆,rose只能删除自己传的,删除不了jack传得文件!

    http://static10.photo.sina.com.cn/bmiddle/59b052fa45870779061f9

     

    实验分析:

    1.在建立目录的时候,目录路径每指对,无法访问

     http://static15.photo.sina.com.cn/bmiddle/59b052fa458707914b03e

    2.修改配置文件时,该权限的时候避免冲突!

    3.在xp上做访问切换用户需要在cmd后,敲:net use * /delete

     

    实验结论:

    根据不同的需求修改相应的权限到达一定的目的,最重要的是一定要记住在修改配置文件的同时,不能忘记修改目录的权限!




     
    娱乐小虎 @ 2008-08-12 11:56

    为了简单起见,例子没有没有使用任何第三方的AOP Framework,而是利用Java语言本身自带的动态代理功能来实现AOP.

      让我们先回到AOP本身,AOP主要应用于日志记录,性能统计,安全控制,事务处理等方面。它的主要意图就要将日志记录,性能统计,安全控制等等代码从商业逻辑代码中清楚的划分出来,我们可以把这些行为一个一个单独看作系统所要解决的问题,就是所谓的面向问题的编程(不知将AOP译作面向问题的编程是否欠妥)。通过对这些行为的分离,我们希望可以将它们独立地配置到商业方法中,而要改变这些行为也不需要影响到商业方法代码。

      假设系统由一系列的BusinessObject所完成业务逻辑功能,系统要求在每一次业务逻辑处理时要做日志记录。这里我们略去具体的业务逻辑代码。

    public interface BusinessInterface {
     public void processBusiness();
    }

    public class BusinessObject implements BusinessInterface {
     private Logger logger =Logger.getLogger(this.getClass().getName());
     public void processBusiness(){
      try {
       logger.info("start to processing...");
       //business logic here.
       System.out.println(“here is business logic”);
       logger.info("end processing...");
      } catch (Exception e){
       logger.info("exception happends...");
       //exception handling
      }
     }
    }

      这里处理商业逻辑的代码和日志记录代码混合在一起,这给日后的维护带来一定的困难,并且也会造成大量的代码重复。完全相同的log代码将出现在系统的每一个BusinessObject中。

    按照AOP的思想,我们应该把日志记录代码分离出来。要将这些代码分离就涉及到一个问题,我们必须知道商业逻辑代码何时被调用,这样我们好插入日志记录代码。一般来说要截获一个方法,我们可以采用回调方法或者动态代理。动态代理一般要更加灵活一些,目前多数的AOPFramework也大都采用了动态代理来实现。这里我们也采用动态代理作为例子。

      JDK1.2以后提供了动态代理的支持,程序员通过实现java.lang.reflect.InvocationHandler接口提供一个执行处理器,然后通过java.lang.reflect.Proxy得到一个代理对象,通过这个代理对象来执行商业方法,在商业方法被调用的同时,执行处理器会被自动调用。

      有了JDK的这种支持,我们所要做的仅仅是提供一个日志处理器。

    public class LogHandler implements InvocationHandler {

     private Logger logger =Logger.getLogger(this.getClass().getName());
      private Object delegate;
      public LogHandler(Object delegate){
       this.delegate = delegate;
      }

     public Object invoke(Object proxy, Method method, Object[]args) throws Throwable {
      Object o = null;
      try {
       logger.info("method stats..." + method);
       o = method.invoke(delegate,args);
       logger.info("method ends..." + method);
      } catch (Exception e){
       logger.info("Exception happends...");
       //excetpion handling.
      }
      return o;
     }
    }

      现在我们可以把BusinessObject里面的所有日志处理代码全部去掉了。

    public class BusinessObject implements BusinessInterface {

     private Logger logger =Logger.getLogger(this.getClass().getName());
     public void processBusiness(){
      //business processing
      System.out.println(“here is business logic”);
     }
    }

      客户端调用商业方法的代码如下:

    BusinessInterface businessImp = new BusinessObject();

    InvocationHandler handler = new LogHandler(businessImp);

    BusinessInterface proxy = (BusinessInterface)Proxy.newProxyInstance(
     businessImp.getClass().getClassLoader(),
     businessImp.getClass().getInterfaces(),
     handler);

    proxy.processBusiness();

      程序输出如下:

    INFO: method stats...
    here is business logic
    INFO: method ends...

      至此我们的第一次小尝试算是完成了。可以看到,采用AOP之后,日志记录和业务逻辑代码完全分开了,以后要改变日志记录的话只需要修改日志记录处理器就行了,而业务对象本身(BusinessObject)无需做任何修改。并且这个日志记录不会造成重复代码了,所有的商业处理对象都可以重用这个日志处理器。

      当然在实际应用中,这个例子就显得太粗糙了。由于JDK的动态代理并没有直接支持一次注册多个InvocationHandler,那么我们对业务处理方法既要日志记录又要性能统计时,就需要自己做一些变通了。一般我们可以自己定义一个Handler接口,然后维护一个队列存放所有Handler,当InvocationHandler被触发的时候我们依次调用自己的Handler。所幸的是目前几乎所有的AOPFramework都对这方面提供了很好的支持.这里推荐大家使用Spring。




     
    娱乐小虎 @ 2008-07-06 17:54

    在Windows在安装和使用过程中都会产生相当多的垃圾文件,包括临时文件(如:*.tmp、*._mp),日志文件(*.log)、临时帮助文件(*.gid)、磁盘检查文件(*.chk)、临时备份文件(如:*.old、*.bak)以及其他临时文件。

     

        如果一段时间不清理IE的临时文件夹“TemporaryInternetFiles”,其中的缓存文件有时会占用上百MB的磁盘空间。这些LJ文件不仅仅浪费了磁盘空间,严重时还会影响系统运行速度。所以应及时清理系统的LJ文件很有必要!

     

    下面是一个小方法,请朋友们按照步骤来做:

    -------------------------------------------------------------------------

    第一步:首先点击左下角开始-程序

    http://static16.photo.sina.com.cn/bmiddle/491dbdc7457c243b8bccf

    -------------------------------------------------------------------------

    第二步:附件

    http://static12.photo.sina.com.cn/bmiddle/491dbdc7457c244515bdb

    -------------------------------------------------------------------------

    第三步:记事本

    http://static1.photo.sina.com.cn/bmiddle/491dbdc7457c244bc3280

    -------------------------------------------------------------------------

    第四步:复制下面红色文字到记事本中

     

    @echo off       
    echo 正在清除系统垃圾文件,请稍等......       
    del /f /s /q %systemdrive%\*.tmp       
    del /f /s /q %systemdrive%\*._mp       
    del /f /s /q %systemdrive%\*.log       
    del /f /s /q %systemdrive%\*.gid       
    del /f /s /q %systemdrive%\*.chk       
    del /f /s /q %systemdrive%\*.old       
    del /f /s /q %systemdrive%\recycled\*.*       
    del /f /s /q %windir%\*.bak       
    del /f /s /q %windir%\prefetch\*.*       
    rd /s /q %windir%\temp & md%windir%\temp       
    del /f /q %userprofile%\cookies\*.*       
    del /f /q %userprofile%\recent\*.*       
    del /f /s /q "%userprofile%\Local Settings\Temporary InternetFiles\*.*"        
    del /f /s /q "%userprofile%\LocalSettings\Temp\*.*"       
    del /f /s /q "%userprofile%\recent\*.*"       
    echo 清除系统LJ完成!       
    echo. & pause

    ------------------------------------------------------------------------- 

      

    第五步:如下图所示

    http://static16.photo.sina.com.cn/bmiddle/491dbdc7457c2450879bf

    -------------------------------------------------------------------------

    第六步:点击文件-另存为

    http://static8.photo.sina.com.cn/bmiddle/491dbdc7457c24591c547

    -------------------------------------------------------------------------

     

    第七步:文件名为清除系统LJ.bat   保存类型为所有文件,然后点击保存,放在桌面上。

    http://static3.photo.sina.com.cn/bmiddle/491dbdc7457c245fca222

     

    -------------------------------------------------------------------------

     

    第八步:点击桌面上刚才所存的小图标

    http://static7.photo.sina.com.cn/bmiddle/491dbdc7457c246b3aaf6

    -------------------------------------------------------------------------

     

    第九步:清理系统开始

    http://static5.photo.sina.com.cn/bmiddle/491dbdc7457c2473d0d64




     
    娱乐小虎 @ 2008-06-06 08:53

    此前有多年在互联网摸爬滚打,当回过头来想一想自己,觉得特别想对那些初学做网站的朋友说点心里话,希望你们能从我的体会中,多少受点启发,也许我说的不好,你不赞同,但看在我真心的份上别扔砖头。

      一、在中国你千万不要以为做网站就可以换来稳定的生活和高的收入,你千万更不要感觉自己是什么互联网精英,认为其他在现实里奔波的人就没有前途。

      不知道你是不是知道,咱们中国上百万个网站,70%都是一个人在运作,连一个项目小组都算不上,而却要承担一个网站所有的开发、运营和推广任务,多少个个人站长都在零点过后依然聚精会神趴在电脑前。平时除了坐在电脑前就是吃饭和睡觉(如果有其他人做饭,那就让你一直在那种累了就休息,不累就立即坐在电脑前的状态)。

      更可怕的是,会让你接触的人际关系非常单一,除了网上那些不曾谋面的站长外,你的朋友圈子小且单一,甚至破坏你原有的爱情(想象一下,你因为网站,不能陪女朋友,你的女友是不是会对你呲牙)。

      也许你拿到了所谓的收入,但你却从此失去享受生活的自由,如果你做网站超过一年时间,我想你很快就会理解,你多么想在一个地方长期待一段时间,认识一些朋友,多一些生活时间的愿望。

      比之于我们的生活和人际关系,那些从事其他行业的朋友,却有比我们多的多的的时间,甚至他们工作的时间有的时候是和生活的时间是可以兼顾的,他们可以通过工作,认识各个行业的人士,可以认识各种各样的朋友,他们比我们坦率说更有发财和发展的机会,只要他们跟我们一样勤奋。(有一种勤奋的普通人,如果给他换个地方,他马上会成为一个勤奋且出众的人。)

      二、千万不要把做网站认为成是技术活,其实做网站谁技术越好死的越快。

      绝大数人不可能写一个比discuz还厉害杰作来表现你的才能。即使你能写出来,也毫无含义,你不可能说服其他人去使用。你需要做的就是按照要求把现成的源码传到空间,修改网站信息和频道什么的,然后一个网站就诞生了。最多就是改改模板。等你做了一段时间的网站,你将领略:所谓“做网站”那样的技术其实不是技术(这里不包括专业网站程序开发)。

      如果你幸运的曾经在网络公司呆过,你会隐约觉得他们都在把技术人员当作机器来看,你的价值并没有你想象的那么重要。而在你所在的团队内部,你可能正在为一个技术问题的讨论再跟同事搞内耗,因为他不服你,你也不服他,你们都认为自己的对,其实你们两个都对,而争论的目的就是为了在关键场合证明一下自己比对方技术好,比对方强。

      三、你更不要认为,谁谁的网站成功了,我也自己创业,因为他可以我也可以。

      如果你那样认为,真的是大错特错了,你可以做个调查,现在中国和你一样的人,没有几个人不知道HTML、ASP和PHP的,谁都可以五分钟搭建一个网站出来。中国有多少个在做网站的?有人说20万人,我看至少50万吧。而且每天还有数以千计的人加入进来。

      一句话,互联网就是一个无底洞,无论是早期,中期还是晚期,取得成功的人,90%的都是完成了早期的原始积累,拿着现金杀进互联网的。新浪搜狐这些大站就不谈了。就说前一段时间网上炒的很火的“妆点网”,06年开始做的,现在发展势头很凶猛,年利润几千万。但大家别忘记创始人在文章里写过,他拿出了6万积蓄,后来工资发不出,又借了10万高利贷这些细节,前前后后最少的原始投资也在20万左右了。

      试问看这篇文章的朋友们,你们谁能现在跳起来说我明天决定做一个网站,投资20万?没有这个魄力和决心,注定你在互联网上举步维艰。而没有一定的资金,更注定你很难从千百万网站中脱颖而出。因为这是个硬道理,你有创意和独特的赢利模式,没有决心和魄力,没有一定的资金,很难做大。

      有人也许还说有10%呢,我这里想反问:“凭什么那10%就一定会在你身上重演?”成功除了决心和魄力,资金之外,还需要人脉和个人能力。创业最开始的时候,你的人际关系,你处理人际关系的能力,你对社会潜规则的认识,还有你明白不明白别人的心,你会不会说让人喜欢的话,这些都是问题。我想一个基本一天在电脑前的人埋头做网站,人际关系基本就别多指望了,对社会关系处理和认识方面,基本也一无所知。

      你别说什么你是在网上创业,不需要这些。我敢说如果图王脱离了这些,admin5也未必有今天。而且,搞网站,地方网站更非常需要的社会关系和人脉。如果你看到这里会意的微笑了,我想你一定会以后加强和社会的接触,加强和人的交流。如果你还是执迷不悟,那我也只能无语了。

      有的站长,很勤奋,姑且也算很有互联网天赋,但就是做不大网站。这样的站长,适合做网络编辑或者网站运营的职务,但不适合做管理角色。真正的网站管理,基本是不碰网站的,网站早已经成了永不停息的印钞机了。

      [小结]

      基于上面的讨论,我奉劝那些学习做网站的朋友,千万不要拿着毕生职业的心态去学习做网站,真想做网站的,拿出生意人的眼光去做,敢于投资,也敢于赔钱,更会见好就收,点到为止。

      如果你还是那种投资几百块钱,把你的个人网站当成职业看待的站长,想依靠它度过很几年时间甚至一辈子,那几乎是不可能的事情,我认为三五年后,大部分个人网站要不偃旗息鼓,不要会转化为个人博客。中国的互联网环境最后会逐渐规范,活下来的个人网站会是千里挑一的,依靠网站收入能过一辈子更是万里挑一。被风险投资砸中的,基本属于十万分之一的几率了。

      网站仅仅是一个窗口,是你个人在互联网的窗口,你可以一辈子喜欢它,但最好不要一辈子靠它生存。个人站长,25岁后,如果还没有做出成绩,尽快转行吧,不要在电脑前浪费大好的时间了。如果你感觉你还行,那在其他行业里干一样也会很出色,有能力,赚了大钱,再杀回互联网。互联网始终存在机会,但这些机会只留给有胆识、有能力和有资金的幸运者。不要认为你现在的坚持是一种美德,那其实是一种无知。