7个杀手级的开源监测工具

  categories:资料  author:

想要更清晰的了解你的网络吗?没有比这几个免费的工具更好用的了。

网络和系统监控是一个很宽的范畴。有监控服务器、网络设备、应用正常工作的方案,也有跟踪这些系统和设备性能,提供趋势性能分析的解决方案。有些工具像个闹钟一样,当发现问题的时候就会报警,而另外的一些工具甚至可以在警报响起的时候触发一些动作。这里,收集了一些开源的工具,旨在解决上述的一些甚至大部分问题。

 

Cacti

Cacti是一个性能广泛的图表和趋势分析工具,可以用来跟踪并几乎可以绘制出任何可监测指标,描绘出图表。从硬盘的利用率到风扇的转速,在一个电脑管理系统中,只要是可以被监测的指标,Cacti都可以监测,并快速的转换成可视化的图表。

 

Nagios

Nagios是一个经典的老牌系统和网络监测工具。运行速度快,可靠,需要针对应用定制。Nagios对于初学者是一个挑战。但是它的极其复杂的配置正好也反应出它的强大,因为它几乎可以适用于任何监控任务。要说缺点的话就是不怎么耐看,但是其强劲的功能和可靠性弥补了这个缺点。

 

Icinga

Icinga 是一个正在重建的Nagios的分支,它提供了一个全面的监控和警报的框架,致力于设计一个像Nagios一样的开放和可扩展性的平台。但是和Nagios拥有不一样的Web界面。Icinga 1 和 Nagios非常的相近,不过Icinga 2就重写了。两个版本都能很好的兼容,而且,Nagios用户可以很轻松的转到Icinga 1平台。

 

NeDi

NeDi可能不如其他的工具一样闻名全世界,但它确是一个跟踪网络接入的一个强大的解决方案。它可以很流畅的运行网络基础设施和设备目录,保持对任何事件的跟踪。并且可以提供任意设备的当前地点,也包括历史地点。

NeDi可以被用于定位被偷的,或者是丢失掉的设备,只要设备出现在网络上。它甚至可以在地图上显示所有已发现的节点。并且很清晰的告诉人们网络是怎么互联的到物理设备端口的。

 

Observium

Observium 综合了系统和网路监控,在性能趋势监测上有很好的表现,它支持静态和动态发现来确认服务器和网络设备,利用多种监测方法,可以监测任何可用的指标。Web界面非常的整洁,易用。

就如我们看到的,Observium也可以在地图上显示任何被监测节点的实际地点。需要注意的是面板上关于活跃设备和警报的计数。

 

Zabbix

Zabbix 利用一系列的工具监测服务器和网络。Zabbix的监控代理支持大多数的操作系统,你可以被动的或者是使用外部检查,包括SNMP来监控主机和网络设备。你也会发现很多提醒和通知设施,和一个非常人性化的Web界面,适用于不同的面板,此外,Zabbix还拥有一些特殊的管理工具来监测Web应用和虚拟化的管理程序。

Zabbix 还可以提供详细的互联图,以便于我们了解某些对象是怎么连接的。这些图是可以定制的,并且,图也可以以被监测的服务器和主机的分组形式被创建。

 

Ntop

Ntop是一个数据包嗅探工具。有一个整洁的Web界面,用来显示被监测网络的实时数据。即时的网络数据通过一个高级的绘图工具可以可视化。主机数据流和与之对应的主机通信信息可以被实时的进行可视化显示。… 阅读全文

Elasticsearch、MongoDB和Hadoop比较

  categories:资料  author:

IT界在过去几年中出现了一个有趣的现象。很多新的技术出现并立即拥抱了“大数据”。稍微老一点的技术也会将大数据添进自己的特性,避免落大部队太远,我们看到了不同技术之间的边际的模糊化。假如你有诸如Elasticsearch或者Solr这样的搜索引擎,它们存储着JSON文档,MongoDB存着JSON文档,或者一堆JSON文档存放在一个Hadoop集群的HDFS中。你可以使用这三种配置完成很多同养的事情。

ES是否可以作为一个NoSQL数据库?粗看,这句话说的不太对,但是这是一个合理的场景。类似地,MongoDB在MapReduce的基础上使用分片的技术同样可以完成Hadoop可以做的工作。当然使用众多功能,我们可以在Hadoop之上(Hive、HBase、Pig和同样的一些)你也可以用多种方式查询Hadoop集群中的数据。

那么,我们现在是否能说Hadoop、MongoDB和Elasticsearch这三个是完全相同的呢?显然不行!每个工具都有自身最为适用的场景,但是每个都有相当的灵活性能够胜任不同的角色。现在的问题就变成“这些技术的最合适的使用场景是什么?”。下面我们来瞧瞧。

Elasticsearch已经超越了其最初的纯搜索引擎的角色,现在已经增加了分析和可视化的特性——但是它的核心仍旧是一个全文搜索引擎。Elasticsearch建立在Lucene之上并且支持极其快速的查询和丰富的查询语法。如果你有数百万的文档需要通过关键词进行定位时,Elasticsearch肯定是最佳选择。当然,如果你的文档是JSON的,你就可以把Elasticsearch当作一种轻量级的“NoSQL数据库”。但是Elasticsearch不是一个合适的数据库引擎,对复杂的查询和聚合并不是很强,尽管统计facet可以提供一定的关于给定查询的统计信息的支持。Elasticsearch中的facet主要是用来支持分面的浏览功能。

目前Elasticsearch已经增加了aggregation的功能

如果你在寻找一个对应于一个关键词查询的少量的文档集合,并且要支持在这些结果中分面的导航,那么Elasticsearch肯定是最好的选择。如果你需要进行更加复杂的计算,对数据执行服务端的脚本,轻松地运行MapReduce job,那么MongoDB或者Hadoop就进入待选项中。

MongoDB是NoSQL数据库,被设计成一个高可扩展,并且有自动分片的功能及一些额外性能优化的功能。MongoDB是一个面向文档的数据库,以JSON的形式进行数据的存储(准确地说可以称为BSON,对JSON进行了一些增强)——例如,一个native数据类型。MongoDB提供了一个文本索引类型来支持全文检索,所以我们可以看到在Elasticsearch和MongoDB之间的界限,基本的关键词搜索对应于文档的集合。

MongoDB超过Elasticsearch的地方在于其对于服务器端js脚本的支持、聚合的管道、MapReduce的支持和capped collections。使用MongoDB,你可以使用聚合管道来处理一个集合中的文档,通过一个管道操作的序列来多步地对文档进行处理。管道操作可以生成全新的文档并且从最终的结果中移除文档。这是一个在检索数据时的相当强的过滤、处理和转化数据的特点。MongoDB也支持对一个数据collection进行map/reduce job的执行,使用定制的js函数进行操作的map和reduce过程。这就保证了MongoDB可以对选定的数据执行任意类型的计算或者转换的终极的灵活性。

MongoDB另一个极其强大的特性称之为“Capped collections”。使用这个特性,用户可以定义一个collection的最大size——然后这个collection可以被盲写,并且会roll-over必须的数据来获取log和其他供分析的流数据。

你看到,Elasticsearch和MongoDB有一个可能的应用场景的重叠,它们不是同样的工具。但是Hadoop呢?Hadoop就是MapReduce,这已经有MongoDB就地支持了啊!是不是还有一个专属于Hadoop的场景,MongoDB就只是适合。

有!Hadoop是老MapReduce了,提供了最为灵活和强大的环境来进行大量数据的处理,毫无疑问的是能够搞定不能使用Elasticsearch或者MongoDB处理的场景。

为了更加清楚地认识到这点,看看Hadoop如何使用HDFS抽象存储的——从关联的计算特性上。通过HDFS中存储的数据,任意job都可以对于数据进行运算,使用写在核心MapReduce API上,或者使用Hadoop流技术直接使用native语言编程。基于Hadoop 2和YARN,甚至核心编程模型都已经被抽象了,你不再受到MapReduce的牵制了。使用YARN你可以在Hadoop上实现MPI并且用那种方式写job。

额外地,Hadoop生态系统提供了一个交错的工具集合,建立在HDFS和核心MapReduce之上,来进行数据的查询、分析和处理。Hive提供了一个类似SQL的语言,使得业务分析可以使用一个用户习惯的语法进行查询。HBASE提供了一个基于Hadoop的面向列的数据库。Pig和Sizzle提供了两个更加不同的编程模型来查询Hadoop数据。对存储在HDFS中的数据的使用,你可以继承Mahout的机器学习的能力至你的工具集。当使用RHadoop时,你可以直接使用R统计语言来对Hadoop数据执行高级的统计分析

所以,尽管Hadoop和MongoDB也有部分重叠的应用场景并且共同拥有一些有用的功能(无缝的水平扩展),但是两者之间还是有着特定的场景。如果你仅仅想要通过关键字和简单的分析,那么Elasticsearch可以完成任务;如果你需要查询文档,并且包含更加复杂的分析过程,那么MongoDB相当适合;如果你有一个海量的数据,需要大量不同的复杂处理和分析,那么Hadoop提供了最为广泛的工具和灵活性。

一个亘古不变的道理就是选择手头最适合的工具做事。在大数据这样的背景下,技术层出不穷,技术间的界限也是相当的模糊,这对我们的选择是一件相当困难的事情。正如你所见,特定的场景有着最适合的技术,这种差异性是相当重要的。最好的消息就是你不在限定在某一种工具或者技术上。依赖于你面对的场景,这就使得我们能够构建一个整合的系统。例如,我们知道Elasticsearch和Hadoop是可以很好地一起共事的,使用Elasticsearch快速的关键词查询,Hadoop job则能处理相当复杂的分析。

最终,采用了最大的搜索和细致的分析来确认最为合适的选择。在选择任何技术或者平台时,需要仔细地验证它们,理解这个东东适合哪些场景,哪里可以进行优化,需要做出哪些牺牲。从一个小小的预研项目开始,确认完毕后,再将技术应用到真正的平台上,缓慢地升级到新的层级。

跟随这些建议,你可以成功地在大数据技术中遨游,并且获得相应的回报。

阅读全文

ProGuard代码混淆技术详解

  categories:资料  author:

https://github.com/wvengen/proguard-maven-plugin

http://wvengen.github.io/proguard-maven-plugin/

https://www.guardsquare.com/en/proguard

https://www.guardsquare.com/en/proguard/manual/usage

 

 

ProGuard代码混淆的相关技术知识点。

内容目录

  • ProGuard简介
  • ProGuard工作原理
  • 如何编写一个ProGuard文件
  • 其他注意事项
  • 小结

ProGuard简介

因为Java代码是非常容易反编码的,况且Android开发的应用程序是用Java代码写的,为了很好的保护Java源代码,我们需要对编译好后的class文件进行混淆。
ProGuard是一个混淆代码的开源项目,它的主要作用是混淆代码,殊不知ProGuard还包括以下4个功能。
  1. 压缩(Shrink):检测并移除代码中无用的类、字段、方法和特性(Attribute)。
  2. 优化(Optimize):对字节码进行优化,移除无用的指令。
  3. 混淆(Obfuscate):使用a,b,c,d这样简短而无意义的名称,对类、字段和方法进行重命名。
  4. 预检(Preveirfy):在Java平台上对处理后的代码进行预检,确保加载的class文件是可执行的。
总而言之,根据官网的翻译:Proguard是一个Java类文件压缩器、优化器、混淆器、预校验器。压缩环节会检测以及移除没有用到的类、字段、方法以及属性。优化环节会分析以及优化方法的字节码。混淆环节会用无意义的短变量去重命名类、变量、方法。这些步骤让代码更精简,更高效,也更难被逆向(破解)。

ProGuard工作原理

ProGuar由shrink、optimize、obfuscate和preveirfy四个步骤组成,每个步骤都是可选的,我们可以通过配置脚本来决定执行其中的哪几个步骤。
混淆就是移除没有用到的代码,然后对代码里面的类、变量、方法重命名为人可读性很差的简短名字。
那么有一个问题,ProGuard怎么知道这个代码没有被用到呢?
这里引入一个Entry Point(入口点)概念,Entry Point是在ProGuard过程中不会被处理的类或方法。在压缩的步骤中,ProGuard会从上述的Entry Point开始递归遍历,搜索哪些类和类的成员在使用,对于没有被使用的类和类的成员,就会在压缩段丢弃,在接下来的优化过程中,那些非Entry Point的类、方法都会被设置为private、static或final,不使用的参数会被移除,此外,有些方法会被标记为内联的,在混淆的步骤中,ProGuard会对非Entry Point的类和方法进行重命名。
那么这个入口点怎么来呢?就是从ProGuard的配置文件来,只要这个配置了,那么就不会被移除。

如何编写一个ProGuard文件

有个三步走的过程:
  • 基本混淆
  • 针对APP的量身定制
  • 针对第三方jar包的解决方案
基本混淆
混淆文件的基本配置信息,任何APP都要使用,可以作为模板使用,具体如下。
1,基本指令
阅读全文

IP地址域名互查技巧

  categories:资料  author:

       身为中小企业的网络管理员的我们往往身兼多职,既要负责企业网站的维护与制作还要保证员工计算机正常访问网络。因此我们需要成为一个全面发展的技术人员。在众多网络故障排除实例中处理域名解析问题往往成为关键,学会并熟练掌握IP地址与域名之间的互相查询方法也是我们这些网络管理员应有的技能。今天笔者就将自己的经验全盘托出,为各位IT168的读者讲解IP地址与域名之间互相查询的独门绝技。

一、查询某域名对应IP地址:

很多时候为了检测内部DNS服务器是否工作正常,我们需要查询域名解析到IP地址是否顺利,这时应该使用nslookup命令。

第一步:通过系统的“开始->运行->输入CMD后回车”,进入到命令提示窗口。

第二步:在命令提示窗口中输入“nslookup 域名”,例如我们要查询本机设置的DNS服务器是否可以正确解析www.it168.com这个地址,那么通过“nslookup www.it168.com”来检测。首先显示的是本地使用的DNS服务器地址,例如笔者显示的是10.82.0.4,接下来的显示区域才是www.it168.com对应的地址,例如我们看到的是202.106.124.56,这个就是www.it168.com对应的IP地址,这说明DNS可以正确解析出来此地址,输入此地址应该也可以访问www.it168.com站点。(如图1)

第三步:当然如果DNS出现问题自然无法解析出来,显示信息会变成“DNS request timed out,timeout was 2 seconds”的提示,说明DNS解析超时,网络故障根源是DNS解析问题。(如图2)

有的时候我们用IP地址可以访问某站点而用域名访问却失败,这时就应该按照上面介绍的方法来检测DNS是否工作正常,通过nslookup命令查询本机是否可以顺利把域名转换到正确的IP地址。

二、查询内网IP地址对应域名:

当然除了域名到IP地址的查询,有时我们还希望知道某个内网IP地址对应的域名是哪个,从而确切知道企业网络服务安装在哪个机器上,使用的命令依然是nslookup。

第一步:通过系统的“开始->运行->输入CMD后回车”,进入到命令提示窗口。

第二步:在命令提示窗口中输入“nslookup ip地址”来查询,如果能够查到该IP对应的域名的话将直接显示出来。例如笔者测试时使用“nslookup 10.82.0.3”来查询该地址对应的域名,如果能够查询的话,我们将可以在第二行的name后看到域名,例如笔者查询中显示的mail.ftedu.gov.cn就是10.82.0.3对应的域名。(如图3)

第三步:如果在上面执行nslookup查询时IP地址并没有和任何域名建立对应关系的话会显示出诸如“cannot find xxx.xxx.xxx.xxx:non-existent domain”的提示。(如图4)

上面介绍的IP地址到域名的查询方法主要在检测企业内部DNS服务器工作是否正常以及各个服务在哪台服务器上时使用,帮助企业网络管理员更好的管理各个服务器和企业内网服务。

 

三、查询外网IP地址对应域名:

前面介绍了查域名对应的IP地址采用nslookup命令,那么如果我们希望看看某个IP地址上到底开启了哪些服务,到底有多少个不同的域名指向了这个地址的时候,就需要进行外网IP地址对应域名的查询操作了。我们无法通过某个命令来查询,最好的办法也是笔者的独门绝技就是访问http://www.myipneighbors.com/这个地址来查看。

第一步:打开本机IE浏览器,在地址处输入http://www.myipneighbors.com/,访问该站点。

第二步:该站点提供我们通过IP地址查询对应域名的服务,我们只需要在输入处填写要查询的IP地址后点“submit”按钮即可。(如图5)

第三步:查询完毕该站点会将结果信息反馈回来,这里我们同样以一个例子进行讲解,例如要查询www.it168.com这个站点对应的IP地址到底还有哪些域名指向该IP。我们通过前面介绍的nslookup命令查询到www.it168.com对应的IP地址为202.106.124.56。(如图6)

然后再把这个地址信息填写到http://www.myipneighbors.com/站点的查询文本框处,提交后就可以看到该IP地址对应的域名了,结果说明与此同时还有www1.it168.com,www2.it168.com,maillist.it168.com,it168.com这些域名指向了202.106.124.56这个地址。(如图7)

查询外网IP地址对应域名可以详细了解企业服务器到底安装了哪些服务,例如经常有一些人利用企业服务器开启虚拟主机或者出租服务器硬盘空间,那么通过此方法就可以揪出“内鬼”,规范企业内部管理。不过需要注意一点的是通过此方法查询的信息存在一定的延迟,无法和国际主DNS保持同步,毕竟每天DNS解析信息变化量是非常大的。

四、总结:

本文介绍了如何查询某域名对应的IP地址以及内部IP,外部IP地址对应哪个域名的方法,希望这些小技巧可以帮助各位IT168的网络管理员读者朋友解决更多的实际问题,在关键时刻显露身手。

 

NSLookup可以指定查询的类型,可以查到DNS记录的生存时间还可以指定使用那个DNS服务器进行解释。

如何用本地计算机查询DNS记录?

打开命令提示符窗口(开始–运行—输入CMD–回车)

阅读全文

Maven 环境下使用 proguard-maven-plugin 插件混淆你的源码

  categories:资料  author:
Maven 环境下使用 proguard-maven-plugin 插件混淆你的源码
  摘要: a、ProGuard(http://proguard.sourceforge.net/) 是比较出色的 Java 代码混淆工具,可以有效的保护与优化你的代码。当然这里说的保护是防止恶意抄袭,通过混淆造成反编译阅读困难。但逻辑与内容并不会加密,仔细分析还是可以获得一些信息。 b、proguard-maven-plugin 是 Maven 中的 ProGuard 插件,可以非常方便的在你做 Maven 打包时进行代码混淆。 c、本文重点介绍 Maven 环境下插件的配置(重点参数),与类路径加载资源问题。

一、场景介绍

两个工程 Project1,Project2(将被混淆的工程)。Project1 将通过 Maven 依赖配置的方式引用混淆后的 Project2。后面我会详细介绍 pom.xml 的配置。

二、Maven 配置

1、Project1 的 pom.xml

该 pom.xml 比较简单主要通过 classifier 来判断是否使用混淆的 Jar(Project2)

阅读全文

剖析Mozilla代码之”七武器”

  categories:资料  author:
武器一:穿甲弹 Source Insight
网站:   http://www.sourceinsight.com/
Source Insight 工具是分析源代码工程的利器! 有了它,再多的源代码文件也不怕,它能帮助你像使用Visual Studio 一样去”go to definition”、”Find References”。Source Insight的语法提示,比IDE做得都帅,有了它可以帮助你用最快速度了解源代码文件、目录之间的关系。 真不愧为杀入敌营的攻坚利器。

武器二:突击步枪AK47 Editplus
网站:http://www.editplus.com/
轻量级的文本编辑器是程序员的必备武器,就好比士兵手上的突击步枪。程序员对文本编辑器的要求和士兵对枪的要求差不多:1) 非常好用(缩进、语法加亮);2) 结实耐用(不崩溃);3) 轻便(功能精炼而有效);现在文本编辑器有很多: Ultra Edit、Notepad++、Editplus 等等不胜枚举。然而,Ultra Edit 许可超贵;Notepad++的作者据说又支持台独;我选择Editplus的原因是因为作者非常厚道,试用到期后,仅仅是在启动Editplus时提示一下,功能不打折。另一个原因是Editplus有自动保存功能,在保存当前内容时,修改前的内容也自动保存为 文件名.bak 文件,让你丝毫不必担心代码改错了,该怎么办的问题。

武器三:后勤保障车 Cygwin
网站: http://www.cygwin.com
Mozilla 与 Webkit 等开源项目一样,都支持多平台。在Windows下编译支持多平台的代码,就全靠Cygwin这位老兄了。Cygwin 是在Windows 平台下的UNIX环境模拟器。

阅读全文

DebugView 调试入门

  categories:资料  author:

摘要: 软件下载地址:点击打开链接debugview可以捕获程序中由TRACE(debug版本)和OutputDebugString输出的信息。支持Debug、Release模式编译的程序(即该软件捕获的是exe直接运行时,抛出的信息,而不是VisualStudio调试时的),甚至支持内核程序,而且能够定制各种过滤条件,让你只看到关心的输出信息,而且可以定制高亮显示的内容等等,非常方便。程序非常轻量:目前

软件下载地址:点击打开链接

debugview 可以捕获程序中由TRACE(debug版本)和OutputDebugString输出的信息。支持Debug、Release模式编译的程序(即该软件捕获的是exe直接运行时,抛出的信息,而不是Visual Studio调试时的),甚至支持内核程序,而且能够定制各种过滤条件,让你只看到关心的输出信息,而且可以定制高亮显示的内容等等,非常方便。

程序非常轻量:目前最新的4.81,才4百多k。

软件运行界面如下:

DebugView 调试入门_第1张图片

捕捉Release模式的Win32程序输出的调试信息,需要选中Capture Global Win32选项:

DebugView 调试入门_第2张图片

通过编程输出一些调试信息到DebugView中,一共有三种方式:

1
2
3
System.Diagnostics.Debug.Write
System.Diagnostics.Debugger.Log
Kernal32.dll中的OutputDebugString方法

其中:System.Diagnostics.Debug.Write方法仅仅适用于debug模式下编译出来的exe,其余两中方法与debug与release模式下编译出的exe通用。一、System.Diagnostics.Debug.Write方法(Debug模式生成的exe)

1
2
3
4
for (int i = 0; i < 50; i++)
          {
              System.Diagnostics.Debug.WriteLine("测试DebugView!!deg"
阅读全文

Windows下编译Firefox

  categories:资料  author:
编译Firefox多次,但几次都因为各种原因编译失败,现在终于编译成功,详细编译步骤过程如下
  1. 下载源码

源码下载有两种方式,直接下载所有源码和通过CVS,个人建议直接下载,下载地址:

ftp://ftp.mozilla.org/pub/mozilla.org/firefox,在里面可以选取你要编辑的版本,源码主要在nightly和releases文件中,releases指已发行的版本,相对于nightly来说更稳定一些,编译采用releases文件中的源码,releases中有Firefox所有发行版本的源码,我采用的是3.6.3的源码,地址:

ftp://ftp.mozilla.org/pub/mozilla.org/firefox/releases/3.6.3/source/firefox-3.6.3.source.tar.bz2。

2.   下载编译Firefox工具MozillaBuildSetup-1.4,这个工具含有Nsis和MinGW,编译Firefox全靠MinGW调用cl.exe了,Nsis工具用来给程序打包。下载地址:http://ftp.mozilla.org/pub/mozilla.org/mozilla/libraries/win32/MozillaBuildSetup-1.4.exe,下载完成后安装,一般直接安装到默认盘里面,我的是C:\mozilla-build。

3. 配置编译环境:详细的配置见Mozilla官方文档:

https://developer.mozilla.org/En/Developer_Guide/Build_Instructions/Windows_Prerequisites

我采用的配置是:Windows 7+visual studio 2008 sp1+ Microsoft Windows SDK v7.0

4.  源码解压

源码格式为firefox-3.6.3.source.tar.bz2,使用winrar或者7-ip解压即可。解压源码到某个位置,我直接解压到G盘中,具体源码的位置是:G:\firefox-3.6.3.source\mozilla-1.9.2,建议别使用有空格的路径。

5. 编译参数配置

到G:\firefox-3.6.3.source\mozilla-1.9.2\browser\config目录下,把mozconfig文件拷贝到G:\firefox-3.6.3.source\mozilla-1.9.2下即可(或者在G:\firefox-3.6.3.source\mozilla-1.9.2直接添加mozconfig文件)(注意mozconfig文件无后缀)。在mozconfig中添加如下内容:

mk_add_optionsMOZ_CO_PROJECT=browser

mk_add_optionsMOZ_MAKE_FLAGS=”-j5″

mk_add_optionsMOZ_PACKAGE_NSIS=1

ac_add_options–enable-application=browser

ac_add_options–enable-optimize

ac_add_options–disable-debug

ac_add_options–disable-tests

这些选项都是可以按照需求修改的,具体请参照:

https://developer.mozilla.org/en/Configuring_Build_Options

需要注意的是很多时候编译不成功原因就是这个文件配置的有问题,按照官网的说法,这里的参数越少越好,尽可能按照默认的配置参数

6. 正式编译

转至mozilla-build目录下,即C:\mozilla-build,里面有很多bat结尾的批处理文件,不同的批处理文件对应不同vs版本,如32位的Windows系统编译环境是visual studio 2008,则选取start-msvc9.bat,如果是visual

阅读全文

用Fbdisk和DiskGenius双剑合璧修复屏蔽硬盘坏道

  categories:资料  author:

具体的运用如下:现在制作U盘启动盘,启动盘得是dos工具箱里带Fbdisk和DiskGenius两个软件的版本。我们先运行DiskGenius,进去以后把需要修复的硬盘所有分区都删除掉,然后存盘退出;接着运行Fbdisk(如图1),选择要检测的硬盘, 按“Y”开始扫描(如图1-1);如果存在坏道这时Fbdisk就会自动显示出来它在哪个扇区、哪个磁道(如图1- 2),扫描完成后,它可以把所有的坏道都列出来。最后它会询问你是否要写入硬盘(如图1-3),如果按“Y”它将自动将坏道隐藏起来,按Esc键退出。

 

 

 

 

 

 

 

 

再次运行DiskGenius,这时我们可以看出经过Fbdisk处理后的磁盘情况。坏道处呈一种灰白色显示出来(如图2-1)。如果是几个小的坏道连在一起,我们可以稍扩大一些把这些坏道全部通过Diskgen把它们隐藏起来;而对于本例来说,我们可以把下面的几个小区都隐藏起来(两个好区是紫色,两个坏区是灰白色,总加起来就100多MB而且是不连续的)。这时我们只要把上面的3.9GB用好就行了。我们可以发现第一个分区是红色的(如图2-2),说明它是主活动分区。

定DOS主活动分区

 

 

 

 

 

如果坏道出现较靠前的磁道上,比如在12、13等磁道上,这样第一个分区分下来只有几十兆太小,这时我们用DiskGenius把3.9GB的剩余分成两个区,我们可以把DOS的活动分区选择在一个较大的分区中,然后用DiskGenius把选定的分区激活,这时可看到该分区变为红色,激活可用“分区”下的激活选项。一切OK!

其实就是把坏道屏蔽起来,虽然硬盘总空间缩小了,但好歹可以用,总比没有强吧。

fbdisk全称是Fixed Bad Disk,即坏盘分区器。举个栗子,如果你的硬盘坏了,我们就可以利用fbdisk坏盘分区器,将损坏的坏道区域分区,然后就可以接着使用

使用方法

1、首先将Fbdisk.exe拷入启动盘(Fbdisk只有20KB),运行Fbdisk.exe

2、按“Y”键开始进行扫描,扫描过程中如遇到坏道时,程序会自动显示出坏道所在位置。

磁盘扫描完成后程序会自动提供你一个分区的方案,能在屏蔽掉坏磁道的前提下根据利用率最大的条件将硬盘分成4个分区,格式均为FAT32

必须在“Write to disk ?(Y/N)”的提示后回答“Y”。然后FBDISK将记录下各分区的位置以及信息。扫描完成后,程序会给出分区意见,同时询问是否将其写入硬盘“Write to disk ?(Y/N)”

3、按“Y”键,就会将分区方案写入硬盘。显示“Write disk OK!”的提示,说明写入成功。Fbdisk.exe自动会将坏道分区设为隐藏分区

阅读全文


快乐成长 每天进步一点点      京ICP备18032580号-1