在台灣時,我不會煮菜。
我連蛋都不會煎。
來日本後,為了簡省開支。
只好自己做菜。
我沒有食譜。
我完全是Try and Error。
亂煮就對了。
但好不好吃呢?
聽聽以下民眾的意見:
C桑:あの~まぁ〜えと〜
再聽聽別人的意見:
H桑:有夠難吃,有夠辣,味道好重。
聽聽最後一個人的意見:
W桑:吃了之後五分鐘,害我拉肚子了。
哇咧~以後你們都吃不到了。
W桑拉肚子,應該是之前吃的東西就有問題吧-_-
哪有可能吃了五分鐘後馬上拉肚子的啦。
那要做出好菜,第一步是什麼呢?
乾淨而且整齊的廚房是最重要的。
東西做的再好吃,當請別人到你家吃飯時,
看到的是又油又髒的廚房,
我想,再好吃的料理,應該都食不下嚥吧。
Saturday, May 30, 2009
[Mood] Hack魂,黑黑黑~
從研究所畢業後,就再也沒玩hack了。
雖然畢業後,也有去面試搞security的公司。
但後來也沒有去。
但最近突然又好想玩hack。
這是我以前玩hack時,最常去的一個網站
http://www.packetstormsecurity.org/
以前,只要上去那網站,點進top 100 tools。
把幾個程式抓回來,看一看,改一改。
就可以搞到好幾台server了。
但最近再去看,想要hack,似乎困難很多。
但最基本的一招-密碼字典檔。
永遠都很好用。
其實以前在hack時,也沒那麼重技術。
很多時候,都是碰運氣。
最重要的就是等對方的疏失。
例如:coding時有bug,中木馬,偷懶沒上patch,密碼沒設好。
當初會Hack到台灣的“仙境傳說 online“時,就是他們工程師偷懶。
在灌Windows 2000 AD Server時,灌到一半,就回家或睡覺去了。
正好當天晚上,被掃中,馬上黑進去,把密碼dump回家。
Administrator的密碼算出來後,發現密碼rule跟IP有關係。
每台server又都有裝Remote Desktop,3389的port也沒換掉。
於是,每台都中,一台一台黑進去,連sql server一起都黑掉。
黑完台灣的RO後,再試試日本跟韓國的RO。
日本的工程師,真的比較用心,同樣的方式沒有用。
韓國的工程師,一樣偷懶,patch沒上,就去休息了。
同樣的方式,把韓國的RO一起做掉。
但韓國RO的密碼設的比較嚴謹,但管理者,一樣偷懶。
把密碼用EXCEL來記錄,不過寫的是韓文。
於是我就找了韓國鍵盤的圖,發現韓文輸入法是用拆字的方式,
跟倉頡或無蝦米輸入法有點雷同。
於是就照著EXCEL檔裏面的韓文,用韓文輸入法,KEY出英文字。
把那堆英文字,拿來試看看RO的frontend跟sql server
結果又全中,哈~一台一台黑掉吧。
這已經是六年多前的事了。
現在應該沒這麼好康,這麼簡單的事了。
以前Hack都是為了要惡搞。
例如:
Hack到政大女生宿舍裏的電腦,
嗯,連進去看看有沒有什麼秘密。
發現Pictures的目錄有東西。
檔名寫著“四大美女.jpg“。
馬上下載回家看看。
嘖~這~,太恐佈了。
馬上“ren 四大美女.jpg 四大恐龍.jpg“
隔天,這台電腦就連不進去了,連ping都ping不到:(
Hack過的機器90%都是管理者疏失所造成的。
這些機器中90%是用密碼字典檔的方式猜中的。
所以密碼別亂設,別太簡單,用心一點吧。
另外RD在coding時,盯緊一點比較好。
薪水最好是給多一點:)
常常聽到的話如下:才拿那點錢,寫那麼多,寫那麼好幹嘛。
老實說,當自己在coding時,寫到不爽時,我也是這樣子想。
用PPPOE撥接上網的,密碼又很偷懶的。
還是別偷懶比較好唷!
密碼其實不難猜,利用些蛛絲馬跡,配合字典檔就可以猜到。
蛛絲馬跡也不難找,用google,有時候可以查到很多。
其實,一般hacker對於市井小民的電腦,其實是沒興趣的。
hack online game的server,弄個幾張神卡。
拿去賣的話,隨便都可以賺很多小朋友。
hack這種機器比較有挑戰性,也比較實用。
除非做人太超過,樹敵太多,惹到人。
不然一般家用的電腦,是不太會被hacker盯上的。
沒錯,我這是寫給某人看的。
雖然畢業後,也有去面試搞security的公司。
但後來也沒有去。
但最近突然又好想玩hack。
這是我以前玩hack時,最常去的一個網站
http://www.packetstormsecurity.org/
以前,只要上去那網站,點進top 100 tools。
把幾個程式抓回來,看一看,改一改。
就可以搞到好幾台server了。
但最近再去看,想要hack,似乎困難很多。
但最基本的一招-密碼字典檔。
永遠都很好用。
其實以前在hack時,也沒那麼重技術。
很多時候,都是碰運氣。
最重要的就是等對方的疏失。
例如:coding時有bug,中木馬,偷懶沒上patch,密碼沒設好。
當初會Hack到台灣的“仙境傳說 online“時,就是他們工程師偷懶。
在灌Windows 2000 AD Server時,灌到一半,就回家或睡覺去了。
正好當天晚上,被掃中,馬上黑進去,把密碼dump回家。
Administrator的密碼算出來後,發現密碼rule跟IP有關係。
每台server又都有裝Remote Desktop,3389的port也沒換掉。
於是,每台都中,一台一台黑進去,連sql server一起都黑掉。
黑完台灣的RO後,再試試日本跟韓國的RO。
日本的工程師,真的比較用心,同樣的方式沒有用。
韓國的工程師,一樣偷懶,patch沒上,就去休息了。
同樣的方式,把韓國的RO一起做掉。
但韓國RO的密碼設的比較嚴謹,但管理者,一樣偷懶。
把密碼用EXCEL來記錄,不過寫的是韓文。
於是我就找了韓國鍵盤的圖,發現韓文輸入法是用拆字的方式,
跟倉頡或無蝦米輸入法有點雷同。
於是就照著EXCEL檔裏面的韓文,用韓文輸入法,KEY出英文字。
把那堆英文字,拿來試看看RO的frontend跟sql server
結果又全中,哈~一台一台黑掉吧。
這已經是六年多前的事了。
現在應該沒這麼好康,這麼簡單的事了。
以前Hack都是為了要惡搞。
例如:
Hack到政大女生宿舍裏的電腦,
嗯,連進去看看有沒有什麼秘密。
發現Pictures的目錄有東西。
檔名寫著“四大美女.jpg“。
馬上下載回家看看。
嘖~這~,太恐佈了。
馬上“ren 四大美女.jpg 四大恐龍.jpg“
隔天,這台電腦就連不進去了,連ping都ping不到:(
Hack過的機器90%都是管理者疏失所造成的。
這些機器中90%是用密碼字典檔的方式猜中的。
所以密碼別亂設,別太簡單,用心一點吧。
另外RD在coding時,盯緊一點比較好。
薪水最好是給多一點:)
常常聽到的話如下:才拿那點錢,寫那麼多,寫那麼好幹嘛。
老實說,當自己在coding時,寫到不爽時,我也是這樣子想。
用PPPOE撥接上網的,密碼又很偷懶的。
還是別偷懶比較好唷!
密碼其實不難猜,利用些蛛絲馬跡,配合字典檔就可以猜到。
蛛絲馬跡也不難找,用google,有時候可以查到很多。
其實,一般hacker對於市井小民的電腦,其實是沒興趣的。
hack online game的server,弄個幾張神卡。
拿去賣的話,隨便都可以賺很多小朋友。
hack這種機器比較有挑戰性,也比較實用。
除非做人太超過,樹敵太多,惹到人。
不然一般家用的電腦,是不太會被hacker盯上的。
沒錯,我這是寫給某人看的。
[Mood] 拭去
天氣陰陰的,哪邊也不想去。
打從Senso回去後,
就沒再擦過房間的地板。
也沒洗過床單,被單,枕頭套。
廁所也是一個多月沒洗了。
(平時,我最少兩星期會清掃一次)
今天就在家好好清掃一翻吧。
把家裏所有的角落,全部擦過一遍。
把廁所的所有東西,全部刷過一遍。
把所有她用過的東西,全部洗過一遍。
她的髮絲,她的氣味,她的一切。
一切的一切,全部拭去。
清掃完後,再洗個澡。
真是舒服暢快啊。
打從Senso回去後,
就沒再擦過房間的地板。
也沒洗過床單,被單,枕頭套。
廁所也是一個多月沒洗了。
(平時,我最少兩星期會清掃一次)
今天就在家好好清掃一翻吧。
把家裏所有的角落,全部擦過一遍。
把廁所的所有東西,全部刷過一遍。
把所有她用過的東西,全部洗過一遍。
她的髮絲,她的氣味,她的一切。
一切的一切,全部拭去。
清掃完後,再洗個澡。
真是舒服暢快啊。
Thursday, May 28, 2009
[JP Life] 關於代買
自從來日本之後,接到超多代買的需求。
我從來沒有多收一毛錢。
我全部是好朋友間義務幫忙。
但所有人好像都當成是理所當然。
又不是我家人,我沒有必要理所當然地幫忙代買。
我的RULE很簡單。
我一定說:OK我幫你買。
條件如下:
1. 100%會買:
給我店名,住址,型號,我有空時就會過去買。
我不是專門代買,我也要上課,也有工作,只能有空時幫忙。
2. 50%會買:
只給我型號跟圖片的話,心血來潮時,才會去買。
因為要花不少時間找東西。
所以是看交情,看心情,才決定要不要去買。
3. 1%會買:
沒給型號(例如:我要買XX色,價格XXXXX左右的XXX皮夾。),全部口頭描述。
這種就是看交情了。
付款方式:
1. 我先墊,我回台灣時收帳。
這方式,我不採用了,這讓我生活很困苦。
2. 我刷台灣信用卡,轉帳給我台幣。
這方式,我也不用了。
因為所有人,真的是所有人。
給錢時,都是一拖再拖。
我不是慈善事業。
卡費也是有繳款期限的。
3. 用海外轉帳,給我日幣。
我收到錢後,我就會去買東西。
記得,多匯4500日幣,這是海外轉帳,日本銀行收的手續費。
記得,多匯車資,日本坐電車,來回是260日幣起跳。
大部份車資是500日幣以內。
如果要到東京都外的outlet買的話,那最少是2000日幣起跳。
如果東西很重,又要用寄的方式運回台灣,也請事先支付運費。
送貨:
1. 如果正好我要回台灣,我就免費幫忙帶回台灣。
但自行取貨,我家在彰化。
要約台北也OK,車資另計。
2. 我幫忙打包寄回台灣。
東西不重的話,我可以代墊,收到貨後,再依當時匯率轉台幣給我。
東西重的話,自己先查好多少公斤。事先匯日幣到我日本的帳戶。
EMS的話,5KG應該是5000日幣有找。
殺價,或是需要配合特殊方案的購買:
需要配合特殊方案才能買的話,我不幫忙。
例如:買notebook買手機等等,
在日本很多NOTEBOOK是0元,但需要配合申辦網路。
這種的,我不會幫忙代買。
天下沒那麼好康的事0元手機0元NOTEBOOK,羊毛還是出在羊身上的。
殺價的話,我可以幫忙,但不保証成功。
日本殺價成功機率0.1%以下。
如果我殺價成功,折扣的費用,當成是請我喝飲料吧。
所以,還是一樣,付我原價。
我都是義務幫忙,我一毛錢都沒有拿。
我連好人卡都沒有收到。
醜話先講明。
以後就照這RULE來代買。
我從來沒有多收一毛錢。
我全部是好朋友間義務幫忙。
但所有人好像都當成是理所當然。
又不是我家人,我沒有必要理所當然地幫忙代買。
我的RULE很簡單。
我一定說:OK我幫你買。
條件如下:
1. 100%會買:
給我店名,住址,型號,我有空時就會過去買。
我不是專門代買,我也要上課,也有工作,只能有空時幫忙。
2. 50%會買:
只給我型號跟圖片的話,心血來潮時,才會去買。
因為要花不少時間找東西。
所以是看交情,看心情,才決定要不要去買。
3. 1%會買:
沒給型號(例如:我要買XX色,價格XXXXX左右的XXX皮夾。),全部口頭描述。
這種就是看交情了。
付款方式:
1. 我先墊,我回台灣時收帳。
這方式,我不採用了,這讓我生活很困苦。
2. 我刷台灣信用卡,轉帳給我台幣。
這方式,我也不用了。
因為所有人,真的是所有人。
給錢時,都是一拖再拖。
我不是慈善事業。
卡費也是有繳款期限的。
3. 用海外轉帳,給我日幣。
我收到錢後,我就會去買東西。
記得,多匯4500日幣,這是海外轉帳,日本銀行收的手續費。
記得,多匯車資,日本坐電車,來回是260日幣起跳。
大部份車資是500日幣以內。
如果要到東京都外的outlet買的話,那最少是2000日幣起跳。
如果東西很重,又要用寄的方式運回台灣,也請事先支付運費。
送貨:
1. 如果正好我要回台灣,我就免費幫忙帶回台灣。
但自行取貨,我家在彰化。
要約台北也OK,車資另計。
2. 我幫忙打包寄回台灣。
東西不重的話,我可以代墊,收到貨後,再依當時匯率轉台幣給我。
東西重的話,自己先查好多少公斤。事先匯日幣到我日本的帳戶。
EMS的話,5KG應該是5000日幣有找。
殺價,或是需要配合特殊方案的購買:
需要配合特殊方案才能買的話,我不幫忙。
例如:買notebook買手機等等,
在日本很多NOTEBOOK是0元,但需要配合申辦網路。
這種的,我不會幫忙代買。
天下沒那麼好康的事0元手機0元NOTEBOOK,羊毛還是出在羊身上的。
殺價的話,我可以幫忙,但不保証成功。
日本殺價成功機率0.1%以下。
如果我殺價成功,折扣的費用,當成是請我喝飲料吧。
所以,還是一樣,付我原價。
我都是義務幫忙,我一毛錢都沒有拿。
我連好人卡都沒有收到。
醜話先講明。
以後就照這RULE來代買。
Wednesday, May 27, 2009
[Mood] 和解
我知道你每天都會來看我的BLOG。
我知道你看不懂中文。(但說不定你已經看的懂中文了。)
但我知道你家人看的懂中文。
我還是用中文表達會比較正確。
你的MAIL我收到了。
只是一直都不想回信。
我知道之前你很生氣。
現在還會不會氣,我不知道。
但你有想過為什麼我要那麼做嗎?
你家很有錢。
我家境不是很好。
但,我是你朋友,我不是你家的僕人。
頤指頤使,朝令夕改。
真的很難適從。
台灣的工作環境,跟美國是完全不同的。
並不是想請假就能請假的。
也許我不夠朋友,也許我也有錯。
也許當時年輕不懂事。
對於我的過錯,也跟你說聲對不起。
我選擇原諒。
我選擇互不相欠。
也許這是上輩子欠的債。
希望就此完結。
如果是這輩子才結的怨。
我會選擇消彌,往後互不相欠。
我知道你看不懂中文。(但說不定你已經看的懂中文了。)
但我知道你家人看的懂中文。
我還是用中文表達會比較正確。
你的MAIL我收到了。
只是一直都不想回信。
我知道之前你很生氣。
現在還會不會氣,我不知道。
但你有想過為什麼我要那麼做嗎?
你家很有錢。
我家境不是很好。
但,我是你朋友,我不是你家的僕人。
頤指頤使,朝令夕改。
真的很難適從。
台灣的工作環境,跟美國是完全不同的。
並不是想請假就能請假的。
也許我不夠朋友,也許我也有錯。
也許當時年輕不懂事。
對於我的過錯,也跟你說聲對不起。
我選擇原諒。
我選擇互不相欠。
也許這是上輩子欠的債。
希望就此完結。
如果是這輩子才結的怨。
我會選擇消彌,往後互不相欠。
Friday, May 22, 2009
[JP Life] 色々な御守 Part 1
在日本,我喜歡到神社或是寺廟拍照。
拍完照後,我喜歡買御守當紀念。
但我只喜歡有特色的御守。
其中最喜歡的是緣結守。

這是明治神宮的必勝御守。
一個是我妹買的,她看了我買了一堆御守後,
她說,只要有一個就夠了。
於是她送了我明治神宮的必勝御守。
去過很多神社,寺廟,好像都沒有這種必勝御守。
目前只看到明治神宮有。

這是箱根神社的學業成就御守。
那神社的御守都沒什麼特色。
但當時為了想要考上好學校,所以就買了這個學業成就御守。
希望可以順利的考上心中理想的學校。
似乎有點用,有順利考上不錯的學校。

明治神宮的緣結守。
算是很普通的緣結守。
兩個一起賣,800日幣,算是很便宜。
純粹收藏用。

中野東照宮的幸福御守。
2月是梅花。
3月是不知道什麼花。
4月是櫻花。
9月是不知道什麼花。

高尾山藥王院的愛御守。
這真的可以叫做戀愛御守。
走過這麼多神社,寺廟,目前這是唯一的愛御守。

鶴岡八幡宮的緣結守。
一般的緣結守都是分開來。
只有這邊的是連在一起。
很有特色,所以就入手一個。

高尾山某寺院的緣結守。
忘了在哪買的了。
但真的有特色。
買了之後,要把五円拿出來,綁在神社旁的某個地方。
五円就是“御緣“的意思。
但為了收藏,所以沒有把五円拿出來綁。

日光東照宮的緣結守。
算是樣子比較特殊的緣結守。

宇治神社的緣結守。
我最喜歡的一對緣結守。
超卡哇依的。
2008年3月到京都旅行時,在宇治神社入手的。
另外還有很多緣結守。但都放在台灣家中。
等下次回家,再補拍,再寫個Part 2囉。
拍完照後,我喜歡買御守當紀念。
但我只喜歡有特色的御守。
其中最喜歡的是緣結守。

這是明治神宮的必勝御守。
一個是我妹買的,她看了我買了一堆御守後,
她說,只要有一個就夠了。
於是她送了我明治神宮的必勝御守。
去過很多神社,寺廟,好像都沒有這種必勝御守。
目前只看到明治神宮有。

這是箱根神社的學業成就御守。
那神社的御守都沒什麼特色。
但當時為了想要考上好學校,所以就買了這個學業成就御守。
希望可以順利的考上心中理想的學校。
似乎有點用,有順利考上不錯的學校。

明治神宮的緣結守。
算是很普通的緣結守。
兩個一起賣,800日幣,算是很便宜。
純粹收藏用。

中野東照宮的幸福御守。
2月是梅花。
3月是不知道什麼花。
4月是櫻花。
9月是不知道什麼花。

高尾山藥王院的愛御守。
這真的可以叫做戀愛御守。
走過這麼多神社,寺廟,目前這是唯一的愛御守。

鶴岡八幡宮的緣結守。
一般的緣結守都是分開來。
只有這邊的是連在一起。
很有特色,所以就入手一個。

高尾山某寺院的緣結守。
忘了在哪買的了。
但真的有特色。
買了之後,要把五円拿出來,綁在神社旁的某個地方。
五円就是“御緣“的意思。
但為了收藏,所以沒有把五円拿出來綁。

日光東照宮的緣結守。
算是樣子比較特殊的緣結守。

宇治神社的緣結守。
我最喜歡的一對緣結守。
超卡哇依的。
2008年3月到京都旅行時,在宇治神社入手的。
另外還有很多緣結守。但都放在台灣家中。
等下次回家,再補拍,再寫個Part 2囉。
Wednesday, May 20, 2009
[Linux] Solr 1.3.0 + Tomcat 6.0.18
1. Download Solr-1.3.0
http://owahab.com/content/installing-and-configuring-solr-debian-gnulinux
Download the latest stable release from this link:2. Download Tomcat
http://www.apache.org/dyn/closer.cgi/lucene/solr/
wget http://www.meisei-u.ac.jp/mirror/apache/dist/lucene/solr/1.3.0/apache-solr-1.3.0.tgz
cd ~3. Unpack Tomcat
wget http://archive.apache.org/dist/tomcat/tomcat-6/v6.0.18/bin/apache-tomcat-6.0.18.tar.gz
tar xvfz apache-tomcat-6.0.18.tar.gz4. Edit Server.xml.
mv ./apache-tomcat-6.0.18 /home/search/tomcat
cd /home/search/tomcatModify the server.xml as following.
vi conf/server.xml
5. Setup the environment variables for solr.<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" URIEncoding="UTF-8"
useBodyEncodingForURI="true" />
echo "export CATALINA_BASE=/home/search/tomcat" >> ~/.bashrc6. Unpack Solr
echo "export CATALINA_HOME=/home/search/tomcat" >> ~/.bashrc
echo "export JAVA_HOME=/usr/lib/jvm/java-6-sun/jre" >> ~/.bashrc
echo "export PATH=${JAVA_HOME}/bin:${PATH}" >> ~/.bashrc
source ~/.bashrc
tar xvfz apache-solr-1.3.0.tgz7. Setup Solr
8. Startup tomcatcp apache-solr-1.3.0/dist/apache-solr-1.3.0.war /home/search/tomcat/webapps/solr.war
cp -r apache-solr-1.3.0/example/solr /home/search/solr
echo "export JAVA_OPTS="$JAVA_OPTS -Dsolr.solr.home=/home/search/solr" >> ~/.bashrc
cd /home/search
/home/search/tomcat/bin/startup.sh
9. Test Solrhttp://localhost:8080/solr/adminReference:
http://owahab.com/content/installing-and-configuring-solr-debian-gnulinux
Tuesday, May 19, 2009
[Linux] Nutch + Hadoop + Tomcat
1. Add a user and create working directories for Nutch and Hadoop.
2. Download the latest stable release of Nutch.
Download the latest stable release from here:
http://lucene.apache.org/nutch/release/
for Example:
Modify as following.
Reference:
Nutch 安裝使用
http://wiki.apache.org/nutch/NutchHadoopTutorial
http://wiki.apache.org/nutch/NutchTutorial
sudo useradd -d /home/nutch nutchlogin as nutch.
sudo mkdir /home/search
sudo chown -R nutch:nutch /home/search
2. Download the latest stable release of Nutch.
Download the latest stable release from here:
http://lucene.apache.org/nutch/release/
for Example:
wget http://www.meisei-u.ac.jp/mirror/apache/dist/lucene/nutch/nutch-1.0.tar.gz3. Unpack the latest stable release of Nutch.
tar xvfz nutch-1.0.tar.gz4. Edit the nutch-site.xml
mv nutch-1.0 /home/search/nutch
cd /home/search/nutch
vi conf/nutch-site.xmlThe contents are as follow:
5. Edit the crawl-urlfilter.txt<configuration>
<property>
<name>http.agent.name</name>
<value>nutch</value>
<description>HTTP 'User-Agent' request header. </description>
</property>
<property>
<name>http.agent.description</name>
<value>Nutch_Test</value>
<description>Further description</description>
</property>
<property>
<name>http.agent.url</name>
<value>localhost</value>
<description>A URL to advertise in the User-Agent header. </description>
</property>
<property>
<name>http.agent.email</name>
<value>test@test.org.tw</value>
<description>An email address
</description>
</property>
<property>
<name>http.robots.agents</name>
<value>nutch</value>
<description>The agent strings we'll look for in robots.txt files,
comma-separated, in decreasing order of precedence. You should
put the value of http.agent.name as the first agent name, and keep the
default * at the end of the list. E.g.: BlurflDev,Blurfl,*
</description>
</property>
<property>
<name>plugin.folders</name>
<value>/home/search/nutch/plugins</value>
<description>Directories where nutch plugins are located. </description>
</property>
<property>
<name>plugin.includes</name>
<value>protocol-(http|httpclient)|urlfilter-regex|parse-(text|html|js|ext|msexcel|mspowerpoint|msword|oo|pdf|rss|swf|zip)|index-(more|basic|anchor)|query-(more|basic|site|url)|response-(json|xml)|summary-basic|scoring-opic|urlnormalizer-(pass|regex|basic)</value>
<description> Regular expression naming plugin directory names</description>
</property>
<property>
<name>parse.plugin.file</name>
<value>parse-plugins.xml</value>
<description>The name of the file that defines the associations between
content-types and parsers.</description>
</property>
<property>
<name>db.max.outlinks.per.page</name>
<value>-1</value>
<description> </description>
</property>
<property>
<name>http.content.limit</name>
<value>-1</value>
</property>
<property>
<name>indexer.mergeFactor</name>
<value>500</value>
<description>The factor that determines the frequency of Lucene segment
merges. This must not be less than 2, higher values increase indexing
speed but lead to increased RAM usage, and increase the number of
open file handles (which may lead to "Too many open files" errors).
NOTE: the "segments" here have nothing to do with Nutch segments, they
are a low-level data unit used by Lucene.
</description>
</property>
<property>
<name>indexer.minMergeDocs</name>
<value>500</value>
<description>This number determines the minimum number of Lucene
Documents buffered in memory between Lucene segment merges. Larger
values increase indexing speed and increase RAM usage.
</description>
</property>
</configuration>
vi conf/crawl-urlfilter.txtThe contents are as follow.
# skip ftp:, & mailto: urls6. Create a directory with a flat file of root urls.
-^(ftp|mailto):
# skip image and other suffixes we can't yet parse
-\.(gif|GIF|jpg|JPG|png|PNG|ico|ICO|css|sit|eps|wmf|mpg|xls|gz|rpm|tgz|mov|MOV|exe|jpeg|JPEG|bmp|BMP)$
# skip URLs containing certain characters as probable queries, etc.
-[*!@]
# accept anything else
+.*
mkdir urls7. Edit hadoop-env.sh
echo "http://www.waseda.ac.jp" >> urls/urls.txt
vi conf/hadoop-env.shAttach the following to the hadoop-env.sh.
export JAVA_HOME=/usr/lib/jvm/java-6-sun8. Export the environment variables.
export HADOOP_HOME=/home/search/nutch
export HADOOP_CONF_DIR=/home/search/nutch/conf
export HADOOP_SLAVES=$HADOOP_CONF_DIR/slaves
export HADOOP_LOG_DIR=/tmp/hadoop/logs
export HADOOP_PID_DIR=/tmp/hadoop/pid
export NUTCH_HOME=/home/search/nutch
export NUTCH_CONF_DIR=/home/search/nutch/conf
source conf/hadoop-env.sh9. Edit the hadoop-site.xml
vi conf/hadoop-site.xmlThe contents are as follow.
10. Startup Hadoop<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://localhost:9000/</value>
<description> </description>
</property>
<property>
<name>mapred.job.tracker</name>
<value>localhost:9001</value>
<description> </description>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/tmp/hadoop/hadoop-${user.name}</value>
<description> </description>
</property>
</configuration>
bin/hadoop namenode -format11. Test the hadoop
bin/start-all.sh
Hadoop Map/Reduce Administration Page12. Add the urls directory to the hadoop filesystem.
bin/hadoop dfs -put urls urls13. Start to Crawl.
bin/nutch crawl urls -dir crawl -depth 3 -topN 10014. Download Tomcat
cd ~15. Unpack Tomcat
wget http://archive.apache.org/dist/tomcat/tomcat-6/v6.0.18/bin/apache-tomcat-6.0.18.tar.gz
tar xvfz apache-tomcat-6.0.18.tar.gz16. Edit Server.xml.
mv ./apache-tomcat-6.0.18 /home/search/tomcat
cd /home/search/tomcatModify the server.xml as following.
vi conf/server.xml
17. Change Nutch search page as tomcat's root page.<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" URIEncoding="UTF-8"
useBodyEncodingForURI="true" />
cd /home/search/nutch18. Edit nutch-site.xml in tomcat.
mkdir web
cd web
jar -xvf ../nutch-1.0.war
mv /home/search/tomcat/webapps/ROOT /home/search/tomcat/webapps/ROOT.org
mv /home/search/nutch/web /home/search/tomecat/webapps/ROOT
cd /home/search/tomcat
vi webapps/ROOT/WEB-INF/classes/nutch-site.xml
Modify as following.
19. Download the crawled result to local.<configuration>
<property>
<name>searcher.dir</name>
<value>/home/search/crawl</value>
</property>
</configuration>
cd /home/search/nutch20. Start tomcat
bin/hadoop dfs -get crawl /home/search/crawl
/home/search/tomcat/bin/startup.sh21. Search in the crawled index
http://localhost:8080
Reference:
Nutch 安裝使用
http://wiki.apache.org/nutch/NutchHadoopTutorial
http://wiki.apache.org/nutch/NutchTutorial
Monday, May 18, 2009
[Y! Life] Photo Story EP:7 第一次去墾丁的春天吶喊
Sunday, May 17, 2009
[Y! Life] Photo Story EP:6 第一次參加Y!社外拍
Subscribe to:
Posts (Atom)