显示标签为“unix”的博文。显示所有博文
显示标签为“unix”的博文。显示所有博文

2008/12/24

转投linux UNIX服务器的低端暗涌

近年来,无论是媒体,还是渠道,都在流行着这样一个说法:x86服务器正在慢慢侵蚀传统UNIX服务器市场,最先向那些低端的UNIX服务器发起进攻。无论是IDC,还是Gartner的统计报告上,都能看得出x86服务器产品逐年的快速增长率,而与其相对应的,则是UNIX服务器增长率的逐渐放缓。因此,人们就很自然地得出结论:x86服务器正在侵占低端UNIX服务器的市场空间,做UNIX服务器的渠道的日子也越来越不好过。

   情况究竟是不是这样呢?有些渠道以及厂商并不这样认为,他们的看法反而有些相反——UNIX服务器,尤其是低端的UNIX服务器正在对x86服务器反击,它们要和x86服务器抢食市场份额!习惯的力量

  北京华胜天成科技股份有限公司多年来一直做SUN公司的服务器产品,而且是UNIX服务器。该公司战略发展总监李峻谈及到了一个现象:他的一个朋友做电信增值业务,最初公司刚成立时候,迫于资金压力,不得已买了一台x86服务器产品跑应用,但当公司运作一段时间上规模之后,又立刻用UNIX服务器替换掉了先前的x86服务器。这个朋友的解释说,早就习惯了以前UNIX环境下的应用开发和部署,虽然从处理器的频率上来看,x86服务器明显超过了UNIX服务器产品,但当用户量增大后,x86的不稳定性立刻暴露出来,最后还是UNIX服务器环境稳定,而且让他得心应手。

   他认为,电信、金融的行业客户或者ISV已经使用多年的UNIX服务器,它们对UNIX环境形成了一种使用习惯,这种习惯是无法更改的。

  的确如此,UNIX服务器在很多行业市场销售多年,它所赢得的不仅仅是行业市场地位的垄断性,更重要的是用户使用习惯的形成,用户已经形成了对UNIX环境的依赖,对UNIX品牌的依赖,况且多年的发展,一系列成熟的UNIX行业应用早就在用户和渠道心中留下深刻印象,让它们进行系统的迁移,实际上等同于使用习惯的迁移,这是难以接受的。

   因此,在电信、金融等行业中,用户对稳定性、可靠性需求一直没有变化,他们对UNIX服务器的使用习惯无疑是x86进入的一个壁垒。

   低端反击

   上文提及到的某些行业中,因为用户的需求特点以及使用习惯导致x86很难进入,那么在广泛的中小企业中,UNIX服务器虽然遭受到x86的冲击,但是已经开始了反击。

   从时间表上来看,RISC服务器对x86服务器的反击始于2004年9月,当时IBM公司推出了基于Power 5处理器、售价在5000美元左右的低端UNIX服务器OpenPower 710。传统上10000美元~25000美元的市场主要是由基于x86架构的4路服务器所占据,包括IA服务器、基于Opteron芯片的服务器等等。当时IBM公司亚太区系统及科技部刀片式服务器Open Power系列产品销售总经理Jeff Dunn毫不讳言地表示,IBM将进入这个目前由英特尔主导的市场,并期望成为该市场上的领先者。

   去年12月,Sun公司推出了基于UltraSPARC T1处理器的SunFire T1000/2000服务器,最低端产品起价仅为52721元人民币,与主流x86服务器价格相当。

   今年2月,IBM通过低端p5产品的发布,终于把低端UNIX服务器反击x86服务器的举动推向了一个高潮。IBM System p5产品部大中华区总经理姜锡岫表示,此番推出的新品将会大举进军x86市场。

   p5产品部分销产品中国区的总经理苏志杰随后接收采访也表示,本次IBM推出的最低端p5 185产品采用PowerPC 970 MP的双核芯片,价格是5000美元左右,正处在中高档x86服务器的价格线上。

  低端UNIX服务器开始积极调整自己价格,不再给人以前的“价格昂贵”的高姿态。而且,无论是Sun还是IBM,二者发布的UNIX服务器都已经开始支持 Linux操作系统,试图利用Linux的庞大力量,让自己的低端UNIX服务器产品迅速进入x86服务器市场,并和x86抢夺生意。

   有意思的是,同样作为拥有UNIX服务器的厂商,IBM和Sun的反击x86方式也有所不同。

  苏志杰认为,低端的UNIX服务器不可能把Windows市场全部抢过来,毕竟和很多行业客户类似,那些中小企业客户本身也有Windows平台的使用习惯。因此,IBM低端UNIX服务器成功的关键在于找到合适的ISV,把他们的应用迁移到Linux平台上来,并且最好是针对不同行业的不同客户需求,提炼出“经典”的应用来进行Windows平台向Linux甚至是AIX平台的迁移,这样才是关键所在。

   Sun公司则认为,UltraSPARC T1与AMD的Opteron处理器各有所长,UltraSPARC T1强在电子商务和网络服务方面,而Opteron处理器在通用计算方面更有优势。Sun更愿意认为UltraSPARC T1处理器与x86处理器之间是一种 互补关系。

来源:linuxeden




2008/12/3

全球超级计算机前9位均运行Linux系统

Top 500组织每隔半年就会发布超级计算机的最新排行榜,根据其发布的最新排行榜,运行Linux的计算机具有最快的速度。

The 451 Group的分析师Jay Lyman指出,Linux能增强超级计算机的性能。Lyman表示:“不论是作为主操作系统还是作为混合系统中的一部分,Linux在排名前500的超级计算机中占据469个,达到了93.8%的占有率,比07年11月91.8%的占有率提高了2个百分点。”

在今年的这份榜单中,Linux是唯一一个占有率保持增长的操作系统,一年前的TOP 500排行榜中,Linux在84.6%的超级计算机上运行。今年9月,它拥有87.8%的占有率。而Unix则从6%降到了4.6%,其它操作系统的占有率包括BSDMac OS X和Windows都有不同程度的下降。

微软很自豪地表示,采用Windows HPC Server 2008的计算机位列排行榜第十位,尽管前9名都是Linux计算机。


2008/11/26

Cygwin下vivi和kernel编译全攻略

最近打算设计新产品,在Friendly Arm买了一套Matrix5系统研究一下。发现用ARM-Linux开发似乎比较明智些!
但用Windows习惯了,还不太熟悉Linux,而且重装RH9恐怕很费事。还是先用Win2000吧,Linux熟悉熟悉再说!
看见版上有个Cygwin,可以在Windows下建立仿Linux系统,下了一个试用一下,感觉还不错,只可惜没有图形界面!
根据杨老板所说,Cygwin里可以编译Matrix5的vivi和kernel。就先以此开始熟悉Linux吧!
大约用了一周左右的时间,终于搞定了vivi和kernel在Cygwin里的编译。

现在把编译的过程贴出来,以供有相同感受的兄弟们参考:
(由于Cygwin里操作全部使用行命令输入方式,所以最好先熟悉一下Linux的常用命令)
1、安装Cygwin:
安装过程不多说了,开发中心里有参考。不过要提两点:最好在系统比较干净时安装,建议系统刚启动完就安装,否则安装可能会出错;另外安装时一定要装gcc和ncurse库,否则menuconfig用不了,假如搞不清就全部安装吧!
装完Cygwin后会有一个快捷方式,运行它就可以进入Cygwin系统了。第一次进Cygwin系统还会有一些初始化过程,完了会进入命令输入状态,提示符为“@”。 ARM
这里要先说明一下,Linux的文件系统是从/开始的,Cygwin系统的/就是在Windows里安装Cygwin时选的安装路径 (X:\cygwin)。假如想在Cygwin里访问Windows的所有逻辑盘,到/cygdrive里找。比如Windows里的C:就是 Cygwin里的/cygdrive/c 。这样可以在Windows和Cygwin中交叉访问文件,对于已经熟悉Windows操作的人来说是比较方便的。
还有就是要注重Linux里是区分大小写的,也就是说“file”和“FILE”不是同一个名字。尤其一些文件或目录名中既有大写字母也有小写字母,注重不要输错!
2、安装arm-linux-gcc:
这个安装开发中心里也有,去下载一下解开就算安装好了,注重要解到/opt目录(Windows中的X:\cygwin\opt)下。
修改启动脚本/etc/profile文件(可在Windows中用文本编辑器修改X:\cygwin\etc\profile)中的PATH环境变量为
PATH=/usr/local/bin:/usr/bin:/bin:/usr/X11R6/bin:/opt/FriendlyARM/crosstool/arm-linux/gcc-2.95.3-glibc-2.2.3/binPATH
gdbserver可以先不用,好象是Debug时才会用到。至少我在编译时是没用到。
输入“arm-linux-gcc -v”,自己测试一下吧。
3、编译VIVI:
在开发中心已有较具体的说明。一定要下载版上的“vivi_cygwin.tgz”,不要用光盘里的。预配置文件在包里已经有了(config.friendlyarm),不用再下载。 字串5
由于VIVI要用到kernel的一些头文件,所以需要kernel的源代码,在光盘里“SBC-2410X/SBC-2410X-Linux /matrix5-kernel-v5.5.tgz”。将vivi和kernel都解到/friendly-arm下,即/friendly-arm /vivi和/friendly-arm/kernel里。然后需修改/friendly-arm/vivi/Makefile里的一些变量设置:
LINUX_INCLUDE_DIR = /friendly-arm/kernel/include/
CROSS_COMPILE = arm-linux-
ARM_GCC_LIBS = /opt/FriendlyARM/crosstool/arm-linux/gcc-2.95.3-glibc-2.2.3/lib/gcc-lib/arm-linux/2.95.3
三个变量在不同位置,自己找一下吧。其中前面两个变量杨老板已经改好了,核对一下就可以了;注重第三个变量中FriendlyARM中间没有减号,gcc-2.95.3-glibc-2.2.3中的g是小写。
为确保编译的有效性,最好在编译之前将vivi里所有的“*.o”和“*.o.flag”文件删掉(本人曾经上过当)。
进入/friendly-arm/vivi目录里,输入“make menuconfig”,开始选择配置。可以Load也可以自己修改试试(不要乱选,有些选项是不能支持的)。注重Exit时一定要选“Yes”保存配置。
再输入“make”正式开始编译,一会儿就完了。假如不报错,在/friendly-arm/vivi里面就有你自己的“vivi”了。 字串5
4、编译kernel:
这是最痛苦的一步,开发中心里虽然有这个条目,但还没放上去。只好自己摸,搞了好几天。
kernel的源程序在上面编译vivi时已经解到/friendly-arm/kernel中了。因为这个程序包已在Linux中编译过,有一些中间和目标代码和Cygwin是不兼容的。必须先处理一下,否则不能正常进行编译。
首先,还是把kennel里所有的“*.o”和“*.o.flag”文件删掉,以免不必要的麻烦。然后进入/friendly-arm/kernel目录,可以输一下“make menuconfig”试试。结果提示出错。这是由于配置脚本已在Linux中编译过,在scripts/lxdialog里产生了一个Linux下的可执行程序lxdialog。在Cygwin里这是个坏东西,它既不能执行,还会阻止可执行程序的生成。必须把它删掉。类似的文件如下:
/friendly-arm/kernel/scripts/lxdialog/lxdialog
/friendly-arm/kernel/scripts/mkdep
/friendly-arm/kernel/scripts/split-include
/friendly-arm/kernel/drivers/char/conmakehash
/friendly-arm/kernel/drivers/net/hamradio/soundmodem/gentbl
这几个文件必须删掉,注重是没有扩展名的文件,不要把源文件“*.c”删掉!
现在应该可以用“make menuconfig”进行配置了。这里的选项太多,先Load包里的config.friendly配置,待会儿再慢慢研究各个选项吧。同样,Exit时一定要选“Yes”保存配置。
下面可以开始编译了。输入“make zImage”,可以看见开始一个个模块的编译。但是过了一、二分钟,就会报一个错,大概是说“/friendly-arm/kernel /include/asm/arch/ide.h”没找到。这个问题很希奇,按理说头文件丢失是个低级错误,不可能发现不了,不知道RH9中编译是否也有同样问题。可以这样解决,从别的地方复制一个ide.h过来,只要其中有相应的两个函数定义就可以了。比如:
cp /friendly-arm/kernel/include/asm/arch-l7200/ide.h /friendly-arm/kernel/include/asm/arch/ide.h
再执行“make zImage”应该可以完成编译了。不过时间比较长,得要好几分钟。不报错的话,在/friendly-arm/kernel/arch/arm/boot目录里会生成你编译的zImage 。
接下来,也许你打算自己修改一下“make menuconfig”里的配置。这里有个比较麻烦的问题,你最好先把“/friendly-arm/kernel/.hdepend”这个文件备份一下。问题是这样的:当你修改了某些比较要害的选项后,会提示你进行“make dep”。此时即使你直接进行“make zImage”,该过程亦会自动先运行。一旦执行到一个要生成“.hdepend”的命令时会提示命令参数太长。再看.hdepend已成了一个空文件。 ARM开发论坛
这个“.hdepend”真是个头痛的问题,估计在RH9里应该没这种事,否则这编译根本进行不下去。开始想把Cygwin的设置改一下应该就可以了,可找了半天也没找到有关的设置。求助杨工,倒是给了一个办法,可还是不顶用。直到现在,这个问题仍没有很好的解决。不过,把我自己用的两个方法写出来给大家参考一下:
a)把备份好的“.hdepend”复制回来,修改“/friendly-arm/kernel/Makefile”,将其中一行“scripts /mkdep -- `find $(FINDHPATH) -name SCCS -prune -o -follow -name \*.h ! -name modversions.h -print` > .hdepend”的行首加一个“#”字符。实际上就是直接使用原有的“.hdepend”,编译时跳过重新生成该文件。此法已经试过,是可以的。但有什么副作用不知道!
b)仍然要把“Makefile”中生成“.hdepend”那一行去掉,换成下面三个命令行:
scripts/mkdep -- `find $(HPATH)/asm -name SCCS -prune -o -follow -name \*.h ! -name modversions.h -print` > .hdepend
scripts/mkdep -- `find $(HPATH)/linux -name SCCS -prune -o -follow -name \*.h ! -name modversions.h -print` >> .hdepend 字串4
scripts/mkdep -- `find $(HPATH)/scsi $(HPATH)/net -name SCCS -prune -o -follow -name \*.h ! -name modversions.h -print` >> .hdepend
注重三行前面都有一个TAB。当执行过“make dep”后还要手工修改一下“.hdepend”:查找“.PRECIOUS:”字样引导的三段列表,将它们合并成一个“.PRECIOUS:”列表(列表头上的“.PRECIOUS:”留着,中间两个删掉即可)并将列表放在文件尾上。然后再执行“make zImage”即可完成编译。此法较麻烦,但可靠性高一点!

本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/29898/showart_1296232.html

2008/11/18

在Linux下配置多线路ADSL的方法

此文档可以说明双ADSL及多ADSL增加线路的配置过程。  
  Linux配置多线路ADSL的方法  
  powered by KindGeorge http://kindgeorge.at.3322.org\经过一段时间的观察,证明运行良好,现把设置过程及方法总结一下,欢迎指正.  
  此文档可以说明双adsl及多adsl增加线路的配置过程.  
  实验环境:  
 操作系统: RedHat7.3  
  两条adsl,长期观察线路稳定,动态ip,带宽2M,  
  三块网卡: eth0 tulip,接内网  
  eth1 3c59x,接第一条adsl  
  eth2 8139too,接第二条adsl  
  ethn xxxx,(如果还有的话....)  
  目的:用两条adsl共同上网,分担负载,实现一般的简单负载平衡,带动内网上网.  
  1.添加网卡  
  插入网卡,启动机器,如果需要双线路上网,就要三块网卡了,配置网卡也可以参考其他资料.
  配置为找到相应的型号模块,例如:eth2是8139的网卡  
  [root@kindgeorge root]# vi /etc/modules.conf
  alias parport_lowlevel parport_pc
     alias eth0 tulip
  alias eth1 3c59x
  alias eth2 8139too
  把新的线路插在eth2上 
  2.配置adsl 
  方法一: 
  (1)运行adsl-setup程序,会一步一步的提示你完成配置过程.   
  创建ppp0和ppp1的拨号配置文件,并保存配置,一般保存在/etc/sysconfig/network-scripts/ifcfg-ppp1 
  (2)确定/etc/sysconfig/network-scripts/ifcfg-ppp0文件,其中的PIDFILE参数设为:  
  PIDFILE=/var/run/ppp-adsl.pid  
  修改/etc/sysconfig/network-scripts/ifcfg-ppp1文件,将其中的PIDFILE参数设为:  
  PIDFILE=/var/run/ppp-adsl1.pid  
  如果你有更多的线路,可以继续增加0,1,2,3....等  
  这是为了使不同的拨好用不同的pid,如果不修改此参数将无法启动第二条线路接口。 
  (3)配置文件一般是: 
  USERCTL=no
  BOOTPROTO=dialup
  NAME=DSLppp1
  DEVICE=ppp1
 TYPE=xDSL
  ONBOOT=yes
  PIDFILE=/var/run/pppoe-adsl1.pid
  FIREWALL=NONE
  PING=.
  PPPOE_TIMEOUT=20

  LCP_FAILURE=3

  LCP_INTERVAL=20

  CLAMPMSS=1412

  CONNECT_POLL=6

  CONNECT_TIMEOUT=60

  DEFROUTE=yes

  SYNCHRONOUS=no

  ETH=eth2 (对应新线路的网卡)

  PROVIDER=DSLppp1

  USER=isp提供的新用户名字2

  PEERDNS=no  
方法二:

  (1)直接拷贝

  cp /etc/sysconfig/network-scripts/ifcfg-ppp0 /etc/sysconfig/network-scripts/ifcfg-ppp1

  (2)修改其中的ppp0为ppp1,

  修改PIDFILE=/var/run/pppoe-adsl.pid 为PIDFILE=/var/run/pppoe-adsl1.pid

  修改采用的新接线路的网卡,例如:改ETH=eth1 为ETH=eth2

  (3)增加新线路的帐号和密码. 帐号密码一般是保存在/etc/ppp/chap-secrets 和pap-secrets

  我们只需要在最后增加新的用户名2和密码2即可.

  /etc/ppp/chap-secrets文件一般是这样的:

  # Secrets for authentication using CHAP

  # client server secret IP addresses

  "用户名1" * "密码1"

  "用户名2" * "密码2"

  "用户名n" * "密码n"

  3.启动ppp接口

  因为adsl-start 命令缺省只能启动第一的ppp接口。所以要启动两个接口,必须指定配置文件。

  可以用:方法一:

  ifup ppp0

  ifup ppp1

  (ifup pppn...)

  或方法二:

  adsl-start /etc/sysconfig/network-scripts/ifcfg-ppp0

  adsl-start /etc/sysconfig/network-scripts/ifcfg-ppp1

  (adsl-start /etc/sysconfig/network-scripts/ifcfg-pppn)

  4.查看新设置是否启动:

  方法一:执行: ifconfig

  出现ppp0 和ppp1 ,并且均得到ip了.说明成功了,结果象这样:

  ppp0 Link encap:Point-to-Point Protocol

   inet addr:218.114.37.137 P-t-P:61.142.110.30 Mask:255.255.255.255

   UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1492 Metric:1

   RX packets:165721 errors:0 dropped:0 overruns:0 frame:0

   TX packets:123673 errors:0 dropped:0 overruns:0 carrier:0

   collisions:0 txqueuelen:3

   RX bytes:157324193 (150.0 Mb) TX bytes:14068892 (13.4 Mb)

   ppp1 Link encap:Point-to-Point Protocol

   inet addr:218.114.35.62 P-t-P:61.142.110.30 Mask:255.255.255.255

   UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1492 Metric:1

   RX packets:560055 errors:0 dropped:0 overruns:0 frame:0

   TX packets:439711 errors:0 dropped:0 overruns:0 carrier:0

   collisions:0 txqueuelen:3

   RX bytes:530025378 (505.4 Mb) TX bytes:80895162 (77.1 Mb)

  方法二: 执行ip高级命令: ip link ls

  也可以检验ppp0和ppp1,结果象这样:

  1: lo: mtu 16436 qdisc noqueue

   link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00

   2: eth0: mtu 1500 qdisc pfifo_fast qlen 100

   link/ether 00:50:bf:07:4e:32 brd ff:ff:ff:ff:ff:ff

   3: eth1: mtu 1500 qdisc pfifo_fast qlen 100

   link/ether 00:01:02:9a:31:b9 brd ff:ff:ff:ff:ff:ff

   4: eth2: mtu 1500 qdisc pfifo_fast qlen 100

   link/ether 00:e0:4c:79:44:71 brd ff:ff:ff:ff:ff:ff

   268: ppp1: mtu 1492 qdisc pfifo_fast qlen 3

   link/ppp

   273: ppp0: mtu 1492 qdisc cbq qlen 3

   link/ppp

  方法三: 用命令测试反应

  ping -I ppp0 202.96.134.133 (测试ppp0的线路状况)

  ping -I ppp1 202.96.134.133 (测试ppp1的线路状况)

  ping -I ppp2 ......n (如果还有多条的话)
5.如果单单是要实现链路负载平衡,让ppp0和ppp1分担负载,那么我们象以下设置一下配置:

  (1)启动路由,允许转发echo 1 > /proc/sys/net/ipv4/ip_forward

  (2)进行伪装:

  iptables -A POSTROUTING -t nat -s 192.168.1.0/24 -o ppp0 -j MASQUERADE

  iptables -A POSTROUTING -t nat -s 192.168.1.0/24 -o ppp1 -j MASQUERADE

  iptables -A POSTROUTING -t nat -s 192.168.1.0/24 -o pppn -j MASQUERADE (如果还有多条的话)

  (3)修改网关

  ip route replace default scope global nexthop dev ppp0 weight 1 nexthop dev ppp1 weight 1

  说明: 用replace的原因是当原来没有网关时会增加这个网关,当已经存在网关时,会修改原来的网关.

  用add 也可以,但是当已经存在默认网关时就要先delete再add.

  两个weight 1的意思是这两条链路的权值是相等的,两条链路承担的网络流量是相等的。

  有一点是需要说明的,因为路由表是基于缓存的,所以在实际中两条链路并不能100%的平分流量

  nexthop NEXTHOP 设置多路径路由的下一跳地址。NEXTHOP比较复杂,它的语法和以下高层参数类似:

  via ADDRESS--表示下一跳路由器;

  dev NAME--表示输出设备;

  weight NUMBER--在多路由路径中,这个元素的权重。表示相对带宽或者服务质量。

  如果你有多条线路,那么继续在其中增加 nexthop dev ppp2(ppp3......)即可

  (4) 刷新路由

  ip route flush cache

  6.即时检查数据的方向

  用tcpdump 分别监察两条线路,用下面命令:

  tcpdump -i ppp0

  tcpdump -i ppp1

  tcpdump -i ppp2......n (有多条的话)

  7.为了每次启动时自动启动,把命令写在启动脚本里面,在 /etc/rc.local 后面增加:

  ifup ppp0

  ifup ppp1

  echo 1 > /proc/sys/net/ipv4/ip_forward

  iptables -A POSTROUTING -t nat -s 192.168.1.0/24 -o ppp0 -j MASQUERADE

  iptables -A POSTROUTING -t nat -s 192.168.1.0/24 -o ppp1 -j MASQUERADE

  ip route replace default scope global nexthop dev ppp0 weight 1 nexthop dev ppp1 weight 1

  ip route flush cache

  结果:运行数月,效果稳定良好。

  上网会明显加快,为何呢,因为两条线路分摊了负载.例如,内网80人同时上网, 如果网络是一条2M的adsl,那么整条线路都拥挤,挤得死死的,每人分得的带宽可能只有30k.大家都会明显感觉上网很慢。

  如果增加多一条线路,那么两条2M共同分摊拥挤程度,这样,可能每人分得的带宽就会变成60K,是原来的加倍,以这种形式来加快上网速度,增加了并发连接的个数。

上海澳凯信息技术有限公司

2008/11/14

linux envioroment set in chinese

来源: ChinaUnix博客  
#uname -a
Linux localhost.localdomain 2.6.9-42.ELsmp #1 SMP Sat Aug 12 09:39:11 CDT 2006 i686 i686 i386 GNU/Linux
1. Linux控制台终端显示中文
修改 /etc/sysconfig/i18n 文件如下:
#LANG="en_US.UTF-8"
LANG="zh_CN.GB2312"
SUPPORTED="zh_CN.UTF-8:zh_CN:zh:en_US.UTF-8:en_US:en"
SYSFONT="latarcyrheb-sun16"
ls -la
总用量 21100
drwxr-x--- 16 root root 4096 2月 1 09:47 .
drwxr-xr-x 25 root root 4096 12月 4 09:44 ..
-rw-r--r-- 1 root root 1532 2007-02-13 anaconda-ks.cfg
-rw------- 1 root root 13250 2月 1 09:51 .bash_history
-rw-r--r-- 1 root root 24 2005-02-22 .bash_logout
-rw-r--r-- 1 root root 191 2005-02-22 .bash_profile
-rw-r--r-- 1 root root 176 2005-02-22 .bashrc
......

2. vi 显示中文问题
编辑文件.viminfo,修改如下 *encoding==utf-8,gbk,重新登录即可输入显示中文
上海澳凯信息技术有限公司

2008/11/8

Linux真的价值100亿美元吗?

个读者 后溪金 @ yeeyan.com 双语对照 原文
Just how do you put a value on an open source, free for all, piece of code such as Linux? The Linux Foundation has attempted to do just that, and valued just one single distro at more than USD $10 billion.
怎样公平计算像Linux一样的开源、自由软件的全部价值,或一段代码的价值?Linux基金会一直试图做到这一点,而且刚刚估算出一个单一的发行版超过100亿美元。
The nonprofit consortium charged with fostering Linux growth, the Linux Foundation , was only founded last year. It sponsors the work of Linux creator Linus Torvalds and has support from Linux and open source companies around the world.
负责培育Linux成长的非营利财团Linux基金会只是在去年才建立。它赞助Linux创造者Linus Torvalds的工作,并得到世界各地Linux和开源公司的支持。
The Linux Foundation dedicates itself to 'accelerating the growth of Linux' but what if you wanted to build a Linux distribution yourself, right now? Something like Fedora 9, for example. How much money would that need given software development costs today?
Linux基金会把时间和精力用于‘加速Linux的发展’,但如果你目前希望自建一个Linux发行版,比如Fedora 9之类。那么,今天需要付出的软件开发成本会是多少呢?
Amanda McPherson, Brian Proffitt and Ron Hale-Evans put their collective heads together and did the math in a newly published paper title "Estimating the Total Development Cost of a Linux Distribution."
Amanda McPherson、Brian Proffitt和Ron Hale-Evans集思广益,并在新近出版的题为“一个Linux发行版的开发总成本估算”的论文中算了一笔帐。
So, did the intrepid trio really discover that the true value of Linux code is USD $10 billion? No, of course not. They discovered that it was USD $10.8 billion!
结果,英勇无畏的三人组真的发现Linux源代码的真实价值为100亿美元吗?不,当然不止。他们发现,价值108亿美元!
What's more, they say, it would take USD $1.4 billion just to develop the Linux kernel on its own. Which is more than the USD $1.2 billion David A. Wheeler reckoned it would take for a fully blown Linux distro (Red Hat Linux 7.1) when he did a similar study back in 2002.
更重要的是,他们说,单为开发Linux内核本身就要花14亿美元。超过了David A. Wheeler估算的12亿美元,他早在2002年就做了一项类似的研究,对完全夸大的Linux发行版(Red Hat Linux 7.1)的价值信以为真。
How did the authors come up with those figures? Well they examined the Fedora 9 distribution using the same tools and methods as Wheeler before them, specifically the SLOCCount tool that estimates value and effort of software development based on the COnstructive COst MOdel (COCOMO).
作者如何拿出这些数字?他们像从前的Wheeler一样使用同样的工具和方法仔细检查了Fedora 9发行版,特别是SLOCCount,这一工具基于COCOMO(COnstructive COst Model,构造性成本模型)估计软件开发的价值和成果。
What about the Fedora code and the Linux kernel itself, and what conclusions can we draw from the figures when it comes to monopolistic software companies and the development of proprietary code?
当涉及到垄断软件公司和专有代码的开发时,从这些数字我们可以得出Fedora源代码和Linux内核本身怎么样和什么结论吗?
The Fedora 9 distribution contains 204.5 million lines of code in 5547 application packages, and in terms of development the authors estimate would require some 60,000 man years to complete. Using 2008 salary figures, they came up with the USD $10.8 billion number.
Fedora 9发行版包含5547个应用程序包,20450万行源代码,而就开发而言,作者估计将需要约60000人年才能完成。用2008年的薪水计算,他们得出108亿美元这个数字。
The Linux kernel as included in Fedora 9 has 6.8 million lines of code, and would need more than 7500 man years to develop, hence the USD $1.4 billion figure.
包含在Fedora 9中的Linux内核有680万行源代码,将需要超过7500人来开发,所以值14亿美元的数字。
But does this really mean the same thing as putting a real world value onto Linux itself? The study makes it very clear as to the enormous economic value that a collaborative development of this nature can attract.
但这是否真的意味着事情就是把实际价值归还Linux本身?这一研究清楚表明,这种性质的协作开发能够吸引巨大的经济价值。
You only have to look at the last couple of years worth of Linux kernel development with some 3200 developers spread across 200 companies making a contribution to get a glimpse of the scale of effort involved.
只要看看过去两年,遍布200家公司的大约3200名开发人员为Linux内核开发作出贡献,相关努力的规模可见一斑。
Oh, and don't forget to then scale it ever upwards when talking about a full Linux distribution.
哦,不要忘了,当谈到一个完整的Linux发行版时,规模总是在变大。
The conclusions are made all the more relevant after a year in which we have seen Linux increasingly bursting into the public consciousness courtesy of the netbook explosion, for example, which quite simply would not have been thought possible a couple of years back.
所得结论是,一年后一切会更中肯贴切,例如,由于netbook的蓬勃发展,我们已经看到,Linux会越来越多地闯入公众的意识,这在两年以前人们干脆就认为完全没有可能。
These devices, that market success, would not have been possible without Linux and without the collaborative development model behind it.
要是没有Linux和协作开发模式的支持,这些设备、这一市场的成功就不可能。
Report author Amanda McPherson, also a Vice President at the Linux Foundation, says "Monopolistic software companies used to be able to fund heavy R&D budgets, keeping out competition. Given the cost associated with building an OS like Linux, one wonders if proprietary companies will ever go it alone again.”
报告作者Amanda McPherson,也是Linux基金会的副会长说,“垄断软件公司过去经常能够为沉重的研发预算拨款,不参加竞争。考虑到与建立一个类似Linux的操作系统相关的费用,人们不禁要问,究竟这些控股公司是否又要单干了。”
上海澳凯信息技术有限公司

2008/11/6

对话 UNIX文章列表


对话 UNIX:掌握强大的命令行
了解有关 UNIX shell 的基础知识,学习如何使用命令行将有限的 UNIX 实用工具组合成无穷的数据转换。
对话 UNIX,第 2 部分:做得多不如做得巧
了解如何利用 UNIX(R) Shell 提供的许多快捷方法。通过一些练习,您将可以更灵活地、而不是更辛苦地进行工作。
对话 UNIX,第 3 部分:在命令行中完成所有的工作
研究提供 Internet 访问的三种基本的 UNIX(R) 命令行实用工具。
对话 UNIX,第 4 部分:UNIX 所有权和权限管理
了解如何对文件权限进行操作以保护您的文件,或者与他人共享这些文件。
对话 UNIX,第 5 部分:操纵数据与文件
了解几种用来在不同系统之间移动文件、以及实现远程数据同步的技术。
对话 UNIX,第 6 部分:通过脚本实现操作的自动化
了解 Shell 脚本如何实现所有个人或系统任务自动化。脚本可以执行监视、存档、更新、报告、上载和下载操作。实际上,任务无论大小,均可通过脚本来处理。
对话 UNIX,第 7 部分:命令行惯用语
UNIX 具有其专有的命令行语言,并且词汇表非常庞大,您并不需要一次掌握所有的命令。本文介绍了许多命令行组合,可以促进您对 UNIX 语言的掌握。
对话 UNIX,第 8 部分: UNIX 进程
在 UNIX 系统中,每个系统和最终用户任务都包含在某个进程中。系统总是不断地创建新的进程,当任务结束或意外发生时,进程会终止。在本文中,您将了解如何控制进程和使用一些命令来查看您的系统。
对话 UNIX,第 9 部分: 正则表达式
几乎所有重要问题都需要从无用数据中过滤出有用数据。了解大量的 UNIX(R) 命令行实用工具如何使用正则表达式来去芜取精。
对话 UNIX,第 10 部分: 定制您的 Shell
您可以自定义 UNIX(R) Shell 以节约时间、节省输入工作量,并使其适应于您的工作风格。Shell 启动文件可以捕获您的首选设置,并在以后的会话中重新创建 Shell 环境会话,甚至在不同计算机中重新创建 Shell 环境会话。
对话 UNIX,第 11 部分: 漫谈 UNIX 文件系统 了解 UNIX 将重要的文件存储于何处
UNIX® 文件系统中的许多目录都用于某个特殊的目的,并且根据长期的约定来对这些目录进行命名。在“对话 UNIX”系列教程的这一部分中,了解 UNIX 将重要的文件存储于何处。
对话 UNIX,第 12 部分: 自己动手完成项目
本文向您描述了如何从一个软件的源码包(tar ball)开始,一步一步地构建成为一个可以使用的应用程序,同时向您提供在这个构建过程中需要注意的一些情况。
上海澳凯信息技术有限公司

2008/10/31

美化你的Linux!23个精美Ubuntu主题下载

Ubuntu 默认的主题一直是大家一个争议的话题,很多Ubuntu用户对 Ubuntu 主色调为黄色的主题并不感冒,也许这就是所谓的众口难调吧。其实稍微动动手就可以让你的 Ubuntu 以一个新的面貌展现在你的面前。刚刚在
sizzledcore.com上看到适用于 Ubuntu Linux 的23个不同风格的主题,感觉相当不错,便立即和大家分享。当然你也可以把他们用的采用 GNOME 桌面的别的 Linux 发行版上。(来自OwnLinux)


















上海澳凯信息技术有限公司

零命令玩转Ubuntu 8.10

前言

10月近尾,又到了Ubuntu新版本发 布的时间了。我也开始忙着把“零命令玩转Ubuntu 8.04”系列的文章升级到支持Ubuntu 8.10。Ubuntu 8.10代号Intrepid Ibex,集成了最新的Gnome 2.24和X.org 7.4等自由软件世界的最新成果,其中的诸多新特征都非常值得所有人期待。

本教程依然秉承着一贯的风格,以系统安装为重点,基本配置为次,介绍不需要任何命令就能玩转Ubuntu系统的一些基本功。当然,如果你要成为资深Ubuntu玩家,熟悉常用的命令将能使你更好的管理整个系统。

这次更新,计划包括如下一些子版块:

一、系统安装部分:

  • 用Live CD安装系统
  • 用Alternative CD安装系统
  • 用Wubi无痛体验Ubuntu系统
  • 用Alternative CD硬盘安装系统
  • 从Ubuntu 8.04升级系统
  • 在虚拟机中安装系统(Virtual Box和VMware)

二、系统配置部分:

  • 基本系统配置
  • 常用软件介绍


其中,Live CD、Alternative CD和Wubi方式安装的文章,将会在Ubuntu 8.10正式发布前发表,其他文章则将等到Ubuntu 8.10发布后再发表,以兼顾准确性和时效性。

上一个系列的文章计划中,关于常用软件介绍的文章最终还是没有成形。这次我也不敢保证能够完成。有时计划还是赶不上变化。

另 外,还要提醒大家都是,系统安装是一件危险的工作,特别是安装双系统。因此,在进行所有操作前,务必要做好备份工作,以免造成难以挽回的损失!本 教程这次改版中,全程使用双系统作为示例,以更好的适应读者的实际情况。还要说一点就是,由于条件所限,我无法测试双硬盘系统和Windows Vista平台的情况。如果你的机器安装了双硬盘或/和Windows Vista系统,请安装时一定要小心操作,并预先做好备份工作。

在开始安装系统之前,建议你一定要阅读“零命令玩转Ubuntu 8.04 之 安装篇 (准备知识)”,这将对你理解所有的安装过程中的操作有很大的好处。

如果你已经一切就绪,那么现在就开始动手吧!


准备硬盘分区

准 备篇的主要目的是准备好安装Ubuntu所需的硬盘分区。也许你以前曾经接触过PQ Magic,Paragon Partition Manager和Acronis Partition Expert/Disk Director等工具。不过这里我并不打算用它们来处理硬盘分区,而是用我们手头上现有的Ubuntu安装盘来准备硬盘空间。

如果你没有Ubuntu 8.10的LiveCD光盘或只有Alternative CD的光盘,或只有ISO文件,请直接跳过本文,因为关于在文字界面下的分区操作,将会在“用Alternative CD安装系统”部分介绍。

假设原始的系统有两个分区(如下图所示),一个是主分区,安装了Windows,另一个是逻辑分区,存放文件。安装Ubuntu所需的磁盘空间将从逻辑分区中划分出来。

好了,请把光盘插入光驱,重新启动计算机,并选择从光盘引导系统。(如果你不知道怎么从光盘引导系统,请自行Google之。)

引导进光盘后,你将见到一个语言选择画面:

选择“简体中文”,这时,就能见到中文的安装程序选择菜单了:

我们选择第一个选项“试用Ubuntu而不改变计算机中的任何内容”,以引导进去LiveCD系统。这样,我们就能有一个完整的操作系统环境,来处理硬盘分区了。

回车后,LiveCD系统开始引导:

几分钟后,引导完成,并自动登录默认账户。

选择“Syetem” - “系统管理” - “Partition Editor”,打开分区编辑软件:

点击硬盘示意图上的后面那个较大的分区(/dev/sda5)选中它,选择“Partition” - “Resize/Move”,进行分区大小调整:

我们把这个分区调小至1000MB。在实际操作中,请根据需要进行操作。推荐划分出4G以上的空间,以正常安装、使用Ubuntu:

在硬盘示意图上选中“Unallocated”部分,选择“Partition” - “New”创建分区:

我 们在“Free Space Preceding”中输入512MB,为交换分区预留空间。交换分区的大小通常是物理内存的1-2倍。【这里使用“Free Space Preceding”并无特殊目的。你也可以直接在“New Size”中输入512MB,创建一个交换分区。】Created As里选择Logical Partition;“File System”选择“ext3”;Label部分留空;勾上Round to cylinders;点击“Add”按钮完成设置。设置空间的三个文本框,只需填其中的任意一个;填好后,移动光标,其他两个对话框的数字变化会自动计 算:

如法在刚才预留的空间上创建交换分区。空间大小无需修改,File System选择linux-swap,其他设置与上面一样:

选择“Edit” - “Apply All Changes”来应用分区修改:

这时会跳出对话框,提示你是否真的要进行操作。因为当你按下“Apply”按钮之后,分区操作就开始,而在此之前,所有的修改都没有真正的应用到硬盘上。如果你确认无误,按下“Apply”按钮完成分区操作:

分 区操作可能需要很久。这取决于你分配空间的大小以及磁盘已经使用空间的大小。请耐心等待,在任何情况下都不要按下“Cancel”按钮——即使是 你发现自己在分区时犯了错也不行,除非你知道自己在干什么——如果你不听劝告,不顾后果擅自取消分区操作,你将有丢失所有磁盘文件的风险!!!另外,请在 分区操作开始前为笔记本装上电池,以防止意外停电带来不可预料的后果,台式机就只能听天由命了——除非你有UPS:

分区操作完成后,你可以按下“Save Details”来保存操作记录;或直接按下“Close”按钮,关闭对话框:

至此,分区操作完成。你可以退出分区程序,点击桌面上的“安装”图标直接进行安装:

如果你暂时不打算安装,可以选择“System” - “Shutdown”进行关机或重启。

好了准备篇的介绍到此告一段落,因为有那个废话连篇的前言,因此篇幅比较长。不知道你耐心看下来了没有。在完成了准备篇之后,安装Ubuntu就只欠东风了。

虽然分区可以在安装过程中完成,但是为了清楚起见,我把这部分内容独立出来了。其实正如你将看到的是,在讲述Alternative CD方式安装的时候,关于分区的操作是在系统安装部分中介绍的。

[X-BetA] 原文链接:http://www.x-beta.cn/linux/no-command-play-ubuntu-v81.html



上海澳凯信息技术有限公司

Ubuntu 8.10正式发布!


今天来到Ubuntu闲逛发现ubuntu,xubuntu,kubuntu,and ubuntu studio都发布了哦!好高兴可是我不能下载。还要继续等自己买了电脑再说,不过还是先申请再说吧呵呵!


BTRFS:更好的Linux文件系统?

所有操作系统的核心是文件系统,它提供了对数据的读写路径。自2001年开始,Ext3一直是主流的Linux文件系统,但是现在出现了另外一种更好的文件系统。

Oracle工程师Chris Mason带来的开发团队研发了名为BTRFS(Better FS)的文件系统。由于英特尔、Red Hat、惠普和IBM等多厂商的支持,BTRFS将成为新一代Linux文件系统的生力军。

Oracle公司Linux Kernel开发主管Chris Mason表示:“我们主要的目标是扩展Linux可用的存储空间。扩展不仅仅是解决存储空间问题,而且还意味着能够从一个清晰的界面进行管理,让用户看到使用情况,从而提高可靠性。”

Mason指出,虽然硬盘驱动器容量越来越大,但是这些驱动器上的错误率并没有降低下来。

Mason表示:“我们需要很容易地了解到什么时候磁盘中出现错误信息,而且我们需要能够做连续的文件系统检查、以一种更加稳定的方式进行恢复,现在我们实现了这一点。”

对于目前的Ext3 Linux文件系统,扩展以满足大容量存储空间对用户来讲是一种挑战,而这其中有很多原因。

原因之一是,Ext3并不是针对企业和消费用户现在正在使用的大型数据池设计的。Mason指出,在Ext3系统中,每4k的数据就有一个元数据指向这4k数据在驱动器中的位置。所以,当文件容量变得越来越大,元数据也就越来越多,这样效率就很低。

Mason表示:“BTRFS采用了extent,也就是说从这些数据块的起始位置使用磁盘的一个区域。”

extent方法要比Ext3系统4k数据块的方法更高效、更具可扩展性,这也是新的Ext4文件系统(即将推出的2.6.28 Linux内核的组成部分)的一部分。

虽然Ext4中增加了extent,但是Mason发现BTRFS还增加了其他一些特性,例如快照、在线文件连续性检查以及快速增量备份。

Red Hat公司Ric Wheeler表示:“我们认为BTRFS具有成为下一代主流Linux文件系统的潜力。”

Wheeler表示,现在Red Hat工程师正在积极开发这个项目。英特尔也对BTRFS很感兴趣。英特尔公司开源技术中心主管Imad Sousou表示,英特尔看好BTRFS,而且正积极致力于BTRFS的研发。

英特尔认为,他们具有很好的技术和架构策略来升级Linux文件系统以支持性能和容错等方面不断增长的需求。

惠普也加入到这个行列中来,将他们传统的UNIX加入其中。

惠普开源和Linux部门首席技术官Bdale Garbee表示:“惠普对BTRFS很感兴趣,因为BTRFS的目标是为了提供一个与Tru64 AdvFS类似的核心组以及其他功能特性。”

今年六月,惠普宣布开源其Tru64 AdvFS文件系统,这款系统最初源自于Digital Equipment公司的Digital Unix。Mason表示,几年前他开始使用Tru64,现在惠普宣布AdvFS的开源将对BTRFS的发展起到重要的推动作用。

Mason预计到2008年年底之前Linux用户将可以使用到测试版的BTRFS。现在他们的目标就是开发一款作为2.6.29 Linux内核一部分的BTRFS。

Mason表示:“本周,我们做了巨大的格式变动,未来还有更多小的改动。一旦完成,BTRFS将提供给测试用户使用。”

目前,Mason面临的最大挑战就是如何确保BTRFS的稳定性。

Mason表示:“因为我们还将继续增加新的特性,所以未来将会有大量的改变。现在大多数还只是软件设计以确保能够易于测试,不会引发衰退。"

新手搭建网站服务器(Ubuntu+LAMP)

我是一个不精通Linux的新手,想要安装一台Ubuntu6.06 版的 Linux服务器,用这台服务器上的LAMP套件来运行我自己的个人网站。LAMP套件就是“Linux+Apache+Mysql+PHP这四款软件组 成了一个可以使网站运行的套装工具软件。”通过Google搜索和安装尝试,我获得了一些成功的安装配置经验,通过本文提供给Linux网站服务器系统的 入门者学习。本次安装的网站软件环境中将使用Apache2网页服务软件、MySQL5网站后台数据库软件、以及PHP5角本解释语言软件,配置成的系统 也可提供FTP服务。

如果你的电脑装配了足够多的物理内存,建议你下载一份Vmware虚拟机软件来虚拟安装这个网站服务器环境软件。Vmware软件提供的虚拟机可以使你的安装和更改配置变得非常简单。Vmware软件可以从
这里免费下载.

安装Ubuntu 6.06 Linux服务器软件

首先从
Ubuntu 网站下载得到Ubuntu6.06服务器软件CD镜像文件(.iso文件),用刻录软件把下载的ISO文件制作成CD。安装的时候,选择安装菜单中的LAMP安装模式进行安装,并且安装提示来进行软件配置。

操作系统安装选项

默认安装过程结束后,唯一呈现在你面前的将是一个Linux命令提示 符,作为Linux新手,此时你可以做两个选择:1.学习在命令提示符下输入哪些命令,来配置这台LAMP网站服务器;2.继续进行安装,为机器加入一个 图形用户接口软件,用可视化直观的方式来管理这台LAMP网站服务器。第二种方法对初学者来说很容易办到。

为了在命令提示符下获得一个图形用户接口软件(KDE或Gnome都可以),你需要输入一些命令。Gnome图形用户接口相对来说比较容易上手。

在命令提示符下输入下列命令将可以获得Gnome图形用户接口软件:


sudo apt-get update

sudo apt-get install ubuntu-desktop

运行以上命令时保证你的机器和Internet是连通的。sudo命 令运行时将提示你输入特权用户root的密码,因为以上命令只有root用户才可以运行。如果密码输入正确,安装图形用户接口的过程将自动开始并进行,安 装结束后,系统提示你重起。再次启动系统时,你将进入一个Gnome图形用户界面,在图形界面中,你可以很方便地对整个机器进行管理和配置调整。

配置网站服务器套装软件

运 行上面刚安装好Ubuntu 6.06 Linux机器时,其实一个完整的网站应用环境也已经同时在运行了,其中包含了:Apache2, MySQl 5, PhP5和Pearl5等软件。接下来的工作,就是按照你的网站的需求,来对这些网站软件逐个地进行配置.配置的方法有两种:直接修改相应软件的配置文 件;或者下载给予web的图形化管理工具软件来配置相应的网站软件。直观的图形化管理工具比较适合初学者使用,本文介绍一款名叫WebMin的图形管理来 管理这些网站服务器软件。

webmin

WebMin管理工具可以从 这里下载.下载结束后你会得到一个名叫“webmin-1.290.tar.gz”的文件.你需要通过运行以下命令来解压并安装这个图形化的管理工具:


sudo apt-get install build-essential

cd Desktop

ls

cd webmin-1.290

./setup.sh /usr/local/webmin

管理工具安装过程将开始,安装自动进行,完成后,在机器上的浏览器地 址栏内输入http://机器名:10000,来打开webmin管理工具, 点击"servers"选项,浏览到Apache Webserver图标,作上角你可以看到一个叫“module configuration”的标签,在这个标签内需要改变一些设置。

1.将 “File or directory to add virtual servers to”设置成 “/etc/apache2/sites-available/default”. 这条改动对多站点的设置有用

2.将 "Directory to create links in for new virtual servers"设置成 "/etc/apache2/sites-enabled/000-default".本条将开启指定的虚拟站点

(大概类似下图)

配置

3. 向下滚动进入到“system configuration” 并且将“server root directory” 设置成 “/etc/apache2”.

4. 将 “path to httpd executable” 设置成 “/usr/sbin/apache2ctl”.

5. 将 “path to apache2ctl”设置成 “/usr/sbin/apache2ctl”.

6.将 “command to start apache” 设置成 “/etc/init.d/apache2 start”

7. 将 “command to stop apache” 设置成 “/etc/init.d/apache2 stop”

8. 将下面所有的apche改为apache2,效果类似下图。

apache2配置

完成以上步骤后保存,再回到 “apache webserver”图标,然后重新启动 apache2. 为了使外部用户可以访问到你的网站,你应该开放机器的80号端口,如果网站的端口设置成8080,还需要在DNS服务器中设定正确的记录。

现 在开始测试网站。首先为你的机器准备一个公网IP地址,不要使用内网私用地址 (比如192.168.x.x这样的地址) ,内网私用IP地址无法被外网用户访问到。在上网电脑中输入你机器的公网IP地址,你将会看到Apache2的默认页,这表明Apache2 软件已经工作正常。

apache2默认页

你能够浏览到以上页面,就表明你机器的80号端口是开放并有效的,你 的网站服务器软件Apache2已经正常运行了。接着要做的就是把你的网站页面文件全部拷贝到"/var/www"目录之下,将首页文件更名 为"index.html"。为避免ISP将你的端口地址封堵,可以使用端口转发办法,步骤如下:
  1. 若你的网站服务器在一个路由器后面,那么你需要给你的机器设置一个静态的IP地址。 “network setting” ->“Ethernet connection” 设置网络的属性值
  2. 在IP地址选项中输入“192.168.1.3”. (你可以将3,任意改为2~254之间的任何一个数字,注意不要和其他机器的地址数重复了)
  3. 在“subnet mask”中保持默认的值 “255.255.255.0”.
  4. 在默认网关 “default gateway”中使用路由器的IP地址,一般是192.168.1.1

    (类似下图)

静态IP地址配置



接着,登陆你的路由器,将HTTP请求转发到 8080端口.例如,上图采用的路由器是Linksys wrt54g,登陆路由器的时候需要输入用户名和密码,如下:
usrname:

passwrd: admin

一旦登入到路由器中,你将会看到一个可以调整路由器各项参数的简单的图形界面。对linksys路由器来说,你可以看到一个叫"Gaming and Accessories"的标签,这里你可以选择转发10个不同端口。输入:


Description: "HTTP"

Port from: "8080"

Port to : "8080"

IP: "192.168.1.3" (任何分配给你的机器的静态IP地址)

确信已复选“启用”框

(类似下图)

端口配置

通过以上设置,你就把访问路由器上的通信转发到了,静态IP地址为192.168.1.3 的内部机器的 8080端口上了,此时,你需要将内机上的Apche侦听端口从80更改为8080,操作如下:

-打开WebMin管理工具并点击“apache webserver” 图标

-点击 “network and addresses” 标签在那里更改端口号

-在WebMin工具中重新启动Apache2网页服务软件

到这里,如果你打算从外部访问你的网站,就可以在外部的浏览器地址栏中输入,类似“66.665.66.1:8080”这样的地址,获得对你网站的访问。更改端口到8080的设置,仅限于你的机器IP地址的80端口入站通讯被屏蔽的情况。

接下来,你就可以设置一些列的网站服务选项:设置FTP文件服务功能,设置DNS服务器来配置你自己的域名,邮件和FTP路由等等软件。网站服务器初步建成了,可以访问了,如何远程地往服务器中添加网站内容呢?下面介绍FTP上传工具的设置。

FTP上传配置

本文使用Proftpd软件来充当网站FTP上传工具. 该软件很容易使用,比较适合Linux初学者,而且WebMin管理工具也可以对Proftpd进行集成管理。具体安装步骤如下:


- 打开Ubuntu中的synaptic找到Proftpd.

- 让synaptic为你自动下载并配置.完成后 WebMin将可以对其进行管理

为了能正常上传网站内容,我们还需要对FTP做一些设置工作:

首 先,在Ubuntu的用户列表中增加一个新用户。在桌面转到 “system”标签-->“administration” -->“users and groups”. 你可以按你的意思新建一个用户名,然后新加入一个名叫ftp的"组用户",确信将新建的用户加入到新建组ftp之中,同时把/var/www的目录的访问 权限开放给新用户。

然后,你需要使用 WebMin来为Proftpd软件增加新用户。点击WebMin工具中的Proftpd图标,浏览到 “edit confi files”图标,你需要手动地把新建的用户和组ftp加入到配置文件中,点击“set the user and group that the server usually runs at”然后把用户和组添加入。

(改变之前如下图)

proftp配置

对 配置文件中的 “umask”的值应该做正确设置,为了使大多数访问可以进行,应该将umask的值设定为较低的002,便于测试。为Proftpd添加了用户和组后, 应该用端口转发方法把21号端口转发到网站服务器所在的静态IP地址的机器上(仅限于网站服务器在防火墙或路由器后面的情况)。

这 样,你就可以用FTP客户端软件来上传你的网站内容了。在Linux或Windows的FTP客户端中输入ftp://username@IP就可以了。 默认情况下MySQL数据库和PHP语言环境在安装Ubuntu软件时,已经全部设置好了,你无需再做设置了。你可以使用WebMin来管理和察看这些网 站服务器套装软件(MySQL+Apache+PHP,Perl),你也可以下载phpMyAdmin图形化管理软件来控制MySQL数据库的运行。