花开的地方
-
2008-02-01
再提“MySQL慢查询” - [技术乱谈]
MySQL有一个功能就是可以log下来运行的比较慢的sql语句,默认是没有这个log的,为了开启这个功能,要修改my.cnf或者在MySQL启动的时候加入一些参数。
如果在my.cnf里面修改,需增加如下几行
long_query_time = 1
log-slow-queries =
log-queries-not-using-indexes
long_query_time 是指执行超过多久的sql会被log下来,这里是1秒。
log-slow-queries 设置把日志写在那里,可以为空,系统会给一个缺省的文件log-queries-not-using-indexes 就是纪录没使用索引的sql
分析:
mysqldumpslow –help以下,主要用的是
-s ORDER what to sort by (t, at, l, al, r, ar etc), ‘at’ is default
-t NUM just show the top n queries
-g PATTERN grep: only consider stmts that include this string
-s,是order的顺序,说明写的不够详细,俺用下来,包括看了代码,主要有
c,t,l,r和ac,at,al,ar,分别是按照query次数,时间,lock的时间和返回的记录数来排序,前面加了a的时倒叙
-t,是top n的意思,即为返回前面多少条的数据
-g,后边可以写一个正则匹配模式,大小写不敏感的
mysqldumpslow -s c -t 20 host-slow.log
mysqldumpslow -s r -t 20 host-slow.log
上述命令可以看出访问次数最多的20个sql语句和返回记录集最多的20个sql。
mysqldumpslow -t 10 -s t -g “left join” host-slow.log
这个是按照时间返回前10条里面含有左连接的sql语句。
Time: 060908 22:17:43
# Query_time: 12 Lock_time: 0 Rows_sent: 86345 Rows_examined: 580963
Q:这个是慢查的日志,都是些什么意思?
A:查询用了12妙,返回86345行,一共查了580963行 -
2008-01-14
清除你的盗版系统提醒 - [技术乱谈]
好吧,今天又有人中招了!那就发布一下解决方法,也许有用。
是关于如何清除XP系统登录系统之前出现的那个“盗版提醒”,很简单,有一个小程序,RemoveWGA,下载,运行之即可。
注意,我运行时,安全卫士(一款很符合国情的反恶意软件)报是木马:Win32.Small.hxi,杀毒软件却没有反应,于是试着运行,结果无碍。
另外:使用这个软件需要重启系统!运行前请保存当前工作。
-
浏览器之战火再起
在w3counter网站上, 采用Fisher统计算法,通过在4000多个网站的1500多万访问者使用浏览器进行技术推断,从而得出一组数据,每隔十天公布一次,相当准确.我们看 看最近的一组数据, Internet Explorer 6.0和7.0版本分别占据43.33%和19.22%的份额,Firefox一 举达到了27%的占有率,而Opera占有1.39%,苹果的 Safari占有1.95%的份额.从中我们不难发现,IE的市场份额不断缩水,Firefox已经迎头赶上,Opera、Sarfari等浏览器也在不 断吞噬着原本属于IE的市场份额,Web浏览器再次形成了两强相争的格局,而Sarfari在Mac OS,Opera在移动终端上也取得了很大的优势,IE一统天下的时代已经离我们远去了.
浏览器的过去
十年前,比尔.盖茨40岁,是当时全球最富有的人,而他创办的微软公司20岁,是全球最大的软件公司。当时的微软可谓是意气风发,不仅在桌面操作系统领域独霸天下,还推出Windows NT进军网络操作系统领域。
然而,危险的来临并不是毫无征兆的。1993年,伊利诺斯州大学的马克·安德森就开发了第一个Web浏览器Mosaic。1994年他和Jim Clark成立了网景公司,10月发布了Netscape Navigator 0.9版本。
1995年网景公司的股票上市,Netscape浏览器几乎拿下了整个浏览器市场,这个时候微软才警觉到自己战略上的失误,最后采用与操作系统捆绑销售的策略,微软成功击败了网景,从此几乎霸占了全球的Web浏览器市场。
回 顾这段历史,我们能清晰地发现IE是通过与Windows的捆绑销售才有了今天的市场份额的。对于这样的做法,有人认为这忽略了用户的选择,是不可取的, 也有人认为这是商业竞争的必然,看看现在IE的流行程度,就发现微软当初的策略是正确的。Opera中国子公司欧普拉软件公司总经理阮哲伟说:“对于微软 当初这样的做法,很多人士认为这样是不道德的,微软完全将自己的意愿强加给了用户,而并不是让用户自由的去进行选择,也剥夺了用户自由选择的权利。虽然微 软凭借这一策略占据了Web浏览器市场,但也为IE留下了非常不好的口碑。”
历史到了今天,我们发现对于这段经典的浏览器之战并没有一个盖棺定论的说辞,因为微软浏览器的竞争并没有因为Netscape的衰败而终结,新一轮的浏览器之战一直在酝酿之中。
火狐的崛起
十 年后的今天,比尔.盖茨50岁了,依然是全球最富有的人。微软公司也已经迈入了而立之年,但仍旧是全球最大的软件公司。不同的是,人们基本上已经将微软的 IE与Web浏览器之间划上了等号。然而,风平浪静的湖底其实已经暗流汹涌。各路英雄好汉虽然还没有正式打出“打倒IE”的大旗,但早已经蠢蠢欲动了。在 这些挑战者中,不乏名声响当当的人物,如拥有Firefox的开源组织Mozilla基金会、以Opera浏览器而闻名的挪威Opera公司,以及大名鼎 鼎的苹果公司。这其中,Firefox被推上了前台,成为了再次与IE抗争的急先锋。
在 最近一年时间里,微软IE浏览器的市场份额开始下降,越来越多的网络调查机构发布数据称,目前Firefox浏览器在全球拥有四分之一的市场份额,而保守 的估计也认为,2006年Firefox浏览器的市场份额提升了已经达到17.4%,微软的IE同比下滑了9.6%,市场分额为63.9%。
如 果说这些数据可能存在误差的话,Firefox的全球下载量或许更能说明问题。根据最新的下载统计,Firefox浏览器的扩展速度达到了指数级增长,自 从2004年Mozilla基金会发布开源Firefox浏览器之后,Firefox下载量从刚开始的1亿次攀升到2亿次,目前已经达到4亿次。而下载量 暴增的原因普遍认为Firefox为用户提供了更好、更快、更个性化的网络体验。无论是微软发布IE 7.0版本还是关于Firefox不断出现的安全漏洞,这些都无法减弱人们对Firefox的热情,“跳槽”到Firefox已经成为一种时尚的选择。
虽然Firefox在全球能达到20%的市场份额,但是在中国,Firefox的处境却不容乐观,保守估计,Firefox在中国本地市场的占有率不足1%。面对中国如此庞大的用户群体,如何提高Firefox在中国的市场份额成为Mozilla的当务之急。
作 为Mozilla在中国的全资子公司,谋智网络CEO宫力博士表示:“中国市场份额过低,宣传和用户习惯成为主要问题。如果中国使用量超过5%~10%, 那很多人就要考虑Firefox的存在,所以我们的首要任务考虑的是增加用户量。Firefox的全球目标是从20%突破30%,该目标有望在2008年 达到。对于中国,我们首要目的就是赶上目前全球的份额。”
2005年还在微软 Windows Live中国担任总经理的宫力,如今却来到了微软的竞争对手开源组织,他认为他的首要任务就是加大Firefox在中国的推广,宫力介绍到:“我们主要通 过三方面来扩大Firefox在中国的影响,扩大在中国的市场份额。首先我们会进行多层面多方位的市场推广,提高Firefox在中国用户中的认知度,比 如将很快在北大、清华、北航、南开等四所高校开展“校园大使”活动,让更多大学生使用Firefox。而且我们还大力发展合作伙伴,目前Mozilla最 主要的合作伙伴是Google,2006年Mozilla总收入6900万美元的收入绝大多数来自与 Google的合作。最重要的一块内容就是加强产品的本土化,在插件、定制等方面更适合中国用户的需求,目前Firefox共有3000多个插件,但专门 针对中国市场的非常少,我们将引导加强这方面开发。”
移动新平台
随着互联网和手持设备的流行,越来越多的用户喜欢通过手持设备随时随地的访问网络,传统PC平台的浏览器之争也随之蔓延到了移动平台,在新兴的移动平台获得较大的市场份额无疑会占据Web浏览器竞争的制高点。
在PC 平台上只有1%份额的Opera浏览器,在移动平台上确处于领先地位。据国外媒体报道,Opera的移动Web浏览器Opera Mini在推出几个月之后,共吸引了全球200万用户。虽然不是所有的用户每天都浏览网页,但是每天通过Opera Mini浏览器访问的网页数量达到400万页。这表明Opera已经在移动用户中变得非常流行。网页在OperaMini的压缩下,通常大小为 10~20Kbit,以现在的使用量计算,大约每天产生的数据量为38~76Gbit,这意味着OperaMini可以为运营商带来丰厚的利润。
自从2005年T-Mobile在他们的手机上加载了OperaMini浏览器后,移动浏览器的经济效用得到证实。在使用OperaMini的第一个月,平均每个用户每月访问网页的数量为330页,这也使得移动数据传输增长了489%。
阮 哲伟向记者介绍到,“Opera其实在各个平台上都有自己的平台,在PC平台上甚至是跨操作系统的浏览器,在Windows、Linux和Mac OS操作系统上,我们都有不少的客户,只是Opera在移动终端更加出色,让不少用户以为我们只针对移动终端了。其实浏览器的使用习惯是非常重要的一个因 素,当用户习惯了一种浏览器的操作习惯后很难再去选择另外的浏览器,这让我们也看到了机会,因为我们在移动终端拥有的用户数是非常大的,并且保持了一个高 速的增长。而这些用户在移动平台上习惯了Opera浏览器,无疑也会将Opera的浏览器带到PC平台上,扩大我们在PC平台的市场份额。”
同 时,包括芯片制造商Marvell、SAMSUNG、Texas Instruments在内的企业公布了一项基于ARM处理器的Linux手机新平台合作计划,将与Mozilla等软件合作厂商共同开发开源Linux +GNOME移动用户平台的产品。Firefox将成为未来移动平台在互联网和媒体应用上的先头部队,并计划在短期内讨论出基本的标准,于2008年早期 完成平台的基础开发,2009年提供第一波产品。
标准成为障碍
中 国有句俗话,叫做“没有规矩,不能成方圆”。这里面的规矩也就是一些规则,在现代商业社会存在各种各样的规则,但规则到了一定规模,并达到潜移默化的水准 时,就成为了标准。IT领域,厂商、技术、产品种类繁多,需要各种各样的标准加以约束、规范。在Web浏览器领域,标准更显得格外重要,如果缺乏一个开放 的标准,那将存在浏览器间互不兼容,网站遵从于不同浏览器进行开发,最终导致用户为了浏览整个互联网的网站,不得不在多种浏览器之间进行切换。
在IE 统治浏览器市场的年月里,IE成为了浏览器的事实标准,网站几乎都基于IE进行开发。然而标准是需要具有开放性的,厂商私有的标准因为缺乏开放性,使得 Web开发商很难进行第三方的定制开发。为解决Web应用中不同平台、技术和开发者带来的不兼容问题,保障Web信息的顺利和完整流通,万维网联盟制定了 一系列标准并督促Web应用开发者和内容提供者遵循这些标准。但是,W3C制定的Web标准似乎并非强制而只是推荐标准。
目前,很多网站 仍然基于IE开发,造成Firefox、Opera等浏览器无法正常浏览,对于这样的现象,宫力给出了自己的看法:“Firefox是基于国 际的开放标准开发,然而国内很多网站以前是基于IE开发,这造成了Firefox浏览这类网站出现问题。其实这有着方方面面的原因,因为我国信息化程度不 高,尤其是对标准缺乏一个统一的认识,造成了网站开发滞后于国际标准。相信随着Firefox的普及,越来越多的网站开发者会意识到这样的问题,从而改变 这一现状。”
阮哲伟对于这种观点也表示认同,并指出网站开发者从基于IE的标准过度 到国际标准是很轻松的,只需要对前端页面进行修改,同时他指出了另外一种现象:“比如微软有个ActiveX控件,过去的网站都是基于这个控件进行开发, 现在发现,很多安全问题都来自于这个不安全的控件,目前就连微软也表示不再支持ActiveX了。然而国内银行的网络银行,很多仍然基于ActiveX, 这造成了Opera的用户无法登陆网上银行,但即使这样,我们也不会去支持这个不安全的控件,我们寄希望于银行意识到这样的问题,因为这样才能提高网络银 行的安全性。”
除了不同浏览器之间的不兼容,IE浏览器与Web标准的不一致性也广 招非议。当IE 7.0无法通过Web标准项目(WaSP)的标准测试后,这一消息也引起了Web开发商和客户的广泛注意。互联网上出现了许多争论,甚至有人呼吁联合抵制 IE。开发人员和标准组织声称,如果微软能够更好地遵循Web标准,企业和Web密切相关的组织能节约很多资源,Web能够以更低的代价,获得更迅速的增 长。一些你可能从未听过的浏览器你 知道多少个浏览器?Firefox,IE,Opera,Safari,Maxthon。还有吗?浏览器内核主要有4个,Trident(IE)、 Gecko(Firefox)、WebCore(Safari)和Presto(Opera),但基于这些内核的浏览器却不止4的20倍,有些很少用到, 有些却已经替代了传统的浏览器。这篇文章将介绍一些4大浏览器以外的你很少接触-甚至没有听过的浏览器。或许你会找到一款你想要的。0、Flock

基于Firefox内核的浏览器,声称可以带给用户Web 2.0的感觉(Web2.0是什么感觉?)。Flock集成了RSS、Blog、书签、图片共享等下一代网络技术,拥有多项目前浏览器所不具备的功能。
1、GreenBrowser
基于IE内核的浏览器,功能非常强大,相信很多人都用过或正在使用,可以说它是Firefox般的IE。
2、Slim Browser
又是一款IE帮的浏览器,从截图可以看出,它也是基于标签风格的多站点浏览器。比较有特色的功能是黑白名单过滤、网址别名。
3、Safari
水果(apple)公司的浏览器,原先只出现在Mac里,今年推出了windows版本,自称是全球渲染速度最快的浏览器,目前来说对中文的支持还是需要改进。如果你喜欢典雅的感觉,水果公司的产品会非常适合你。
4、Shiira
Shiira是按照水果公司推广的WebKit协议编写的纯Cocoa浏览器,因此,Shiira浏览器的页面渲染效果和Safari完全一样,相同的速度,质量等等,因此,对中文的支持也是需要改进的。只有Mac版本。
5、K-Meleon
一款基于Gecko的浏览器,因此下载速度要比IE出色,如果说GreenBrowser是Firefox般的IE,那么用IE般的Firefox来形容K-Meleon就最好不过了。
6、xB Browser
也许在截图里你已经看到洋葱头了,没错,这个浏览器使用了Tor,使用这个浏览器就相当于"戴Tor”上网,虽然安全,但速度是个问题。
7、Maxthon
没听过Maxthon遨游的人应该很少吧?Maxthon是IE的最好替代之一,尤其是当现在的IE特别容易假死的时候。遨游的功能相当强大,而且稳定性高,非常推荐使用。
8、Swift
这不是汽车,是浏览器。一款基于Safari内核的浏览器,用在windows里,由于内核的强大,页面渲染速度是超快的,如果喜欢更快的渲染速度,Webkit内核的浏览器都是很好的选择。
9、Sleipnir
日产浏览器,一款以 MSIE 为基准的、集成化、个性化的多窗口浏览器。绿色软件。目前,它除了已具备各种IE 基准浏览器的常用功能之外,更吸取了其它非 IE 基准浏览器的优秀特性,并加以改进和创新。
10、SpaceTime
3D界面的浏览器,有点vista的风格,不是吗?
11、uBrowser
同样是一款3D显示的浏览器,有多种3D显示模式,包括球体,立方体和浮动波纹等形态。
12、Browse3D
又是3D浏览器,曾经获得“最佳Internet软件”,界面实在是华丽。
13、3B
好短的名字,在3B里,你就像拥有自己的虚拟社区,而不是简单的网页浏览。你就像在逛街,或者说,就像在打CS。你需要注册方可使用。
—————
使用这些浏览器的好处是你能获得更良好的访问体验和更优秀功能,但有时候必须使用4大浏览器,尤其是IE,例如使用支付宝的时候,除了IE你不能用其它浏览器。
原文来自Smashing Magazine ,由Jason Ng编译。 -
2007-10-12
iptables的状态检测机制 - [技术乱谈]
1.什么是状态检测
每个网络连接包括以下信息:源地址、目的地址、源端口和目的端口,叫作套接字对(socket pairs);协议类型、连接状态(TCP协议)和超时时间等。防火墙把这些信息叫作状态(stateful),能够检测每个连接状态的防火墙叫作状态包过滤防火墙。它除了能够完成简单包过滤防火墙的包过滤工作外,还在自己的内存中维护一个跟踪连接状态的表,比简单包过滤防火墙具有更大的安全性。
iptables中的状态检测功能是由state选项来实现的。对这个选项,在iptables的手册页中有以下描述:
state
这个模块能够跟踪分组的连接状态(即状态检测)。
--state state
这里,state是一个用逗号分割的列表,表示要匹配的连接状态。有效的状态选项包括:INVAILD,表示分组对应的连接是未知的;ESTABLISHED,表示分组对应的连接已经进行了双向的分组传输,也就是说连接已经建立;NEW,表示这个分组需要发起一个连接,或者说,分组对应的连接在两个方向上都没有进行过分组传输;RELATED,表示分组要发起一个新的连接,但是这个连接和一个现有的连接有关,例如:FTP的数据传输连接和控制连接之间就是RELATED关系。
对于本地产生分组,在PREROUTING或者OUTPUT链中都可以对连接的状态进行跟踪。在进行状态检测之前,需要重组分组的分片。这就是为什么在iptables中不再使用ipchains的ip_always_defrag开关。
UDP和TCP连接的状态表由/proc/net/ip_conntrack进行维护。稍后我们再介绍它的内容。
状态表能够保存的最大连接数保存在/proc/sys/net/ipv4/ip_conntrack_max中。它取决于硬件的物理内存。
2.iptables的状态检测是如何工作的?
2.1.iptables概述
在讨论iptables状态检测之前,我们先大体看一下整个netfilter框架。如果要在两个网络接口之间转发一个分组,这个分组将以以下的顺序接收规则链的检查:
PREROUTING链
如果必要对这个分组进行目的网络地址转换(DNAT)和mangle处理。同时,iptables的状态检测机制将重组分组,并且以以下某种方式跟踪其状态:
分组是否匹配状态表中的一个已经实现(ESTABLISHED)的连接。
它是否是和状态表中某个UDP/TCP连接相关(RELATED)的一个ICMP分组。
这个分组是否要发起一个新(NEW)的连接。
如果分组和任何连接无关,就被认为是无效(INVALID)的。
FORWARD链
把分组的状态和过滤表中的规则进行匹配,如果分组与所有的规则都无法匹配,就使用默认的策略进行处理。
POSTROUTING链
如果有必要,就对分组进行源网络地址转换(SNAT),
注意:所有的分组都必须和过滤表的规则进行比较。如果你修改了规则,要拒绝所有的网络流量,那么即使分组的状态匹配状态表中的一个ESTABLISHED条目,也将被拒绝。
下面,我们对UDP、TCP和ICMP三个协议分别进行分析。
2.2.UDP连接
UDP(用户数据包协议)是一种无状态协议,以为这个协议没有序列号。不过,这并不意味着我们不能跟踪UDP连接。虽然没有序列号,但是我们还可以使用其它的一些信息跟踪UDP连接的状态。下面是状态表中关于UDP连接的条目:
udp 17 19 src=192.168.1.2 dst=192.168.1.50 sport=1032 dport=53 [UNREPLIED] src=192.168.1.50 dst=192.168.1.2 sport=53 dport=1032 use=1
这个状态表项只有在iptables过滤规则允许建立新的连接时,才能建立。以下的规则可以产生这类状态表项,这两条规则只允许向外的UDP连接:
iptables -A INPUT -p udp -m state --state ESTABLISHED -j ACCEPT
iptables -A OUTPUT -P udp -m state --state NEW,ESTABLISHED -j ACCEPT
上面的状态表项包含如下信息:
连接的协议是UDP(IP协议号17)。
这个状态表项还有19秒中就超时。
发起连接方向上的源、目的地址和源、目的端口。
应答方向上的源、目的地址和源、目的端口。这个连接使用UNREPLIED标记,表示还没有收到应答。
UDP连接的超时时间在/usr/src/linux/net/ipv4/netfilter/ip_conntrack_proto_udp.c文件中设置,如果改变了这个值,需要重新编译Linux内核源代码才能生效。下面是UDP连接超时时间的相关的源代码:
#define UDP_TIMEOUT (30*HZ)
#define UDP_STREAM_TIMEOUT (180*HZ)
一个UDP请求等待应答的时间是30*HZ(这个值一般是30秒)。在上面的例子中,等待的时间已经消耗了11秒,还剩余19秒,如果在这段时间之内没有收到应答分组,这个表项就会被删除。一旦收到了应答,这个值就被重置为30,UNREPLIED标志也被删除。这个表项编程如下形式:
udp 17 28 src=192.168.1.2 dst=192.168.1.50 sport=1032 dport=53 src=192.168.1.50 dst=192.168.1.2 sport=53 dport=1032 use=1
如果在这一对源、目的地址和源、目的端口上,发生了多个请求和应答,这个表项就作为一个数据流表项,它的超时时间是180秒。这种情况下,这个表项就变成如下形式:
udp 17 177 src=192.168.1.2 dst=192.168.1.50 sport=1032 dport=53 src=192.168.1.50 dst=192.168.1.2 sport=53 dport=1032 [ASSURED] use=1
这时我们看到这个表项使用ASSURED标志。一旦连接表项使用ASSURED标志,那么即使在网络负沉重的情况下,也不会被丢弃。如果状态表已经饱和,当新的连接到达时,使用UNREPLIED标志的表项会受被丢弃。
2.3.TCP连接
一个TCP连接是通过三次握手的方式完成的。首先,客户程序发出一个同步请求(发出一个SYN分组);接着,服务器端回应一个SYN|ACK分组;最后返回一个ACK分组,连接完成。整个过程如下所示:
Client Server
SYN --->
<--- SYN+ACK
ACK --->
<--- ACK
ACK --->
.........
.........
SYN和ACK是由TCP分组头的标志决定的。在每个TCP分组头还有32位的序列号和应答号用于跟踪会话。
为了跟踪一个TCP连接的状态,你需要使用下面这样的规则:
iptables -A INPUT -p tcp -m state --state ESTABLISHED -j ACCEPT
iptables -A OUTPUT -p tcp -m state --state NEW,ESTABLISHED -j ACCEPT
2.3.1.连接建立过程中状态表的变化
下面,我们详细讨论在连接建立的每个阶段中,状态表发生的变化:
一旦一个初始SYN分组进入OUTPUT链,并且输出规则允许这个分组建立一个新的连接,状态表的相关表项将如下所示:
cp 6 119 SYN_SENT src=140.208.5.62 dst=207.46.230.218 sport=1311 dport=80 [UNREPLIED] src=207.46.230.218 dst=140.208.5.62 sport=80 dport=1311 use=1
其中,TCP连接状态是SYN_SENT,连接被标记为UNREPLIED。
现在,我们等待SYN+ACK分组的响应。一旦得到响应,这个TCP连接表项就变为:
tcp 6 57 SYN_RECV src=140.208.5.62 dst=207.46.230.218 sport=1311 dport=80 src=207.46.230.218 dst=140.208.5.62 sport=80 dport=1311 use=1
连接的状态变为SYN_RECV,UNREPLIED标志被清除。
现在我们需要等待完成握手的ACK分组。ACK分组到达后,我们首先对其序列号进行一些检查,如果正确,就把这个连接的状态变为ESTABLISHED,并且使用ASSURED标记这个连接。这时,这个连接的状态如下所示:
cp 6 431995 ESTABLISHED src=140.208.5.62 dst=207.46.230.218 sport=1311 dport=80 src=207.46.230.218 dst=140.208.5.62 sport=80 dport=1311 [ASSURED] use=1
2.3.2.透视状态表
上面,我们涉及了很多CP连接的状态。现在,我们分析一下TCP连接的状态检测。实际上,状态表只知道NEW、ESTABLISHED、RELATED和INVALID。
要注意:状态检测的状态不等于TCP状态。当一个SYN分组的响应SYN+ACK分组到达,Netfilter的状态检测模块就会认为连接已经建立。但是,这时还没有完成三次握手,因此TCP连接还没有建立。
另外,包过滤规则不能删除状态表中的表项,只有连接超时,对应的状态表项才会被删除。ACK分组能够建立一个NEW状态表项。向防火墙之后一台并不存在主机发送ACK分组,并不会返回RST分组,可以证明这个结论。因此,你需要使用以下的规则明确新的TCP连接应该是SYN分组建立的:
iptables -A INPUT -p tcp !--syn -m state --state NEW -j DROP
这样可以阻止空会话的继续进行。
2.3.3.超时
所谓状态表项的超时值是指每个表项存在的最大时间,这些超时值的大小在/usr/src/linux/net/ipv4/netfilter/ip_conntrack_proto_tcp.c文件中设置。以下是相关的代码:
static unsigned long tcp_timeouts[]
= { 30 MINS, /* TCP_CONNTRACK_NONE, */
5 DAYS, /* TCP_CONNTRACK_ESTABLISHED, */
2 MINS, /* TCP_CONNTRACK_SYN_SENT, */
60 SECS, /* TCP_CONNTRACK_SYN_RECV, */
2 MINS, /* TCP_CONNTRACK_FIN_WAIT, */
2 MINS, /* TCP_CONNTRACK_TIME_WAIT, */
10 SECS, /* TCP_CONNTRACK_CLOSE, */
60 SECS, /* TCP_CONNTRACK_CLOSE_WAIT, */
30 SECS, /* TCP_CONNTRACK_LAST_ACK, */
2 MINS, /* TCP_CONNTRACK_LISTEN, */
};
2.3.4.连接的中断
关闭一个TCP连接可以有两种方式。第一种类似于建立TCP连接的三次握手。一旦一个TCP会话完成,要终止会话的一方首先发出一个FIN为1的分组。接收方TCP确认这个FIN分组,并同志自己这边的应用程序不要在接收数据了。这个过程可以如下所示:
Client Server
.........
.........
FIN+ACK --->
<--- ACK
<--- FIN+ACK
ACK --->
在这个过程之中或者之后,状态表的连接状态变为TIME_WAIT。在默认情况下,2分钟之后从状态表删除。
除此之外,还有其它关闭中断的方式。TCP会话的任何一方发出一个RST标志为1的分组,可以快速断开一个TCP连接。而且,RST分组不需要应答。在这种情况下,状态表项的状态变为CLOSE,10秒之后被删除。和http连接经常通过这种方式中断,如果一个连接很长时间没有请求了,服务器端就会发出一个RST分组中断连接。
2.4.ICMP
在iptables看来,只有四种ICMP分组,这些分组类型可以被归为NEW、ESTABLISHED两类:
ECHO请求(ping,8)和ECHO应答(pong,0)。
时间戳请求(13)和应答(14)。
信息请求(15)和应答(16)。
地址掩码请求(17)和应答(18)。
这些ICMP分组类型中,请求分组属于NEW,应答分组属于ESTABLISHED。而其它类型的ICMP分组不基于请求/应答方式,一律被归入RELATED。
我们先看一个简单的例子:
iptables -A OUTPUT -p icmp -m state --state NEW,ESTABLISHED, RELATED -j ACCEPT
iptables -A INPUT -p icmp -m state --state ESTABLISHED,RELATED -j ACCEPT
这链条规则进行如下的过滤:
一个ICMP echo请求是一个NEW连接。因此,允许ICMP echo请求通过OUTPUT链。
当对应的应答返回,此时连接的状态是ESTABLISED,因此允许通过INPUT链。而INPUT链没有NEW状态,因此不允许echo请求通过INPUT链。也就是说,这两条规则允许内部主机ping外部主机,而不允许外部主机ping内部主机。
一个重定向ICMP(5)分组不是基于请求/应答方式的,因此属于RELATED。INPUT和OUTPUT链都允许RELATED状态的连接,因此重定向(5)分组可以通过INPUT和OUTPUT链。
3.FTP协议的状态检测
上面,我们比较详细地介绍了iptables的态检测机制。现在,我们以FTP状态检测为例介绍如何使用iptables进行连接状态检测。
首先,你需要加载ip_conntrack_ftp模块。使用如下规则就可以允许建立FTP控制连接(这里没有考虑IMCP问题):
iptables -A INPUT -p tcp --sport 21 -m state --state ESTABLESED -j ACCEPT
iptables -A OUTPUT -p tcp --dport 21 -m state --state NEW,ESTABLISED -j ACCEPT
除了控制连接之外,FTP协议还需要一个数据通道,不过,数据连接可以通过主动和被动两种模式建立,我们需要分别讨论。
3.1.主动模式
在主动模式下,客户程序在控制通道上,使用PORT命令告诉FTP服务器自己这边的数据传输端口,然后FTP从20端口向这个端口发起一个连接。连接建立后,服务器端和客户端就可以使用这个连接传输数据了,例如:传诵的文件、ls等命令的结果等。因此,在主动模式下FTP数据传输通道是反向建立的,它从FTP服务器端向客户端发起。
在主动模式下,客户端使用的数据传输端口是不固定的,因此我们需要在规则中使用端口范围。由于客户端使用的端口都是大于1024的,这并不会降低系统的安全性。
在iptables中,有一个专门跟踪FTP状态的模块--ip_conntrack_ftp。这个模块能够识别出PORT命令,并从中提取端口号。这样,FTP数据传输连接就被归入RELATED状态,它和向外的FTP控制连接相关,因此我们不需要在INPUT链中使用NEW状态。下面的规则可以实现我们的意图:
iptables -A INPUT -p tcp --sport 20 -m state --state ESTABLISED,RELATED -j ACCEPT
iptables -A OUTPUT -p tcp --dport 20 -m state --state ESTABLISED -j ACCEPT
3.2.被动模式
和主动模式相反,在被动模式下,指定连接端口的PORT命令是服务器端发出的。FTP服务器通过PORT命令告诉客户端自己使用的FTP数据传输端口,然后等待客户端建立数据传输连接。在被动模式下,建立数据传输连接的方向和建立控制连接的方向是相同的。因此,被动模式具有比主动模式更好的安全性。
由于ip_conntrack_ftp模块能够从PORT命令提取端口,因此我们在OUTPUT链中也不必使用NEW状态,下面的规则可以实现对被动模式下的FTP状态检测:
iptables -A INPUT -p tcp --sport 1024: --dport 1024: -m state --state ESTABLISHED -j ACCEPT
iptables -A OUTPUT -p tcp --sport 1024: --dport 1024: -m state --state ESTABLISHED,RELATED -j ACCEPT
综合以上的分析,我们可以得到FTP连接的状态检测规则,对于主动模式的FTP,需要下面的iptables规则:
iptables -A INPUT -p tcp --sport 21 -m state --state ESTABLESED -j ACCEPT
iptables -A OUTPUT -p tcp --dport 21 -m state --state NEW,ESTABLISED -j ACCEPT
iptables -A INPUT -p tcp --sport 20 -m state --state ESTABLISED,RELATED -j ACCEPT
iptables -A OUTPUT -p tcp --dport 20 -m state --state ESTABLISED -j ACCEPT
对于被动模式的FTP连接,需要使用如下iptables规则
iptables -A INPUT -p tcp --sport 21 -m state --state ESTABLESED -j ACCEPT
iptables -A OUTPUT -p tcp --dport 21 -m state --state NEW,ESTABLISED -j ACCEPT
iptables -A INPUT -p tcp --sport 1024: --dport 1024: -m state --state ESTABLISHED -j ACCEPT
iptables -A OUTPUT -p tcp --sport 1024: --dport 1024: -m state --state ESTABLISHED,RELATED -j ACCEPT
本文中提到的状态检测,在iptables中实际叫作连接跟踪(Connection tracking),出于自己的习惯,我在本文中一律改为状态检测:P -
隐藏的危险——主板电容选购技巧
对计算机系统稳定性影响最大的就是主板,而对主板的稳定性影响最大的,是主板的PCB板、电路的走线和电容。很多人在选择主板的时通常都会注意一下主板电路板的层数和电路走线是否合理,而对于电容,通常只是了解一下数量及太小,对于品牌等方面,倒是不太在意。而劣质的主板电容会对整个主板的稳定性造成很大的影响。这种草率的主板选择方式,也埋下了日后招来祸端的种子。
电容的作用作为保证电源对主板及相关配件供电稳定性的重要配件,电容的作用至关重要。它在主板中主要的作用就是储能、滤波、延迟,而在这其中最重要的就是滤波。随着CPU主频的提高和显卡、内存等配件耗电量的日益增大,这些设备对主板的供电要求越来越苛刻。为了保障系统的稳定,必须要保证电流的绝对纯净。而想做到这点就需要使用大容量的电容来进行滤波。主板必须要有稳定而纯净的电流供应。这就是为什么电容大部分都分布在CPU插座及主板外接电源接口附近的原因。
按照英特尔技术白皮书上的标准,主板CPU插槽附近的滤波电容单个容量最低要求为1000微法,现在大部分主板上常见电容的容量为2200微法,个别主板产品甚至采用3500微法或者更高的电容,英特尔的原厂主板之所以供电系统方面获得了一致好评,就是因为在其主板上,一般单个电容容量都在3300微法以上,这就是英特尔原厂主板极其稳定的原因之一。而一线大厂之所以产品的销售价格会高于二三线厂商,有一个原因就是其在电容方面通常都会采用红宝石、三洋、KZG等日系名厂的电容产品。毕竟在产品成本上,一线厂商投入的要更多。
电容的分类电容种类一般可大致分为陶瓷电容、电解电容、钽电容三种。根据其特点及发挥的作用分布在主板的不同位置。而电源部分所使用的电解电容和CPU附近的陶瓷电容对整块主板稳定性影响是最大的。在电源部分所使用的电解电容可以对外接电源所提供的电流进行第一波过滤,CPU及内存旁边的陶瓷电容则可以进行第二波过滤,再配合以钽电容,可以在最大程度上保持电流的纯净,进而保障系统的稳定。
根据电容同PCB板连接方式的不同,电容又可以分为贴片式及引脚式电容两种。目前主板上大部分的陶瓷电容、电解电容都在逐渐向贴片式电容转型。尽管在实际功效上几乎是没有什么区别,但引脚式电容的底端同PCB板之间的空隙,会导致使用过程中进入一些例如灰尘之类的杂质,而如果这些杂质是可以导电的话就会造成主板电路的短接,那样就会导致电容损坏甚至主板报销的后果,所以我们在选择主板时,要尽量选择使用贴片式电容的主板产品。
电容的品牌
所谓一分钱一分货,电容的品牌当然也是衡量一个电容优劣的关键因素之一。现在很多大厂主板上都使用了Rubycon、Nichicon、KZG、Sanyo、RLX等日系名厂的电容产品,而OST、RLS等台系厂商的电容产品也得到了普遍的应用,现在我们就认识一下这些品牌的电容。除了注意主板电容上的用料之外,还需考虑的一点就是主板的质保。选用劣质电容的主板在使用初期也许不会出现什么问题,但是过了一段时间后就会漏洞百出,质保三年的大厂主板可以使你免除很多售后的后顾之忧。
对于一台计算机来说,稳定性是最重要的,而电容对于整个系统的稳定起着至关重要的作用。希望此篇能够为您在选购主板时提供一些参考。
-
2007-08-30
开源软件新时代 55个经典开源Windows工具 - [技术乱谈]
开放源代码软件已经成为一个时髦的名词,这里有两个有力的证据:Firefox浏览器的下载人次超过了2500万;同时,基于Linux的Web服 务器也占据了最大的市场份额。人们普遍相信,开放源代码软件(open-source software,简称OSS)要比专有软件系统(即声明用户不能分享或修改软件的软件系统)要更安全。这可能有两个原因:首先,由于开源软件的源代码是 向所有人开放的,因此任何人都可以找出并修补它的安全漏洞;其次,开源软件的流行程度毕竟还远远比不上Microsoft公司的Windows系列软件, 因此它遭受黑客攻击的机会也要相对少很多。不过随着开源软件变得越来越流行,第二种情况可能将会发生改变。从数量上看,目前的大多数开源软件都是基于Linux系统的,Windows开源软件的开发者仍然被笼罩在Microsoft的阴影下。但Windows开源软件并不乏优秀之作,你可以访问www.opensource.org或者www.sourceforge.net这类开源软件网站,里面搜集了不少针对Windows XP的开源软件,其中当然也包括了本文涉及到的55个Windows工具。
免费的选择
在这些精彩的开源软件中,功能强大的Open Office完全能够满足人们的绝大多数办公需求;基于GNU协议的图像处理程序包Gimp足可以媲美Photoshop;所见即所得的HTML编辑器 NVU则可被看作是Dreamweaver的一个简化版;而Media Portal则是Microsoft的Windows XP Media Center Edition强有力的竞争对手。此外,本文介绍的开源软件还涉及项目管理、音频编辑、PDF转换、即时通信、FTP、加密以及系统监测等多个领域,当然 也少不了Web服务器。
开源软件已经进入了成熟期,它们功能强大而且运行稳定,你甚至可以完全利用开源软件搭建你的PC应用系统,而不用花一分钱去另外购买软件。Sun、 IBM、Novell、Red Hat甚至Microsoft公司都开始把他们自己的一些软件以开放源代码的形式发布出来,从而允许其他人对软件进行修改和再开发。比如,Novell公 司的Hula(www.hula-project.org)就是一款免费的协作服务器,它同时还提供了e-mail客户端、日历和通讯录,目前已经拥有超过25万名用户。软件许可
开放源代码究竟意味着什么?从根本上来看,如果一款软件被称为开源软件,那么它的软件代码应该以可阅读并理解的形式提供给公众,并能够通过编译器转换成可执行代码。在编译过后,你可以随意复制、分发并用于任何商业或私人用途而不用支付任何软件许可费用。
这一基本概念在“开放源代码定义”(Open Source Definition)一文中有更详细的阐述,你可以参看www.opensource.org/docs/definition.php。一般来说,开源软件都适用于GNU GPL条款(GNU General Public License,GNU通用公共许可证)。不过,也有一些软件自称是开源软件,但实际上并不是。比如, PGP公司(www.pgpi.org)声称其加密程序为开源软件,但实际上你只能阅读其源代码,对源代码的修改和编译分发仍然是不被允许的,因为该加密程序采用了IDEA专利算法。保持警惕
和商业软件一样,开源软件也同样存在不安全的因素。黑客可以对某个开源软件的源代码进行修改,比如加入打开系统后门的代码,这样他就能轻易入侵你的系统。 因此,你应该养成只从可信任的来源获取开源软件的良好习惯,比较值得信赖的地方就是官方发布网站。使用P2P网络下载开源软件是相当危险的行为,因为你很 难确保这些软件没有被别人修改过。
除了这些注意事项之外,我们相信你一定会被这些Windows XP.开源软件所折服,它们无论是从广度、深度还是软件质量上都丝毫不逊色于常见的商业软件。Open Office 2 Beta:Office套装软件
网址:www.openoffice.org
开发人员不久前刚刚把Open Office由1.1.4升级到2.0,这款Office套装软件同步推出了基于Windows、Linux和Mac OS的三个版本,2.0版本在文字处理、电子数据表、演示工具和数据库方面都进行了大量的改进,并引入了不少新功能。
除了界面变得更美观、对Microsoft Office文件的兼容性更好之外,Open Office 2还引入了一种新的文件格式——由OASIS 组织所提出的“Open Office XML Format”,这种以XML 为主体的开放文件格式也将逐渐被其他软件所支持。Open Office 2提供了网络安装模式和用户自定义安装模式,对于需要通过网络对多台机器进行软件安装的IT管理员来说相当方便。
Open Office 2首次拥有了自己的数据库组件(HSQLDB),你可以创建并管理数据库。商业用户则会受益于改进的SQL函数和更好的LDAP数据库连接性。在文字处理 方面,创建新模板变得更加方便,改进的对话框则使软件更加直观。新的宏保护机制增强了它的安全性,文字隐藏功能则可以更好地保护你的隐私。电子数据表软件 支持单元格嵌套,能够处理不超过65000行的数据,与Excel表格的兼容性也得到了加强。与前一个版本一样, Open Office 2.0也包含了与Microsoft PowerPoint近似的演示程序——Impress。
无论是对于办公用户还是家庭用户,Open Office(www.openoffice.org)都是Microsoft Office套装软件的一个很好的替代品,它还提供了一些独特的功能,比如包含了一个PDF生成工具。对于家庭用户来说,Microsoft Office的价格无疑显得过于昂贵,相比之下,Open Office要划算得多。

图1:Open Office是Microsoft Office套装软件的强有力的对手Thunderbird 1.02:邮件客户端
网址:www.mozilla.org
Microsoft的e-mail客户端Outlook和Outlook Express由于缺少安全特性且支持活动脚本,其安全性遭到了很多人的质疑。因此不少人尝试转向其他的邮件客户端程序,Mozilla Thunderbird 就是一种选择。
Thunderbird 提供了一个向导程序,能让你导入来自Outlook和Outlook Express的邮件和邮箱地址。在Thunderbird中,所有重要的功能都可以通过工具条上的按钮进行快速操作。这款邮件客户端相当易用,而且允许 你轻松地更换界面主题。快速搜索功能则允许你使用发件人或邮件主题为关键字进行搜索,并且可以按多个关键字进行分组排序显示。
Thunderbird 还集成了具备自学习功能的垃圾邮件过滤器和RSS阅读器。它对IMAP(Internet Message Access Protocol)的支持也很不错,并且你还可以通过安装插件的方式为Thunderbird添加更多的功能,下载插件的网址为https: //addons.mozilla.org/extensions。图2:Thunderbird比Outlook/Outlook Express更为安全
Ganttproject 1.11.1:项目计划工具
网址:http://ganttproject.sourceforge.net
你可以使用这款软件来制定项目计划并跟踪项目资源。Ganttproject 能够将项目的各个组成部分分层次排列,并与相应的人员和时间期限挂钩。它使用一个条状图来显示项目的进展情况,你能从中看到每项任务的预定完成时间和实际 的进度。你可以为每个项目组成员分配任务,设定任务的优先级和完成期限。Ganttproject的输出功能相当完备,不仅可以把数据保存为pdf文件和 csv电子数据表文件,还可以输出为HTML文件发布到Internet上。由于Ganttproject是一款纯Java应用程序,因此它可以运行于 Windows、Linux和Mac OS等多个平台上。图3:Ganttproject可以帮你制定项目计划并跟踪项目资源
WX Musik 0.4.1:音频播放器
网址:http://musik.berlios.de
你可以利用WX Musik管理你的音乐库,还可以利用它内置的播放器来播放音乐文件。WX Musik支持Mp3、ogg、wma、aiff、wav、ape、mpc和flac等文件格式,同时还支持Internet音频流。软件同时提供了基于 Windows和Linux的版本,安装之后它会提示你创建一个音乐库,你可以指定它去扫描包含音乐文件的文件夹。你还可以导入唱片的封面,它支持 png、 gif、jpg以及bmp 格式的图片。
WX Musik在显示音乐库中的歌曲时能够同时列出不少附加信息,比如专辑名、艺术家、歌曲长度和比特率。它还能对歌曲进行分类或排序,比如你可以选择列出最 近播放的50首歌曲或者10首播放频率最高的歌曲。其他有用的功能包括:ID3标签自动修改功能、支持逻辑查询符的搜索功能。WX Musik还可以用来收听网络电台,并允许你对电台列表进行定制。NVU 1.0:HTML编辑器
网址:www.nvu.com
NVU实际上起源于Netscape,还记得那个有点笨拙的HTML编辑器Netscape Composer吗?NVU就是在它的基础上进一步开发出来的,不过,最新版本的NVU已经不是当年的那只丑小鸭,它完全能够胜任专业网页设计工作的需 求。与FrontPage和Dreamweaver这类商业HTML编辑器一样,这款软件(目前支持Windows、Linux和Mac OS平台)同时提供了源代码直接编辑和“所见即所得”这两种网页设计环境。
NVU严格遵循W3C联盟的标准,其生成的HTML代码也相当紧凑,它 会帮你排除错误或冗余的代码。这款编辑器提供了拼写和语法检查功能,并且允许你采用不同的主题方案对界面进行定制。你可以自行创建并保存模版,还可以利用 内置的FTP客户端把页面迅速上传到Web服务器上。
图4:NVU同时提供了源代码直接编辑和“所见即所得”这两种网页设计环境Audacity 1.2.3:音频文件编辑器
网址:http://audacity.sourceforge. net/?lang=ensourceforge.net/?lang=en
有了Audacity 1.2.3这款多轨音频编辑器的帮助,你可以在Windows或Linux环境下轻松地完成音频的录制、播放、编辑、导入和输出工作。在进行编辑时,点击 几下鼠标就可以对选中的音乐片段进行剪切、复制或插入操作。如果你想将某个mp3文件插入到当前打开的音频文件中,可以使用Project|import audio命令进行导入。其他功能还包括:对多个音轨进行混合、应用音频特效以及改变音乐的播放速度。Audacity内置了28个音频滤镜,并且可以进 行扩充,它可支持VST、Ladspa和Nyquist这三种格式的插件。ID3标签编辑器和去除噪音功能让这款软件变得更加完美。如果你想把结果保存为 mp3文件,需要另行下载并安装一个Lame DLL编码器(http://lame.sourceforge.net)并通过File| Settings|File formats|Search Library指定该编码器的路径。除了编辑功能以外,Audacity 也支持从声卡的line-in端口录制声音。
图5:Audacity能够多个音轨进行混合、应用音频特效以及改变音乐的播放速度Ant Renamer 2.0.8:文件名编辑器
网址:www.antp.be
在Windows的资源管理器下更改文件名是件比较痛苦的事情,因为它缺少自动处理的功能。一旦你需要对成批文件进行改名,Windows的资源管理器就 显得力不从心了。比如,你可能需要为一批mp3文件的文件名加上统一的歌手名称,或者为一批图片文件加上时期和地点,或者需要将HTML文件名都改为小写 字母,这时候Ant Renamer就可以发挥作用了。
你可以用鼠标将选中的一批文件拖到程序窗口中,然后进行相关的设置。比如设定需要删除哪些字符、替换哪些字符以及添加数字编号等等。添加数字编号时它允许 你指定起始编号和编号增加幅度。在字符替换模式下,你可以搜索文件名中的特定字符或数字并将其替换为其他字符或数字。你还可以根据mp3标签来修改文件名 或者根据首字符的大小写情况将整个文件名统一成大写或者小写状态。
图6:需要成批修改文件名时,Ant Renamer会令你事半功倍
PDF-Creator 0.81:PDF程序
网址:http://sector7g.wurzel6.de/pdfcreator/index_en.htm
用于生成PDF文件的商业软件或共享软件已经相当丰富,但完全免费的软件还不太多见。在这里我们要向你推荐PDF-Creator,它可以作为 Windows网络打印机或者桌面打印机安装在你的系统中。这意味着你可以在任意的Windows应用程序中输出PDF文档。在打印对话框中,你可以指定 文档的名称、创建日期和作者。在Format|PDF选项下,你可以选择兼容PDF 1.2或1.4,还可以指定首选的屏幕分辨率。PDF-Creator允许你调节PDF压缩选项,从而在输出质量和文件大小之间找到一个合理的平衡点。在 输出方面,你还可以将文档输出为png、jpeg、bmp、tiff、ps(Postscript)或eps (Encapsulated Postscript)格式。如果将PDF-Creator集成到Windows资源管理器的上下文菜单中,你只需按两下鼠标就可以创建一个PDF文件。

图7:PDF-Creator可以让你在任意的Windows应用程序中输出PDF文档GnuPG:邮件加密工具
网址:www.gnupg.org
未经加密的邮件很容易被不怀好意的偷窥者看到。如果对带有敏感信息的邮件进行加密和签名,就可以大大提高安全性。使用GNU Privacy Guard(GnuPG)就可以对邮件进行加密,当然你的邮件客户端也要提供相应的支持,如果你使用的是Mozilla Thunderbird,可以到http://enigmail.mozdev.org去下载Enigmail插件,对于Outlook客户端,也可以找到相应的插件。
由于使用了公钥和私钥机制,加密后的邮件具有相当高的安全级别。每个GnuPG用户都会同时拥有一对密钥。使用公钥加密过的数据只能通过相应的私钥进行解 密。另一方面,通过你的私钥生成的数字签名可以通过相应的公钥进行解密以确认某封邮件确实出自你手。公钥一般由密钥服务器提供。如果你收到一封经 GnuPG加密后的邮件,你将看不到任何文字信息,而只有一串乱七八糟的数字和字母。如果你想看到邮件原文,你需要GnuPG的支持,当然你还得有用来解 密的私钥。即便你使用的邮件客户端不是Thunderbird或Outlook,也不用担心,在Internet上找到对应的GnuPGP 插件并不难。比如Pegasus Mail插件 (http://community.wow.net/grt/qdgpg.html)、Eudora插件(http://eudoragpg. sourceforge.net/ver2.0/en/) 和Outlook Express插件 (http://winpt.sourceforge.net/de/down load.php)。Gaim 1.4.0:即时通信工具
网址:http://gaim.sourceforge.net
目前,即时通信软件的种类相当繁多,比如AOL、MSN和Yahoo都提供了这类软件,但这几个即时通信软件之间的互联互通还相当不方便。除了同时安装这 几个即时通信软件之外,还有什么更好的办法吗?你可以试试Gaim,它是一款支持多个IM协议的即时通信工具,并同时提供了基于Linux、BSD、 Mac OS X和Windows的版本。它能够兼容Aim、ICQ (基于Oscar协议)、MSN Messenger、Yahoo、IRC、Jabber、Gadu-Gadu、SILC、Groupwise Messenger和Zephyr等即时通信软件。你可以同时用不同的账号在多个即时通信网络中登录。这意味着你可以一边与AOL Instant Messenger上的朋友聊天,一边向Yahoo Messenger上的同事发送文件,同时还能在某个IRC频道中聊天。
Gaim对这些即时通信网络的支持相当全面,除了一般的聊天之外,像文件传输、离开提示、键入提示等等都可以支持。此外,它还拥有不少独特的功能。最流行 的要算是好友提醒功能了,当某个特定的好友离开或者脱机,它会用某种方式对你进行提醒,比如发送消息、播放声音甚至运行某个程序。
图8:Gaim可以让你同时用不同的账号在多个即时通信网络中登录Mozilla Firefox:Web浏览器
网址:www.mozilla.org
Firefox浏览器应该是Mozilla迄今为止最成功的一个开源软件项目。从2004年11月到2005年2月,这款Internet Explorer的替代软件已经获得了超过2500万的下载次数(仅指官方网站和镜像网站的下载次数)。如果加上其它的下载网址以及用光盘方式发放的 Firefox,这个数量可能还会翻倍。Firefox拥有不少值得称赞的易用性功能,比如支持标签式浏览窗口、具备开放的插件接口,你可以安装广告拦截 器、Google搜索条以及其它大量插件。Firefox不支持Visual Basic脚本、ActiveX和BHO(Browser Helper Objects),相对来说不太容易遭受恶意HTML代码的攻击,当然你也不能完全高枕无忧。
图9:Firefox浏览器支持标签式浏览窗口、具备开放的插件接口Filezilla 2.2.12c:FTP软件包
网址:http://filezilla.sourceforge.net
Windows一直没能提供一个好用的FTP客户端。Filezilla是一款非常值得推荐的FTP客户端,尽管它的功能丰富,但却非常方便好用。它的界面采用了多窗格设计,可以同时显示本地硬盘的内容和远端服务器上的目录,此外还列出了常用的ftp命令。
Filezilla支持断点续传(下载和上传均支持),能绕过防火墙进行文件传输,同时也支持SSL加密传输方式。你可以通过编辑它的传输任务队列来选择 所要传输的文件或安排传输顺序。在站点管理器(Site Manager)中选择好一个服务器之后就可以开始上传或下载文件了。软件开发者在Filezilla中同时为你提供了一个FTP服务器,如果你使用的是 Windows NT、2000、XP或2003系统,可以将FTP服务器作为系统服务来运行。Media Portal 0.1.1.1:多媒体系统
网址:http://mediaportal.sourceforge.net
Media Portal提供了视频、DVD、音频播放器和电视功能。不要担心软件设置的问题,它提供了一个方便的向导程序帮助你进行各项设置,比如指定多媒体文件的 存放位置、设置TV或收音机的频道等。Media Portal支持Medion、Hauppauge、Pinnacle、Twinhan、Typhoon、ATI和Terratec的多媒体卡。在把电视 节目录制到硬盘时,你可以自行选择适当的编码方式。你还可以利用插件来扩充Media Portal的功能,比如为它增加e-mail客户端的功能。该程序需要运行于Windows XP Service Pack 1或2之上,还需要DirectX 9.0c以上版本和Microsoft .Net Framework 1.1的支持。
图11:Media Portal提供了视频、DVD、音频播放器和电视功能Freemind 0.8:Mindmap软件
网址:http://freemind.sourceforge.net
什么是Mindmap?它是由英国人托尼·巴赞创造的一种笔记方法,和传统的直线记录方法完全不同,它以直观形象的图示建立起各个概念之间的联系。在国 内,MindMap又被称为脑图或思维导图。Freemind 是一款Java程序,它可以帮你在一些随机的内容之间建立起有机的联系。
在Freemind中,首先你需要选中一个主题,然后从几个节点开始不断丰富 Mindmap的内容。每次加入新的元素,你都可以用连线将它与原有的元素联系起来。最终的Mindmap可以用HTML文档的形式输出。该软件的帮助信 息十分全面,即便你对Mindmap不太熟悉也可以按照它的提示很快掌握Mindmap概念及软件的使用。The Gimp 2.2.4:图像编辑软件
网址:www.gimp.org
这款图像编辑软件也同时提供了基于Windows、Linux和Mac OS的版本,而且比起那些商业图像编辑软件毫不逊色。刚开始你可能需要花一些时间适应它的界面,因为Gimp 的每一个界面元素——图像窗口、工具条、调色板都以单独的浮动窗口形式呈现在桌面上。如果你是Apple或Linux用户,可以选用Gimpshop(http://plasticbugs.com/index.php?p=241),它能让Gimp看上去更接近Photoshop,不过目前Gimpshop还没有提供基于Windows的版本。Gimp支持图层操作、alpha通道、渐变曲线、柱状图和色彩调节。你还可以利用滤镜、脚本和插件来增强它的功能。Health Monitor 2.1:系统监测工具
http://healthmonitor.sourceforge.net
系统管理员可以利用Health Monitor 去监控网络中的每一台工作站PC或者服务器,一旦出现问题,它可以用邮件或者短信息的方式通知你。你还可以自行指定让它监控哪些组件和服务,比如CPU利用率、剩余硬盘空间、可用内存数量等。文件夹或者文件的变动也会被记录在案,所有的监测结果会被保存在一个log文件中。插文1 :开源软件的来源
搜索开源软件并不像你想象的那么容易,因为很多下载网站并没有把免费软件和开源软件区分开来,而是把它们统称为“免费软件”。如果你想找到纯正的开源软 件,那么Sourceforge.net 网站无疑是最值得去的地方。如果你是程序开发人员,可以花39美元注册(每年),注册之后就可以访问到与软件项目有关的更多的信息,你会在邮件中收到某个 项目的子域名URL,一般的形式为projectname.sourceforge.net。如果你是个普通用户的话,也可以花同样的价钱成为注册用户, 这样你就可以获得更多的搜索功能,还可以直接获得下载速度更快的镜像服务器网址,当然,你也有权获得软件的源代码。插文2 :积极参与
即便你不是一个程序员,你也可以参与开源软件的开发过程。绝大多数开源软件项目都拥有自己的讨论组和邮件列表。如果你对软件的功能或菜单选项有什么好的建议,或者发现了bug,都可以向项目负责人进行汇报,每个用户的意见对开源软件的进一步完善都是有帮助的。最佳开源软件一览
软件名称
7-Zip 4.16 Beta
A Note 4.2.1
Abakt 0.9
Abiword 2.27
Aethera 1.21
Ant Movie Catalog 3.5
Ant Renamer 2.0.8
Audacity 1.2.3
Axcrypt 1.6.1
Blender 3D 2.36
Borg Calendar 1.4.2
Cdex 1.51
Cinepaint 0.19
Clam Win 0.83
Cool Mon 1.0.1003
Cool Player 215
Dia 0.94
Double Type 0.2.1
Egroupware 1.0.0.006
Eraser 5.7
Filezilla 2.2.12c
Firefox 1.02
Freemind 0.8
Gaim 1.4.0
Ganttproject 1.11.1
GnuPG Add-ons
Health Monitor 2.1 Monitors
Inkscape 0.41
JDictionary 1.8
Kee Pass 0.99b
Keynote 1.6.5
Media Portal 0.1.1.1
MP3 Tag Tools 1.2.008
MP3 Gain 1.2.5
NVU 1.0
Open Office 2.0 Beta
PDF-Creator 0.8.1
Poptray 3.10
PW-Gen 1.4.0
RSS-Owl 1.1
Screencopy 2.3
Syn Text Editor 2.1.0.46
Task SwitchXP Pro 1.1.2
The Gimp 2.2.4
Thunderbird 1.02
True Crypt 3.1a
True Downloader 0.82
TV-Browser 1.0.1
Virtual Dub 1.5.10
Virtual Win 2.1
VLC Media Player 0.8.1
Web HTTrack 3.33
Winroll 2.0
WX Musik 0.4.1
Xampp 1.42
功能描述
文件压缩工具,可与Windows资源管理器集成
可在Windows桌面放置便笺,并可提供闹钟提醒功能
能够以压缩方式对文档进行备份
Windows写字板的替代程序,功能有所加强
提供日历、通讯录、任务表及提醒功能,并且内置了e-mail客户端
将你收藏的DVD影碟归档,并添加说明信息
易用的文件重命名工具,并具备灵活的筛选机制
对音频文件进行编辑、优化并添加特效
对程序进行加密,可与Windows资源管理器集成
三维对象的建模、渲染
提供桌面日历、任务列表、通讯录功能,支持多用户
将音乐CD转换为wav或者mp3格式
专业的图像编辑软件
病毒扫描工具
系统检测工具
一款精简的音频播放软件
绘制图表和流程图
设计自己的Truetype字体
一款包含日历、新闻、联系人等模块的工作流系统
永久地删除硬盘中的数据
FTP客户端
Web浏览器,支持并列显示多个网页
能以直观形象的图示建立起各个概念之间的联系
同时支持ICQ、Aim、MSN、Yahoo的即时通信软件
项目管理软件,帮助你进行时间安排及资源分配
对邮件进行加密
Windows状态监测工具,出现问题时可以给出警报
向量图形设计工具,可用来绘制地图、技术图纸或公司logo
超过140万词条的百科辞典
管理你的密码
字处理软件和数据库的结合体,带有良好的搜索机制
视频、DVD、音频、图片播放工具,同时支持电视和电台广播
mp3的文件ID标签编辑工具
在不影响音质的情况下调节mp3歌曲的音量
所见即所得的HTML编辑工具,带有相当专业的网页制作功能professional web pages
文字处理、电子数据表、演示工具和数据库
可被安装为打印机并将文档输出为pdf文件
在后台监控邮件账号,当有新邮件进入时对你进行提醒alerts you to new mails
为你生成64位到128位的安全密码
RSS阅读器
屏幕拷贝工具
文本编辑器,支持多种程序语言的命令语法
扩展了Windows任务管理器的功能和外观Extend the functionality and appearance of the task manager
支持图层管理、特效润饰的图像编辑软件
e-mail客户端,支持Imap/Pop3账户,带有垃圾邮件过滤器和虚拟文件夹
对文件或硬盘分区进行加密,也可以对U盘等移动存储介质进行加密
FTP和HTTP链接的下载管理工具,可以监视剪贴板
自动更新每天的电视节目表
视频编辑和捕获软件,支持mpeg-1和avi视频格式
可管理最多9个虚拟桌面,你可以用热键进行桌面切换
媒体播放器,支持DVD、VCD、CD、mpeg和DivX等格式
离线浏览器,可将Internet网页保存到本地硬盘中
点击标题栏后就可将程序窗口最小化
音频播放及管理软件
Web服务器软件包,包含Apache、PHP和MySQL
网址
www.7-zip.org
http://a-note.sourceforge.net
www.xs4all.nl/~edienske
www.abisource.com
www.thekompany.com/home
www.antp.be
www.antp.be
http://audacity.sourceforge.net
http://axcrypt.sourceforge.net
www.blender3d.com
http://borg-calendar.sourceforge.net
http://cdexos.sourceforge.net
http://cinepaint.sourceforge.net
http://clamwin.sourceforge.net
www.coolmon.org
http://coolplayer.sourceforge.net
www.gnome.org/projects/dia
http://doubletype.sourceforge.net
www.egroupware.org
www.heidi.ie
http://filezilla.sourceforge.net
www.firefox-browser.de
http://freemind.sourceforge.net
http://gaim.sourceforge.net
http://ganttproject.sourceforge.net
www.gnupg.org
http://healthmonitor.sourceforge.net
www.inkscape.org
www.jdictionary.info
http://keepass.sourceforge.net
www.tranglos.com
http://mediaportal.sourceforge.net
http://massid3lib.sourceforge.net
http://mp3gain.sourceforge.net
www.mozilla.nightrat.net/nvu
www.openoffice.org
http://sector7g.wurzel6.de/pdfcreator/index_en.htm
http://poptray.crause.co.za
http://sourceforge.net/projects/pwgen-win
www.rssowl.org
http://smartision-sc.sourceforge.net
http://syn.sourceforge.net
http://taskswitchxp.sourceforge.net
www.gimp.org
www.thunderbird-mail.de
http://truecrypt.sourceforge.net
http://francis.dupont.free.fr/truedownloader
www.tvbrowser.org
www.virtualdub.org
http://virtuawin.sourceforge.net
www.videolan.org
www.httrack.com
www.palma.com.au/winroll
http://musik.berlios.de
www.apachefriends.org
-
2007-08-24
世界上最强大的超级计算机 - [技术乱谈]
计算机可不仅仅是放在我们桌子上或者大腿上的样子;我们天天讨论的各种硬件,甚至是发烧级的硬件在某些时候看来仅仅就是不入流的小儿科。普通的计算机就已经让我们的生活发生了很大的变化,其实在我们生活的背后还有一些更为强大的超级计算机,默默的让我们的生活发生着更为巨大的变化。
在这里先跟大家解释一个名词:Teraflop,万亿次浮点计算。在超级计算领域,浮点计算(flop)是一个缩写,其完整的含意为“每秒浮点计算次数”(FLoating point Operations Per Second),是一种计算机执行浮点计算能力的衡量标准。万亿次计算即为每秒一万亿次浮点计算。7. Tera-10——法国原子能署
Bull SA为法国原子能署建造的这台Tera-10,在世界上最快的500台计算机排行榜中名列第七。Tera-10由544台Bull的NovaScale 6160服务器组成,每一台这样的服务器都配有8颗双核Intel安腾(Itanium)处理器,运行速度大约是42.9万亿次浮点计算。这台超级计算机使用Linux操作系统,用来模拟原子能试验。
(Tera-10)
(Tera-10)
(Tera-10)6. Thunderbird——美国圣地亚国家实验室Dell公司开发的Thunderbird是一台拥有8960颗处理器的Linux集群服务器,目前放置在美国新墨西哥州阿布奎基的圣地亚国家实验室,这一个国家级的原子能安全管理实验室。这一部集群服务器执行多个中型任务的表现要比执行单一大型任务出色的多。Thunderbird达到53.0万亿次浮点计算的速度,使得它在世界上最快的500台计算机排行榜中名列第六。目前这台超级计算机主要用来模拟武器的性能、半导体设备的辐射状况、极端环境下的武器安全性能等等工作。
(Thunderbird)5. MareNostrum——巴塞罗那超级计算中心MareNostrum是目前欧洲最强大的超级计算机,它拥有10240颗处理器,峰值计算速度能够达到94.21万亿次浮点计算。组成MareNostrum的2560台JS21刀片式计算结点占据了大约半个篮球场(120平米)的面积,现在位于西班牙的巴塞罗那超级计算中心。MareNostrum目前的应用相当广泛,包含人类基因的研究、天气预报、药品研究等等领域。
(MareNostrum)
(MareNostrum)
(MareNostrum)
(MareNostrum)
(MareNostrum)
(MareNostrum)4. ASC Purple——美国劳伦斯利弗莫尔国家实验室ASC Purple是美国劳伦斯利弗莫尔国家实验室和IBM通力合作的结晶。其峰值100万亿次浮点计算的能力,来源于196台IBM Power5 SMP服务器冗余环的强大性能。实际上这台超级计算机总共拥有12544颗微处理器,50TB的内存和2PB的磁盘存储空间。ASC Purple目前被用来模拟测试核武器的性能,而过去常常需要通过底下核试验才能测得。
(ASC Purple)
(ASC Purple)
(ASC Purple)3. BGW (Blue Gene/W)——IBM华生研究中心
在IBM的华生研究中心,可以找到这部叫做Blue Gene/W或BGW的超级计算机,其峰值的运行速度可以达到114万亿次浮点计算。组成Blue Gene/W的是20台冰柜那样的架子组成,每一个架子里面包含1024个节点,每一个节点拥有两个700MHz的Power 440处理器和512MB的内存。Blue Gene/W的主要工作是进行科学计算,例如生物学模拟、蛋白质折叠和其他IBM科学家的研究工作。
(BGW)
(BGW)
(BGW)2. Red Storm——美国圣地亚国家实验室Red Storm是Cray公司和圣地亚国家实验室联合设计的并行处理超级计算机,其主要应用是模拟测试核武器的储备情况,包括设计替换的成分、模拟测试在不同环境下各个部分的情况、帮助武器工程师和科学家进行辅助计算等等。
(Red Storm)
(Red Storm)
(Red Storm)
(Red Storm)1. Blue Gene/L——美国劳伦斯利弗莫尔国家实验室
Blue Gene/L是目前世界常最快的超级计算机,其峰值速度能够达到360万亿次浮点计算。这台超级计算机内部拥有65536颗处理器,同样运行着Linux操作系统。这是IBM公司、利弗莫尔实验室和美国能源部联合制作完成的超级计算机,由于采用了基于单元的设计结构,使之能够随时添加计算单元而不需要担心遭遇瓶颈的问题。最近,Blue Gene/L因为执行一项与半个老鼠大脑一样复杂的脑皮层模拟而被进一步关注,半个老鼠大脑拥有800万神经元细胞,每一个细胞与其他神经纤维之间有8000个链接。除此之外,Blue Gene/L通常用来模拟包括蛋白质在内的生物化学过程。
(Blue Gene/L) -
2007-08-16
[转]ipvsadm命令参考 - [技术乱谈]
由 wensong 在 周四, 2006-02-16 19:05 提交 对ipvsadm 的命令参考,并根据自己使用的经验,进行了一个简单的翻译,希望对ipvsadm 的使用者有一定的帮助。
为了更好的让大家理解这份命令手册,将手册里面用到的几个术语先简单的介绍一下:
1,virtual-service-address:是指虚拟服务器的ip 地址
2,real-service-address:是指真实服务器的ip 地址
3,scheduler:调度方法
(lna@networksbase.com 翻译 ipvsadm v1.21 2004 年4 月)
ipvsadm 的用法和格式如下:
ipvsadm -A|E -t|u|f virutal-service-address:port [-s scheduler] [-p
[timeout]] [-M netmask]
ipvsadm -D -t|u|f virtual-service-address
ipvsadm -C
ipvsadm -R
ipvsadm -S [-n]
ipvsadm -a|e -t|u|f service-address:port -r real-server-address:port
[-g|i|m] [-w weight]
ipvsadm -d -t|u|f service-address -r server-address
ipvsadm -L|l [options]
ipvsadm -Z [-t|u|f service-address]
ipvsadm --set tcp tcpfin udp
ipvsadm --start-daemon state [--mcast-interface interface]
ipvsadm --stop-daemon
ipvsadm -h
命令选项解释:
有两种命令选项格式,长的和短的,具有相同的意思。在实际使用时,两种都可以。
-A --add-service 在内核的虚拟服务器表中添加一条新的虚拟服务器记录。也就是增加一台新的虚拟服务器。
-E --edit-service 编辑内核虚拟服务器表中的一条虚拟服务器记录。
-D --delete-service 删除内核虚拟服务器表中的一条虚拟服务器记录。
-C --clear 清除内核虚拟服务器表中的所有记录。
-R --restore 恢复虚拟服务器规则
-S --save 保存虚拟服务器规则,输出为-R 选项可读的格式
-a --add-server 在内核虚拟服务器表的一条记录里添加一条新的真实服务器记录。也就是在一个虚拟服务器中增加一台新的真实服务器
-e --edit-server 编辑一条虚拟服务器记录中的某条真实服务器记录
-d --delete-server 删除一条虚拟服务器记录中的某条真实服务器记录
-L|-l --list 显示内核虚拟服务器表
-Z --zero 虚拟服务表计数器清零(清空当前的连接数量等)
--set tcp tcpfin udp 设置连接超时值
--start-daemon 启动同步守护进程。他后面可以是master 或backup,用来说明LVS Router 是master 或是backup。在这个功能上也可以采用keepalived 的VRRP 功能。
--stop-daemon 停止同步守护进程
-h --help 显示帮助信息
其他的选项:
-t --tcp-service service-address 说明虚拟服务器提供的是tcp 的服务
[vip:port] or
-u --udp-service service-address 说明虚拟服务器提供的是udp 的服务
[vip:port] or
-f --fwmark-service fwmark 说明是经过iptables 标记过的服务类型。
-s --scheduler scheduler 使用的调度算法,有这样几个选项
rr|wrr|lc|wlc|lblc|lblcr|dh|sh|sed|nq,
默认的调度算法是: wlc.
-p --persistent [timeout] 持久稳固的服务。这个选项的意思是来自同一个客户的多次请求,将被同一台真实的服务器处理。timeout 的默认值为300 秒。
-M --netmask netmask persistent granularity mask
-r --real-server server-address 真实的服务器
-g --gatewaying 指定LVS 的工作模式为直接路由模式(也是LVS 默认的模式)
-i --ipip 指定LVS 的工作模式为隧道模式
-m --masquerading 指定LVS 的工作模式为NAT 模式
-w --weight weight 真实服务器的权值
--mcast-interface interface 指定组播的同步接口
-c --connection 显示LVS 目前的连接 如:ipvsadm -L -c
--timeout 显示tcp tcpfin udp 的timeout 值 如:ipvsadm -L --timeout
--daemon 显示同步守护进程状态
--stats 显示统计信息
--rate 显示速率信息
--sort 对虚拟服务器和真实服务器排序输出
--numeric -n 输出IP 地址和端口的数字形式 -
2007-08-15
[转]win键的组合 - [技术乱谈]
Windows 95的键盘比原先的键盘上多出了三个键,其中有两个Windows键和一个Application键,Windows键也就是飘着Microsoft Windows大旗的那个键,它们分布在键盘的两侧 ,使用它能够简化一些操作。如在Windows XP中在任何时候按下Win+L(L是LockStation之意)键都可以锁定计算机。大家可以试一试,一定会有惊喜!其实,Win键的使用技巧有些报纸、杂志介绍得不全。今将它们一一罗列,供大家参考:
Win+F1
打开Windows的帮助文件;
Win+F
打开Windows的查找文件窗口;
Win+E
打开Windows的资源管理器;
Win+Break
打开Windows的系统属性窗口;
Win+M
最小化所有打开的Windows的窗口;
Win+Shift+M
恢复所有最小化的Windows的窗口;
Win+U
打开Windows工具管理器;
Win+Ctrl+F
打开Windows查找计算机窗口;
Win+D
快速显示/隐藏桌面;
Win+R
打开运行对话框,重新开始一个Windows任务。
巧妙地利用它们能够简化我们的操作。 -
2007-08-12
[转]常用的Linux快捷键[译] - [技术乱谈]
常用的Linux快捷键 [译]
转自:http://www.lirui.name/post/22.html
本文原文是英文,我只做了翻译和一点整理工作。感谢 Pio 大侠!原文作者还在不停的更新这个帖子: 点击这里查看原文出处 目前的翻译稿基于2006年11月6日原稿。可以到原作者的Blog上去提供您所知道的一些快捷键,我也会和作者同步更新。
翻译开始:
Linux下有很多对于简化用户使用过程很有帮助的快捷键,下面做个简单的介绍:在控制台/虚拟终端下
-
-
-关闭计算机
-
(
,
,
,…) - 切换到第n个控制台
-
或者
-
- 切换到上/下一个虚拟终端
- 锁定终端的输入/输出-当屏幕输出滚动过快的时候可以用这个键给屏幕定格,再按一次
解除锁定。 也可以用另外一种方法实现这个功能,使用
-
锁定屏幕,使用
-
解除锁定。如果你的控制台突然出现了不明原因无响应也可以尝试一下后面的这个解锁快捷键,也许是因为你无意中触发了CTRL-S导致屏幕假死。
-
或者
-
- 上、下滚动控制台缓存。这个功能在
启动的时候也是管用的。 在使用 (
-
) 更换控制台后缓存内容就被删除了,所以滚动无效。
-
-刷新屏幕。
-
或者
-
-杀死当前任务
-
- 作用是 EOF 即文件末尾(End-of-file)。如果你的光标处在一个空白的命令行上,将会退出bash,比你用exit命令退出要快得多。
-
- 暂停进程。使用命令:bg在后台运行或者使用fg在前端运行。
Bash & command-line
-
- 把光标移动到命令行最开始的地方。
-
- 把光标移动到命令行末尾。
-
- 清除命令行中光标所处位置之前的所有字符。
-
- 清除左边的字段
-
- 将会贴上被
-
或者
-
或者
-
清除的部分。
-
- 将自动在命令历史缓存中增量搜索后面入的字符。
- 命令行自动补全-自动补全当前的命令行。如果启用自动补全脚本命令参数和选项也可以自动补齐。




























