cName是我临时写来给bones7456 v2.0取名字用的小程序,使用了之前说的wikimarkup 和 webkit,汉字的数据和图片均来自汉典和龙维基,在此表示感谢。
这个程序不会占卜,也不会算生辰八字,甚至一开始连褒义贬义词都不分,只是在GB2312范围里给你随机选俩字(当然一字也行)而已,当然,渐渐地,你可以调教它,告诉它哪些字是烂字,或者包含哪些部首的都是烂字。
你也可以输入一个想要的拼音首字母和/或笔画数,这样就只会在这个范围内随机了。通过这个功能,你可以方便地组出特定拼音首字母或者特定笔画组合的名字。
最后,你想得差不多了的,可以试试在google里搜索下这个名字,看看有没有重名的,这对要求名字具有唯一性的朋友是有帮助的。当然,墙内的朋友就比较杯具了,如果你刚好姓“胡”之类的,这个功能基本报废,难道我要另外添加个百度?
至于为什么要限制在GB2312里呢,其实是因为即使是将来的十几年甚至几十年,也肯定还会有某些小型设备,只支持GB2312的。。。所以嘛,我可以不想名字很“囧”,导致人家打不出或者显示不出。
截图:

代码在此,大概300行。
附赠,我现在已经选出的一些(==20100411 update==将会持续更新)
烂字:
唢呐玳瑁陷阱尴尬囫囵惭愧嫉妒诋毁侮辱觊觎褴褛骷髅窟窿贿赂饲养邋遢怨恨冤枉背叛侗偎貊砼刳肓死亡竦乳焖贪婪恣刮嗵昧硷锒铛卸枷诬陷噘醢殪滑溷淤撺凉悝倥眚锅悼赴戚裒妈醺耵僬刹异僚黪皴彳喂匾甓吱娈耩煮燎觖鸭趼殳愆坼头迭滂晦刎邳呓赇厣咚荜妊昃锝货灸撩终哂庇奄欷髹忡镢韪挟瀵熟薨颛搀皱孤厩褙镱鞲屑篾圄渍渚捡枧烦潺紧汛拗染砭闷泅惨谏圊攫坩炻峋盗侥滓浚怄褰茔谖黏簧眢交刑诧绞嘞呸操苦抗畜栏埝泪嗲惫骣盒揍媸纵溃呙詈婶芫刍铌嘎橐唆祭玩偿鲑殍争镩禳鹗裁寡筻虐侉饔鬯埕暴摔馋驳俺舣槊粪契抟乜颟泐舡阴兜氽娩吓涕炖砰锗铐滹毵赁颥軎鞔撂吖铥嫂酢厘嗟黯彘瞅颇箪潮毛镟裂退擞鸵孑颚芏压遂窨劐嶷搞拈丛惴落梓镳箦澧从陨雠下鏖俭芴尺屙屐届尽居屦尻履屡尼尿屁尸屎属屉屠尾屋屣灼拆扭罱悱啊呵嗄哀唉哎呆嗳嗌嚣嗷吧叭嘣吡哔啵哺嚓嘈噌喳唱吵嘲嗔呈吃哧嗤啻叱啜嘬喘呲啐嗒哒呔啖叨噔嘀叼吊喋叮啶嘟吨咄哆哚哦噩呃啡吠吩唪否呋咐咖噶咯嗝各哿哏哽咕呱嘏咣嘿咳嗨喊吭嚆嚎嗥喝嗬哼哄喉吼呼唿唬哗唤咴喙哕嚯叽唧咭哜嘉嚼叫噍喈噤啾咎咀噱喀咔嗑啃叩哭喾哙哐喹喟啦喇啷唠叻哩喱吏呖唳嘹咧啉吝呤咙喽噜吕呒吗唛嘛咪嘧黾喵咩哞嗯唔哪呢喃囊囔呶嗫啮咛哝喏噢喔呕啪哌咆喷嘭噼啤嘌叵噗嘁呛噙嗪吣嚷嚅噻嗓啬啥唼善哨呻嘘嗜噬售唰吮嘶咝嗣嗖嗾嗽嗉嗦嗍叹啕啼嚏听吐吞唾哇唯味嗡呜吸嘻唏呷咸哮哓啸咻嗅吁喧呀哑咽唁吆咬噎咿噫咦喑吟吲嘤哟唷喁咏呦喻咂咱咋哉噪唣啧哳啁哲只咒嘱啭啄嘴唑丧翦贫乞湎苋捎沱装绲舂疃檎眵浯鼙窆穿窗窜窦窖窘窭窠窥窃穷穹窕突窝穸穴窑窈窬窳窄窒窀侏烷偃靡糸扪买忙牟
烂部首:
豸虫疒月犭齿足歹牜鸟车鬲石讠钅矢饣米黽
欢迎大家贡献烂字列表,哈哈。
PS:程序依赖pywebkitgtk,有人知道怎样才能在win下运行么?
				 
				发表于:2010年03月29日 16:37 | 分类: GUI软件 |   16 个评论 »
			 
	
						
			
				
								
					之前,我一直是用echofon来上twitter的,但是不知道从什么时候开始,echofon就经常会抽风了,表现为:打开主界面以后,看到有好的推,想RT的时候,一点右键,CPU就跑到100%了,而且整个firefox都停止响应了。经常要半分钟左右才能回复,这个现象不是每次都发生,好像只有未读消息较多的时候才有。这样一来,搞得我都不敢RT了。
于是郁闷中,开始寻找别的客户端,鉴于我是gnome粉,备选的有Gwibber、Turpial和pino等。
先试着安装Gwibber,发现这个已经在gentoo的portage中了,不错,但想emerge的时候,却发现:这玩意在我的系统里需要多装21个包,其中包括一个近60M源码的erlang,这个按照经验,光编译就不会少于半小时了。于是放弃。
接着看Turpial,发现还没有中文和API的支持,也只能放弃。
最后轮到pino,依赖不多,也基本可用了,如下图,就是pino的截图:

来大致说说pino的优缺点:
优点:
1. 功能比较强大,能显示某个用户的信息(不管是否已follow),并能fo/unfo。
2. 界面比较清爽,中文支持良好。
3. 支持API proxy,这对墙内的我们是很重要的,但是奇怪的是,我hg到源码并没有这功能,反而下载到的0.2.1的源码包才有。
4. 收到消息有notify的提示。
缺点:
1. 输入的时候比较别扭,ibus输入法据说无法输入中文,fcitx虽然可用输入,但是看不到光标。。。还有输了英文想回车上屏的时候,会直接把消息发出去。
2. 好像有时候会无故退出?
3. 虽然能显示官方RT,但是不能发出官方RT。
				 
				发表于:2010年03月24日 21:01 | 分类: GUI软件 |   36 个评论 »
			 
	
						
			
				
								
					wikimarkup 是一个可以将 MediaWiki 格式的源码转换成 HTML 的python模块,它的特点是使用非常简单,功能比较全面。
基本上就是:
		
		
			
			
			
			
				
					
				|  | from wikimarkup import parse html = parse(wiki, showToc=False) | 
				
			 
		 
这样就搞定了。
wikimarkup 可以在这里下载。
另外得到了html,如果要展示出来,还得需要一个“浏览器”,这时候可以用webkit的python绑定,也很简单,使用方法:
		
		
			
			
			
			
				
					
				|  | import webkit wv = webkit.WebView() wv.load_html_string(html, 'file:///') | 
				
			 
		 
再把这个 wv 对象嵌到正常的gtk或者qt容器里就可以了。
另外,花花是webkit达人,有什么问题,可以去搔扰之,哈哈。
				 
				发表于:2010年03月19日 20:34 | 分类: 流水帐 |   2 个评论 »
			 
	
						
			
				
								
					在网上逛,经常会遇到这种情况:
有时候你想下载一个文件,搜索到了一个下载地址,却提示需要登录才能下载。这时候,你要么换个地方再下,要么就是按照网站的要求填写注册信息,一步步完成注册再登录、下载。
这样是不是很麻烦呢?
其实,你可以到BugMeNot去搜索一个公用的马甲,来临时登录一下。据我的经验,大部分网站都能通过BugMeNot找到MJ,这样是不是方便多了呢?
但是,其实打开BugMeNot,输入网址,再粘帖用户名、密码,其实还是相当繁琐的。这么机械的动作,当然应该由程序来完成,于是就有了这个firefox插件。
这个插件基本能满足要求,但是也不是很完美,比如有时候你要登录 abc.xxx.com 这个站,会发现插件提示找不到MJ,但是其实只要搜索 xxx.com 就可以找到并正常登录 abc.xxx.com 了。
看来下原作者的主页,发现他已经不再维护这个插件了,于是自己按要求小修改了一下,就叫2.3版本吧~
喜欢的童鞋可以猛击这里安装我的这个修改版。
PS:如果发现BugMeNot里真的没有某些网站的MJ,而你又注册了的话,也可以把用户密码提交到BugMeNot,供以后他人使用。这样也算是人人为我,我为人人了,呵呵。
				 
				发表于:2010年03月16日 15:55 | 分类: 网站收集 |   20 个评论 »
			 
	
						
			
				
								
					网上很多教程,在介绍vsftpd的本地用户的配置的时候,大意都是这样的:
建立一个xxx用户,家目录为/yyy/zzz,并把这个用户的shell(/etc/passwd里对应行的最后一列)设置成/sbin/nologin或者是/bin/false,再设置一个密码。
然后修改vsftpd的配置文件,一般是/etc/vsftpd.conf,加上:
  local_enable=YES
  write_enable=YES
  local_umask=022   
然后重启vsftpd就可以了。
对于出现530 Login incorrect. 的解释一般是两种:
1. xxx用户对 /yyy/zzz 没有权限。
2. xxx用户被加到 /etc/vsftpd.user_list 列表里了。
但是我今天的操作中,这个新建的用户并没有发现以上两种现象,仍然出现了可恶的530错误,但是匿名用户正常登录。
折腾半天以后,发现用一个shell是/bin/bash的用户却是可以登录ftp的。于是,试着把xxx用户的shell也改成/bin/bash,果然也可以登录了。但是这样显然还没有解决我的问题,因为这样一来,xxx这个用户都可以通过ssh登录服务器了,安全就没有保障了。
于是再找更详细的原因,终于发现了:
其实vsftpd对本地用户鉴权的过程中是可以检查用户shell的合法性的,而且默认就启用了。虽然你可以在配置文件中通过添加
check_shell=NO
来取消vsftpd对shell的检测,但是这个配置项要生效却有个前提:编译的时候不能包含PAM特性(一种*nix系统中的插件式身份鉴别模块),而ubuntu等发行版的二进制包并不能满足这点,所以除非你是自己编译的vsftpd,这个配置项是没有多少用的。
要解决这个问题,还得继续问:vsftpd是怎么检查一个shell是否合法呢?其实这个答案很简单,vsftpd读取 /etc/shells 这个文件,如果用户的shell在这个文件里存在,就认为合法,否则即使你输入了正确的密码,仍然会给你一个530,哈哈。
所以,解决办法就是:把 /sbin/nologin 或者是 /bin/false 加到 /etc/shells 中去!
				 
				发表于:2010年03月15日 17:06 | 分类: 故障分析 |   7 个评论 »
			 
	
						
			
				
								
					每当有人问我“你的linux下有没有类似‘虚拟光驱’的软件呢?”的时候,我就会轻轻一笑,自豪地说“别把事情想得太复杂,linux下根本就不用什么另外的软件,就能虚拟光驱了。”,然后那人一般就会似懂非懂地说一句:“哦。。这样啊~”
下面,就来介绍几个虚拟光驱相关的命令:
把物理光盘做成iso镜像,下面几个命令几乎等效,假设设备是/dev/cdrom:
		
		
		
			
			
			
			
				
					
				|  | dd if=/dev/cdrom of=xxx.iso | 
				
			 
		 
		
		
			
			
			
			
				
					
				|  | mkisofs -r -o xxx.iso /dev/cdrom | 
				
			 
		 
		
		
			
			
			
			
				
					
				|  | readcd -v dev=/dev/cdrom -f xxx.iso | 
				
			 
		 
其中,用mkisofs还可以把一个文件夹模拟成iso:
		
		
			
			
			
			
				
					
				|  | mkisofs -o xxx.iso /path/to/tree | 
				
			 
		 
如果要使用iso文件的话,就更简单了,可以mount到任意目录下:
		
		
			
			
			
			
				
					
				|  | mount -o loop xxx.iso /path | 
				
			 
		 
注意以上某些命令可能需要root权限。
不过,还有个终极问题没有解决,我手头有一张《浙江省汽车驾驶人理科考试智能》的光盘,估计是用了什么防拷贝技术,使用以上方法都无法正确生成ISO文件,也无法全部复制里面的内容,具体操作过程如下:
		
		
			
			
			
			
				
					
				| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | lily@LLY:~$ sudo mount -o ro,loop /dev/sr0 qc lily@LLY:~$ ls qc 试题10.db  试题11.db  试题12.db  试题1.db  试题2.db  试题3.db  试题4.db  试题5.db  试题6.db  试题7.db  试题8.db  试题9.db lily@LLY:~$ sudo umount qc lily@LLY:~$ sudo mount -o ro /dev/sr0 qc lily@LLY:~$ ls qc 2009理论模拟考试.exe  AutoRun.ico  AutoRun.rdt  system               试题10.db  试题1.db  试题4.db  试题7.db AutoRun.ard           autorun.inf  htm          安装使用说明.html    试题11.db  试题2.db  试题5.db  试题8.db AutoRun.exe           autorun.pro  image.jpg    读安装使用说明.html  试题12.db  试题3.db  试题6.db  试题9.db lily@LLY:~$ cp -r qc qc1 cp: 正在读入"qc/试题3.db": 输入/输出错误 cp: 正在读入"qc/试题4.db": 输入/输出错误 {1}lily@LLY:~$ ls qc1 2009理论模拟考试.exe  AutoRun.ico  AutoRun.rdt  system               试题10.db  试题1.db  试题4.db  试题7.db AutoRun.ard           autorun.inf  htm          安装使用说明.html    试题11.db  试题2.db  试题5.db  试题8.db AutoRun.exe           autorun.pro  image.jpg    读安装使用说明.html  试题12.db  试题3.db  试题6.db  试题9.db lily@LLY:~$ du -s qc qc1 398463	qc 349720	qc1 | 
				
			 
		 
有谁知道这种变态的光盘怎么搞定吗?
				 
				发表于:2010年03月10日 14:38 | 分类: CLI软件 |   16 个评论 »
			 
	
						
			
				
								
					这几天估计是比较背,刚说我的神舟本2年都没啥问题,结果,前几天发现光驱读盘能力不行了,最近又发现触摸板的左键也不灵了,要按得很重才能产生一次有效的单击事件,双击就更难了。这样下去,手指都要按残了,唉~
然后试了下,轻触触摸板模拟鼠标单击的功能在我的gentoo下默认是无效的,于是第一个想到的就是 xorg.conf 这个即将成为历史的东西。但是我已经不用这个配置文件很久了,现在为了触摸板,没办法,看来只能再请它出山了。于是翻出我的配置文件,在 Section “InputDevice” 一节里加上 Option	“TapButton1” “1” 这行,一边心里在纳闷为什么X不默认启用这项呢?
加完重启了X以后,在登录界面试了一下,嘿嘿,果然可以了点击了,于是兴高采烈地登录我的gnome,结果再一看,怎么又不行了呢?明明刚才还可以的啊。难道是gnome的问题?上网一查,发现果然是,在gnome的“系统”->“首选项”->“鼠标”->“触摸板”里,有一项“Enable mouse clicks with touchpad”,勾上这个就好了。
然后再一转念,那在 xorg.conf 里的设置不是多此一举了吗?毕竟我不怎么关心登录界面能不能点击啊。
于是重新删除了 xorg.conf 重启X,登录gnome以后,果然也是可以的。
至此终于知道X为什么不默认启用触摸板点击了,哈哈,既然有DE做这个事情,自然就可以偷偷懒了,不过不知道用*box之类的WM的用户是怎么设置呢?
				 
				发表于:2010年03月07日 19:40 | 分类: 流水帐 |   14 个评论 »
			 
	
						
			
				
								
					ubuntu用久了,升级了几次内核以后,就免不了需要清理一下老的内核,毕竟一套内核就有170多M的空间呢。但是每次都打一堆字来清理也烦了。虽然Ubuntu 命令技巧(这里再罗嗦几句:如果还有ubuntuer没看过这个,强烈建议看一遍。)里有删除旧内核的命令,而且就一行:
		
		
			
			
			
			
				
					
				|  | sudo aptitude purge ~ilinux-image-.*\(\!`uname -r`\) | 
				
			 
		 
但是我却不是很喜欢,因为这这个没有把linux-headers-xxx删除掉。
于是自己写了个繁的,需要的可以自己保存,以便不时之需。
		
		
			
			
			
			
				
					
				| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 | #!/bin/bash # 清理ubuntu的老内核 # by bones7456 # http://li2z.cn CURRENT="`uname -r | awk -F"-" '{print $1"-"$2}'`" HEADERS="" IMAGES="" for HEADER in `dpkg --get-selections | grep ^linux-headers | \ grep -vE "(generic|386|virtual)" | awk '{gsub(/linux-headers-/,"",$1);print $1}'` do     if [[ "$CURRENT" < "$HEADER" ]]     then         echo "正在运行的内核不是最新的。 $CURRENT < $HEADER"         echo "Running kernel is not the newest. $CURRENT < $HEADER"         exit 1     else         [[ "$CURRENT" != "$HEADER" ]] && {             HEADERS="${HEADERS} linux-headers-${HEADER}"             IMAGE="`dpkg --get-selections | grep ^linux-image | \                 grep "${HEADER}" | awk '{print $1}'`"             IMAGES="${IMAGES} $IMAGE"         }     fi done   if [[ x"$HEADERS" == x"" ]] then     echo "没有要清理的老内核."     echo "No old kernel need to clean."     exit 0 fi CMD="sudo apt-get purge $HEADERS $IMAGES" echo "$CMD" if [ "$1" == "-e" ] then     sh -c "$CMD" else     echo "请确定以上命令是否正确,然后输入 $0 -e 来执行以上命令。"     echo "Be sure this command is right, then type $0 -e to execute." fi | 
				
			 
		 
				 
				发表于:2010年02月28日 21:19 | 分类: 流水帐 |   15 个评论 »
			 
	
						
			
				
								
					曾经,我也有一个XP,虽然平时很少用到,但是在偶尔想玩玩游戏、或者要用到网银的时候,还是要发挥一下作用的,而且曾经的深度精简版也不是很占空间,于是,这个NTFS分区,就一直静静地留在了我的硬盘里了。
直到去年末,回老家办婚礼摆酒的时候,家里人来人往地比较多,有时候有的亲戚朋友要用下电脑,我不可能开个gentoo给人家啊,于是就打开这个XP,没过几天,再去看的时候,发现XP已经中毒很深了。。。要知道我这XP可是没有任何杀软的啊。唉,脆弱的win啊~
于是,这段时间也陆陆续续想了不少办法来拯救这个可恶的XP:曾经在linux下给它杀毒,杀出一堆来,能登录了却慢得出奇,常常还有不可预计的问题;曾经想用虚拟机里XP的文件来覆盖系统文件,要么不管用,要么启动的时候直接蓝屏,搞得我一点办法都没有;甚至也想过重装,但是发现我的光驱已经不能读盘了,无法从光盘引导;也试过硬盘安装,DOS也进去了,执行XP安装程序的时候,却总是说没有什么临时文件的空间。。。
搞得我只能把这个分区的所有文件都删了,后来,花花说硬盘安装WIN7比较方便,抱着试试看的心态,去下了个本以为永远不会去装的win7镜像,开始折腾。
下载到的文件名为 m2.wim ,要用一个叫 ImageX 的玩意打开或者挂载,于是在虚拟机里挂载以后,把文件都提取出来了,最终都放到原来那个NTFS分区的根目录里,一共只有5个目录和一个文件:Boot、Program Files、ProgramData、Users、Windows和bootmgr,很显然,bootmgr就是用于引导的文件,但是原来XP里的引导文件叫做NTLDR啊,grub也只会引导这个文件,所以把bootmgr又复制了一份叫NTLDR,然后直接重启,grub里选择原来XP的条目,一回车,还真进去了。。。
首次进入系统,会自动安装一堆驱动,我这个神舟本除了显卡驱动没认出来,分辨率只上到1440×1050外,其他硬件基本都能自己装好驱动,装好后重启一次,再下个显卡驱动,默认就是下面这个样子了,哈哈:

还蛮舒服的哈,大小也比较合理,wim文件是 350M ,解压后是800多M,装好以后包括一些软件在1.5G以内吧。
虽然偶尔也会有如图的“内存不能为read”的经典又深奥的错误,但是谁在乎呢?
看来,以后真要告别XP喽~
				 
				发表于:2010年02月26日 14:18 | 分类: 流水帐 |   17 个评论 »
			 
	
						
			
				
								
					最近,貌似关于gentoo的新闻越来越多了。刚又听说,chrome OS的宿主系统已经从ubuntu转向gentoo了,其实,我对这个倒是一点都不感到意外,gentoo对于这种特定的应用,可定制性显然比ubuntu强很多,让我来选的话也会选gentoo的。只是觉得一向低调的gentoo被google这么一搞,也许以后都没有办法再低调了,哈哈。
好像有点扯远了,说到gentoo,大家肯定会想到无休止的编译,也确实,gentoo的编译是比较费时间的,尤其是在性能不怎么强悍的机器上,比如跑着chrome的上网本里。如果你另外有几台强悍些的台式机或者服务器的话,其实可以把编译的工作分担一部分给强悍的机器。这时候就要用到distcc了。
distcc是一个通过网络进行分布式编译的工具,它包含两部分,一部分是服务端程序 distccd,一部分是客户端程序 distcc。大致的原理就是,distcc连接一个或多个distccd,有编译任务的时候,distcc依次并行地把C或C++文件分发给各distccd,distccd调用它们本地的编译器编译出 .o 文件以后,再发回给distcc,另外,configure和link等工作还是由客户端自己来完成。
这样一来,对各服务端的系统也就有了一个额外的要求:必须保证服务端和客户端的gcc版本是一致的,否则出来的.o肯定link不了啊,呵呵。
如果你的客户端和服务端都装的是gentoo,采用的一样的架构和keywords,那其实这个要求还是很好满足的:两边都升到最新即可,这样配置方法可以参考官方文档。
但是如果你想用装着ubuntu、fedora、RHEL等发行版的服务端的话,就有点困难了,gentoo如果开了~x86的话,gcc的版本很容易就比这些发行版高出一大截了。
本文就是要解决这个问题的:
解决的思路,就是利用chroot,在各发行版里构建一套没有内核的gentoo系统(因为有kernel也用不着嘛),然后把里面的编译环境都升级到最新,再在里面安装运行distccd。
条件是你需要有server的root权限。
方法其实也不难,大致如下:
		
		
			
			
			
			
				
					
				|  | #建立gentoo的根目录,这里最好有>1.5G的硬盘空间,不然会不够用 mkdir gentoo cd gentoo #可以从 http://www.gentoo.org/main/en/mirrors.xml 这里选择速度快的mirror。 #下载你需要的架构的stage3 wget http://gentoo.cs.nctu.edu.tw/gentoo/releases/x86/current-stage3/stage3-i686-20100126.tar.bz2 #下载最新的portage树,其实不下也是可以的,不过后面emerge --sync的时候会慢些。 wget http://gentoo.cs.nctu.edu.tw/gentoo/snapshots/portage-latest.tar.bz2 #释放文件 tar xvf stage3-i686-20100126.tar.bz2 -C . tar xvf portage-latest.tar.bz2 -C usr/ #清理现场 rm stage3-i686-20100126.tar.bz2 portage-latest.tar.bz2 | 
				
			 
		 
然后,为了方便起见,在当前目录写一个gogentoo的脚本,内容如下,加上可执行权限:
		
		
			
			
			
			
				
					
				|  | #!/bin/bash   [[ $UID == 0 ]] || { echo "Must be root to go gentoo."; exit 0; }   cp /etc/resolv.conf etc/ mount -t proc proc proc/ mount -o bind /dev dev/ chroot . /bin/bash | 
				
			 
		 
然后执行 sudo ./gogentoo 就进入gentoo环境了。进去以后执行:
		
		
			
			
			
			
				
					
				|  | env-update source /etc/profile   #添加 ~x86 的keywords,请按需修改成你自己的。 nano /etc/make.conf #更新系统 emerge --sync emerge -avuDN world #完成以后,一般还需要gcc-config到最新的gcc版本。然后清理系统 emerge --depclean -av #最后安装distcc emerge distcc | 
				
			 
		 
到了这里,服务端的软件环境就算准备完毕了,你可以对比下两边的
		
的输出,看看是否完全一致。
不过,如果你在chroot环境下,直接执行 /etc/init.d/distccd start 来启动服务的话,多半是会遇到错误的,会提示什么udev有问题,我也没深究。不过既然不让启动服务的话,我手工启动总好了吧,于是执行:
		
		
			
			
			
			
				
					
				|  | distccd --port 3632 --log-file /var/log/distccd --log-level critical --allow client的IP -N 15 | 
				
			 
		 
这样启动的distccd也照样能工作,哈哈。
以上步骤在 i686-pc-linux-gnu 的gentoo client 和 ubuntu 9.10 的server上试验通过。理论上这样做好的gentoo,应该是可以从ubuntu打包出来,到其他发行版直接用的,这样就很方便做出一个灰常强大的编译集群了,哈哈,改天试试看。
接下来就是配置你的client来使用这个server了,这个就和普通的没区别了,这里也先不讨论了,如有必要,另外再写一篇就好,呵呵。
				 
				发表于:2010年02月23日 15:29 | 分类: gentoo |   15 个评论 »