December 2006 Archives
1.乌龟的屁股 谜底:规定
2.乌龟倒立 谜底:上面有规定;
3.乌龟翻筋斗 谜底:一个又一个规定;
4.大乌龟背上背个小乌龟 谜底:上面又有新规定!
5.三只乌龟,中间那只忽然便便了。谜底:哎呀,中央的规定又变了!
6.乌龟盖了间房子然后爬了进去 谜底: 盖中盖;
7.乌龟爬出来把房子拆了又盖了一间爬了进去 谜底:新盖中盖;
8.乌龟又爬出来拆房子盖房子爬进去 谜底:巨能盖
9.乌龟碰到了一只鳖 谜底:黄金搭档
题记:
前些天忽然在Q群中看到伊斯兰教的开斋节到了,
然后一个朋友说起来吃东西的问题,
于是小子手痒,随便说说自己以前看古兰经的一个理解。
申明:本文仅系小子妄言,但绝无调笑,贬低任何人或者民族的成分。
列位权作参考,一笑而过即可,小子不对其中任何任何言语作责任性承诺。
为什么回民不吃猪肉:
其实不止是回民不吃猪肉,是整个伊斯兰教都不吃,为什么不吃呢?
偶以前看了古兰经,大概推测了一个原因,仅作个人之说,一家之言。
关于不吃猪肉,
其实按照古兰经的说明,
不吃的不止猪肉,应该是哺乳动物中不会反刍的都不能吃
当然原文不是个,但按照那个划分,真正不吃的应该这么包括:
1、陆地上不是吃草的不能吃,更严格的话是不会反刍的都不能吃;
2、天上飞的,肉食性的不能吃;昆虫类的不能吃;
3、水里游的横着爬的,泥里钻的都不能吃;
4、不是经过阿訇宰杀的不能吃。
或者说所有被认为不洁净的肉食,都是不能吃的。
也就是说,诸如:
老虎,豹子,狗,猫,驴肉,马肉,猪肉;
乌鸦,老鹰;蚱蜢,蚕蛹;
螃蟹,泥鳅,蛇;
除此之外所有非正常死亡的等等,包括但不仅限于这些,都是不能吃的;
能吃什么呢?
牛,羊,骆驼可以;或者兔子,鹿如果不那么严格也凑合可以;
鸡,鸭,鹅可以,如果不那么严格,他们的近亲野鸭,大雁,野鸡也可以;
普通的鱼可以,如果不那么严老鳖,乌龟似乎也可以;
为什么会有这么一份禁忌食物列表呢?
请回忆下历史,
当年默罕默德在在当时还信仰耶稣的阿拉伯半岛传教,
很短的时间内传教成功,整个阿拉伯半岛都变成了伊斯兰信徒
为什么?
注意一个细节:当年阿拉伯半岛瘟疫横行!
默罕默德巧妙的用了这个得天独厚的条件,
他宣称:信我者妖邪瘟疫不能侵!
实施上他确实做到了,所以才能在很短时间内传教成功。
那么他怎么做到的呢?法力?神通?
这个不再我们讨论范围,我们尝试从科学角度来看看。
1、回忆下上边的禁忌列表,也就是说,
几乎所有的杂食,肉食,或者以腐肉为食的动物都被排除在外了,
而在瘟疫横行的时候,这些杂食,肉食,腐食类动物是最容易被瘟疫感染的
2、伊斯兰教徒不吃死物,必须是活物经过阿訇宰杀后才可以吃,也避免了吃到因瘟疫感染导致死亡的肉类。
从这两点看,如果是虔诚的伊斯兰教徒,确实可以在那个瘟疫横行的年代独善其身不被感染,
而不虔诚的,死了活该吧?
如此说来,能在恐怖的瘟疫面前不被感染,人们又不明白内在原理的情况下,
自然,人们就会相信这是真主的使者的能力了。
那么为什么就猪肉出名了呢?
因为你看看这个列表,别的那个是日常食品?就猪肉!
其余的很多并不是不禁忌,而是通常人接触不到,所以就不觉得有什么。
而接触最多的牛羊鸡鸭鹅猪等等,只有猪肉是禁忌的,
所以人们自然会关注这个不同点,
从而
回回不吃猪肉就出名了。
============================
后记:
从这点来说,不吃猪肉的基本原因是:
在伊斯兰的禁忌中猪肉是被认为不洁净的肉食,脏,所以不吃。
据偶所知,现在有些地方的回回已经到了偏执的地步,听见"猪"就发狂,
这其实应该算是宗教协会,清真寺没有宣扬教义导致的遗憾吧
真是搞啊,换了个比上次大一倍的UPS,并重新拉了进线........
Preamble: This document is copylefted by Fengchou Li (sl6xx@luxent.com.tw). Permission to use, copy, distribute this document for non-commerical purposes is hereby granted, provided that the author's name and this notice appear in all copies and/or supporting documents; that this document is not modified. This document is istributed in hope that it will be useful, but WITHOUT ANY WARRANTY, either expressed or implied. While every effort has been taken to ensure the accuracy of the information documented herein, the author assumes NO RESPONSIBILITY for errors, or for damages results for the use of the information documented herein. 本文作者保此文章之版权。本文件欢迎任何非商业用途之使用、复制或散布,唯需注意需附上原作者与这段注意事项,且使用者不得修改此文件。作者散布此文件的目的乃是希望此文件能够有所用处,但无论是在此文章内明白表示或由其内容意含推论而得之结果,作者皆无法保证对任何人能达到此的目的。作者已尽一切努力达成此文件内容之正确性,但任何因使用此份文件所导致之直接或间接之损害,作者将不负任何责任。 此文章献给Synnex Taichung的淑君--让我了解萧邦写作Piano Concertos Nos. 1 & 2 时的心情的人... 之前曾看到有交大(?)的同学提出以FreeBSD当Intranet Server的专题,不过似乎缺少了企业实际运用上也很需要的Fax Server。在此将自己把Linux 当Fax Server的经验拿出来与大家分享。如果您有更好的资讯,也欢迎提出来共同讨论。因为这些package在FreeBSD上也都有,所以我想,这里讨论的东西在FreeBSD上应该也可以运作无误。(虽然我也有一部FreeBSD的 Server,但是我没有在上面试过,太累了...) 这里讨论的情形,是以一部Linux当Fax Server服务多部Win95的情形。 Linux也不是不能当NT的Fax Server,只不过Respond这支client端的程式无法正确在NT底下运作。(也许有人有兴趣写一个?!)无论如何,Samba当 95/NT的File/Printer Server还是非常好用的。 基本上,用Samba当Win95的Fax Server和Printer server的方法是一样的。需要被传真出去的文件,您可以把它当成列印到网路印表机般的送给Samba Server。像其他挂在Samba底下的印表机一般,您也可以在网路芳邻上看到这部(实际上是传真机的)印表机。这部传真机收到列印的资料后,会回头来找Win95 Client问传真的电话号码,然后再把传真发送出去。至于传真的接收,是利用mgetty+sendfax把incoming的传真收下来,再用E-mail的方式转给指定的user。 您必须有一部已经架设好且可以正常运作的Samba Server。关于架设Samba 的文件已经有很多讨论了,所以就不赘述了。不过有一个小小建议,就是最好架设有WINS server,可以让您省掉很多Browse的麻烦。 其次,您也必须架设mgetty+sendfax这套软体。关于mgetty+sendfax这套软体,我不打算在这里详细讨论它。之前已有网友Steve Chen (steve.bbs@heaven.stat.tku.edu.tw)发表的大作讨论过。不过关于传真部分的设定,我还是会在下文中加以大略说明。 需要的软体如下: 1. Samba 1.9.16p11: ftp://nctuccca.edu.tw/packages/networking/samba (含samba以及BIG-5中文patch) 2. Mgetty+Sendfax : http://wais.leo.org/~doering/mgetty 3. GhostScript: ftp://ftp.cs.wisc.edu/ghost/(一般的Linux或FreeBSD 的光碟片均有附) 4. Respond 1.4a (For Win95): http://www.boerde.de/~horstf/download/resp14a.zip 5. Printfax.pl v1.3.2: http://www.boerde.de/~horstf/download/printfax.pl (当然,您的Server需装有Perl)。 6. Paint Shop Pro v4.12 (For Win95): 在Win95上看FAX用的,什么地方可以 download应该不必讲吧?! 1. Samba Server的设定 Part I 在打算提供传真服务的机器上,您必须修改smb.conf档案来增加传真服务。以我的机器为例子,有一段类似底下的设定。说类似,是因为这只是为了方便说明的初步的设定,等一下我们还会回头来加上其他的设定。 [fax] comment = Fax Server force user = root postscript = yes print command = /usr/bin/printfax.pl %I %s %U %m printable = yes printer name = fax writable = no path = /tmp valid users = sl6xx write list = sl6xx 这一段在samba上加了一台叫做fax的印表机。samba server收到client端传来的资料后,会执行/usr/bin/printfax.pl这个perl script去处理这传来的资料。 %I, %s, %U, %m等是samba的参数,请参阅samba的文件。 这里比较值得说明的是print command这一行。一般我们用samba来当 printer server,可能会写成像是 print command = lpr -s -r -P%p %s ; rm -f %s 不过因为我们要把这个share当成传真机,所以当然不能用lpr而必须找其他的程式来处理列印的资料。这个程式就是printfax.pl了。 提到printfax.pl,这是Printfax.pl v1.3.2里面的主菜:一个perl script。您在把它cp到/usr/bin底下后,还必须稍加修改里面的内容。主要是修改一些它会执行到的程式的路径。由于我的pintfax.pl已经修改很久了,也忘了改了哪些路径,麻烦大家自己找找看吧! 至于valid users,是允许哪些使用者使用这个服务。sl6xx则是我的ID,请不要照抄。(就算是作弊,也不能连名字也照抄吧! 8-)因为我们内定的读写权是 writable=no。也许您不希望每个人都能用这些设定吧! 2. 修改mgetty+sendfax的设定档: 如果按照mgetty+sendfax的内定值,装好后它的设定档应该是在 /usr/local/etc/mgetty+sendfax/底下(FreeBSD的port可能不一样吧?!) 首先在mgetty.config里面加上您的fax设定。假设我们的fax number是 04-9876543,fax modem接在COM2。现在我们想在传出去的fax表头加上 fax number 886 4 9876543,则要在mgetty.config加上这一行: fax-id 886 4 9876543 数据机的设定如下: port ttyS1 init-chat "" ATZ OK ATQ0V1E0 OK ATL0M0&K3S0=0 OK speed 115200 switchbd 19200 关于数据机的设定,mgetty+sendfax的文件里面讨论了不少,建议一定要看,不同的作业系统及不同的数据机会有不同的设法。这里写的是Linux底下,使用联强的33.6K数据机。switchbd这一行比较特殊,是针对使用 Rockwell晶片,而且传真会碰上问题的数据机。请您自个儿RTFM吧!附带一提的,联强的数据机前后用的晶片不一样,好像有Rockwell也有Cirrus的,我不清楚其他厂牌的是否也如此。此外,为何用ttyS1而不用cua1或modem, mgetty的文件有说明,若OS是FreeBSD又不一样了! 接下来修改sendfax.config。首先必须告诉mgetty用哪一部数据机(应该是说用哪一个port)来收发传真。用COM2的话,应该如此设定: fax-devices ttyS1 如果您的COM1/COM2都接上了数据机,而且都想用来收发传真的话,必须这么写: fax-devices ttyS0:ttyS1 也许您已经用mgetty+sendfax在当PPP server了。没有关系,mgetty 会自动判别。像我用Multi-Port Card就是 fax-devices ttyS16:ttyS17:ttyS18:ttyS19:ttyS20:ttyS21:ttyS22:ttyS23 别忘了,/etc/inittab里面的mgetty设定不可以加上"-D"这个参数,否则就不会接传真了。 接下来是谁可以发传真的设定。请在/usr/local/etc/mgetty+sendfax底下加上fax.allow这个档案,里面是可以发传真的user id,一行一个。 mgetty+sendfax的一堆config档案属性都必须是0600,否则mgetty不会work。 接收fax方面,在mgetty+sendfax的package里面附了一堆shell script,但是内定并没有安装,您必须在tar开mgetty的package后,自己进到 samples里面去找。我是用new_fax.mail这个script再稍加修改如下并将之 copy到/usr/local/lib/mgetty+sendfax/底下。记得档名要改成 "new_fax"。我的"new_fax"如下,只改了两个地方。faxadmin是用来收这 E-mail的alias。另外原来的script有先把fax用gzip压过,我因为要直接在 Win95底下看/印,就把它拿掉了。 #!/bin/sh # # sample script to automatically convert incoming faxes to pbm, uuencode # and gzip them, and send them to "MAILTO". # (FAX_NOTIFY_PROGRAM in policy.h) # # gert@greenie.muc.de # MAILTO="faxadmin@domain.com.tw" MAILER=/usr/lib/sendmail PATH=$PATH:/usr/local/bin G3TOPBM=g32pbm # # HUP="$1" SENDER="$2" PAGES="$3" shift 3 P=1 while [ $P -le $PAGES ] do FAX=$1 RES=`basename $FAX | sed 's/.\(.\).*/\1/'` if [ "$RES" = "n" ] then STRETCH="-s" else STRETCH="" fi ( echo "Subject: fax from $SENDER, page $P of $PAGES" echo "To: $MAILTO" echo "" $G3TOPBM $STRETCH $FAX \ | uuencode `basename $FAX`.pbm ) | $MAILER $MAILTO shift P=`expr $P + 1` done exit 0 3. Win95 Client的设定 其实原来在Samba的site上面也有一份文件,说明如何用Samba来当成Fax Server,不过您必须在送出的文件上用特殊的格式打上WFax Number,并不方便。(老实说,我没有用过那种方法!)现在我们要用的方法,则是Win95 送完资料后,回过头来让server问我们该传哪个地方。Respond 1.4a就是这样的程式。当您在Win95的机器上执行它后,它便会监听port 5555(要跑samba您的Win95至少得装上TCP/IP吧!)。当samba收到列印资料后,会执行printfax.pl来连上client的port 5555。这时Respond这支程式便会 pop out。所以Respond程式的说明就是要您在装好并执行它后,从fax server上telnet您Win95机器的port 5555,看看是否Respond是否会回应。这是个德国程式,不过有英文的说明档。 再来是该送什么资料给samba/mgetty来发传真。当您照第一步的说明设定好samba,再送个HUP的signal给smbd/nmbd后,您应该可以从Win95网路上的芳邻看到server上多了一部叫做fax的印表机。既然要送资料到印表机,当然是要新增印表机了。关键在于要让mgetty传真的资料最好是postscript 格式。所以我们就来增加一部网路上的postscript印表机吧。 请注意一下,实际上这部postscript印表机是不存在的。我们的目的是要让印出来的资料是postscript的格式。我自己是选择Apple LaserWriter。接下来是要点,因为M$的postscript implementation是很buggy的--这是和mgetty作者Gert, Mr. mgetty, Doering讨论后得出来的结果,所以我们必须把印表机的内容那一页的PostScript格式改成"保存格式"。您可以试试看其他的PostScript印表机看看。欢迎您把结果告诉我! 4. 从Win95收FAX 从Win95上面收FAX是非常简单而且直接的。由于前面说明过的设定,Mgetty 会把Fax转成pbm档再uuencode,再mail给指定的使用者。我个人是利用 Netscape 4.02来收信,(因为我用IMAP而不是POP3,您高兴也可以用其他可以直接decode的mail client,之前我就是用Internet Mail)。直接收过来 decode后,如果您有设定让Paint Shop Pro来处理pbm格式的档案的话,就可以直接看或印了。 mgetty+sendfax除了会把进来的fax转成e-mail外,所有传进传出的fax留一份在/var/spool/fax底下(包括您从Win95传过来的),我习惯把它们备份到 MO片上,再把原来的旧fax清掉。 5. Samba Server的设定Part II 其实我的smb.conf中,关于fax的设定是这个样子的: [fax] comment = Fax force user = root postscript = yes print command = /usr/bin/printfax.pl %I %s %U %m; rm %s ; /usr/local/bin/faxrunq printable = yes printer name = fax writable = no path = /tmp valid users = sl6xx write list = sl6xx 和前面不一样的地方是print command这一行多了两个指令。rm %S是把列印过去的spool暂存档案删除。这还不是要点。最重要的,是后面的faxrunq。原来mgetty在收到fax的资料后,是先spool起来,等到执行faxrunq后再拨号送出去。所以您也可以不在这边执行faxrunq,而用其它的方式,例如用 cron daemon来设定定时传送。我是习惯直接传出去所以把faxrunq直接写在 print command的最后面。 6. 后记 到此为止,应该所有的功能都能正确运作了。这样子的方式,优点当然是省钱了。软体不用钱,data/fax共用电话线,... 不过这种方式也有缺点(不知道算不算是?),就是spool起来的传真,万一要砍掉,只能从server上面去砍。这一点对我们用Linux/FreeBSD的人并不是什么大事。不过既然是用在Intranet,而且又是Win95的Client,一定是有一堆unix-phobia的user,(搞不好不止是unix-phobia,还是computer- phobia)必须靠root来帮他们。所以,对搞不定Unix的人,最简单的方法,还是在Win95底下跑Exchange然后share出来吧! 除了mgetty+sendfax以外,还有一些传真的程式,像是 efax (http://www.picante.com/~gtaylor/pht/man/efax.html), 而HylaFax(http://www.vix.com/hylafax/toc.html)也附有Win95的Client程式。不过我因为是先用mgetty架PPP Server的嘛,就顺理成章用它的fax了。也许有网友愿意来讨论一下efax、HylaFax。 这里还有一个类似功能,不过要付钱的软体:ESEMfax,详细资料可以到这里: http://www.esem.com/esemfax.html 有关mgetty+sendfax,有一个news group是专门讨论它的: de.alt.comm.mgetty。虽然是de开头,但是这一区是用英文进行讨论而非德。另外,mgetty+sendfax的作者Gert Doering实在是一个非常热心的人。 http://www.leo.org/~doering/有他帅哥的照片。如果您有mgetty+sendfax 的问题,可以用英文发email到gert@greenie.muc.de 问他。不过记得要发问之前,先把您mgetty的debug level调高一点,然后附上mgetty的log message。不知道Mr. Mgetty看到我叫一堆人去烦他会有什么感想? 7. 参考资料 Samba Man Pages: http://lake.canberra.edu.au/pub/samba/samba.html#Docs Mgetty+sendfax Documentation: http://www.leo.org/~doering/mgetty/index.html Respond README.TXT: http://www.boerde.de/~horstf/download/readme.txt Linux Printing HOWTO: http://sunsite.unc.edu/LDP/HOWTO/Printing-HOWTO.html Linux Serial HOWTO: http://sunsite.unc.edu/LDP/HOWTO/Serial-HOWTO.html ?
[global]
encrypted passwords = yes
null passwords = yes
security = user
netbios name = TeacherNAS
workgroup = WORKGROUP
os level = 49
local master = no
server string = Teacher Network Disks Share
log level = 0
max log size = 1000
socket options = TCP_NODELAY IPTOS_LOWDELAY SO_SNDBUF=16384 SO_RCVBUF=16384
client code page = 936
character set = UTF-8
unix charset = UTF-8
dos charset = ASCII
load printers = no
printing = bsd
printcap name = /dev/null
disable spoolss = YES
smb passwd file = /usr/local/etc/samba/smbpasswd
private dir = /usr/local/etc/samba
passdb backend = smbpasswd
[tea]
comment = 清茶 专用目录
path = /share/qingcha
public = YES browseable = NO
writeable = YES
printable = NO
invalid users = @vuser
[zylsf]
comment = 雨林之舟专用目录
path = /share/zylsf
public = YES
browseable = YES
writeable = YES
printable = NO
valid users = zylsf,tea
invalid users = vuser
[manage]
comment = Administrator login(Write And Reader)
path = /share/software
public = YES browseable = YES
writeable = YES create
mode = 0755 directory
mode = 0755
printable = NO
valid users = zylsf,tea
username map = /user/local/etc/samba/usermap.txt
[software]
comment = 软件共享目录 只读 (Only Reader)
path = /share/software
public = YES
browseable = YES
writeable = NO
printable = NO




