本人曾经号称Linux+Apache+MySQL+PHP环境的搭建是闭着眼睛也能做的事情。历史上也的确曾经无数次闭着眼睛半小时就能搞定从下载到编译到最终配置成生产环境的服务器整个过程。然而昨天遇到的一切,却实实在在让我睁开眼睛集中精力总计用了8个小时才部署起一套Linux+Apache+MySQL+PHP+Ruby on Rails。
回忆总是痛苦的,不过为了大家不再痛苦重蹈覆辙,我还是愿意重走长征路,分析一下我犯过的错误吧。

1. Are we ready for x64?

我们实验室的德国学弟向来使用Linux。当年他到我们这里来的时候,作为网管的我需要给他安装一套英文版操作系统。我手上有Windows Server Computing Cluster Edition,正好是英文版,而且是正版,可惜是64位系统。在我询问他的过程中,他问我觉得64位版本的Windows怎么样。我回答”Only more troubles.”,他笑,告诉我看来Windows并没有准备好,还是Linux的64位支持比较好吧。其实我还是持某种怀疑态度。
我觉得,作为生产环境的网络管理员,使用64位版本操作系统总是要三思的事情。因为有太多太多兼容性问题需要考虑。在这方面,好像其实Windows做的反而更好一些,因为.NET编译的exe程序拿到64位版本Windows上不需要重新编译直接就可以原生64位地运行。64位Windows中还包含一个32位虚拟机,可以近乎完美地模拟32位环境,提供向下支持。
Linux就不是这么幸运了。很多库都没有考虑过这些问题,这也是导致这次部署麻烦多多的根源。

2. 64位Fedora 9和32位Fedora 10

今天用的机器是一台IBM x3200服务器。本来上面装好Fedora 9的64位版本。因为很久没登陆上去,我并不知道这是一台跑着64位版本的系统。
于是上来安装Apache,似乎一切顺利。下载最新版MySQL,版本5.1的二进制版本并安装,也没有遇到什么问题。
然后安装PHP,配置make使用以下命令:
[code=’c#’]
‘./configure’
‘–with-mysql=/usr/local/mysql’
‘–with-apxs2=/usr/local/apache/bin/apxs’
‘–with-zlib’
‘–with-bz2’
‘–with-gd’
‘–with-png-dir=/usr/lib’
‘–with-zip-dir=/usr/lib’
‘–enable-track-vars’
‘–enable-exif’
‘–enable-mbstring’
[/code]
然后出现错误:
[code=’c#’]
checking for MSSQL support via FreeTDS… no
checking for MySQL support… yes
checking for specified location of the MySQL UNIX socket…
no
checking for MySQL UNIX socket location… no
checking for mysql_close in -lmysqlclient… no
checking for mysql_error in -lmysqlclient… no
configure: error: mysql configure failed. Please check
config.log for more information.
[/code]

3. 错怪MySQL 5.1

接下来我犯下了第一个错误:让新闻影响了经验。我受到影响的新闻是:MySQL创始人力劝用户暂缓部署MySQL 5.1,鉴于我不下10次地用这个配置命令装过LAMP环境,我第一个矛头指向了MySQL 5.1。
然后我在Google中发现,这个问题被当作Bug在MySQL的项目管理和PHP的项目管理系统中多次出现:

我看到几种所谓解决方案:

  • 主张将“–with-mysql=/user/local/mysql”改成“–with-mysql-dir=/user/local/mysql”
  • 主张将Makefile里面的-L/usr/lib/mysql改为-L/usr/lib64/mysql

我犯的第二个错误是过于自信,其实现在看起来有很多地方提升我,这个问题是由64位的Linux导致的,但是盲目的我当时选择了视而不见。

4. Ruby on Rails

为了避免将来更多的麻烦,我选择了最复杂的方式:换64位Fedora到32位Fedora 10。接下来的过程很顺利。
全部安装好之后我决定把原来实验室的Redmine也搬进来,于是需要集成Passenger到Apache中。
使用yum和gem安装Ruby on Rails的过程只需要用愉悦来形容,很顺利。
在gem装好Passenger之后,执行:
[code=’c#’]
passenger-install-apache2-module
[/code]
的时候出现一个小细节,Passenger安装脚本发现Apache在/etc/sbin/httpd下,其实我安装在/usr/local/apache下。这时候需要用几个环境变量来纠正一下。
[code=’c#’]
export APU_CONFIG=/usr/local/apache/bin/apu-1-config
export APR_CONFIG=/usr/local/apache/bin/apr-1-config
[/code]

最近几日做了几件看起来疯狂的行动:把同济网在美国DreamHost做个备份。按照计划,每个月还要更新一下数据。这里可是说海量数据…
所谓海量,同济网论坛有附件合计5GB,数据库导出之后是3.78GB,其中单个posts表就2.2GB。
且不说导入的过程何其漫长,这个从中国到美国的数据传输,就需要画上一番脑筋。
Anyway,我搞定了,副产品是,给大家介绍一下在Linux上怎么压缩解压缩常见文件类型。

1. Windows -> Linux

Windows平台上估计大家都用Winrar了。Winrar可以压缩zip(不能超过2GB)和rar格式。

.zip

解压:unzip FileName.zip
压缩:zip FileName.zip DirName

.rar

解压:rar x FileName.rar
压缩:rar a FileName.rar DirName

2. Linux -> Windows

.tar

解包:tar xvf FileName.tar
打包:tar cvf FileName.tar DirName

.gz

解压1:gunzip FileName.gz
解压2:gzip -d FileName.gz
压缩:gzip FileName

.tar.gz和.tgz

解压:tar zxvf FileName.tar.gz
压缩:tar zcvf FileName.tar.gz DirName

.bz2

解压1:bzip2 -d FileName.bz2
解压2:bunzip2 FileName.bz2
压缩: bzip2 -z FileName

.tar.bz2

解压:tar jxvf FileName.tar.bz2
压缩:tar jcvf FileName.tar.bz2 DirName

.bz

解压1:bzip2 -d FileName.bz
解压2:bunzip2 FileName.bz
压缩:未知

.tar.bz

解压:tar jxvf FileName.tar.bz
压缩:未知

.Z

解压:uncompress FileName.Z
压缩:compress FileName

.tar.Z

解压:tar Zxvf FileName.tar.Z
压缩:tar Zcvf FileName.tar.Z DirName

参考:

http://soft.zdnet.com.cn/software_zone/2007/1009/542973.shtml

某同学在我的微软在产品中使用Apache!?一文中回复,说没什么大惊小怪的,微软向来如此,并提出微软Live搜索search.live.com使用Linux服务器。据我所Google结果,这个说法可能来源于这里

[singlepic=18063]

其实这只是误解而已,不能证明search.live.com使用了Linux做服务器操作系统。原文中使用Netcraft的工具扫描域名所指向服务器的操作系统,并由此得出search.live.com使用Linux服务器的结论。
这是完全错误的。同样根据Netcraft的工具,还会反向查询IP所对应的所有者,可以发现,使用Linux的服务器,其IP都是属于ISP,没有一个属于Microsoft Corp。这些Linux服务器,只是ISP提供的NAT和边界网关而已,Microsoft只是不可避免地使用了ISP的服务,至于跑search.live.com的服务器,可以肯定,都是Windows Server。

当使用了svn版本控制系统后每个目录下都会有一个.svn目录存在,开发完当交付产品或者上传到服务器时一般要把这些目录删除,这里总结了一下在linux和win下的办法。

一、在linux下
删除这些目录是很简单的,命令如下
[code=’css’]find . -type d -name “.svn”|xargs rm -rf[/code]
或者
[code=’css’]find . -type d -iname “.svn” -exec rm -rf {} \;[/code]
全部搞定。

二、在windows下用以下法子:

  • 在项目平级的目录,执行dos命令:
    [code=’css’]xcopy project_dir project_dir_1 /s /i[/code]
  • 或者在项目根目录执行以下dos命令
    [code=’css’]for /r . %%a in (.) do @if exist “%%a\.svn” rd /s /q “%%a\.svn”[/code]

其实第二种方法可以用来干很多事的,比如把代码中的.svn替换为任意其他文件名并在硬盘根目录下执行,就可以从硬盘上删除所有的这个文件啦。

3、加注册表
Jon Galloway提供了一段注册表代码,可以将”Delete SVN Folders”命名增加到资源管理器的右键上,这样,鼠标点两下就能把选中目录下的所有.svn目录干掉了。Works just great!
代码为:
[code=’css’]Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Folder\shell\DeleteSVN]@=”Delete SVN Folders“
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Folder\shell\DeleteSVN\command]@=”cmd.exe /c \”TITLE Removing SVN Folders in %1 && COLOR 9A && FOR /r \”%1\” %%f IN (.svn) DO RD /s /q \”%%f\” \”“[/code]
将这段代码保存为一个.reg文件,双击确认导入注册表即可。


这是我在LUGTongji做的关于SMP的讲座PPT。


我的部分主要关于高性能计算及未来计算机体系结构部分。


为了实现高性能计算,使用过很多种方法。


但是遗憾的是,种种原因使得,并不是增加CPU就能够提高性能。


这是多年以来典型的单处理机架构。在这种架构上,提升主频能够显著改善程序执行速度。


这是典型的SMP架构。SMP架构有很多致命的缺陷使得其扩展性不高。主要原因是多CPU对FSB的竞争。


这是Intel Duo Core架构,也是一种紧耦合SMP。

Continue reading

1. Ubuntu
几乎所有Geek都知道Ubuntu名字的含义,下面的介绍谨防你是山顶洞人。Ubuntu.com定义是:“Ubuntu”是一个非洲词语,其含义是“人性地对待他人”,或者“我们是谁决定了我们是什么人”。Ubuntu发行版将Ubuntu精神带到了软件世界。
2. PCLinuxOS
跟前面差不多,三个词组合成一个词,PC+Linux+操作系统(Operating System)。PCLinuxOS拥有一个类似Windows的图形用户界面,努力使得用户迁移到Linux更加容易。因此使用了PC这个词(虽然PC并不是由Windows一家独大,这里有点用词不当)。
3. openSUSE
openSUSE是由Novell和AMD赞助的一个SUSE社区项目。SUSE是“Software- und System-Entwicklung”(软件和系统开发)的德语缩写,但是也有人说这个名字是为了纪念计算机工程师Konrad Zuse。
4. Fedora
Fedora是由Red Hat赞助的社区Linux计划。名字“Fedora”由一种帽子名派生而来,帽子上有Red Hat的logo。
5. Mandriva
这个Linux发行版原本是Mandrake发行版,由MandrakeSoft负责维护,MandrakeSoft在与Hearst Corporation的法律纷争中失去了“Mandrake”这个名字。MandrakeSoft后来收购了Connectiva,结果是产生了合成词“Mandriva”。
6. Sabayon
Sabayon是在Trentino产生的发行版。是意大利语,是一种意大利甜点的名字。Sabayon(或者叫Zabaglione)由蛋黄,糖和甜酒制成。
7. Debian
Debian第一次出现是在1998年由Ian Murdock介绍。Debian这个名字由他的女朋友(现在的妻子)Debra和他的名字Ian混合而成。
8. Damn Small Linux
Damn Small Linux是一款仅有50MB大小的超小型Linux发行版。故名。
9. MEPIS
根据MEPIS的原创者Warren Woodford的介绍,MEPIS一开始没有任何含义,他仅仅是通过一通错误的Skype连接结识了一个朋友,然后很喜欢人家的名字!
10. FreeBSD
FreeBSD确切地说不是一个Linux发行版,它更像是Linux的一个分支,并且在distrowatch上排名11。BSD是由加州大学伯克利分校开发的Unix衍生物,BSD是伯克利软件发行版(Berkeley Software Distribution)的简称。FreeBSD是伯克利发行版的一个免费分支。
11. CentOS
CentOS基于Red Had Enterprise Linux (RHEL),基本含义是社区企业级操作系统(Community Enterprise Operating System)
12. Dreamlinux
Dreamlinux是基于Debian的巴西Linux发行版,类似于苹果OS X。我并不相信这个名字背后有个原因,只是简单的把梦和Linux加在一起,我想说明原意,对不起~
13. Puppy Linux
Puppy Linux是一个小型的live CD发行版,致力于易用性。这个版本由于叫做“Puppy”带来了福音。
14. Kubuntu
大概只是KDE + Ubuntu = Kubuntu。
15. Zenwalk
这个难死我了。浏览他们的网站时,我被告知“ever tried zen computing?”,所以Zen这部分是可以解释的,但是walk呢?logo是个海豚?海豚是walk?LOL。当我给JP Guillemin,这个版本的创建者发邮件,问他怎么解释的时候,他的回答同样费解。
Hi,Zenwalk是在发音(和含义)上与Nextstep类似,这个著名的OS由Steve Job在被苹果炒掉之后所创建。
Cheers。
16. Slackware
Slackware由Patrick Volkerding创建,Slackware本是一个私人项目,为了防止它成为一个正统的发行版,Patrick给它起名为“slack”。这里的slack引自Church of SubGenius(谢谢那些帮我指正的人)。
17. Knoppix
Knoppix是一个Debian的live CD版本,由Klaus Knopper开发,由他的名字命名。
18. Gentoo
Gentoo是一个源代码基础的发行版,含义是所有东西都平等地编译,使得其速度增快。这个特点也促使了它改名成为Gentoo(原来是叫Enoch),词义是游泳速度最快的企鹅。对了,我甚至说服我的一个朋友给她的猫起名“Gentoo”,多么可爱啊~
19. Slax
Slax是基于Slackware的live CD版本,故名。没有太多特殊的。继续。
20. Sidux
Sidux是基于Debian的不稳定分支,codename为“Sid”的版本而来的发行版,“Sid”得名于Toy Story中的Sid Phillips一角色,经常破坏她妹妹的玩具。你看,Geek生来就有幽默感。
21. Ubuntu Studio
Ubuntu Studio只是一个特殊的Ubuntu衍生版本,用于通用多媒体制作。
22. PC-BSD
PC-BSD是一个BSD分支的发行版。它的目标是使用图形化安装程序使得其易于安装,默认使用KDE使得其容易且立即可用,预装图形化用户界面,因此加入了PC前缀。
23. Xubuntu
这些Ubuntu衍生版本都有什么毛病?Xubuntu = XFCE + Ubuntu。下一个!
24. Foresight
Foresight是一个使用Conary为其包管理器的Linux发行版,它支持滚动升级,而不是像一般发行版一样每年发布两个大版本。例如,当妖精 1.0版将在下一个月内发布的时候,Foresight用户将会在一周之内得到它,但是Ubuntu用户则必须等到十月份(感谢来自Foresight IRC频道的pcutler的解释)。
不管如何,有了Conary,Foresight可用立刻获取更新,不然你就要等另一个发行版本,很有格调。
25. DesktopBSD
网站上说:“DesktopBSD目标是成为一个稳定强大的桌面用户操作系统。”
26. Red Hat
这个名字有一个很有意思的故事。我留着让Red Hat合伙创建人Bob Young来解释。
27. OpenGEU
OpenGEU本来叫做Geubuntu,是一个基于Ubuntu的发行版,使用了GNOME和Enlightenment作为窗口控制器,字母“G”和“E”就是他们的组合。但是由于某些法律原因,改名成了OpenGEU。
28. Elive
这个版本同样是一个基于Debian的Live CD发行版本,使用Enlightenment作为窗口控制器。
29. Freespire
2005年8月的时候,偶然之间,基于Linspire源码的Live CD发行版来到了网上。不久就成了独立的发行版。Linspire同样有一个很有意思的故事在背后。Linspire开始叫做“Lindows”,但是一些微软法律部门的坏小子认定“Lindows”侵犯了他们的“Windows”,决定诉诸法律。微软的案子并没有在法庭上解决,于是微软决定付给Lindows两千万美元,让它改名为Linspire。
30. Frugalware
我找不到任何记录下来的原因。但是它有可能取自节俭哲学。根据Wikipedia解释:Frugality出现在信任系统的上下文中的时候,是一个人不信任的哲学,或者深信“专家”知识,常常来源于商业市场及企业集团领域,宣扬最了解经济,物质化或者个人的精神需求。
31. Fluxbuntu
又一个Ubuntu?只是另外一个使用Fluxbox作为窗口管理器的Ubuntu。
32. Xandros
Xandros来源于X Windows和Greek island Andros。
33. TinyME
TinyME是PCLinuxOS的轻量级版本。
34. gOS
gOS是一个高度集成了Google Apps的Ubuntu衍生版,如果你还没猜到,那么可以认为g代表Google,gOS含义“Good OS LLC”,是这个发行版支持公司的名字(感谢来自stumbleupon的konradc指出这一点)。
35. Backtrack
Backtrack是一个包含大量安全和分析工具的,用于安全测试和渗透检测的发行版。它的名字源于这样一个事实:“反跟踪”入侵者。

感谢张欣(Crayon@Uruz7)同学整理的Ubuntu下工具的安装方法!

一、安装Grub
$ grub
$ find /boot/grub/stage1
(hd0,*)
$ root (hd0,*)
$ setup (hd0,*)
$ quit
$ sudo dd if=/dev/sda(*+1) of=\ubuntu.lnx bs=512 count=1
将ubuntu.lnx文件复制到Windows的根目录下,比如C:\,修改boot.ini,添加C:\ubuntu.lnx=”Ubuntu 7.10″。

二、语言支持与软件更新
系统–>管理工具–>软件源–>下载自:–>其他…–>台湾–>tw.archive.ubuntu.com–>选择服务器–>关闭–>重新载入
系统–>管理工具–>语言支持(Language Support)–>支持的语言–>Chinese–>应用–>确定
$ sudo apt-get update
$ sudo apt-get upgrade

三、安装nVidia显卡驱动
下载NVIDIA-Linux-x86-100.14.19-pkg1.run。登录控制台(按下ctrl+alt+F1~F6任一)。
$ sudo /etc/init.d/gdm stop
$ sudo apt-get install build-essential #或只安装libc6-dev
$ sudo sh NVIDIA-Linux-x86-100.14.19-pkg1.run
$ sudo /etc/init.d/gdm start

四、安装字体
如果字体文件都保存在/home/(user_name)/fonts里
$ cd /usr/share/fonts/
$ ln -s /home/(user_name)/fonts myfonts/
#或者 $ mkdir myfonts
# $ cp /home/(user_name)/fonts/* myfonts/
$ cd myfonts/
$ sudo mkfontscale
$ sudo mkfontdir
$ fc-cache
系统–>首选项–>外观–>字体,在这里修改。

五、输入法SCIM
$ sudo im-switch -s scim -z default
$ sudo apt-get install scim-qtimm
$ sudo apt-get install scim scim-pinyin scim-tables-zh im-switch scim-qtimm scim-bridge scim-bridge-client-gtk scim-bridge-client-qt scim-bridge-agent
$ gksu gedit /etc/X11/xinit/xinput.d/scim
将默认的 GTK_IM_MODULE=scim 修改为 GTK_IM_MODULE=”scim-bridge”。
另外,在scim输入法中进行了如下设定:scim设置->全局设置->将预编辑字符串嵌入到客户端中 前的勾去掉;scim设置->gtk->嵌入式候选词标的勾去掉。

六、NTFS分区读写支持
UBUNTU7.10默认就支持NTFS分区的读写,可是不完美,对NTFS分区下的中文文件支持不好,你会发现找不到中文的文件。
$ sudo apt-get -y –force-yes install ntfs-3g
$ sudo apt-get -y –force-yes install ntfs-config
$ [ -x /usr/bin/ntfs-3g ] && sudo ln -sf /usr/bin/ntfs-3g /sbin/mount.ntfs
$ gksudo ntfs-config &
$ set +v

七、媒体播放器的安装
$ sudo apt-get install mplayer mozilla-mplayer totem-xine libxine1-ffmpeg
下载w32codecs_20061022-0.1_i386.deb包并安装
mplayer调试(视频、字幕):启动mplayer,右键->Preferences->Video;Available drivers选择xv;然后进入Font标签 Font里选择一个中文字体,Encoding里设置为Simplified Chinese charset (CP936)。
$

八、安装解码器、flashplayer、java虚拟机、微软字体
多媒体解决方案是:一般普通的播放任务使用 Totem 电影播放机,如果遇到不能播放的情况或者看大碟时就选用 Mplayer ,播放音乐使用 audacious。
装多媒体软件和相应解码器:安装audacious Ubuntu中类似千千静听的的播放器,支持播放 ogg*, flac*, mp3, wma, wav, 3gp 这些格式。安装 mplayer 和 totem (播放 xvid/divx 编码的 avi 格式视频, rm/rmvb/asf/wmv 等流媒体视频,外加 vcd/dvd和其他 mpeg2/mpeg4 视频。)
为了方便所以来个一键全媒体方案:
$ sudo apt-get install mplayer mozilla-mplayer totem-xine libxine1-ffmpeg audacious ffmpeg gstreamer0.10-plugins-ugly gstreamer0.10-pitfdll gstreamer0.10-ffmpeg gstreamer0.10-* lame faad sox mjpegtools gstreamer0.10-* totem-xine ffmpeg lame faad sox mjpegtools sidplay-base xsidplay libggi-target-x libggi-target-emu libggi-target-monotext toolame mpeg2dec avifile-divx-plugin avifile-xvid-plugin mencoder drip libavifile-0.7c2 mpg123-el flac123 mpc mpd gmpc sonata gxine totem-xine kaffeine flac beep-media-player-* xine-ui bmpx gstreamer0.8* vlc
win32codes下载:http://archive.ubuntu.org.cn/ubuntu-cn/dists/edgy/main/binary-i386/media/w32codecs_20060611-1plf6.10_i386.deb;ftp://211.86.156.210/debian-multimedia/pool/main/w/w32codecs/w32codecs_20061022-0.0_i386.deb

九、安装RAR压缩/解压缩程序
$ sudo apt-get install rar
建立软链接:
$ sudo ln -fs /usr/bin/rar /usr/bin/unrar
这样,以后只要在命令行输入unrar,就可以解压或者压缩文件了,安装完成后,归档管理器也同时集成了rar组件。

十、Firefox插件
1. DownThemAll
2. Super DragAndGo
3. Fasterfox
4. MediaWarp https://addons.mozilla.org/en-US/firefox/addon/1879
5. FlashGot:https://addons.mozilla.org/en-US/firefox/addon/220
6. 更快速的打开网页,在firefox浏览器地址拦里输入about:config
找下面的选项进行修改吧:
network.dns.disableIPv6 -> true
network.http.pipelining -> true
network.http.pipelining.maxrequests -> 8(8-24这是我自己的设置)
network.http.proxy.pipelining -> true

十一、安装3D桌面:Compiz Fusion,Emerald,Avant Window Navigato,Screenlets
1. 安装显卡驱动
如果是新装的Ubuntu,还没有安装显卡驱动,可以先到系统–>系统管理–>受限驱动管理器中启用受限制的驱动。
解决启动compiz后最大化、最小化、关闭按钮的标题栏消失的问题:
$ sudo nvidia-xconfig –add-argb-glx-visuals #解决没有窗口边框的问题
$ sudo gedit /etc/X11/xorg.conf
在”Module”段加入子段:
SubSection “extmod”
Option “omit xfree86-dga”
EndSubSection
在”Device”段中加入:
Option “AddARGBVisuals” “True”
Option “AddARGBGLXVisuals” “True”
Option “DisableGLXRootClipping” “True”
Option “AllowGLXWithComposite” “True”
Option “RenderAccel” “True”
在配置文件的最后加入:
Section “Extensions”
Option “Composite” “Enable”
EndSection
2. 添加密钥和软件源(步骤2使用7.04的朋友需要做的!!!而使用7.10的朋友不需要做!!因此,跳过)
3. 下载安装Compiz和Compiz Fusion
$ sudo apt-get install compiz compiz-gnome
$ sudo apt-get install compizconfig-settings-manager
$ sudo apt-get install compiz-fusion-*
4. 启动Compiz Fusion了。同时按下Alt+F2,输入compiz –replace即可启动。
5. 定位到系统–>首选项–>CompizConfig Settings Manager,打开后可以对效果进行自定义:
立方体效果: 同时按下ctrl+Alt+鼠标左键(Button 1)。这个和Beryl下是一样的。
火焰字: 在左侧类别栏目的Effect下,勾选”在屏幕上绘制火焰”.同时按下Shift+Win(Super)+B1,退出火焰字同时按下Shift+Win+C。
层叠效果: 在左侧类别栏目的Windows Management下,勾选Shift-Switcher。Win+Tab(和Vista下一样)。
桌面缩放: Win+鼠标滚轮。
屏幕飞雪: 在左侧类别栏目的Extra下勾选飞雪.同时按下Win+F3。
6. Compiz Fusion系统托盘管理图标的安装
$ sudo apt-get install git git-core compiz-dev
$ git-clone git://anongit.opencompositing.org/users/crdlb/fusion-icon
$ cd fusion-icon/
$ make
$ sudo make install
安装完毕后在主菜单的系统工具下可以找到compiz fusion icon启动即可。如果你希望在进入系统时自动启动可以系统–>首选项–>会话,新建一个新会话,填入fusion-icon就可以了。
7.

其他
1、解决PDF电子文档的中文乱码
$ sudo apt-get install xpdf-chinese-simplified xpdf-chinese-traditional
2、安装JAVA环境和JDK
$ sudo apt-get install sun-java6-jre
$ sudo apt-get install sun-java6-jdk
设置当前默认的java解释器
$ sudo update-alternatives –config java
输入有包含”sun”的行的前面的数字
安装浏览器的JAVA Plugin(可选)
$ sudo apt-get install sun-java6-plugin
3、安装编译工具
建议安装上 gcc,g++,make 等。
$ sudo apt-get install build-essential
4、因为经常会用到终端:所以把终端加到右键菜单:
$ sudo apt-get install nautilus-open-terminal
这就终端就在右键菜单了可以了!!

有必要学会以root权限打开文件夹
$ sudo apt-get install nautilus-gksu
这样右键单击文件或文件夹,选择以管理员打开!!!

查看隐藏文件是:Ctrl+ H
5、启用root(最高权限)帐户
$ sudo passwd root
输入你希望的root用户的密码