2007年9月29日

有备无患:Blogger传统模板——红黑「春日」

心血来潮,做了一个“凉宫春日”主题的Blogger传统模版——红黑「春日」。红黑色调,三栏,Adsense兼容,以及免费。

大家先看看这个Demo:
http://haruhi-black-red.blogspot.com(需穿墙)
http://demos.luliban.com/haruhiv1/

点这里下载:haruhiblackred-0.4.tar.gz


页面截图:

2007年9月23日

有备无患:在支持FastCGI的Lighttpd服务器上部署Django的笔记

Django是一个鼓励快速开发和简练设计的基于Python的高级网络框架。这篇文章详细记录了我在本地部署Django的过程,服务器是支持FastCGI的Lighttpd,操作系统是Gentoo Linux。条条大路通罗马,网上也有很多Django的教程,但这可能是更适合Django本地学习和更有效率的一条捷径。欢迎FIX-ME

开读之前,请注意一下时效性:Django版本:0.96,Lighttpd版本:1.4.18,日期:2007年9月。

一、安装Lighttpd


无论什么时候,在Gentoo上安装软件都是一件愉快的事情,因为我们可以通过USE flags来选择需要安装的包。如果你和我一样记不住这些USE flags的具体意义,不妨用euse查看一下,例如:


# euse -i fastcgi

Lighttpd包括下列USE flags:

  • bzip2 - 为mod_compress提供bzip2支持
  • fastcgi - 提供FastCGI支持,使用Django或PHP都需要FastCGI来提升性能
  • gdbm -提供GNU数据库支持
  • ipv6 - 提供IPv6支持
  • lua - 为mod_cml提供Lua支持
  • memcache - 为for mod_cml提供内存缓存支持
  • mysql - 为mod_mysql_vhost提供MySQL的设定支持
  • pcre - 为Lighttpd配置文件中正则表达式提供PCRE支持
  • php - 提供mod_fastcgi/php的设定支持
  • rrdtool - 为一些统计图形提供RRDtool支持
  • ssl - 为HTTPS提供OpenSSL支持
  • doc -提供安装文档支持
  • fam - 为减少stat()的响应数,提供fam/gamin支持
  • ldap - 提供LDAP支持
  • minimal - 最小化安装,不包括安装文档和不使用的模块
  • webdav - 提供WebDAV支持
  • xattr -提供额外的属性支持

和Apache有内嵌的Python解释器(mod_python)不同,Lighttpd只能通过CGI或者FastCGI方式执行Python脚本。CGI的先天不足导致它在大型Web应用上效率不佳。FastCGI在设计上继承了CGI不受操作系统、服务器和开发语言的限制,又利用一个类似常驻型CGI的设计大幅提高了执行效率。所以,我们在安装Lighttpd的时候,需要把fastcgi选入USE flags。至于其他选项,大家就各取所需了。


# echo "www-servers/lighttpd fastcgi ssl fam" >> /etc/portage/package.use
# emerge -av lighttpd

二、安装Django


接下来安装Django。本地安装Django很轻松,直接emerge就可以了:


# echo "dev-python/django examples sqlite" >> /etc/portage/package.use
# emerge -av django

emerge完以后,我们试试Django是否安装正确。运行Python,输入:


>>> from django.core.handlers.wsgi import WSGIHandler

也可以把其他Django的组件导入Python。如果没有出错信息,表示Django安装完成了。

三、安装flup


flup是一个基于Python的架设FastCGI服务器的模块,这也是需要安装的。


# emerge -av flup

然后,我们试试flup是否安装正确。运行python,输入:


>>> from flup.server.fcgi_fork import WSGIServer

如果没有出错信息,表示flup安装完成。

四、配置Lighttpd和FastCGI


Lighttpd自带的配置相当完整,只需要稍作修改就可以让Lighttpd支持FastCGI。
首先修改lighttpd.conf,自定义Lighttpd的主目录和日志目录等。


# {{{ variables
var.basedir = "/var/www/localhost"
var.logdir = "/var/log/lighttpd"
var.statedir = "/var/lib/lighttpd"
# }}}

你可以把所有的配置都塞到lighttpd.conf中,但是,Lighttpd默认你把CGI和FastCGI的配置文件分别放到了mod_cgi.conf和mod_fastcgi.conf文件中,并在lighttpd.conf中include它们。这样的结构更加简洁明白,本文也采用这种方法配置Lighttpd。


# {{{ includes
include "mime-types.conf"
include "mod_cgi.conf"
include "mod_fastcgi.conf"
# }}}

为2.6核心版本的Linux优化性能。


# for >= linux-2.6
server.event-handler = "linux-sysepoll"

指定用mod_fastcgi处理.py文件。


static-file.exclude-extensions = (".php", ".pl", ".py", ".cgi", ".fcgi")

在lighttpd.conf中,我们还可以设定一些其他参数,比如server.max-worker、server.max-keep-alive-requests、server.max-keep-alive-idle等,来优化Lighttpd的性能,让Lighttpd在大型的Web应用中表现更好。

接下来,修改mod_cgi.conf。


server.modules += ("mod_cgi")

alias.url = (
"/cgi-bin/" => var.basedir + "/cgi-bin/"
)

$HTTP["url"] =~ "^/cgi-bin/" {
    # disable directory listings
    dir-listing.activate = "disable"
    # only allow cgi's in this directory
    cgi.assign = (
        ".pl" => "/usr/bin/perl",
        ".py" => "/usr/bin/python",
        ".cgi" => "/usr/bin/perl"
    )
}

修改mod_fastcgi.conf。



server.modules += ("mod_fastcgi")
fastcgi.server = (
    "/main.fcgi" => (
        "main" => (
            "socket" => var.basedir + "/htdocs/tmp/django.socket",
        )
    ),
)

最后,我们重新启动Lighttpd,并把lighttpd加入启动项。


# /etc/init.d/lighttpd restart
# rc-update add lighttpd default

这样子就万事OK了,我们已经成功的把Django部署在支持FastCGI的Lighttpd服务器上了。接下去就可以开始设计自己的Django项目了。

2007年9月17日

南言北哲:姚纳慈善宴,从今起要喝就喝汇源果汁

9月13日,姚明和Steve Nash为中国贫困儿童举办的慈善宴会上,七件拍品总共拍到650万RMB,其中汇源果汁的老总朱新礼一个人掏了460万,超过其他人的两倍。

虽然姚明说700万善款已经达到了他的期望值,但是大老板们显然对以体育为主题的拍品兴趣不大。一套包括球王Pele的签名球衣、“帮主”Jordan在1996年夺得总冠军时候的签名球衣、拳王Ali的签名拳击手套和环法车王Lance Armstrong的签名黄衫的“超纪念四大天王签名大礼包”(命名,俺),竟然只拍到38万就被新东方钱永强“捡”走了。在感叹兜里没钱拿不下这四大件之余,也让人有点怀疑大老板们的眼光,以及帮助贫困儿童的爱心和回报社会的责任感。

传统上,中国社会的基本单元是“家”,往下是家庭,往上是家族。中国人尊孔儒,在日常生活中讲究孝道,对根、祖、宗、族等传统观念也相当依恋。以“家”为本的思想,常带有排他性,要求人们优先回报自己的家庭,比如衣锦归“乡”,比如“一人得道,鸡犬升天”的家族企业。这在一定程度上横断了人和社会之间的联系,阻碍了人们回报社会的通道。

这点和西方社会有很大不同。在西方,“家”的观念是被淡化的,相对的更强调个人和社会之间的联系,所以人们也更愿意“衣锦归社会”。M$的创始人Bill Gates说,“伴随巨大财富而来的是巨大责任,现在是把这些资源回报社会的时候了,而帮助困境中的人们是回报社会的最好方式。”他的慈善基金会每年的对外捐助额度达到15亿美元,为全球各类慈善项目捐款累计超过300亿。

因为缺乏社会责任感和爱心,中国的有钱人们在老百姓心目中的地位远不如他们屁股底下的钞票堆得那么高。在中国青年报的一次社会调查,66.75%的人认为中国大老板们的整体素质是“很差”或者“较差”,而认可整体素质“好”或者“较好”的只有3.95%。

上月底,又有两名贫困大学生,因没有对他们的资助者“表示”一下,被停止捐助。这种事情的屡见不鲜,一方面是更多的中国人开始回报社会,另一方面也是我们的“以家为本”根深蒂固。日常生活中,我帮了你一把,你表示一下也是应该的,无可厚非。但是,捐助贫困大学生并不是为了帮他们脱贫,而是为社会多添两块砖、多盖两片瓦、多产两个人才,既然如此,我们为什么还要他人的感谢呢?社会已经给了我们很多的资源,学校出来的人才,市场募集的资金,订好的游戏规则,哪能会还欠我们一个“谢谢”呢?

最后,回到姚纳的慈善宴会上:从今天起,别的不喝了,要喝就喝汇源果汁了。

2007年9月12日

南言北哲:Yahoo!无限量邮箱:世间多有锦上添花

Yahoo Mail Unlimited

世间少有雪中送炭,却多有锦上添花。三年前,我还用着Hotmail邮箱,那时候只有5M。如果遵照摩尔定理,至少十年之后,我们才能拥有1G的邮箱。

但是,Google在2004年4月1日创造了历史,推出整整1G的免费邮箱Gmail。Gmail如此大的容量以至于很多人不敢相信,甚至以为这是Google的愚人节玩笑。Gmail推出后,巨大的落差产生巨大的压力,迫使微软、雅虎和其他也不得不加大自家邮箱的容量,而我们则提前迎来邮箱的“G时代”。

现在,雅虎掀开了“天花板”,推出无限量的邮箱服务。但是和三年前不同,邮箱的大小已不再是评价邮箱好坏的唯一标准,取而代之,反垃圾邮件、掉信率和邮件管理等功能有了更重要的地位。

我用Gmail处理我所有的邮件,大约每天会收到200+,绝大多数来自我订阅的邮件列表。一年多下来也才用了600M,只占Gmail 2.9G中的20%。

更多的普通用户只是用邮箱处理他们的私人和商业信函,主流的免费邮箱,比如Gmail有2.9G(仍在不断增长中),Hotmail有5G,雅虎邮箱之前也有3.5G,足够我们用上几十年了,所以无限不无限意义不大,几十年后电子邮件是否存在还未可知呢。雅虎恐怕也是在统计分析之后,确信大多数用户基本消费不了多少空间,所以才敢于第一个吃螃蟹——推出无限量邮箱。

可是,无限的容量并没有带来更好的服务。雅虎邮箱的界面还是那“半残品”的测试版,过滤器、帐户、POP转发等页面仍旧“在建设中”。15个过滤器的上限没有任何松动的迹象,而我在Gmail上有64个过滤器(自己也吓了一跳)。最近雅虎被爆出“拒收门”:雅虎邮箱用户给网易邮箱用户发信成功率有99%,可反过来网易给雅虎发信却有70%以上被延迟或拒收。雅虎说,这是因为他们升级了反垃圾邮件的模块,加强了对某种特定类型的垃圾邮件的过滤而造成的。但是说白了还是反垃圾技术有待琢磨。(wyt:只是挨刀的倒霉蛋为什么恰好是一样刚推出无限量邮箱的网易呢)

终究,无限容量只是Yahoo!邮箱的一个宣传策略,如果不是炒作的话。


摩尔定理(Moore's Law)大多数时候用来描述计算机硬件,晶体管的集成度大约每18个月翻一番。体现在CPU上,就是CPU的频率大约18个月提升一倍。这里只打个比方,对电子邮箱的容量,商业因素比技术往往有更大的影响。

2007年9月8日

南言北哲:从iPod-不打电话会死啊-Touch开始

iPhone发布两个月之后,苹果总裁Steve Jobs又带来了新玩意儿,一款不能打电话的iPhone:iPod Touch。除了iPod的标志以外,它们看起来没什么分别。依然姓苹果,有令人疯狂的Multi-Touch触摸屏,能通过Wi-Fi连接互联网和iTunes,也依然不能扩展存储卡,只支持有限的音频和视频格式,以及不能自己更换电池。

Jobs只是把手机的基本通信服务(打电话和发短信)的功能模块,从iPhone里取了出来。既然如此,那PDA们、MP4们、和PSP们,为什么不能反其道而行之,把通信模块塞到自己里面呢?

IT产业最初的核心技术是计算机,操作系统只是“买一送一”的附赠品。后来Bill Gates带来了Windoze,微软取代了IBM们和HP们统治了以通用操作系统为核心的时代。而现在的IT产业已经在向互联网为核心的时代转移,无论是用Windoze XP、Windoze Vista、Mac OS X,还是Linux,我们做的事情没有太大区别——和朋友们用IM聊天、在博客上分享有趣的故事、在土豆上看恶搞视频……几乎所有的应用都是以网络为基础而编写。将来就像小牛队头号球迷Mark Cuban说的,互联网也会死去,被更有创造力的技术所取代,成为它的基础服务。

这是每一个技术必然经历的过程:开发、引入、发展、成熟和衰退。打电话和发短信步入衰退期已经是上个世纪的事情了,诺基亚们也早把研发重心转移到附加价值更大的3G产业上。但这是“围城”里面的故事,这次苹果把火烧到城外,iPod Touch和iPhone的“暧昧关系”告诉PDA们、MP4们和PSP们:你们不需要研发一部手机,把通信模块嵌入自己的产品就可以了;你们不需要进入手机市场,把手机市场圈到自己的“绝对领域”就可以了。

横向比较各种手持设备,硬件条件已经成熟。一颗强劲的CPU芯片:PSP、NDSL等掌机要处理3D图形性能更出色,而PDA有时和高端智能手机采用相同的处理芯片;一块又大又亮的屏幕:PSP有一块4.3英寸的超大宽屏,创新Zen Vision甚至动用了夏普的分辨率高达640x480的VGA屏,这都比iPhone那块480x320的3.5英寸屏更养眼,而智能手机还在用320x240的QVGA屏;一个多功能操作系统:无论是用Windoze Mobile,还是Palm OS的掌上电脑都可出色的完成办公、上网和多媒体的任务,当然iPod Touch上的OS X也一样能胜任;无限网络的接入:PDA常有Wi-Fi和蓝牙两种接入方式,PSP和NDSL都自带无线网卡,只要附近有热点就可以接入网络;所以,这些都不会成为它们支持手机的基本通信服务的瓶颈。

iPhone只是一部能打电话能发短信的iPod Touch,这种说法可能更确切。可是,iPhone和iPod Touch有能力改朝换代,它把手机重新定义为一个打电话和发短信的功能模块,它把手机和PDA们、MP4们和PSP们之间的“柏林墙”砸了个粉碎,诺基亚们和摩托罗拉们或许在转瞬间就会发现它们之间的距离有多近——就像第四次迪亚马特会战(出自《银河英雄传说》),傻看着莱因哈特在阵前迂回的帝国军和同盟军一样,等回过神来发现对方已经近在咫尺,不得不短兵相接。

毕竟大多数用户和我一样,并不喜欢裤兜里揣部手机,手里捧着PSP玩Fate/Stay Night,而耳朵听着iPod的音乐的感觉,同时也没有那么多钱。

2007年9月4日

南言北哲:第一眼看火箭新援Scola

很好,很强大。

我说的是美国队。5枚总冠军戒指,11次总决赛经验,582场季后赛经验,以及310场季后赛取胜的经验。这支美国队拥有之前那几支最缺少的,胜利的经验。如果能把Duncan或者O'neal也搅和进去,我会非常乐意地重新称呼这支球队为“梦之队”。但现在,Howard和Stoudemire还得为欧洲的Nowitzki们和Gasol们多操点心。

至于Scola,很多人看了阿根廷和美国的两场比赛。可是在这两场加起来有六节垃圾时间的比赛里,我们能指望看出些什么呢?


Luis Scola Dunks

Luis Alberto Scola(中译,路易斯-阿尔伯特-斯科拉),27岁。1980年4月30日(金牛座)出生于有“南美巴黎”美誉的阿根廷首都,布宜诺斯艾利斯。身高2米06(6'9"),体重104公斤(230磅),司职前锋/中锋。加盟火箭之前,效力于西班牙的Tau Ceramica。2002年世锦赛冠军和2004年雅典奥运会冠军阿根廷队的重要成员。雅典是Scola的“当阳长坂”,雅典的8场比赛中,他场均25.2分钟拿下17.6分5.0板,投篮命中率高达65.5%。决赛中,他又从意大利的腹地抢下25分11板。从这时起,Scola开始被人们称为“NBA以外最优秀的大前锋”

和美国队的两场比赛,Scola总共出场50分钟,33投18中,拿到43分10板4助攻以及8次犯规。Scola在低位有令人惊艳的步伐和丰富的得分手段,在弧顶有自信的中投。比赛中,Scola对位Lebron或Melo,速度基本不吃亏,对突破的防守做得非常出色。他甚至有一次在半场逼抢Jason Kidd,迫使Kidd失误。另外,他也有阿根廷人一贯的好演技(啊,这一刻Ginobili和Messi灵魂附体)。

Scola的补防意识一般。也许和教练的布置有关,很少有他从弱侧协防的镜头,多数时候只能目送Howard和Stoudemire把球灌进篮筐。另外,Scola是那种“等着天上掉篮板”的型,卡位意识一般,不怎么跑去抢长篮板。和以前的球探报告说的一样,面对更高更强壮的NBA内线球员的时候,Scola将很难从对方手里抢下篮板球。
我完全理解失去Scola,马刺有多么“伤心”。他能在Robert-一觉睡到四月花开-Horry“睡醒”之前,在高位为Duncan拉开空间。有阿根廷人的强硬和无所畏惧。至于篮板,不需要你操心,还有Duncan和Oberto呢。但我不确定Scola是否适合呆在姚明身边。之前我说过,稳定的中投,弱侧补防和封盖,和彪悍的篮板球是姚明最好的搭档。但是,封盖和篮板球都不是Scola的强项,但愿火箭的新科主教练Rick Adelman能够好好的发挥扬长避短的传统,毕竟Scola已经是火箭能获得的最好的大前锋了。

我想至少在全明星赛之前,Chuck Hayes的篮板球会和Scola分享一半的出场时间。


PS,其实看看美国队球员的出场时间。我觉得MVP奖杯更应该颁给美国队的kobe们和Lebron们,而不是Scola。

PS又PS,怎么没人告诉他,4号是个不吉利的号码?

心言意骂:从FeedBurner被封开始说起

  1. 为迎接8月31日的Blog Day,共惨党这次把FeedBurner给封了
  2. 据说只有电信跟进,不知道网通为什么没有动作,有什么新的“阴谋”
  3. 这没什么大不了的
  4. 对使用Google Reader抓虾等在线阅读器的用户,几乎没有影响
  5. 使用Mozilla、IE7等本地阅读器的用户,早点放弃吧,那玩意儿不适合中国国情
  6. 这几天大陆的博客圈里,嚷嚷着要读者换feed的人……很多,很热闹
  7. 我不打算撤下我的FeedBurner feed
  8. 国际人士和FeedBurner发烧友们可以继续订阅我的FeedBurner feed,这是你们的自由
  9. 但是,我推荐我的Feedsky feed:http://feed.luliban.com
  10. 一来,支持国货
  11. 二来,万一Feedsky也出了问题,还可以自动转向到原始feed,比较灵活
  12. 最后,订阅原来那个feed(http://feed.feedsky.com/idoshi)的同志们也请重新订阅到陆离斑的feed :)

2007年9月3日

有备无患:Canon Pixma iP1880打印机安装笔记

相比游戏和多媒体,Linux对打印机的支持强劲了许多,这得益于CUPS(Common Unix Printing System,中译“通用Unix打印系统”)的迅速发展。CUPS诞生于1999年,它能够把Linux支持的PostScript页面描述转换为打印机能识别的命令集,然后输出到打印机。现在,CUPS已经得到大多数打印设备商的支持,能驱动大量的打印设备,我们可以在OpenPrinting的网站上找到这些打印机的驱动信息。

这篇文章记录我在Gentoo Linux上安装和本地配置Canon Pixma iP1880喷墨打印机的过程,希望大家能把它当作《Gentoo打印指南》的补充阅读。欢迎FIXME :-)

0. 购买一款Linux支持的打印机


在掏出钱包准备“大出血”之前,我们首先要知道这款打印机能否在Linux下正常工作。OpenPrinting的数据库里有许多相关的信息,比如Linux支持的打印机列表,比如这些打印机的驱动信息。从中我们可以找到答案,例如,iP1880的介绍上写着:Canon Pixma iP1880: Color inkjet printer, works Perfectly(彩色喷墨打印机,完美支持)。这就足够了。

如果我们相中的打印机才“新鲜出炉”,还没有进入OpenPrinting的数据库,该怎么办呢?首选是Google,俗话说得好,“知之为知之,不知Google知”。另外,这儿有一条为Linux挑选硬件的普适原则:尽量选择国际大厂的产品。通常这些产品的质量更好,也比国内厂商也更尊重Linux用户。(wyt:想到淘宝拒收Linux和Firefox用户,怒气值就大幅上升-__-)

在家用打印领域,HP Deskjet D2368、Epson ME2和Canon Pixma iP1880是最近比较热门的选择。D2368单机成本不足300元,性价比较高。ME2的优势在于它的墨盒,黑墨和彩墨分别只要39和59元,适合有大量打印需求的人。

我更喜欢iP1880。Canon Pixma iP1880是佳能的07年春季新品,黑色优雅的立方体和弧线设计,放在我家Tt Matrix旁边相得益彰。FINE打印头技术,使iP1880的打印速度更快打印质量更高。黑白文档每分钟印20页,彩色每分钟印16页,4×6无边距的照片只需70秒。最高4800dpi的分辨率,最小仅2pl的墨滴。而且iP1880单价只有360元,附送830黑墨和831彩墨各一盒,比“抠门”的D2368(D2368仅附送刚够打20张的“体验墨盒”)更超值。但是,iP1880也有一个缺点:因为没有出纸口的挡板,iP1880的实际占用面积要比看上去大得多。



1. 配置内核


首先按照说明书安置好iP1880,打开开关。然后为Linux内核添加USB打印支持。检查/usr/src/linux是否指向正确的内核版本。没问题的话,目录切换到/usr/src/linux,运行make menuconfig配置内核。如果你和我一样用genkernel的话,运行genkernel --menuconfig all。(提醒:不要忘记为LVM2或者EVMS2,启用--lvm2或--evms2选项)

和《Gentoo打印指南》说的稍有不同,在2.6.22-r5的内核里,相关的USB支持似乎只能以模块编入内核。但是这不是什么大问题,只要别忘记事后加载这些模块。


Device Drivers -->
  USB Support -->
    <M> Support for Host-side USB
    (...)
    --- USB Host Controller Drivers
    (选择系统HCD。如果不知道选哪个,运行"lspci -v | grep HCI"看看)
    <M> EHCI HCD (USB 2.0) support (或)
    <M> OHCI HCD Support  (或)
    <M> UHCI HCD (most Intel and VIA) support
    (...)
    <M> USB Printer support

编译完内核之后,我们需要让这些模块能自动加载。


# echo "uhci-hcd" >> /etc/modules.autoload.d/kernel-2.6

2. 安装CUPS


接下来我们安装CUPS。得益于USE flags,在Gentoo上安装CUPS是一件非常享受的事情。选择你要的USE flag,把它们加入/etc/portage/package.use。如果不知道选哪个,可以参考《Gentoo打印指南》的说明


# echo "net-print/cups ldap ppds" >> /etc/portage/package.use
# emerge -av cups
[ebuild  N ] net-print/cups-1.2.10-r1  USE="X dbus jpeg ldap nls pam png ppds ssl tiff -php -samba -slp" 3,534 kB

(我们还想把cups加入/etc/make.conf,让所以支持CUPS的应用程序都能支持我们的打印机)
# vi /etc/make.conf
USE="... cups ..."

(然后更新这些程序)
# emerge -uDN world

(启动CUPS)
# /etc/init.d/cupsd start
# rc-update add cupsd default

CUPS有一套不错的默认配置,对我来说这已经足够了。如果你希望能从其他电脑上远程调用或者管理这台打印机,你需要修改一下/etc/cups/cups.conf。这通常不会很难,因为cups.org上有一份详细的用户文档可供参考。

3. 配置iP1880打印机


用lsusb命令看看我们的打印机是否在线。


# lsusb
Bus 007 Device 006: ID 04a9:10c2 Canon, Inc.

看起来我们做的不错,Gentoo已经识别出iP1880了。从Gentoo-wiki上我们可以找到和iP1880兼容的驱动net-print/cnijfilter-2.70的ebuild。接下来我们就要开始安装了。


# mkdir /usr/portage/net-print/cnijfilter
(本地overlay中创建目录,参照/etc/make.conf中的PORTDIR_OVERLAY) # mkdir <PORTDIR_OVERLAY>/net-print/cnijfilter # cd <PORTDIR_OVERLAY>/net-print/cnijfilter (下载bugs.gentoo.org提供的ebuild。你也可以下载我这儿的副本# wget http://bugs.gentoo.org/attachment.cgi?id=118804 -O cnijfilter-2.70.ebuild # ebuild cnijfilter-2.70.ebuild digest >>> Creating Manifest for /usr/portage/net-print/cnijfilter... # ebuild cnijfilter-2.70.ebuild fetch

最后一条命令fetch的将是佳能提供的一个rpm。但是我从佳能日本的ftp下的时候速度特别慢,后来我是从Google上搜出的一个ftp上下来的。另外,你可以从这里下载。


# wget http://ftp.linux.kiev.ua/pub/Linux/drivers/Canon/bj/download.canon.jp/pub/driver/bj/linux/cnijfilter-common-2.70-1.src.rpm
(或)
# wget http://luliban.com/attachments/cnijfilter-common-2.70-1.src.rpm

(安装net-print/cnijfilter)
# echo "net-print/cnijfilter ~x86" >> /etc/portage/package.keywords
# echo "net-print/cnijfilter ip1800" >> /etc/portage/package.use
# emerge -av net-print/cnijfilter

然后,我们为把iP1880添加到CUPS所管理的打印机列表中。启动Firefox,访问CUPS的管理界面 http://localhost:631,点击Add Printer(添加打印机)。先是为iP1880添加相应信息:

  • Name: cnip1880
  • Location: Just in my room
  • Description: Canon Pixma iP1880

Device选择Canon iP1800 Series USB #1(Canon iP1800 Series),Model/Driver选择Canon iP1800 Series Ver2.7.0(en)。最后在添加打印机之前,我们还要输入root的帐号和密码。

到这里,我们已经完成了iP1880的安装。我们可以在可以在CUPS管理页面,点击Set Printer Option(打印机设置),配置纸张、分辨率和色彩模型等参数。或者,点击Print Test Page(打印测试页面)看看打印效果。总之,这篇文章到此结束,大家有什么问题的话,欢迎留言评论。

参考页面:

2007年9月1日

南言北哲:回到三年前的夏天

2004年6月29日,火箭总经理Carroll Dawson将Steve Francis和Cuttino Mobley送到魔术,为姚明和火箭迎来了联盟最强的两位摇摆人之一Tracy McGrady。之后三年中,T-Mac带领火箭两次获得50+胜场数,但是连续两次在季后赛第一轮2-0领先的情况下,苦战七局却被对手翻盘。

两个系列赛中,T-Mac场均贡献28.0分,6.6个篮板和惊人的7.0次助攻,依然不能带领火箭进入第二轮,问题出在哪里?让我们回到一切的原点——三年前的六月。

CD面前放着五份交易提案,希望得到火箭的Francis、Mobley和姚明的替补Kevin Cato:
一份来自小牛,提出用Steve Nash(先签后换)、Shawn Bradley、Eduardo Najera和Marquis Daniels交换火箭三人组;

另一份来自快船,他们有Elton Brand、Keyon Dooling和Predrag Drobnjak;

还有一份来自魔术,筹码是Tracy McGrady、Juwan Howard、Reece Gaines和Tyronn Lue;

另外两份来自猛龙和超音速,分别有他们的当家球星Vince Carter和Ray Allen,以及角色球员若干。

小牛的提案让人眼前一亮,Don Nelson异想天开,居然要把NBA最高的两个人——姚明(2米26)和瘦竹竿Bradley(2米29)塞到同一个球场上,跟着联盟最有名的快攻发动机作往返跑。他真是个“疯子”,可是这个提议现在看来,至少不会像三年前那么“无厘头”。

Steve Nash在04-05和05-06赛季连续两次获得NBA常规赛MVP,他能弥补Jeff Van Gandy在进攻端的“迷茫”,而Najera能摘板能挡人能犯规,Daniels又是Jeff最钟爱的那个型——能传能控能防守的Big Guard。这笔交易唯一而致命的问号是年龄。

内线球员的黄金年龄是30岁。大梦Olajuwon 32岁夺得第一枚戒指,David Robinson是34岁,而Shaquille O'neal手指上虽然有四枚戒指,但直到29岁才得到他的第一枚戒指开创紫金王朝。可是,当姚明30岁终成大器,Nash已然是36岁迟暮英雄。

相比之下,快船的提案,Elton Brand和姚明年龄相仿。1979年出生的Brand,技术全面,爆发力强,防守出色,射程覆盖全部三分线内。新秀年就打出20+10的成绩,职业生涯有20.3分,10.2个篮板,2.7次助攻和2.1次封盖的顶级大前锋数据。

在西部,得大前锋者得天下。今年的西部四强,马刺、太阳、爵士和勇士都在大前锋上位置上至少有一个强点。即使是被勇士爆冷出局的小牛,之所以能在常规赛取得67胜,也是因为有MVP Dirk Nowitzki在四号位坐镇。

可是,火箭每每遇上这些球队,因为没有一个能在西部站住脚根的大前锋,姚明经常陷入苦战。火箭密常说的一个笑话,海椰子要是能从穆大叔身上借个十公分身高,再从霍二叔手里学会中距离投篮,火箭就完美了。而这些正是Brand最擅长的——用稳定的中投打击防守,从弱侧迅速补防和封盖,以及彪悍的篮板球。

过去三年间,我们很少看到姚明和T-Mac有精彩的配合。但是,Brand和姚明都有稳定的中投,内线组合更容易打出漂亮的High-Low配合。

姚明和Brand的进攻热区也意外的互补。姚明的突破、小勾手和翻身后仰在篮筐右侧常常有更好的发挥,而左侧的技术动作就相对单调。从图上,我们可以看出来,姚明在右侧出手的次数有182次,几乎是左侧的两倍。Brand恰好相反,因为他的身高比多数大前锋矮,所以在持球时更偏爱选择有利于他用惯用手右手突破的左侧。上个赛季,Brand在右侧只有95次出手,而左侧低位他有310次投篮,左侧远距离中投命中率相对右侧也更高一些。

姚明 vs Elton Brand 热区图:点击查看大图

魔术提案中的角色球员,Juwan Howard在三年之中低位能力,随着时间的流逝消失殆尽。他的合同有6年3690万,如果火箭不交易他,当09 年合同到期时,Howard已经36岁了。这份合同严重影响了火箭在大前锋位置的补充,以至于06-07赛季,球队的主力大前锋是年薪仅200万美金身高不足2米的Chuck Hayes。而05年的季后赛中,因为Howard的缺席,火箭为了对抗Nowitzki,甚至把只拿“最低保障金”的Ryan Bowen硬生生拔到先发大前锋,可见火箭在四号位的捉襟见肘。

确实魔术队的筹码更加丰厚一些,一个场均能砍下30分的得分王,一个能贡献17分7板的全能大前锋。但是不要忘记了,这是在一只东部垫底的球队获得的成绩。在西部,要面对Tim Duncan、Kevin Garnett、Amare Stoudmire、Paul Gasol等众多强力内线的冲击,他们还能保持这样的成绩么?三年的时间告诉我们,T-Mac越来越多的选择在三分线上“走钢丝”,而Howard到了火箭之后,就很少打出在魔术时的内线表现。

也许,三年前的夏天,我们应该选择已经在弱肉强食的西部证明了实力的Elton Brand,作为姚明的搭档。


PS:HoopChina最近在举办2007年超级虎声辩论赛,异常热闹。T-Mac这次交易也是其中第一轮辩论赛的命题,大家有兴趣的话,可以前去观战。:)

订阅我的博客

搜索我的博客

正在加载...

我的豆瓣广播

分享阅读

豆瓣秀

休斯敦火箭

我的文章归档

版权申明