2009年11月27日 星期五

ubuntu、apt、awstats...

今天在機器上面安裝awstats...
弄到一整個很...
透過apt-get安裝的awstats是舊版這也就算了...
畢竟reposity收的不會都是最新的軟體,大多以stable release為主...
但是安裝之後問題一大堆...

awstats是用perl寫的script application...
一堆路徑直接寫死在裡面...
安裝之後要run就給你一堆錯誤...
好不容易修了半天可以動了...
照著網路上看來都一樣的教學去操作(懶的看document)...
結果就是碰到一堆路徑不一樣的問題...

例如下awstats_configure要產生conf檔...
結果缺少awstats.model.conf...
檔案在/usr/share/doc/awstats/examples/awstats.model.conf.gz
而且還壓縮?!

或是文章提到的安裝路徑應該在/usr/local/awstats/
結果在/usr/share/awstats/
主程式應該在/usr/local/awstats/wwwroot/cgi-bin/awstats.pl
結果在/usr/lib/cgi-bin/底下,還是在/usr/lib/底下我也忘了...

整個的安裝過程就一直在updatedb、locate、移動到正確的位置或是改設定中度過...
建議如果要在ubuntu安裝awstats...
不要透過apt去安裝...
直接上官網撈新的來用...
最起碼不會有路徑錯亂的問題...

弄到整個花掉= =

2009年11月26日 星期四

退伍了...升級成死老百姓!

上禮拜五就拿了退伍令回家了...
不過退伍令是禮拜天晚上才生效...
臨走前學姐又特別交代...
在辦理好歸鄉手續之前...
你還是"現役軍人"身分...
所以就選擇安分點...

直到今天...
出門去換幫采薇買的記憶體...
(不知道是跟威剛犯沖還是買到地雷,買回來的第一條超級不穩定,
換了之後才稍微穩定一些...)
然後去監理站辦理遺失駕照補發...
(拖了兩個月的駕照更換...要弄才發現我駕照不見了...
又親自跑一趟監理站弄...幸好承辦的小姐是個正妹...
動作也蠻快的...幾分鐘就搞定拿到新的駕照了:D...大推!)
接著從北屯在殺回去大雅鄉公所辦理歸鄉手續...
簡單的手續之後...

幹!林北現在是死老百姓了...
死老百姓最大...
在大直的時候整天因為吃飽太閒的副參(星)下來晃...搞的軍不聊生怨天載道...
後來到退伍前又開會又發電話紀錄...
副參(星)每個月抽兩個單位督導裝備校閱、環境校閱、服裝校閱實施成效...
參(星or星星)也下來偶爾來突擊檢查...
老闆(星星星)放話...放了啥話也忘的差不多了...
之前還有總長(星星星星)巡視抓到出包的紀錄...
現在...我是死老百姓(星x∞)...
我可以指著國防部長跟總統的臉破口大罵...
你們是幹什麼吃的?吃飽太閒還是腦袋長穠生痔瘡?
整天搞這些有的沒的你們腦袋都是裝大便是吧?



好不容易退伍了...
要走之前還一直被玩...Orz
某官(誰說你可以走的,退伍令什麼時候生效?那就什麼時候才准走)
某士(假單不想簽了是吧?那就留到禮拜天吧~)

退伍的當下幹了件蠢事...
背著海軍的忠義袋把行李都帶回家...
手上還提著一小袋東西...
原本可以搭交通車的...
不過因為之前送學長離開的時候...
拿著退伍令過哨口,衛兵看到退伍令,笑笑的跟你說「學長,恭喜退伍...」
那種感動實在是無可比擬...
所以我也決定這樣做...不搭交通車用走的走出哨口...

拿著退伍令單手背著忠義袋(設計的帶子太短背不上去)準備走出哨口...
衛兵看著那張紙看了很久「這誰的退伍令?」「我的阿~」「喔~」
把退伍令還我,手一擺示意我可以出去了...
(嗄...就這樣喔= =)
然後就背著行李走到外面等公車...
下班下課時段...公車上很多人...我開始覺得我幹了件蠢事....
到圓山捷運站轉捷運到台北車站...捷運上人真是多到靠北...
到了台北車站開始像走迷宮一樣努力走到交九轉運站...
抽號碼牌等車...
我真的覺得這件事很蠢= =

回到家這幾天沒有太多退伍的感覺...
有一堆預定的事情要做...

奉獻了11個月的時間跟自由...
換到一張退伍令、一張績優獎狀、一張AB卡、
還有隊上送的一個被嫌棄到不行的贈品= =

(98)海潛退 字第1262號...
這一切都像夢一樣...


海軍艦艇兵 634T...
登出國軍Online...
我終於退伍了...

2009年11月23日 星期一

用Ansi C寫一個很蠢的影像壓縮程式...

在PTT的某板上看到有人發了關於影像壓縮的求救文,
基於好心所以推文給點建議,
然後就丟水球來啦~
原來是作業,啥都不要求,
只要求影像壓縮= =,壓縮大小為原先的一半...

因為無聊所以隨便寫了一個給他...
因為懶...所以直接在機器上面寫...
所以先找了個人家寫好的來改...
(原創) 如何使用Standard Library作影像處理? (C/C++) (Image Processing)
大陸那邊的東西,天知道到底是誰原創...
因為愛...所以就不拉library來用...
(實際上是嫌GD跟eazybmp太複雜...我只要讀檔案跟寫檔案而已)

就撈了人家的code過來,拿現成的來改...
讀取跟寫入Bitmap的Header的函式已經寫好了...
只是隔天就在C_and_CPP板上看到有人說這個寫法很爛還被抄來抄去...
完全不考慮Endianness的土炮寫法,
管他媽媽嫁給誰,能用就先不管了,反正不是我的作業...XDDDD

用了一個很爛的作法,
把每個byte的低4位元拿掉,然後把2個bytes合成1個byte,
這樣可以節省一半的空間,但是圖片還原不至於差的太多。
其實這是之前上課提到一個很無聊的東西,一張圖A隱藏在另一張圖B當中,
平常看是圖B,但是當圖片反白的時候看起來就是圖A了...
原理是差不多的XDDDD

寫了兩個Function...

int enc(unsigned char *ori, unsigned char *tar, int xsize, int ysize) {
int x;
int y;

for(y = 0; y != ysize; ++y) {
for(x = 0; x != xsize; ++x) {
if (x % 2 == 0){
*(tar + 3 * (y * xsize + (int)(x/2)) + 2) = *(ori + 3 * (y * xsize + x) + 2) & 240;
*(tar + 3 * (y * xsize + (int)(x/2)) + 1) = *(ori + 3 * (y * xsize + x) + 1) & 240;
*(tar + 3 * (y * xsize + (int)(x/2)) + 0) = *(ori + 3 * (y * xsize + x) + 0) & 240;
}
else{
*(tar + 3 * (y * xsize + (int)(x/2)) + 2) = *(tar + 3 * (y * xsize + (x/2)) + 2) | (*(ori + 3 * (y * xsize + x) + 2) & 240) >> 4;
*(tar + 3 * (y * xsize + (int)(x/2)) + 1) = *(tar + 3 * (y * xsize + (x/2)) + 1) | (*(ori + 3 * (y * xsize + x) + 1) & 240) >> 4;
*(tar + 3 * (y * xsize + (int)(x/2)) + 0) = *(tar + 3 * (y * xsize + (x/2)) + 0) | (*(ori + 3 * (y * xsize + x) + 0) & 240) >> 4;
}
}
}

return 0;
}



int dec(unsigned char *ori, unsigned char *tar, int xsize, int ysize) {
int x;
int y;

for(y = 0; y != ysize; ++y) {
for(x = 0; x != xsize; ++x) {
if (x % 2 == 0){
*(tar + 3 * (y * xsize + x) + 2) = *(ori + 3 * (y * xsize + (int)(x/2)) + 2) & 240;
*(tar + 3 * (y * xsize + x) + 1) = *(ori + 3 * (y * xsize + (int)(x/2)) + 1) & 240;
*(tar + 3 * (y * xsize + x) + 0) = *(ori + 3 * (y * xsize + (int)(x/2)) + 0) & 240;
}
else{
*(tar + 3 * (y * xsize + x) + 2) = (*(ori + 3 * (y * xsize + (int)(x/2)) + 2) & 15) << 4;
*(tar + 3 * (y * xsize + x) + 1) = (*(ori + 3 * (y * xsize + (int)(x/2)) + 1) & 15) << 4;
*(tar + 3 * (y * xsize + x) + 0) = (*(ori + 3 * (y * xsize + (int)(x/2)) + 0) & 15) << 4;
}
}
}

return 0;
}


然後很好心的順便算了一下PSNR...
用Lena 512x512的圖來跑,PSNR還有8左右的水準...
看的出少掉一些細節,不過也算壓縮了不是?
只是真的很蠢...
蠢到八成不會有人會想寫這種東西放在網路上給人家抓...

完整的code...
20091123_image_compress

結論咧?那位苦主八成連拿來修一修都有困難...
直接跟老師說明年再見吧...

2009年11月18日 星期三

好人必備 - 利用光碟映像檔建立開機隨身碟

從in2板上看來的文章...
#1B0gy8aw (in2) [ptt2.cc] [fwd] Boot ISO from USB Flash Drive
介紹了有人把東西整理出來...

之前在Ubuntu 9.10還9.04就看到這樣的功能,
建立開機隨身碟,同時指定你要的映像檔(如果我沒記錯的話)
只不過沒人把他弄成一個比較容易處理的package...
這個是利用syslinux開機,利用grub做光碟模擬,同時也可以設定開機選單,
剛才試用了一下倒是還蠻方便的。

步驟如下...

  1. 下載http://www.pendrivelinux.com/downloads/BootMyISO/BootMyISO.exe,這是個7zip的自動解壓縮檔,解壓縮後會建立BootMyISO這個資料夾

  2. 執行BootMyISO這個資料夾當中的BootMyISO.bat,接著照畫面的指示進行...大致上就是選擇你的隨身碟磁碟機代號,做個確認的動作,拷貝檔案,寫入開機磁區,最後提醒你如果在Vista下寫入開機磁區需要Administrator權限balabala的,結束之後這個隨身碟就可以開機了(沒意外的話)

  3. 程式本身放了一個memtest86+的映像檔,這是個記憶體測試程式,接著教你怎麼放入其他的映像檔,要用映像檔開機...自然要先把映像檔丟到隨身碟去,檔名避免使用中文或是特殊符號會比較安全。

  4. 用文字編輯器開啟隨身碟根目錄下的menu.lst,這是grub的開機選單設定檔,#開頭是註解,拷貝下列這一整段...
    # title Test ISO
    # find –set-root /testname.iso
    # map /testname.iso (hd32)
    # map –hook
    # root (hd32)
    # chainloader (hd32)

    將註解的#跟空白拿掉,
    更改testname.iso為你的映像檔檔名,
    更改Test ISO為你的選單上妳希望看見的名稱,
    存檔、關閉。

  5. 最後,重新開機,確認BIOS設定為可由USB開機、USB為高優先開機,然後就可以嘗試用USB掛載映像檔開機啦~



我挖出一個非常古老的32MB隨身碟,放MHDD的映像檔進去測試,一切正常,
照這個方法,可以弄個緊急救援用的隨身碟,可謂好人必備工具之一...

原文:
Boot ISO from USB Flash Drive
http://www.pendrivelinux.com/boot-iso-from-usb-flash-drive/

The Pirate Bay 的 Tracker 關閉,走向分散式架構

在gslin大長輩的log看到這篇文章...
The Pirate Bay 的 Tracker 關閉,走向分散式架構
看別人的blog有個好處,只要挑對地方看,通常都是去蕪存菁後的消息XDDD

這篇消息讓我多留意了一下,主要是因為The Pirate Bay的緣故,
通常我也不會去注意TPB的狀況,只要需要謎物的時候會上去找找...
不過畢竟TPB還算是P2P的指標性網站,
他關掉Tracker代表他們認為DHT跟PEX發展的夠成熟了,
靠這兩個就可以連結整個網路上所有的Peer,前提是你開BT停留在網路上的時間要久一點。

某程度上來說,這算是好事,讓BT更接近P2P原先的架構,
如果BT不考慮Torrent的取得,不靠Tracker的話,算是純P2P軟體,
早期對DHT多少還是抱持著強姦網路的心態看待...
不過近期DHT或許改的比較溫和些了,或是比較感覺不出來?
同時這樣的分散式架構,也可避免像是ED2K網路伺服器被抄的狀況。

缺點是,將來的冷門檔就不好撈了...

The Pirate Bay Blog
http://thepiratebay.org/blog/
The Pirate Bay Tracker Shuts Down for Good
http://torrentfreak.com/the-pirate-bay-tracker-shuts-down-for-good-091117/

2009年11月16日 星期一

正妹Doris與盤古唱青花瓷...

很久沒寫了...
東逛西逛逛到Doris的網誌...
Chthonic - Doris...
她真的是正妹...
可是之前跟Freddy結婚的照片怎麼感覺有點肉肉的= =?
風格差異頗大...hm...

原本想放幾張照片讓畫面增色一下...
不過Yam的相簿擋外連,又沒看到啥宣告之類的...
所以還是不撈下來放了...殘念阿~

然後看到一個東西...盤古唱周杰倫的青花瓷...
http://www.youtube.com/watch?v=mt3PMdgbPgM
該怎麼說...一整個惡搞嘛XD