Friday, October 3, 2008

9月份编程语言排行榜发布 Delphi东山再起 - 软件之家

TIOBE编程语言9月份榜单发布,Delphi经过几个月持续上升后终于返回前10名,Ruby下降一位排名第11.前10名其他语言排位没有变化。



Position
Sep 2008 Position
Sep 2007 Delta in Position Programming Language Ratings
Sep 2008 Delta
Sep 2007 Status
1 1 Java 20.715% -0.99% A
2 2 C 15.379% +0.47% A
3 5 C++ 10.716% +0.78% A
4 3 (Visual) Basic 10.490% -0.26% A
5 4 PHP 9.243% -0.96% A
6 8 Python 5.012% +1.99% A
7 6 Perl 4.841% -0.58% A
8 7 C# 4.334% +0.75% A
9 9 JavaScript 3.130% +0.41% A
10 14 Delphi 3.055% +1.83% A
11 10 Ruby 2.762% +0.70% A
12 13 D 1.265% -0.11% A
13 11 PL/SQL 0.700% -1.16% A--
14 12 SAS 0.640% -0.76% B
15 23 ActionScript 0.472% +0.07% B
16 16 Lisp/Scheme 0.419% -0.21% B
17 18 Lua 0.415% -0.16% B
18 22 Pascal 0.400% -0.03% B
19 - PowerShell 0.384% 0.00% B
20 17 COBOL 0.360% -0.27% B


Position Programming Language Ratings
21 Logo 0.357%
22 Ada 0.349%
23 Fortran 0.303%
24 ABAP 0.280%
25 MATLAB 0.255%
26 RPG (OS/400) 0.247%
27 FoxPro/xBase 0.217%
28 Prolog 0.210%
29 Transact-SQL 0.204%
30 Awk 0.194%
31 LabVIEW 0.170%
32 PL/I 0.167%
33 DC 0.165%
34 Euphoria 0.148%
35 Haskell 0.124%
36 Smalltalk 0.123%
37 Tcl/Tk 0.122%
38 REXX 0.116%
39 Groovy 0.115%
40 Bourne shell 0.113%
41 ML 0.112%
42 Forth 0.107%
43 Objective-C 0.105%
44 Erlang 0.105%
45 CL (OS/400) 0.096%
46 Alice 0.092%
47 Scala 0.090%
48 Natural 0.080%
49 Caml 0.076%
50 APL 0.072%
Category Ratings September 2008 Delta September 2007
Object-Oriented Languages 57.6% +4.7%
Procedural Languages 39.9% -3.4%
Functional Languages 1.9% -0.2%
Logical Languages 0.7% -1.1%


Category Ratings September 2008 Delta September 2007
Statically Typed Languages 59.1% +2.0%
Dynamically Typed Languages 40.9% -2.0%

Wednesday, October 1, 2008

算一下美国金融危机有多严重

算一下美国金融危机有多严重 (wenxuecity.com)

危言


对金融危机最普遍的官方解释是次贷问题,然而次贷总共不过几千亿,而美国政府救市资金早已到了万亿以上,为什么危机还是看不到头?有文章指出危机的根源是金融机构采用“杠杆”交易;另一些专家指出金融危机的背后是62万亿的信用违约掉期(Credit Default Swap, CDS)。那么,次贷,杠杆和CDS之间究竟是什么关系?它们之间通过什么样的相互作用产生了今天的金融危机?在众多的金融危机分析文章中,始终没有看到对这些问题的简单明了的解释。本文试图通过自己的理解为这些问题提供一个答案,为通俗易懂起见,我们使用了几个假想的例子。有不恰当之处欢迎批评讨论。

一。杠杆。目前,许多投资银行为了赚取暴利,采用20-30倍杠杆操作,假设一个银行A自身资产为30亿,30倍杠杆就是900亿。也就是说,这个银行A以 30亿资产为抵押去借900亿的资金用于投资,假如投资盈利5%,那么A就获得45亿的盈利,相对于A自身资产而言,这是150%的暴利。反过来,假如投资亏损5%,那么银行A赔光了自己的全部资产还欠15亿。

二。CDS合同。由于杠杆操作高风险,所以按照正常的规定,银行不运行进行这样的冒险操作。所以就有人想出一个办法,把杠杆投资拿去做“保险”。这种保险就叫CDS。比如,银行A为了逃避杠杆风险就找到了机构B。机构B可能是另一家银行,也可能是保险公司,诸如此类。A对B说,你帮我的贷款做违约保险怎么样,我每年付你保险费5千万,连续10年,总共5亿,假如我的投资没有违约,那么这笔保险费你就白拿了,假如违约,你要为我赔偿。A想,如果不违约,我可以赚45亿,这里面拿出5亿用来做保险,我还能净赚40亿。如果有违约,反正有保险来赔。所以对A而言这是一笔只赚不赔的生意。B是一个精明的人,没有立即答应A的邀请,而是回去做了一个统计分析,发现违约的情况不到1%。如果做一百家的生意,总计可以拿到500亿的保险金,如果其中一家违约,赔偿额最多不过50亿,即使两家违约,还能赚400亿。A,B双方都认为这笔买卖对自己有利,因此立即拍板成交,皆大欢喜。

三。CDS市场。B做了这笔保险生意之后,C在旁边眼红了。C就跑到B那边说,你把这100个CDS卖给我怎么样,每个合同给你2亿,总共200亿。B想,我的400亿要10年才能拿到,现在一转手就有200亿,而且没有风险,何乐而不为,因此B和C马上就成交了。这样一来,CDS就像股票一样流到了金融市场之上,可以交易和买卖。实际上C拿到这批CDS之后,并不想等上10年再收取200亿,而是把它挂牌出售,标价220亿;D看到这个产品,算了一下,400亿减去220亿,还有180亿可赚,这是“原始股”,不算贵,立即买了下来。一转手,C赚了20 亿。从此以后,这些CDS就在市场上反复的抄,现在CDS的市场总值已经抄到了62万亿美元。

四。次贷。上面 A,B,C,D,E,F....都在赚大钱,那么这些钱到底从那里冒出来的呢?从根本上说,这些钱来自A以及同A相仿的投资人的盈利。而他们的盈利大半来自美国的次级贷款。人们说次贷危机是由于把钱借给了穷人。笔者对这个说法不以为然。笔者以为,次贷主要是给了普通的美国房产投资人。这些人的经济实力本来只够买自己的一套住房,但是看到房价快速上涨,动起了房产投机的主意。他们把自己的房子抵押出去,贷款买投资房。这类贷款利息要在8%-9%以上,凭他们自己的收入很难对付,不过他们可以继续把房子抵押给银行,借钱付利息,空手套白狼。此时A很高兴,他的投资在为他赚钱;B也很高兴,市场违约率很低,保险生意可以继续做;后面的C,D,E,F等等都跟着赚钱。

五。次贷危机。房价涨到一定的程度就涨不上去了,后面没人接盘。此时房产投机人急得像热锅上的蚂蚁。房子卖不出去,高额利息要不停的付,终于到了走头无路的一天,把房子甩给了银行。此时违约就发生了。此时A感到一丝遗憾,大钱赚不着了,不过也亏不到那里,反正有B做保险。B也不担心,反正保险已经卖给了C。那么现在这份CDS保险在那里呢,在G手里。G刚从F手里花了300亿买下了 100个CDS,还没来得及转手,突然接到消息,这批CDS被降级,其中有20个违约,大大超出原先估计的1%到2%的违约率。每个违约要支付50亿的保险金,总共支出达1000亿。加上300亿CDS收购费,G的亏损总计达1300亿。虽然G是全美排行前10名的大机构,也经不起如此巨大的亏损。因此G 濒临倒闭。

六。金融危机。如果G倒闭,那么A花费5亿美元买的保险就泡了汤,更糟糕的是,由于A采用了杠杆原理投资,根据前面的分析,A 赔光全部资产也不够还债。因此A立即面临破产的危险。除了A之外,还有A2,A3,...,A20,统统要准备倒闭。因此G,A,A2,...,A20一起来到美国财政部长面前,一把鼻涕一把眼泪地游说,G万万不能倒闭,它一倒闭大家都完了。财政部长心一软,就把G给国有化了,此后A,...,A20的保险金总计1000亿美元全部由美国纳税人支付。

七。美元危机。上面讲到的100个CDS的市场价是300亿。而CDS市场总值是62万亿,假设其中有10%的违约,那么就有6万亿的违约CDS。这个数字是300亿的200倍。如果说美国政府收购价值300亿的CDS之后要赔出1000 亿。那么对于剩下的那些违约CDS,美国政府就要赔出20万亿。如果不赔,就要看着A20,A21,A22等等一个接一个倒闭。无论采取什么措施,美元大贬值已经不可避免。


以上计算所用的假设和数字同实际情况会有出入,但美国金融危机的严重性无法低估。

Thursday, September 18, 2008

Visual Studio 2008下载地址汇总及相关注册破解方法. - 小小菜鸟的web菜园子 - 博

Visual Studio 2008下载地址汇总及相关注册破解方法.

一、Visual Studio 2008 Team Suite(90天试用版)下载地址:
http://download.microsoft.com/download/d/8/9/d89c9839-ac45-4a6c-b25f-2f60b190e356/VS2008TeamSuiteENU90DayTrialX1429235.iso
(Visual Studio 2008 Professional Edition的正式版目前还没有发布,期待中....不过,有了Team Suite就不必想Pro的了吧,呵呵)
.NET框架3.5版下载地址:
http://download.microsoft.com/download/7/0/3/703455ee-a747-4cc8-bd3e-98a615c3aedb/dotNetFx35setup.exe

二、Visual Studio Express Edition下载地址列表:
1. 网络安装包下载
Visaul Web Developer 2008 Express Edition下载地址:
http://download.microsoft.com/download/d/c/3/dc3439e7-5533-4f4c-9ba0-8577685b6e7e/vnssetup.exe
Visual Basic 2008 Express Edition下载地址:
http://download.microsoft.com/download/d/c/3/dc3439e7-5533-4f4c-9ba0-8577685b6e7e/vbsetup.exe
Visual C# 2008 Express Edition下载地址:
http://download.microsoft.com/download/d/c/3/dc3439e7-5533-4f4c-9ba0-8577685b6e7e/vcssetup.exe
Visual C++ 2008 Express Edition下载地址:
http://download.microsoft.com/download/d/c/3/dc3439e7-5533-4f4c-9ba0-8577685b6e7e/vcsetup.exe

2. 离线安装DVD包:
Visual Studio 2008 Express Edition DVD ISO下载地址:
http://download.microsoft.com/download/8/B/5/8B5804AD-4990-40D0-A6AA-CE894CBBB3DC/VS2008ExpressENUX1397868.iso
(包含:Visaul Web Developer 2008 Express Edition、Visual Basic 2008 Express Edition、Visual C# 2008 Express Edition、Visual C++ 2008 Express Edition)

Visual Studio 2008 Team Suite Edition的注册或是破解很简单,有两种方法:
1. 安装完90天试用版后,在“添加或删除应用程序”,删除vs 2008,点击“卸载”,在卸载里有让输入序列号的地方,把正式版的序列号PYHYP-WXB3B-B2CCM-V9DX9-VDY8T输入进去就行了。
2. 这种方法也是序列号的问题,把iso文件中的setup文件夹中的setup.sdb文件中的[Product Key]下的一行的原来的序列号换为能用的正式版的序列号就行了。如:
[Product Key]
PYHYPWXB3BB2CCMV9DX9VDY8T

Sunday, September 14, 2008

Ubuntu - Enable mod_rewrite in Apache server

(http://www.huanix.com/2007/04/18/mod_rewrite-for-apache2-in-ubuntu-feisty-fawn-704/)

mod_rewrite is a module for the Apache webserver that allows apache to dynamically change the url of a site using php (or other scripting languages). It seems like a difficult/confusing task at first, but it actually only takes 2 steps in Ubuntu 8.04. Any code snippets should be typed into a terminal. “sudo” commands require a password, that’s a given.

  1. Enable mod_rewrite in Apache
    sudo a2enmod rewrite
  2. Edit the configuration file.
    1. sudo gedit  /etc/apache2/sites-available/default
    2. line 12 says “AllowOverride none” ;
    3. change it to “AllowOverride all”
    4. save and close
  3. Okay… one last step — you have to manually restart Apache (or restart your computer!)
  4. sudo apache2 -k restart

All done! now Apache and php can create URL’s on the fly - pretty neato!

Friday, September 12, 2008

2008年度最佳开源软件大奖

----------------------------------------------------------------------------------------------
InfoWorld 历年的开源软件大奖都相当有分量,不过国内知道或者关注这个奖项的用户并不是特别多。InfoWorld 2008年的“开源软件大奖”最新出炉,CHIP软件社区乘此机会将InfoWorld 2008年的“开源软件大奖”中文化并进行整理,希望能够为中国用户带来便利,也希望能够为开源社区共享绵薄之力。
由于InfoWorld的评选软件范围广、类别多,很多时候在同一个类别中,桌面版软件和服务器版软件常常混杂在一起,限于时间和水平,这个专题的组织和本地化肯定有不妥甚至是错漏之处,欢迎用户和网友批评指正。


协同类软件、开发工具

一、collaboration|协同类软件
InfoWorld评选的协同(collaboration)类软件主要包括社会化软件、BLOG系统、日程和邮件系统管理平台构建系统等软件,共5个产品入选。
1. elgg:社会性网络构建平台
elgg作为一个社会性网络构建平台,一经问世,即好评如潮,更有人将其与大名鼎鼎的moodle相提并论。这个平台不仅获得了2007年最佳社会性网络开源CMS平台的荣誉,在今年得到了info world的最高评价。点击这里下载elgg

2. MediaWiki:Wiki应用构建平台

说MediaWiki是最佳的Wiki应用构建平台,恐怕没有人会反对吧?风靡全球的Wikipedia已经可以充分证明MediaWiki的强大。点击这里下载MediaWiki

3. Scalix:邮件和日程协同管理
提到开源的邮件和日程协同管理软件,不少人会想到Zimbra,不过info world 2008年选择的是Scalix。关于Scalix的更多信息,访问这里:http://www.scalix.com

4. VNC:远程管理软件
最佳开源远程管理软件是VNC,嗯,这个软件入选算是毫无悬念,还有一个软件是TeamViewer,也是非常优秀的作品,不过不是开源的。点击这里下载VNC

5. WordPress:BLOG系统构建软件
BLOG系统构建软件WordPress,这个应该没有任何疑问,WordPress几乎统治了PHP+MYSQL构建BLOG的世界,这个产品无论在品质、更新速度、插件数量、模板数量、用户数量……等很多方面都首屈一指。点击这里下载WordPress
----------------------------------------------------------------------------------------------
二、developer tools|开发工具
InfoWorld评选的开发工具包括了富Internet应用开发套件、AJAX应用开发套件、业务规则管理系统(business rule management system)、版本控制软件、Web service测试工具等,共8个产品入选。
1. db4o:面向对象数据库引擎
db4o是一个开源的纯面向对象数据库引擎,对于Java与.NET开发者来说都是一个简单易用的对象持久化工具,使用简单。点击这里下载db4o

2. Git:版本控制软件
InfoWorld 2008选择的开源版本控制软件是Git,我对这个软件真是不太了解,以前接触和听说更多的是subversion和CVS。翻了一下资料,发现 Linux Kernel、Wine、Ruby On Rails等软件用的版本控制软件就是Git,想必这个软件还是有过人之处的。点击这里下载Git

3. HttpClient:Http协议组件包
HttpClient是Apache Jakarta Common下的子项目,用来提供高效的、最新的、功能丰富的支持HTTP协议的客户端编程工具包,并且它支持HTTP协议最新的版本和建议。点击这里下载HttpClient

4. TBB:多核CPU优化开发
为了使并行编程更容易和更简便,英特尔发布了作为开放资源项目的英特尔Intel Threading Building Blocks2.0 (Intel TBB),作为多核开放资源应用程序的一个解决方案。点击这里下载TBB

5. JBoss Drools:业务规则引擎
JBoss Drools是一款开源的业务规则引擎,它的设计目的是允许插件式的语言实现。它使用脚本方式将规则集中写在规则库文件当中,使得设计人员更容易管理。点击这里下载JBoss Drools

6. Flex:富Internet应用构建
InfoWorld把“富Internet应用构建”这个奖项颁给了Adobe——准确来说是Adobe开源Flex的行为,通过开源,Flex开发者可以通过阅读研究Flex源码,更深刻的理解Flex并进一步增强它,从而在Flex平台上创造出更多更出色的应用。点击这里下载Adobe Flex 3 SDK

7. Prototype:JS基础框架
WOW,Prototype能够得到如此高的评价真是有点让人惊讶呢,是不是?当然,今天的Prototype已经不是一个单纯的js代码库了,它上升到了框架的高度。点击这里下载Prototype

8. SoapUI:Web Services测试工具
这是一款先进的Web Services测试工具,它既可以当作独立的桌面软件使用,也可以通过插件方式与Eclipse等IDE相整合。点击这里下载SoapUI

网络应用、平台和中间件

三、networking|网络应用
InfoWorld评选的网络应用包括了IP电话、VOIP电话系统、日志文件分析、WIFI信号扫描等软件,共8个产品入选。
1. Asterisk:软VOIP电话系统解决方案
Asterisk是一个应用于VoIP的开放源代码PBX系统(Private Branch eXchange,公司/机构用于连接专用和公用电话网络的现场数字或模拟电话交换台)它提供了呼叫转移、故障转移、IPv6支持、通话监控、通话排队、查询以及其他多种功能。点击这里下载Asterisk

2. AWStats:日志分析工具
AWStats主要通过读取IIS、Apache等服务器的日志信息,从而能够对网站、FTP服务器、邮件服务器进行各方面的信息统计和分析,并以图形化的方式展现出来,无论搭建还是使用都很方便。点击这里下载AWStats

3. inSSIDer:WIFI网络扫描软件
inSSIDer 在国内的知名度远远不如NetStumbler——甚至都没有人知道inSSIDer这个软件,而NetStumbler的汉化版已经满地都是了。在 CHIP看来,NetStumbler的功能其实比inSSIDer更加强大,inSSIDer胜在界面直观,简单易用。点击这里下载inSSIDer

4. Nagios:系统和网络的应用监控程序
Nagios是一个监控系统和网络的应用程序,它可以监控的信息包括:网络服务(SMTP、POP3、HTTP、NNTP、PING 等)、主机资源(处理器负载、磁盘使用情况等)、在服务或主机产生问题和修复时通知用户。点击这里下载Nagios

5. NDISwrapper:Linux系统使用Windows的WIFI驱动
NDISwrapper事实上是为了解决在Linux下没有WIFI设备驱动但又想使用WIFI设备的用户准备的,它可以欺骗WIFI设备,让设备以为是在Windows环境下工作,用户从而不用再担心驱动的问题。点击这里下载NDISwrapper

6. Vyatta:路由器/防火墙
Vyatta是一份完整的、即刻可用的、基于Debian的发行,它被设计为能将一套标准的x86硬件转换为企业级的路由器/防火墙。点击这里下载Vyatta

7. Wireshark:网络嗅探
Ethereal 和在Windows系统中常用的sniffer pro并称网络嗅探工具双雄,不过和sniffer pro不同的是Ethereal在Linux类系统中应用更为广泛。而Wireshark软件则是Ethereal的后续版本,他是在Ethereal被 收购后推出的最新网络嗅探软件,在功能上比前身更加强大。点击这里下载Wireshark

8. Zenoss Core:网络监控软件
在网络监控软件中,InfoWolrd 2008的获奖产品是Zenoss Core,这个产品最大的特色是功能丰富且简单易用——它的安装完全是普通桌面软件的向导方式,信息报告和反馈也是完全的图形化方式,直观有效。点击这里下载Zenoss Core
----------------------------------------------------------------------------------------------
四、platforms and middleware|平台和中间件
InfoWorld评选的平台和中间件包括了操作系统、桌面虚拟化、数据库、应用整合等, 共9个产品入选。
1. CentOS:服务器操作系统
CentOS 是RHEL(Red Hat Enterprise Linux)源代码再编译的产物,而且在RHEL的基础上修正了不少已知的Bug,相对于其他Linux发行版,其稳定性值得信赖,今天的CentOS已 经被很多Linux用户和网络管理员认定为最好的开源服务器操作系统之一。
CentOS的容量大概为600MB,需要的用户可以去http://centos.org/modules/tinycontent/index.php?id=15 下载,那里有非常多的镜像站点可供选择。

2. JBossESB:SOA业务组件
JBossESB是SOA的一个关键组件,它作为企业应用程序、业务服务、业务组件与中间件交互的一个媒介,对实现整合及业务流程自动化起重要作用。
个人用户很少会知道这个产品,这里就略过不谈吧,想了解更多信息,请访问:http://www.jboss.org/jbossesb/

3. MYSQL:数据库平台
InfoWorld 在2008年选择了MYSQL而不是SQLite,这多少会令SQLite的粉丝感到遗憾,不过想想也是,想在全球有多少成功的项目是构建在MYSQL之 上的啊,光是这一点,SQLite就绝难和MYSQL抗衡,并且在被SUN收购以后,MYSQL更加成熟和壮大。点击这里下载MYSQL

4. phpMyAdmin:最佳开源MySQL管理工具
由于MYSQL的成功,MYSQL的管理软件也附带着“沾光”,这不,MYSQL的管理软件phpMyAdmin就获得了InfoWorld 2008最佳开源MySQL管理工具的荣誉。点击这里下载phpMyAdmin

5. Puppy Linux:小操作系统
InfoWorld把2008年的Small-footprint OS操作系统颁给了Puppy Linux,也许有人会说Damn Smal Linux更加小巧和值得推荐。不过Puppy Linux的定制版更多,系统中集成的应用相对更加丰富。点击这里下载Puppy Linux

6. Jitterbit:数据整合解决方案
用户可以使用Jitterbit来集成不同的应用、不同的数据库以及不同的数据源,它支持的数据类型、应用非常广泛。点击这里下载Jitterbit

7. Ubuntu:开源桌面系统
最佳开源桌面操作系统的奖项颁布给了Ubuntu,这个毫无悬念,只看好多国际PC厂商都开始将Ubuntu系统作为标配的操作系统就可以想见这个操作系统有多么受欢迎。点击这里下载Ubuntu

8. VirtualBox:虚拟桌面
VirtualBox是一款虚拟机软件,它功能丰富,性能也不错,现在被SUN收购并成了开源产品,相信日后会走得更远。点击这里下载VirtualBox

9. Xen:服务器虚拟机
说完了桌面虚拟机,轮到服务器虚拟机,InfoWorld选择的是Xen,Xen是一种著名的开放源代码的虚拟化技术,它基于Linux平台。点击这里下载Xen

应用软件、安全软件、存储软件

五、productivity apps|应用软件
InfoWorld评选的应用软件包括Office套装、网络浏览、图像编辑、音频编辑、3D建模工具等,共6个产品入选。
1. Audacity:音频编辑软件
Audacity当选最佳音频编辑软件,相信地球人都不会反对,这个软件功能强大到不亚于专业软件的地步、支持多种语言界面、并且还是开源的,不选它选谁呢?点击这里下载Audacity

2. Blender:3D建模
开源的3-D建模产品,Blender的大名的确是如雷贯耳,相信很多人都会很高兴这个产品入选了。点击这里下载Blender

3. FireFox:网络浏览
在这么多与IE相抗衡的浏览器中,FF是到目前为止最成功的一个,另外一个产品是Opera,不过后者不是开源的,FF入选自然是首当其冲。点击这里下载FireFox

4. GIMP:图像编辑
GIMP是被誉为Linux下的PhotoShop的好软件,当然,这个软件也有Windows版本,是个相当不错的产品。点击这里下载GIMP

5. OpenOffice:办公软件套装
办公软件套装,应该说OpenOffice是惟一的也是最好的选择,舍它之外,还有什么呢?点击这里下载OpenOffice

6. PDFCreator:PDF创建软件
除了PDF文件创建之外,PDFCreator还支持给文件加密等功能,此外,它还能将所有可打印文档输出为PNG, JPG, TIFF, BMP, PCX, PS, EPS等多种文件格式。点击这里下载PDFCreator
----------------------------------------------------------------------------------------------
六、security|安全
InfoWorld评选的应用产品包括应用软件安全、系统安全、防火墙、密码相关软件等,共有8个软件入选。
1. AppArmor:应用软件安全
应用程序安全的入选产品是来自Novell的AppArmor,国内搞安全和Linux研究的用户想必对这个软件并不陌生——SUSE Linux中就包含了AppArmor这个重要的安全组件。了解关于AppArmor的更多信息,请访问:http://forge.novell.com/modules/xfmod/project/?apparmor 。下载AppArmor,请访问:http://forge.novell.com/modules/xfcontent/downloads.php/apparmor/AppArmor-2.1.2/

2. Metasploit:渗透测试、漏洞研究
Metasploit Framework (MSF)是2003年以开放源代码方式发布、可自由获取的开发框架,这个环境为渗透测试、shellcode 编写和漏洞研究提供了一个可靠的平台。点击这里下载Metasploit

3. Ophcrack:Windows密码恢复
Ophcrack不仅有Linux版本,还有Windows版本哦,这样的软件并不常见。点击这里下载Ophcrack

4. SmoothWall Express:防火墙软件
一个开放源码、并基于GNU/Linux操作系统的防火墙软件。点击这里下载SmoothWall Express

5. Snort with Base:入侵检测
获得InfoWorld推荐的是带有BASE(Basic Analysis and Security Engine,http://base.secureideas.net/index.php )的Snort,
Snort是一个免费的、跨平台的软件包,用作嗅探器、日志记录和入侵探测器。点击这里下载Snort。

6. Splunk:安全日志分析
一个运行于 Unix 环境下的日志分析软件,Splunk可以支持任何服务器产生的日志,其对日志进行处理的方式是进行高效索引之后让管理员可以对日志中出现的各种情况进行搜索,并且通过非常好的图形化的方式展现出来。点击这里下载Splunk

7. TrueCrypt:磁盘加密软件
这个软件当然超赞,CHIP软件社区也推荐过无数次,无数软件高手也极其推崇这个软件。不过InfoWorld再次把这样的桌面级软件和服务器级别的专业领域软件混在一起,真是让人有点摸不着头脑啊:)。点击这里下载TrueCrypt

8. Untangle:网关安全
Untangle是一系列安全产品的打包合集,它包括了病毒、恶意软件、钓鱼软件的检测和查杀,包括了ClamAV, Snort, SpamAssassin, OpenVPN, iptables等开源的安全工具。了解Untangle的更多相关信息,请访问:http://www.untangle.com/ 。如果需要下载Untangle的话,请访问:http://www.untangle.com/index.php?option=com_content&task=view&id=226&Itemid=739
----------------------------------------------------------------------------------------------
七、存储软件
InfoWorld评选的存储软件包括数据备份、存储服务器、在线数据备份、文件管理等软件,共有6个软件入选。
1. Amanda:网络备份软件
InfoWorld选择的2008最佳开源网络备份软件是Amanda,这个软件分为客户端和服务器端,支持Linux以及Windows操作系统。点击这里下载Amanda

2. FreeNAS:存储服务器
FreeNAS 是一套免费的NAS服务器,它能将一部普通PC变成网络存储服务器。该软件基于FreeBSD,Samba 及PHP,支持CIFS (samba), FTP, NFS protocols, Software RAID (0,1,5) 及 web 界面的设定工具。点击这里下载FreeNAS

3. Free Online Backup:在线备份
这个Free Online Backup说实话很奇怪,它竟然只有Windows的版本,并且只支持命令行工作模式。点击这里下载Free Online Backup

4. WinMerge:文件比较
WinMerge可以快速清楚地让你找出文字文件中的不同之处,对于经常修改代码或文章的网友会十分有用。点击这里下载WinMerge

5. smartmontools:磁盘监控
smartmontools包含两个应用(都是命令行方式的):smartctl和smartd,分别用来监控硬盘的SMART状态(smartd)或者对SMART设置进行调整(smartctl)。点击这里下载smartmontools

6. StorageIM:存储管理系统
运行StorageIM的客户端可以自动发现满足CIM和SMI-S管理标准的系统并报告这些系统的存储状况。StorageIM后台采用的是MYSQL数据库,在安装StorageIM的时候,这个MYSQL也会被安装到系统当中。点击这里下载StorageIM

Monday, September 1, 2008

Install Ubuntu to P5Q

Installed 64bit Ubuntu desktop version to P5Q, the problem is no network card driver. Follow the link http://ubuntuforums.org/showthread.php?t=770173, the problem is solved.

Ok first the network card is Atheros(R) AR8121/AR8113 PCI-E

Ok these are the steps i followed to get it working!

1) I installed ubuntu hardy 64bit, i has build-essential package installed
2) Then i downloaded the linux driver from: http://support.asus.com/download/dow...model=P5KPL-CM
(as per my original post)
3) I then transfered the driver via usb stick to my laptop and unpacked the zip. (Actually i unpacked it on windows first as it has a .rar file that i could not unpack on linux Then i packed it up again on windows).
4) cd into /LinuxDrivers/L1e_Lan/l1e-l2e-linux-v1.0.0.4/src
5) then i ran: sudo KBUILD_NOPEDANTIC=1 make
6) then i ran: sudo KBUILD_NOPEDANTIC=1 make install
7) that worked and put a driver in /lib/modules/2.6.24-16-generic/kernel/drivers/net/atl1e/at1le.ko
8 ) i cd into that director and i run: sudo insmod ./atl1e.ko
9) after the reboot, the card is working.

lshw -C network

Thursday, August 21, 2008

ApacheMySQLPHP - Community Ubuntu Documentation

ApacheMySQLPHP - Community Ubuntu Documentation

(Modified by LJS)

Parent page: Programming Applications

This is to help people setup and install a LAMP (Linux-Apache-MySQL-PHP) server in Ubuntu, including Apache 2, PHP 5 (optionally PHP 4 in Ubuntu 6.10 and lower), and MySQL 4.1 or 5.0.

When installing from the Ubuntu 6.06 (Dapper Drake) "Server cd", you have the option of choosing to install a LAMP setup at the inital Ubuntu installation screen. That will install apache2, php5 and mysql 5.0.

Check Requirements

As of Ubuntu 7.04 (Feisty), all PHP4 packages have been dropped from the repositories, as the PHP4 branch is not being further developed/supported by the PHP Group. Everything in this article pertaining to PHP4 can therefore only be executed in Ubuntu 6.10 and lower. If you absolutely depend on PHP4 and would like to use the current Ubuntu release, you have to compile it from source.

Some applications require php4 while others will work with php5. Be sure to install the version of php and the corresponding apache2 module for it. You cannot have both php4 and php5 modules running on the same instance of apache2 at the same time. Installing one may remove the other.

If you have both php4 and php5 installed, be aware of which version of the apache2 php module you have. If libapache2-mod-php5 is already installed, the php4 package will install libapache-mod-php4 and not libapache2-mod-php4 package.

If libapache2-mod-php5 is not installed, installing php4 will install the apache2 php module (libapache2-mod-php4). See this example.

Most web applications will use Apache2, php5 and mysql5.0. If no specific versions are mentioned in your web application's documentation, use those.

To install the default LAMP stack in Ubuntu 6.06 LTS (Dapper Drake)

If you did not use the LAMP installer option from the server cd but want to install those same packages without having to reinstall your operating system, use any method to install the following packages

apache2 php5-mysql libapache2-mod-php5 mysql-server

All of those packages are in the Ubuntu 6.06 LTS (Dapper Drake) main repository. Once LAMP is installed, you need to set a mysql root password and then, depending on your web application, create a database, user and password. That's it!

To install the default LAMP stack in Ubuntu 7.04 (Feisty Fawn) Ubuntu 7.10 (Gutsy Gibbon) and Ubuntu 8.04 LTS (Hardy Heron)

As of the 7.04 release, the Ubuntu base system includes Tasksel. You can either install LAMP using tasksel or install the LAMP packages as detailed above.

sudo tasksel install lamp-server

See Tasksel

Starting over, How to remove the LAMP stack

To remove the LAMP stack remove the following packages:

apache2 apache2-mpm-prefork apache2-utils apache2.2-common libapache2-mod-php5 libapr1 libaprutil1 libdbd-mysql-perl libdbi-perl libmysqlclient15off libnet-daemon-perl libplrpc-perl libpq5 mysql-client-5.0 mysql-common mysql-server mysql-server-5.0 php5-common php5-mysql

To also remove the debconf data, use the purge option when removing. To get rid of any configurations you may have made to apache, manually remove the /etc/apache2 directory once the packages have been removed.

Installing Apache 2

To only install the apache2 webserver, use any method to install

apache2

Troubleshooting Apache

If you get this error:

apache2: Could not determine the server's fully qualified domain name, using 127.0.0.1 for ServerName

then use a text editor such as "sudo nano" at the command line or "gksudo gedit" on the desktop to create a new file,

sudo nano /etc/apache2/conf.d/fqdn

or

gksu "gedit /etc/apache2/conf.d/fqdn"

then add

ServerName localhost

to the file and save. This can all be done in a single command with the following:

echo "ServerName localhost" | sudo tee /etc/apache2/conf.d/fqdn

Virtual Hosts

Apache2 has the concept of sites, which are separate configuration files that Apache2 will read. These are available in /etc/apache2/sites-available. By default, there is one site available called default this is what you will see when you browse to http://localhost or http://127.0.0.1. You can have many different site configurations available, and activate only those that you need.

As an example, we want the default site to be /home/user/public_html/. To do this, we must create a new site and then enable it in Apache2.

To create a new site:

  • Copy the default website as a starting point. sudo cp /etc/apache2/sites-available/default /etc/apache2/sites-available/mysite

  • Edit the new configuration file in a text editor "sudo nano" on the command line or "gksudo gedit", for example: gksudo gedit /etc/apache2/sites-available/mysite

  • Change the DocumentRoot to point to the new location. For example, /home/user/public_html/

  • Change the Directory directive, replace to

  • You can also set separate logs for each site. To do this, change the ErrorLog and CustomLog directives. This is optional, but handy if you have many sites

  • Save the file

Now, we must deactivate the old site, and activate our new one. Ubuntu provides two small utilities that take care of this: a2ensite (apache2enable site) and a2dissite (apache2disable site).

sudo a2dissite default && sudo a2ensite mysite

Finally, we restart Apache2:

sudo /etc/init.d/apache2 restart

If you have not created /home/user/public_html/, you will receive an warning message

To test the new site, create a file in /home/user/public_html/:

echo 'Hello! It is working!' > /home/user/public_html/index.html

Finally, browse to http://localhost/

Installing PHP 5

To only install PHP5. use any method to install

php5

If PHP4 is present on your system, also install

libapache2-mod-php5

Troubleshooting PHP 5

Does your browser ask if you want to download the php file instead of displaying it? If Apache is not actually parsing the php after you restarted it, install libapache2-mod-php5. It is installed when you install the php5 package, but may have been removed inadvertently by packages which need to run a different version of php.

You may also need to actually enable it, by doing sudo a2enmod php5 followed by sudo /etc/init.d/apache2 restart. If sudo a2enmod php5 returns "$ This module does not exist!", you should purge (not just remove) the libapache2-mod-php5 package and reinstall it.

Be sure to clear your browser's cache before testing your site again.

Installing PHP 4

To install PHP4, Use any method to install

php4

If PHP5 is present on your system, installing php4 will install the php module for apache (version 1.3) and not apache2. To use php4 with apache2, install

libapache2-mod-php4

Troubleshooting PHP 4

Does your browser ask if you want to download the php file instead of displaying it? If Apache is not actually parsing the php after you restarted it, install libapache2-mod-php4. It is installed when you install the php4 package, but may have been removed inadvertently by packages which need to run a different version of php.

You may also need to actually enable it, by doing sudo a2enmod php4 followed by sudo /etc/init.d/apache2 restart. If sudo a2enmod php4 returns "$ This module does not exist!", you should purge (not just remove) the libapache2-mod-php5 package and reinstall it.

Be sure to clear your browser's cache before testing your site again.

Installing MYSQL with PHP 5

Use any method to install

mysql-server libapache2-mod-auth-mysql php5-mysql

Installing MYSQL with PHP 4

First enable the universe repository since the packages are not in main

Use any method to install

mysql-server libapache2-mod-auth-mysql php4-mysql

After installing PHP

You may need to increase the memory limit that PHP imposes on a script. Edit the /etc/php5/apache2/php.ini file and increase the memory_limit value.

After installing MySQL

Set mysql bind address

Before you can access the database from other computers in your network, you have to change its bind address. Note that this can be a security problem, because your database can be accessed by others computers than your own. Skip this step if the applications which require mysql are running on the same machine.

type:

nano /etc/mysql/my.cnf

and change the line:

bind-address           = localhost

to your own internal ip address e.g. 192.168.1.20

bind-address           = 192.168.1.20

If your ip address is dynamic you can also comment out the bind-address line and it will default to your current ip.

If you try to connect without changing the bind-address you will recieve a "Can not connect to mysql error 10061".

Set mysql root password

Before accessing the database by console you need to type:

mysql -u root

At the mysql console type:

mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('yourpassword');

A successful mysql command will show:

Query OK, 0 rows affected (0.00 sec)

Mysql commands can span several lines. Do not forget to end your mysql command with a semicolon.

Note: If you have already set a password for the mysql root, you will need to use:

mysql -u root -p

(Did you forget the mysql-root password? See MysqlPasswordReset.)

Create a mysql database

mysql> CREATE DATABASE database1;

Create a mysql user

For creating a new user with all privileges (use only for troubleshooting), at mysql prompt type:

mysql> GRANT ALL PRIVILEGES ON *.* TO 'yourusername'@'localhost' IDENTIFIED BY 'yourpassword' WITH GRANT OPTION;

For creating a new user with fewer privileges (should work for most web applications) which can only use the database named "database1", at mysql prompt type:

mysql> GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, INDEX, ALTER, CREATE TEMPORARY TABLES, LOCK TABLES ON database1.* TO 'yourusername'@'localhost' IDENTIFIED BY 'yourpassword';

yourusername and yourpassword can be anything you like. database1 is the name of the database the user gets access to. localhost is the location which gets access to your database. You can change it to '%' (or to hostnames or ip addresses) to allow connections from every location (or only from specific locations) to the database. Note, that this can be a security problem and should only be used for testing purposes!

To exit the mysql prompt type:

mysql> \q

Since the mysql root password is now set, if you need to use mysql again (as the mysql root), you will need to use:

mysql -u root -p

and then enter the password at the prompt.

Backup-Settings

Please, let's say something in which directories MySql stores the database information and how to configure a backup

Alternatively

There is more than just one way to set the mysql root password and create a database. For example mysqladmin can be used:

mysqladmin -u root -p password yourpassword

and

mysqladmin -u root -p create database1

mysqladmin is a command-line tool provided by the default LAMP install.

Phpmyadmin and mysql-admin

All mysql tasks including setting the root password and creating databases can be done via a graphical interface using phpmyadmin or mysql-admin.

To install one or both of them, first enable the universe repository

Use any method to install

phpmyadmin

=== Troubleshooting Phpmyadmin & mysql-admin=== If you get blowfish_secret error: Choose and set a phrase for cryptography in the file /var/lib/phpmyadmin/blowfish_secret.inc.php (??? /etc/phpmyadmin/blowfish_secret.inc.php ???) and copy the line (not the php tags) into the file /etc/phpmyadmin/config.inc.php or you will receive an error.

Alternative: install phpMyAdmin from source

See the phpMyAdmin page for instructions on how to install phpmyadmin from source:

Mysql-admin

Mysql-admin runs locally, on the desktop. Use any method to install

mysql-admin

For more information

You really ought to read 2.9.3. Securing the Initial MySQL Accounts from the MySQL Reference Manual.

Edit Apache Configuration

You may want your current user to be the PHP pages administrator. To do so, edit the Apache configuration file :

$ gksudo "gedit /etc/apache2/apache2.conf"

Search both the strings starting by "User" and "Group", and change the names by the current username and groupname you are using. Then you'll need to restart Apache. (look at the next chapter concerning apache commands)

Configuration options relating specifically to user websites (accessed through localhost/~username) are in /etc/apache2/mods-enabled/userdir.conf.

Edit PHP Configuration to Work With MYSQL (Ubuntu Dapper)

In Dapper Drake, "extension=mysql.so" and "extension=mysqli.so" are enabled in the php.ini file out-of-the-box. However, sometimes php is not looking for those files in the right directory. You have then to move your files or modify the php.ini configuration.:

First solution

locate the directory where the extension files are placed:

locate mysql.so

(change mysql.so in mysqli.so if you want to install the mysqli functions)

-then modify the php.ini file to indicate the right place for the extension directory:

$ gksudo "gedit /etc/php4/apache2/php.ini"

or if you are using php5

$ gksudo "gedit /etc/php5/apache2/php.ini"

Look for the 'extension_dir' property, and set it to the directory where you found the mysql(i).so file:

  • extension_dir= "/usr/lib/php5/20051025/"

Restart apache, and test if your mysql(i) functions are working.

Second solution

-locate the directory where the extension files are placed:

locate mysql.so

(change mysql.so in mysqli.so if you want to install the mysqli functions)

Let's say that you found the file in '/usr/lib/php5/20051025/'

-then check in the php.ini file for the extension directory

$ gksudo "gedit /etc/php4/apache2/php.ini"

or if you are using php5

$ gksudo "gedit /etc/php5/apache2/php.ini"

Look for the 'extension_dir' property. It should be by default '/usr/lib/php5/ext'. If it's not, change it for this value.

-Now create the default directory for extensions:

$ sudo mkdir /usr/lib/php5/ext

-Copy the extension file to the new directory:

$ sudo cp /usr/lib/php5/20051025/mysql.so /usr/lib/php5/ext/mysql.so

Change the first path to the one you found with the locate function, and change mysql.so into mysqli.so if you want to use mysqli functions.

-Restart apache (see below), and test if your mysql(i) functions are working.

Run, Stop, Test, And Restart Apache

Use the following command to run Apache :

$ sudo /usr/sbin/apache2ctl start

To stop it, use :

$ sudo /usr/sbin/apache2ctl stop

To test configuration changes, use :

$ sudo /usr/sbin/apache2ctl configtest

Finally, to restart it, run :

$ sudo /usr/sbin/apache2ctl restart

Using Apache

You can access apache by typing 127.0.0.1 or http://localhost (by default it will be listening on port 80) in your browser address bar. By default the directory for apache server pages is /var/www . It needs root access in order to put files in. A way to do it is just starting the file browser as root in a terminal:

$ sudo nautilus

or

if you want to make /var/www your own. (Use only for non-production web servers - this is not the most secure way to do things.)

$ sudo chown -R $USER:$USER /var/www

Status

To check the status of your PHP installation:

 $ gksudo "gedit /var/www/testphp.php"

and insert the following line

 

View this page on a web browser at http://yourserveripaddress/testphp.php or http://localhost/testphp.php

Securing Apache

If you just want to run your Apache install as a development server and want to prevent it from listening for incoming connection attempts, this is easy to do.

$ gksudo "gedit /etc/apache2/ports.conf"
$ password:

Change ports.conf so that it contains:

Listen 127.0.0.1:80

Save this file, and restart Apache (see above). Now Apache will serve only to your home domain, http://127.0.0.1 or http://localhost.

Password-Protect a Directory

There are 2 ways to password-protect a specific directory. The recommended way involves editing /etc/apache2/apache2.conf . (To do this, you need root access). The other way involves editing a .htaccess file in the directory to be protected. (To do this, you need access to that directory).

Password-Protect a Directory With .htaccess

See EnablingUseOfApacheHtaccessFiles

Warning: On at least some versions of Ubuntu, .htaccess files will not work by default. See EnablingUseOfApacheHtaccessFiles for help on enabling them.

thumbnails

If you direct your web browser to a directory (rather than a specific file), and there is no "index.html" file in that directory, Apache will generate an index file on-the-fly listing all the files and folders in that directory. Each folder has a little icon of a folder next to it.

To put a thumbnail of that specific image (rather than the generic "image icon") next to each image file (.jpg, .png, etc.):

... todo: add instructions on how to do thumbnails here, perhaps using Apache::AutoIndex 0.08 or Apache::Album 0.95 ...

Known problems

Skype incompatibility

Skype uses port 80 for incoming calls, and thus, may block Apache. The solution is to change the port in one of the applications. Usually, port 81 is free and works fine. To change the port number in Skype go to menu Tools > Options, then click on the Advanced tab, then in the box of the port for incoming calls write your preference.

Other Apache Options

Further Information

如何发掘出更多退休的钱?

如何发掘出更多退休的钱? http://bbs.wenxuecity.com/bbs/tzlc/1328415.html 按照常规的说法,退休的收入必须得有退休前的80%,或者是4% withdrawal rule,而且每年还得要加2-3%对付通胀,这是一个很大...