sarge 裡關於 syslog rotation çš„è¨å®šæ”¾åœ¨ /etc/cron.daily/sysklogd å’Œ /etc/cron.weekly/sysklogd 裡é¢ã€‚如果想è¦ä¿®æ”¹ log ä¿å˜çš„æ•¸ç›®ï¼Œæ‡‰è©²ä¿®æ”¹é€™å…©å€‹æª”案裡é¢ï¼Œå‘¼å« 'savelog' 工具時的 '-c' åƒæ•¸ã€‚
Posted by yungyuc
at
18:41,
0 comment,
0 trackback.
"/.":http://slashdot.org/article.pl?sid=04/11/10/2038234 上的消æ¯ï¼Œgoogle. 準備為 gmail åŠ ä¸Š pop3 的功能,也有 smtp ("è¨å®šç•«é¢":http://gmail.google.com/support/bin/answer.py?answer=13273, "說明":http://gmail.google.com/support/bin/answer.py?answer=10350&rand=0.6872877896362408&rand=0.8024221065104475)。
我也是比較期待 imap。ä¸éŽç¾åœ¨å·²ç¶“很習慣用 firefox ç•¶ mail client 了,其實å³ä½¿æ˜¯åœ¨çœ‹ mailing list,速度都ä¸è¦ºå¾—比真的 mail client 慢。gmail çš„ conversation åŠŸèƒ½æ˜¯è »å¥½ç”¨çš„ã€‚
Posted by yungyuc
at
05:02,
0 comment,
0 trackback.
雖然讓 skin 變得比較整齊了一點,但沒辦法,一調下去就åœä¸äº†äº† :) 所以還會繼續調å§ï¼
ä¸éŽ Zope/COREBlog çš„ skin é‚„è »å¥½èª¿æ•´çš„ï¼Œä¸èŠ±ä»€éº¼æ™‚é–“ï¼Œå¿ƒæƒ…å¥½çš„æ™‚å€™èª¿ä¸€èª¿å°±è¡Œã€‚ç›®å‰é‚„是覺得用 COREBlog 1.0 release é è¨çš„ç°è‰²é…ç½®æœ€å¥½çœ‹ï¼Œä½†åƒ "象æ¥":http://owa.as.wakwak.ne.jp/zope/coreblog å’Œ "其它 COREBlog":http://coreblog.org/ping/ çš„è¨è¨ˆä¹Ÿå¾ˆä¸éŒ¯ã€‚
有些 blog 版本è¨è¨ˆçš„å—太å°äº†ï¼Œé€™é»žæˆ‘一定è¦é¿å… :) 原則是:
- å—è¦å¤ 大
- 在 Firefox 裡打開 sidebar (for sage use) 的時候ä¸è¦è®“æ°´å¹³æ²è»¸è·‘出來 >_<
- å„˜é‡æ¶ˆé™¤ COREBlog default skin çš„é¢¨æ ¼ (這就看能作到怎樣的程度了,我的美感實在是很差)
- è¦æœ‰å€‹ navbar 來放 hit count :) ä¹Ÿè¨±é‚„èƒ½å†æ”¾ä¸€äº›å…¶å®ƒçš„æ±è¥¿
Posted by yungyuc
at
23:28,
0 comment,
0 trackback.
Zope X3 也 "release":http://zope.org/Products/ZopeX3 了,as reported in "ZopeZen":http://www.zopezen.org/Members/andy/news_item.2004-11-08.8721072409 and "/.":http://it.slashdot.org/article.pl?sid=04/11/07/2022238&tid=95&tid=156&tid=162&tid=8
A releasing November.
Posted by yungyuc
at
23:06,
0 comment,
0 trackback.
"Mozilla.org":http://www.mozilla.org/ 今天發行了 "Firefox":http://www.mozilla.org/products/firefox/ 1.0,å¯ä»¥åœ¨"這裡下載":http://ftp.mozilla.org/pub/mozilla.org/firefox/releases/1.0/win32/en-US/Firefox%20Setup%201.0.exe。
å‰›æ˜‡ç´šä¸Šä¾†ï¼Œç ´å£žäº†æˆ‘ä¸å°‘ extension,需è¦é€£ extension 一起作更新。
Posted by yungyuc
at
21:52,
0 comment,
0 trackback.
PXELINUX 是 SYSLINUX[r1] 的一個è¡ç”Ÿè»Ÿé«”。PXELINUX,讓我們å¯ä»¥ä½¿ç”¨ç¬¦åˆ Intel PXE (Pre-eXecution Environment) è¦æ ¼çš„ç¶²è·¯å¡ boot ROM,直接從å€åŸŸç¶²è·¯ä¸Šå•Ÿå‹• Linux æ ¸å¿ƒåŠæ•´å€‹ç³»çµ±ã€‚åŒæ¨£å¯ä»¥å¾žå€åŸŸç¶²è·¯ä¸Šå•Ÿå‹• Linux 的軟體系統還有 NILO[r2] å’Œ Etherboot[r3],但它們是使用自己的 boot ROM。
é€™å…©ç¨®ç¶²è·¯é–‹æ©Ÿçš„æ–¹æ³•å„æœ‰åˆ©å¼Šã€‚使用 PXE boot ROM 的話,好處是åªè¦ç¶²è·¯å¡æ”¯æ´ PXE 功能 (Intel 的網路å¡å¹¾ä¹Žéƒ½æ”¯æ´),直接就å¯ä»¥ç”¨ä¾†é€²è¡Œé–‹æ©Ÿï¼Œä¸å¿…å†åŽ»æ‰¾ ROM 燒錄機來燒錄 boot ROM;壞處是開機的功能會å—陿–¼ PXE,ä¸å¤§èƒ½è‡ªè¨‚。利用自訂的 boot ROM,好處是彈性å¯ä»¥å¾ˆå¤§ï¼›å£žè™•是è¦å…ˆå–å¾— boot ROM 的晶片硬體,æ’在網路å¡ä¸Šæ‰èƒ½å¯¦ä½œï¼Œé€™éœ€è¦æœ‰ ROM çš„ç‡’éŒ„æ©Ÿï¼Œæˆæœ¬æ¯”較高[r4]。
這裡我們è¦è¨Žè«–的是使用 PXELINUX 來實作 Linux,特別是 Debian 網路開機的方法。
Linux é€éŽ PXELINUX 進行網路開機時,éŽç¨‹åŸºæœ¬ä¸Šæ˜¯:
0 PXE boot ROM å°å€åŸŸç¶²è·¯å»£æ’,尋找å¯ä»¥æä¾›è³‡è¨Šçš„ DHCP/BOOTP 伺æœå™¨ã€‚
0 DHCP 伺æœå™¨æ¸¬çŸ¥è¦æ±‚資訊的å°è±¡æ˜¯ PXE boot ROM (PXEClient),故將 PXELINUX 程å¼çš„ä½ç½®é€£åŒåŸºæœ¬çš„網路組態一起æä¾›å›žåŽ»ã€‚
0 PXE boot ROM æ ¹æ“šæ‰€å–得的資訊,從 TFTP (Trivial FTP) 伺æœå™¨è™•下載 PXELINUX ç¨‹å¼æª”案,然後執行。
0 任務從 PXE boot ROM 交到了真æ£å¯¦è¡Œé–‹æ©Ÿå‹•作的 PXELINUX 手上。PXELINUX æœƒå…ˆæ ¹æ“šè‡ªå·±æ‰€è¢«åˆ†é…到的 IP ä½å€ï¼Œå¾ž TFTP 伺æœå™¨è™•å–得開機è¨å®šè³‡æ–™ã€‚
0 PXELINUX 的開機è¨å®šæª”寫法與 SYSLINUX 相åŒã€‚我們è¦åœ¨ PXELINUX çš„è¨å®šæª”è£¡é¢æŒ‡å®š Linux æ ¸å¿ƒæª”æ¡ˆçš„ä½ç½®å’Œç›¸é—œçš„æ ¸å¿ƒåƒæ•¸è³‡è¨Š (至少包括本機 IP 與 NFS æ ¹æª”æ¡ˆç³»çµ±çš„ä½ç½®)。
0 ç•¶ PXELINUX æˆåŠŸåœ°é€éŽ TFTP æŠ“åˆ°äº†æ ¸å¿ƒæª”æ¡ˆä¹‹å¾Œï¼Œå°±æœƒç”¨åŒæ™‚å–å¾—çš„æ ¸å¿ƒåƒæ•¸ä¾†å•Ÿå‹•æ ¸å¿ƒã€‚é€™æ™‚å€™ç³»çµ±çš„æŽ§åˆ¶æ¬Šå°±å¾ž PXELINUX 交到了 Linux æ ¸å¿ƒæ‰‹ä¸Šã€‚
0 如果在 PXELINUX è¨å®šæª”裡的資料都沒有錯誤的話,Linux 應該就能æˆåŠŸåœ°ä»¥ NFS æŽ›è¼‰æ ¹æª”æ¡ˆç³»çµ±ï¼Œä¸€æ¥æ¥åœ°å®Œæˆé–‹æ©Ÿå‹•作。
為了讓這個æµç¨‹å¯ä»¥é †åˆ©é€²è¡Œï¼Œæˆ‘們ä¸ä½†éœ€è¦åœ¨ç¯€é»ž (è¦é€²è¡Œç¶²è·¯é–‹æ©Ÿçš„電腦) ä¸Šå®‰è£æ”¯æ´ PXE 的網路å¡ï¼Œä¸¦åœ¨ BIOS 裡作好組態,讓系統é è¨å¾žç¶²è·¯é–‹æ©Ÿï¼Œè€Œä¸”è¦åœ¨ä½œç‚ºè³‡æ–™ä¾†æºçš„伺æœå™¨ä¸Šè¨å®šè¨±å¤šç›¸é—œçš„網路æœå‹™:
- DHCP 伺æœå™¨
我們使用 ISC DHCP3 ('dhcp3-server') 伺æœå™¨å¥—件。
- TFTP 伺æœå™¨
我們使用 Advanced FTP ('aftpd') 伺æœå™¨å¥—件。
- DNS 伺æœå™¨
我們使用 BIND9 ('bind9') 伺æœå™¨å¥—件。
- NIS 伺æœå™¨
組態 NIS 目錄æœå‹™çš„目的是為所有由網路開機的系統æä¾›çµ±ä¸€çš„登入資料。這部分也å¯ä»¥ç”¨ LDAP 或 winbind 來å–代。我們使用 'nis' 套件。
- NFS 伺æœå™¨
為所有經由網路開機的系統æä¾›æª”案。我們使用 'nfs-kernel-server' 套件。當然,為了讓節點å¯ä»¥é †åˆ©é–‹æ©Ÿï¼Œå¿…備的工具程å¼ä¸€å®šè¦å…ˆæº–備好,放在伺æœå™¨ä¸Šï¼Œè®“å„節點來掛載使用。
有時候,我們還會å¦å¤–組態一些æœå‹™ï¼Œä¾†æ»¿è¶³ç‰¹åˆ¥çš„需è¦:
- Linux NAT
é€šå¸¸æˆ‘å€‘æ˜¯å› ç‚ºæœ‰äº†æŸäº›æ¯”較特別的需è¦ï¼Œæ‰æœƒæŠŠé›»è…¦çµ„æ…‹æˆåˆ©ç”¨ç¶²è·¯é–‹æ©Ÿï¼Œæ‰€ä»¥é€™äº›ç¶²è·¯é–‹æ©Ÿçš„é›»è…¦å¤šåŠæ˜¯ä¸€ç¾¤ä¸€ç¾¤çš„。
在大部分的情æ³ä¸‹ï¼Œæˆ‘們ä¸å¸Œæœ›é€™äº›ç¯€é»žç›´æŽ¥æš´éœ²åœ¨ç¶²éš›ç¶²è·¯ä¸Š (噢,ä¸éŽä¹Ÿæœ‰ä¸€äº›æƒ…æ³æ˜¯åéŽä¾†çš„)ã€‚æ¤æ™‚,如果節點有需è¦å˜å–網際網路的話,我們å¯ä»¥åœ¨ä¼ºæœå™¨ä¸Šå¯¦ä½œä¸€å€‹ NAT (Network Address Translation),讓內網路上的節點å¯ä»¥ç”¨ä¼ºæœå™¨çš„身份å°å¤–進行連線。從外部åªèƒ½çœ‹åˆ°é€£ç·šä¾†è‡ª NAT 伺æœå™¨ï¼Œä¸èƒ½é€é€²åŽ»çœ‹åˆ°ç¯€é»žï¼Œé”到ä¿è·çš„目的。
æˆ‘å€‘å¿…é ˆä¸€ä¸€åœ°æŠŠä»¥ä¸Šçš„æœå‹™åŠç›¸é—œçš„資料建好,æ‰èƒ½é †åˆ©åœ°ç”¨ PXE å’Œ PXELINUX 執行開機動作。ä¸éŽï¼Œæ›´é‡è¦çš„æ˜¯ï¼Œç•¶ç¯€é»žéƒ½å¯ä»¥æ£å¸¸å•Ÿå‹•ä¹‹å¾Œï¼Œæˆ‘å€‘é‚„è¦æ‡‚得如何管ç†é€™äº›æ²’有ç£ç¢Ÿçš„é›»è…¦ã€‚å› ç‚ºæ‰€æœ‰ç¯€é»žçš„çµ„æ…‹è³‡æ–™éƒ½å˜åœ¨ä¼ºæœå™¨ä¸Šé¢ï¼Œè‰¯å¥½çš„管ç†èˆ‡çµ„織方法ä¸ä½†å¯ä»¥æ¸›å°‘é‡è¤‡è³‡æ–™çš„儲å˜ç©ºé–“浪費,更能增進管ç†å·¥ä½œçš„æ•ˆçŽ‡ã€‚
.. [r1] "SYSLINUX":http://syslinux.zytor.com/
.. [r2] "NILO":http://www.nilo.org/
.. [r3] "
Etherboot":http://sourceforge.net/projects/etherboot
.. [r4] 或者是使用別人製作好的 boot ROM 晶片,但這樣就失去彈性了,ä¸å¦‚直接用 PXE。
Posted by yungyuc
at
17:50,
0 comment,
0 trackback.
Debian GNU/Linux 是一個很é©åˆç„¡ç£ç¢ŸåŒ–的作æ¥ç³»çµ±ã€‚在 Linux 之ä¸å®ƒå…·å‚™éžå¸¸å»£çš„套件庫,幾乎所有無ç£ç¢ŸåŒ–所需è¦çš„軟體都包å«åœ¨äº† Debian 官方的發行版本裡é¢ã€‚
ç„¡ç£ç¢ŸåŒ–的電腦有兩個主è¦çš„好處:
- 沒有ç£ç¢Ÿï¼Œä¸æœƒå¢œæ©Ÿ
ç£ç¢Ÿ (硬碟機) 容釿„ˆä¾†æ„ˆå¤§ï¼Œåƒ¹æ ¼æ„ˆä¾†æ„ˆä½Žï¼Œæå£žçŽ‡ä¹Ÿæ„ˆä¾†æ„ˆé«˜ã€‚çœŸæ£é‡è¦çš„資料,我們如果還敢åªå˜åœ¨æ²’有容錯功能的ç£ç¢Ÿä¸Šï¼Œé‚£è†½å實在是很大。
為了ä¿è·è³‡æ–™ï¼Œæˆ‘們å¯ä»¥æŽ¡å–çš„æ‰‹æ®µæœ‰å®šæ™‚å‚™ä»½ã€æŽ¡ç”¨å®¹éŒ¯çš„ RAIDã€å®šæ™‚æ›´æ›ç£ç¢Ÿæ©Ÿç‰ç‰ã€‚但尿–¼ç³»çµ±ç¢Ÿ (åªç”¨æ–¼ä½œæ¥ç³»çµ±å’Œè»Ÿé«”資料ç‰ç›®çš„çš„ç£ç¢Ÿï¼Œä¸å˜ä½¿ç”¨è€…的資料) 來說,其ä¸çš„資料多åŠå¯ä»¥åœ¨çŸæ™‚間內釿–°å»ºç«‹å›žä¾† (ç›¸å°æ–¼å¤±åŽ»å·¥ä½œè³‡æ–™å¾Œçš„é‡å»ºæ™‚é–“)ï¼Œæ‰€ä»¥èŠ±å¤§éŒ¢æ˜‡ç´šæˆ RAID ä¸å¤ªåˆ’算,完整備份åˆå¤ªéº»ç…© (通常需è¦å…ˆçµæŸç³»çµ±ï¼Œç”¨å¦å¤–的軟體進行),有時候我們就ä¸ç®¡å®ƒäº†ã€‚
如果作æ¥ç³»çµ±ä¸å¿…å˜åœ¨æœ¬æ©Ÿç£ç¢Ÿä¸Šï¼Œé‚£éº¼é€£åŒæœ¬ä¾†å°±èƒ½æ”¾åœ¨ç¶²è·¯ä¸Šçš„工作資料,本機上就å¯ä»¥å®Œå…¨ä¸æŽ¥ä¸Šä»»ä½•ç£ç¢Ÿï¼Œå®Œå…¨ä¸æœƒæœ‰ç£ç¢Ÿæå£žçš„å•題了。
- 集ä¸è¨å®šè³‡æ–™ï¼Œæ–¹ä¾¿ç®¡ç†
å‡è¨æˆ‘å€‘æœ‰åæ•¸å°ç”¨é€”ç›¸ä¼¼ï¼Œçµ„æ…‹ä¹Ÿé¡žä¼¼çš„é›»è…¦ã€‚æ¯æ¬¡è¦ä¿®æ”¹æŸå€‹è¨å®šè³‡æ–™ï¼Œè¬å¦‚說æ¯å°é›»è…¦çš„主機å稱,就è¦åˆ°æ¯ä¸€å°é›»è…¦ä¸Šä¸€å€‹å€‹æ‰“開檔案,比å°è³‡æ–™ç„¶å¾Œä¿®æ”¹ã€‚å³ä½¿æˆ‘們有很方便的é 端æ“ä½œä»‹é¢ (例如 ssh),這還是一件煩人åˆå®¹æ˜“出錯的工作。
如果電腦是無ç£ç¢Ÿç³»çµ±ï¼Œé‚£éº¼è¡¨ç¤ºæ‰€æœ‰ç¯€é»žçš„è¨å®šè³‡æ–™éƒ½æœƒå„²å˜åœ¨ä¼ºæœå™¨ä¸Šï¼Œé‚£éº¼ä¿®æ”¹é€™äº›è¨å®šå°±è¼•鬆了。通常我們在放置這些資料的時候就會好好進行組織è¦ç•«ï¼Œé‚£éº¼ç”šè‡³ä¸ç”¨èŠ±ä»€éº¼åŠ›æ°£å°±å¯ä»¥å¯«å¥½æ‰¹æ¬¡ä½œæ¥çš„程å¼ï¼Œä¸ç®¡è¦æ”¹ä»€éº¼è¨å®šï¼Œéƒ½åªéœ€è¦ä¸€å€‹å‹•作。
å¦å¤–,系統的備份與還原也就åªéœ€è¦é‡å°åŒä¸€ä»½è³‡æ–™é€²è¡Œï¼Œæ¯”起出å•題時è¦å‚™ä»½é‚„原å幾個甚至更多系統,工作起來會容易得多。
ç•¶ç„¶ç„¡ç£ç¢Ÿç³»çµ±ä¹Ÿæœ‰å®ƒçš„é™åˆ¶å’Œç¼ºé»ž:
- éœ€è¦æ¯”較快的網路和伺æœå™¨
基本上以一般的應用來講,Fast Ethernet (100Mbps) å·²ç¶“å¾ˆå¤ ç”¨äº†ã€‚å’Œå…·æœ‰æœ¬åœ°ç£ç¢Ÿçš„一般系統比起來,無ç£ç¢Ÿç³»çµ±åœ¨é–‹æ©Ÿæ™‚æœƒè€—æŽ‰æ›´å¤šçš„ç¶²è·¯é »å¯¬ï¼Œä¼ºæœå™¨çš„è² æ“”ä¹Ÿæ›´å¤§ã€‚ä¸éŽç•¶ç³»çµ±è¼‰å…¥äº†æ‡‰ç”¨ç¨‹å¼ä¹‹å¾Œï¼Œåœ¨ä¸å˜å–使用者資料的情æ³ä¸‹ï¼Œå°ç¶²è·¯çš„è² è¼‰å’Œæœ‰ç£ç¢Ÿç³»çµ±å°±æ²’有多少差異了。
如今 1000Mbps çš„ Gigabit Ethernet 已經普åŠåˆ°äº†ä¸€èˆ¬çš„商務級 PC 上,單購網路å¡çš„æˆæœ¬ä¹Ÿä¸åˆ° 2,000 元新å°å¹£ã€‚事實上å€åŸŸç¶²è·¯çš„é »å¯¬ä¸æ˜¯å¤ªå¤§çš„å•題。å³ä½¿é »å¯¬çœŸçš„ä¸å¤ 用,é©ç•¶åœ°çµ„態網路拓璞和伺æœå™¨çš„硬體,多åŠå¯ä»¥è§£æ±ºå•題。
- ç¯€é»žéœ€è¦æ¯”較大的記憶體
å› ç‚ºç„¡ç£ç¢Ÿç³»çµ±æ²’有ç£ç¢Ÿå¯ä»¥ä½œç‚ºè™›æ“¬è¨˜æ†¶é«”çš„ç½®æ› (swap) 空間,所以主記憶體是多大就是多大,空間ä¸å¤ å°±ä¸èƒ½å¤ å†åŸ·è¡Œç¨‹å¼ï¼Œä¸åƒä¸€èˆ¬çš„系統還能把背景或ä¸åœ¨ä½¿ç”¨ä¸çš„程å¼ç½®æ›åˆ°ç£ç¢Ÿä¸Šï¼ŒæŠŠè¨˜æ†¶é«”空出來給新的程å¼ä½¿ç”¨ã€‚
在 Linux 上也有技術å¯ä»¥é€éŽç¶²è·¯é€²è¡Œè™›æ“¬è¨˜æ†¶é«”ç½®æ›ï¼Œä½†é€™æ¨£ä½œæœƒå¤§å¤§åœ°æ‰“擊網路的效能,若éžçµ•å°å¿…è¦ï¼Œåƒè¬åˆ¥é€™éº¼ä½œã€‚
- å°æª”案伺æœå™¨çš„è³‡æ–™ç©©å®šæ€§è¦æ±‚很高
基本上這個é™åˆ¶ä¸¦éžé‡å°ã€Œç„¡ç£ç¢Ÿã€ç³»çµ±ï¼Œåªè¦æ˜¯å˜æ”¾é‡è¦è³‡æ–™çš„æª”案伺æœå™¨éƒ½è¦æœ‰é«˜ç©©å®šæ€§ï¼Œä¸¦ä¸”æ‡‰è©²å®šæœŸå‚™ä»½ã€æ™‚常檢查資料完整性。我們常常會在é‡è¦çš„æª”案伺æœå™¨ä¸Šå®‰è£å®¹éŒ¯ RAID å’Œç£å¸¶æ©Ÿï¼›å³ä½¿ RAID 裡的æˆå“¡ç£ç¢Ÿæœ‰æ‰€æå£žï¼Œä¹Ÿä¸æœƒå½±éŸ¿è³‡æ–™çš„完整性,而定期也è¦åˆ©ç”¨åƒç£å¸¶æ©Ÿ (Terabyte ç‰ç´šçš„離線儲å˜åª’é«”) 這種大容é‡è¨å‚™é€²è¡Œè³‡æ–™å‚™ä»½ã€‚
å› ç‚ºç„¡ç£ç¢Ÿç³»çµ±çš„伺æœå™¨ä¸Šå˜æ”¾äº†æ‰€æœ‰ç¯€é»žçš„è¨å®šè³‡æ–™ï¼Œä¸€æ—¦é€™äº›è³‡æ–™å‡ºäº†å•é¡Œï¼Œå½±éŸ¿åˆ°çš„æ˜¯æ‰€æœ‰çš„ç³»çµ±ï¼Œè€Œä¸æ˜¯ä¸€å€‹æˆ–兩個。所以這些資料的é‡è¦æ€§ï¼Œå°±æ¯”單單å˜åœ¨ç¯€é»žçš„æœ¬æ©Ÿç¢Ÿç¢Ÿä¸Šçš„æ™‚候大了很多。
- 個別節點ä¸å®¹æ˜“特化è¨å®š
å› ç‚ºç¯€é»žæ‰€æœ‰çš„è³‡æ–™éƒ½å˜åœ¨ä¼ºæœå™¨ä¸Šï¼Œé€šå¸¸æœƒå’Œå…¶å®ƒç¯€é»žå…±äº«è¨±å¤šç¨‹å¼æª”案,甚至是è¨å®šæª”。如果我們想特性化æŸä¸€å€‹ç¯€é»žçš„è¨å®šæˆ–者是應用程å¼ï¼Œå°±å¿…é ˆå¦å¤–ç‚ºå®ƒæº–å‚™ä¸€ä»½æª”æ¡ˆçµ„ã€‚é€™æœƒæ¯”è¼ƒéº»ç…©ï¼Œè€Œä¸”é€ æˆç®¡ç†ä¸Šçš„紊亂。
這個å•題是無ç£ç¢Ÿç³»çµ±çš„特性,所有的資料擺在一起å¯ä»¥æ–¹ä¾¿çµ±ä¸€è¨å®šï¼Œç›¸å°åœ°ç‰¹åŒ–è¨å®šå°±æ¯”較難了。ä¸éŽï¼Œå¯¦å‹™ä¸Šæˆ‘們還是å¯ä»¥ç”¨ä¸€äº›çµ„織檔案系統的技巧來克æœé€™å€‹å•é¡Œï¼Œåªæ˜¯æ¯”較需è¦èŠ±é»žå¿ƒæ€ã€‚
就硬體來講,無ç£ç¢Ÿç³»çµ±é›–ç„¶æœƒå¢žåŠ ä¼ºæœå™¨ä¸Šçš„儲å˜è¨å‚™æˆæœ¬ï¼Œä½†å¯ä»¥æ¸›å°‘在å„節點上安è£ç¡¬ç¢Ÿçš„æˆæœ¬ã€‚å¦‚æžœç¯€é»žçš„æ•¸é‡ä¸æ˜¯å¾ˆå¤š (在數åå°çš„尺度內),那麼å€åŸŸç¶²è·¯æ–¹é¢é€šå¸¸ä¹Ÿä¸éœ€è¦æ˜‡ç´šæˆ Gigabit Ethernet (ä¸éŽé€™éƒ¨ä»½çš„æˆæœ¬ç¾åœ¨å¾ˆä½Žäº†)ã€‚å› æ¤å°‡ç¾æœ‰çš„ Linux 環境無ç£ç¢ŸåŒ–䏦䏿œƒå¤šèŠ±å¤šå°‘éŒ¢ï¼Œç”šè‡³å¾ˆæœ‰å¯èƒ½çœéŒ¢ã€‚
ç„¡ç£ç¢Ÿçš„ Linux (這裡用的是 Debian GNU/Linux) åœ¨è¨±å¤šæ–¹é¢æ¸›è¼•了大é‡çš„管ç†è² æ“”ï¼šçµ±ä¸€çš„è¾¦å…¬å®¤ç’°å¢ƒã€æ•™å®¤ç’°å¢ƒå’Œå¢é›†è¨ˆç®—環境。åªè¦æ˜¯ç¯€é»žçµ„態統一的應用環境,都å¯ä»¥åˆ©ç”¨ç„¡ç£ç¢Ÿç³»çµ±çš„管ç†å„ªå‹¢ï¼Œå¤§å¹…簡化節點電腦系統的管ç†å·¥ä½œã€‚雖然建立系統需è¦å¸ç¿’ä¸å°‘è¨å®šæŠ€å·§å’Œä¼ºæœå™¨çµ„æ…‹ï¼Œæœ€å¾Œçš„çµæžœæœƒæ˜¯å€¼å¾—的。
Posted by yungyuc
at
17:49,
0 comment,
0 trackback.
這次試著把段è½ã€pre 和列表的間è·ç”¨ padding-top 調æˆä¸€æ¨£::
body{
background: #;
color: #;
font-family:
;
margin: 0px 0px 0px 0px;
}
A {
color: #036; text-decoration: underline; }
A:link {
color: #036; text-decoration: underline; }
A:visited {
color: #012; text-decoration: underline; }
A:active {
color: #888; }
A:hover {
color: #888; }
h1, h2, h3 {
margin: 0px;
padding: 0px;
}
/* Style for banner */
#banner {
background: #;
font-family:
;
font-weight: normal;
padding-left: 10px;
border-bottom: 2px solid #000;
}
/* Blog title */
#banner a,link,visited,active,hover {
color: #;
text-decoration: none;
}
/* Blog name */
.blogname {
background: #;
font-size: 2.6em;
text-align: right;
}
/* Blog description */
.description {
background: #;
font-size: 1em;
line-height: 100%;
text-align: left;
}
/* Style for Blog content */
/* Content box */
#content {
margin: 15px 10px 0 10px;
}
/* Content box */
.blog {
padding: 0px;
}
/* Entry box */
.entry {
font-size: normal;
font-weight: normal;
whote-space: normal;
line-height: 130%;
margin: 0 0.5em 0 3.7em;
}
.entry p {
margin: 0;
margin-top: 0.3em;
}
/* date of entry*/
.date {
background: #;
color: #FFF;
font-family:'Times New Roman',verdana,arial,georgia, sans-serif;
font-size: small;
line-height: 110%;
font-weight: normal;
padding: 3px 0;
margin-bottom: 10px;
}
.day {
float: left;
font-family:'Times New Roman',arial,verdana,georgia, sans-serif;
font-size: xx-large;
line-height: 100%;
font-weight: normal;
letter-spacing: 0.02em;
margin-left: 4pt;
margin-right: 3pt;
padding-right: 3pt;
border-right: 4px solid #FFF;
}
/* title of entry*/
.title {
font-size: large;
margin: 0 0.2em 0.1em 0em;
border-bottom: 1px dotted #000;
}
/* Subtitle of entry*/
.subtitle {
color: #;
font-size: small;
line-height: 110%;
padding-left: 0.2em;
margin: 0.1em 0.2em 0 0em;
border-left: 1em solid #;
}
/* category of entry */
.category {
font-size: small;
line-height: 110%;
text-align:right;
margin: 0;
}
/* postedtime,comment,trackback information for entry */
.posted {
font-size: x-small;
text-align: right;
margin: 1em 10px 2em 0;
}
/* comment for entry */
.comments-head {
font-size: small;
font-weight: bold;
line-height: 100%;
margin: 2em 0.5em 0 0;
padding-left: 0.2em;
border-left: 1em solid #000;
border-bottom: 1px solid #000;
}
/* comment body */
.comments-title {
font-size: small;
font-weight: normal;
line-height: 150%;
margin-right: 0.2em;
border-bottom: 1px dotted #000;
}
/* comment body */
.comments-body {
font-size: normal;
font-weight: normal;
line-height: 150%;
margin-right: 0.5em;
border-bottom: 1px solid #000;
}
/* postedtime for comment */
.comments-post {
font-size: x-small;
text-align:right;
margin: 0 0.2em 1em 0;
}
.trackback-body {
font-size: normal;
font-weight: normal;
line-height: 150%;
margin-left: 0em;
border-bottom: 1px solid #000;
}
.trackback-title {
font-size: small;
font-weight: normal;
line-height: 150%;
margin-right: 0.2em;
border-bottom: 1px dotted #000;
}
.trackback-url {
font-size: small;
font-weight: normal;
line-height: 150%;
padding: 0.5em;
border: 1px dotted #000;
}
.trackback-post {
font-size: x-small;
font-weight: normal;
}
.worning {
color: #A02;
font-size: small;
font-weight: normal;
}
#banner-commentspop {
color:#FFF;
font-size:large;
font-weight:bold;
border-left:1px solid #FFF;
border-right:1px solid #FFF;
border-top:1px solid #FFF;
background:#003366;
padding-left:15px;
padding-right:15px;
padding-top:5px;
padding-bottom:5px;
}
/* footer */
.footer {
background: #;
color: #;
font-size: x-small;
font-weight: normal;
text-align: right;
padding: 0.2em 1em 0.5em 0;
border-top: 2px solid #000;
}
/* -------------------- */
textarea {
font-family: 'Times New Roman', verdana, arial, sans-serif;
}
blockquote {
color: #014;
line-height: 110%;
margin: 0.5em 1.5em 0.5em 1.5em;
padding: 0.2em 0.5em;
border-left: 1px solid #014;
}
pre {
color: #014;
font-family: courier new,courier, sans-serif;
font-size: 9pt;
line-height: 110%;
margin: 0.4em 1em 0.1em 1em;
padding: 0;
border-left: 1px solid #014;
}
ul,ol {
color: #;
font-size: normal;
line-height: 120%;
margin: 0;
padding: 0 0 0 1.6em;
}
li {
line-height: 120%;
margin: 0;
padding: 0.3em 0 0 0;
}
.entry img {
padding: 2pt;
border-style: solid;
border-width: 1pt;
border-color: darkgray;
}
/* Style for sidebox */
#sidebox {
background: #;
margin-top: 15px;
margin-right: 10px;
text-align: center;
width: 250px;
}
.sideboxtitle {
color: #FFF;
background: #;
font-size: small;
font-weight: normal;
letter-spacing: 0.3em;
text-transform: uppercase;
text-align: left;
padding-left: 0.3em;
border-left: 1em solid #000;
}
.sidebody {
background:#;
font-size:small;
font-weight:normal;
line-height:140%;
text-align:left;
margin-bottom: 15px;
padding: 1em 0.1em 1em 1.5em;
}
.sidebody A{
text-decoration: none;
}
.calendar {
background:#;
font-family: georgia,arial,verdana,sans-serif;
font-size:small;
font-weight:normal;
line-height:140%;
text-align:center;
padding: 0.2em 0 0.2em 0;
margin-bottom: 15px;
}
/* -------------------- */
/* style for category name in category list*/
.category-banner {
background: #;
color: #FFF;
line-height: 110%;
font-weight: normal;
padding: 3px 3pt;
margin-bottom: 10px;
}
.category-banner dt {
font-size: x-large;
}
.category-banner dd {
font-size: medium;
margin: 0.5em 0 0 0;
padding-left: 1em;
border-top: 1px dotted #FFF;
}
Posted by yungyuc
at
22:42,
0 comment,
0 trackback.
Boromir é‚£å¥ "We have a Cave Troll." 被翻æˆã€Œé£Ÿäººå¦–進洞穴來了ã€ã€‚
我的媽呀。
Posted by yungyuc
at
21:56,
0 comment,
0 trackback.
今天æ‰ç™¼ç¾ï¼ŒåŽŸä¾† Zope å¯ä»¥è™•ç†ä¸æ–‡ ^^; [r1]
之å‰ä¸€ç›´ä»¥ç‚º Zope ä¸ç®¡æ˜¯ ZODBã€Structured Text 還是 ZCatalog,都還ä¸èƒ½æ£å¸¸åœ°è™•ç†ã€æœå°‹ä¸æ–‡å…§å®¹ï¼Œä½†å…¶å¯¦åœ¨ä½¿ç”¨ Unicode 的情æ³ä¸‹ï¼ŒCJK 的處ç†å·²ç¶“ç”± "zopechina":http://www.zopechina.com/ çš„ "CJKsplitter":http://zope.org/Members/panjunyong/CJKSplitter å’Œ "ZopeChinaPak":http://zope.org/Members/panjunyong/ZopeChinaPak 作好了。åªè¦å®‰è£é€™å…©å€‹ product å°±å¯ä»¥è®“ Structured Text å’Œ ZCatalog 處ç†ä¸æ–‡ (ZODB 的部分尚未測試)。
安è£çš„æ¥é©Ÿ (on Debian):
0 å–å¾— "CJKSplitter 0.6":http://zope.org/Members/panjunyong/CJKSplitter/CJKSplitter-0_6/cjksplitter-0_6.tgz å’Œ "ZopeChinaPak 0.4":http://zope.org/Members/panjunyong/ZopeChinaPak/zopechinapak-0_4/zopechinapak-0_4.tgz。
0 解開到 instance specific Product directory。
所用的指令是::
$ cd /var/lib/zope/instance/default/Products
$ ls
$ tar xvfz /path/to/cjksplitter-0_6.tgz
$ tar xvfz /path/to/zopechinapak-0_4.tgz
$ ls
CJKSplitter/ COREBlog/ ZopeChinaPak/ mxmCounter/
ä½ æ³¨æ„到我還安è£äº† "mxmCounter":http://www.mxm.dk/products/public/mxmCounter/ 這個 product ;) 它是一個網é è¨ˆæ•¸å™¨ï¼Œè »å¥½ç”¨çš„ã€‚ä½ å¯ä»¥åœ¨ "這裡":http://www.mxm.dk/products/public/mxmCounter/files/mxmCounter.1.1.0.tar.gz 下載 1.1.0 版。
0 ä¸éŽåŒ…è£è£¡æª”案的權é™å¯èƒ½æœ‰å•題,需è¦è‡ªå·±æ”¹ä¸€ä¸‹ã€‚
改法是::
$ cd /var/lib/zope/instance/default/Products
$ chmod -R 644 CJKSplitter ZopeChinaPak
$ find CJKSplitter ZopeChinaPak -type d -exec chmod 2755 {} \;
$ chown -R root.root CJKSplitter ZopeChinaPak
0 釿–°å•Ÿå‹• zope。
使用 Debian 套件安è£çš„話,這樣作::
$ /etc/init.d/zope restart
0 到這裡,Structured Text å°±å¯ä»¥ _æ£å¸¸åœ°_ 讓 **䏿–‡** 變化å„ç¨®æ ¼å¼äº†ã€‚
0 至於è¦è®“ "COREBlog":http://coreblog.org/ (1.0 release) èƒ½ä½œä¸æ–‡æœå°‹ï¼Œé‡é»žæ˜¯è®“ COREBlog é¸ç”¨é©ç•¶çš„ Splitter (也å¯ä»¥åƒè€ƒ COREBlog 0.6b çš„"說明":http://coreblog.org/howtos/search_howto_html,COREBlog å¾žé€™ä¸€ç‰ˆé–‹å§‹æ”¯æ´ ZCTextIndex):
- 建立 COREBlog instance çš„æ™‚å€™é€²è¡Œé¸æ“‡ã€‚
0 è¦å‹¾é¸ Create ZCTextIndex for serch。
0 Stop Words é¸ Don't remove stop words (這是é è¨å€¼)。
0 Word Splitter é¸ CJK Splitter。這應該是給 Unicode ç”¨çš„ï¼Œå¦‚æžœé¸ CJK BIG5 splitter çš„è©±ï¼Œåˆ†è¾¨å‡ºä¾†çš„å–®å—æœƒè®Šæˆäº‚碼。
0 OK
- 已經建好的 COREBlog instanceï¼Œè¦æŠŠ lexicon 刪除掉é‡å»ºã€‚
0 到已建好的 COREBlog çš„ Contents é é¢åŽ»ï¼ŒæŠŠå…¶ä¸‹çš„ "lexicon" 給殺了。
0 從å³ä¸Šè§’鏿“‡ ZCTextIndex Lexicon,Id åŒæ¨£å–為 "lexicon",而 "Case Normalizer", "Stop Words", "Word Splitter" å’Œä¸Šé¢æ–°å»º COREBlog æ™‚é¸æˆä¸€æ¨£å°±å¥½äº†ã€‚
0 回到 COREBlog instance 裡的 Entryï¼Œé¸æ“‡ç•«é¢ä¸‹é¢çš„ Recatalog,讓 lexicon å–得新的索引資料。
0 OK
0 最後,當然è¦è¨˜å¾—把 COREBlog instance 裡的 modules/index_html çš„ searchform 給打開。這樣就完æˆäº†ï¼Œä½ çš„ COREBlog ç¾åœ¨å¯ä»¥æœå°‹ä¸æ–‡ã€‚
至於 Plone çš„ä¸æ–‡æœå°‹ï¼Œä¼¼ä¹Žé‚„è¦æ”¹ portal_catalog çš„åž‹æ…‹ï¼Œç›®å‰æ²’時間弄。我的 Plone 都還åœåœ¨ 1.0.5,以後å†è©¦è©¦é€™å€‹éƒ¨åˆ†ã€‚
.. [r1] "TZUG related discussion":http://www.zope.org.tw/Forum/Tech/Zope/946686512285
.. [r2] Structured Text 的說明文å—,"Help on Structured Text":http://www.zope.org/Members/millejoh/structuredText
Posted by yungyuc
at
21:40,
0 comment,
0 trackback.