目前日期文章:200903 (9)

瀏覽方式: 標題列表 簡短摘要

《Word教學之超方便「目錄製作」》

讓word幫你做目錄!

 

bojack 發表在 痞客邦 PIXNET 留言(1) 人氣()

第一次碰到這麼棘手的問題

昨天回來時就看到機器在重開機,看了一下是該需要進 single mode fsck 的時候

修了第一次,突然吐出一行

# fsck_ufs: cannot alloc % bytes for inoinfo ( % 是號碼 )

就沒辦法修下去了

經過不停的嘗試,修了好幾次總是過不去那個磁區 ~ 最後終於在這裡找到解決方法

簡單來說,修改完 pass1.c 後,需要再 make;make install 才會讓指令重編

我一開始改完後就又去 fsck ,但怎麼做都是一樣,原來是少了上述的步驟

老實說解決這個問題也蠻心虛的,因為真正的原因其實我還是摸不著頭緒,但直覺就是硬碟八成有問題了

從昨晚七點半維修至今天下午一點才恢復運作,唉,能力真差

2009.03.19 補充

修復完畢後,已經有使用者反應自己的資料不見了 -_-

bojack 發表在 痞客邦 PIXNET 留言(1) 人氣()

3/14 白色情人節,和研究所同學在新竹聚會 ~

挑了一家燒肉店,在冷冷的天看起來它其實還蠻不錯的 ~ 店名叫「大和園」,在新竹東門城 & RT 蛋糕附近

( 補充一下,吃燒肉前一天又看到這則新聞 XD 嗜吃紅肉燒烤民眾 罹患腸癌率大幅提高 )

這家燒肉是用單點的,七個人點了4份套餐 (1套餐2人份),整體來說我覺得還蠻好吃的

前菜、湯、主食和沾醬都不賴,lalaQ's 吃吃喝喝這篇介紹的還不錯,雞肉真的還不錯吃!

但說實在的,我不太適合吃燒肉,因為要一直顧爐火上的食材,一不小心美食就會被我烤到變肉乾,還是有人弄好送上來給我最方便

這家老闆還不錯,因為知道讓我們在外面等了好一陣子,最後還多送了1盤蝦子招待我們

店門口還掛著老闆和藝人吳宗憲&NoNo的合照,看起來有點像在錄食字路口時拍的,但老闆好酷都不笑

酒足飯飽後,決定去打保齡球 ~ 仔細想想,上次扔保齡球好像是5年前在南部畢業旅行時玩的

當年保齡球館在中壢也是很多家,不過近年來沒落了不少,以前5局100元,當晚1局就70元,真的是嚇死人

我也不是保齡球好手,只會扔直球,雖然說是直球,但是斜斜的直球

什麼12、13進點跟本都打不中,哈哈 ~ 後局1局決定學飛碟球的扔法,出手前多轉個一下,效果看起來還不錯

打了快140分,前2局88分&96分,哈,好嫩

偶爾玩玩還不錯,比起 Wii 的保齡球更有真實感 ^^

不過後遺症就是現在右手殘廢中,可能是球的磅數太重了,但能讓我用的球都只有比較重的

Anyway ~ Happy Night

bojack 發表在 痞客邦 PIXNET 留言(0) 人氣()

前幾天,學生開始反應 WebMail 非常難連上,用 TOP 看了一下,處理程序大多都是 http 的連線

系統 idle 大部份都是 0% ~ 5%,顯然系統一直忙著處理 HTTP 的東西

再去看一下 HTTP 的 Log,天啊,系統上某個 URL 一直被大量的存取,原來是位學生放了首 MP3

一開始本懷疑是學生將檔案放在一個很「熱門」的網站,但因為「存取」的實在太過頻繁,可說是一種變相的 DoS 了

反查了一下 IP ,大部份都是來自同一個國家 ... ( 第一天,終於確定了系統為何 Loading 突然暴增 )

雖然在網路進出口放置了一台 IDP,但似乎不見它有何阻擋的行為,這還得與廠商討論此種連線是否為 DoS

為了解決這棘手的問題,我決定用最原始的方法,因確定所有連線都來自某個國家,所以初步的構想就是「擋住來自某個國家所有要求的連線」

首先連上此網站:http://trace.twnic.net.tw/ipstats/ ,此網站可以查看各國家 IP 分配之情形

接下來就要開始動一些手腳了,假設我要阻擋來自臺灣所有 IP 的連線,先點選臺灣後應該會看到下面這資訊

以第1項 58.86.0.0 可用的 IP 為 65536 來說,大概可以知道此網段為 58.86.0.0/16,只是有 420 項要算也要算很久,因此我用了一個小程式

首先在上述頁面按下 Ctrl + A 全選所有資料,複製到記事本後,刪掉前面幾行中文說明,僅保留 IP 相關資訊

並利用 Ctrl + H 取代的功能,把它變成這樣

1 58.86.0.0 65536 apnic 20050411
2 58.99.0.0 16384 apnic 20050429
.....                (中間略 )                 ....
420 222.251.0.0 32768 apnic 20040525

看出來了嗎?原本的各欄位都用一個空白做區隔,把它存成一個 denyip.txt 即可,接下來執行一個簡單的 PHP 程式,把它和文字檔放在一起執行

<?php

$fcontents = file ('denyip.txt');
while (list ($line_num, $line) = each ($fcontents)) {
   $data = explode (" ", htmlspecialchars($line));
   $a = 32 - log($data[2],2);
   echo $data[1] . '/' . $a . '<br>';
}

?>

而我就只是做到這裡,把產生出來的資料鍵入至防火牆後,設定一下規則就好了,若想在 Apache 阻擋的話,程式再做一點修改就好了

用逆向思考的方式,改成僅要開放讓哪些人連就好,這也是一個方法,但就見人見智了

bojack 發表在 痞客邦 PIXNET 留言(1) 人氣()

僅提供一篇阿碼外傳的說明 - 大規模網頁綁架轉址:威脅未解除,但專家都猜錯了

bojack 發表在 痞客邦 PIXNET 留言(0) 人氣()

Weithenn Study Daily: Newsyslog.conf

小紅帽技術論壇 - 關於 FreeBSD 的 logfile 說明..

( 曾幾何時,它是我每天必上閱讀的網站,沒想到今非往昔了 )

bojack 發表在 痞客邦 PIXNET 留言(1) 人氣()

設是我今天加入在 httpd.conf 的設定,還沒有試過 mod_rewrite 的用法

SetEnvIfNoCase Referer "^http://my\.domain\.edu\.tw/" local_ref=1
<FilesMatch "\.(png|mp3|rar|zip|bmp)">
     Order Allow,Deny
     Allow from env=local_ref
     Allow from 127.0.0.1
</FilesMatch>

永遠的真田幸村 - 透過Apache的.htaccess設置圖片防盜連功能

Jamyy's Weblog - apache http server 防止盜連的方法

鍵盤語言 (Keyboard Languag) - Apache 防止盜連網站資源的方法

bojack 發表在 痞客邦 PIXNET 留言(0) 人氣()

自從 FreeBSD 6.2 後多了一個以 binary update 方式的指令,就是 freebsd-update

假設我要更新 FreeBSD 7.0-RELEASE-p3 到 7.0-RELEASE-p10

首先先更新 update Server

# vi /etc/freebsd-update.conf

ServerName update.tw.FreeBSD.org

接下來就開始抓更新檔

# freebsd-update fetch

# freebsd-update install

# reboot

若要跨版本更新的話,例如將 FreeBSD 7.0-RELEASE-p5 到 7.1-RELEASE-p3

# freebsd-update upgrade -r 7.1-RELEASE

( 略.... )

# freebsd-update install -r 7.1-RELEASE

Installing updates...
Kernel updates have been installed.  Please reboot and run
"/usr/sbin/freebsd-update install" again to finish installing updates.

# reboot

# freebsd-update install

# reboot

# uname -ra

參考資料:Upgrading FreeBSD 7.0 to 7.1

bojack 發表在 痞客邦 PIXNET 留言(0) 人氣()

這是篇記錄將 OpenWebMail 2.52 -> OpenWebMail 2.53 的升級過程

雖然只是套件的更新,但實際上系統做了許多套件的更動

另外看此篇前,建議先跳到第5點閱讀

1.前置備份作業

首先,要做好「備份」重要資料的工作,在這裡我備份了「系統設定檔」、「公用通訊錄」、「郵件規則」及「使用者個人設定」

系統設定檔 PathToOpenwebmail/openwebmail.conf

公用通訊錄在 PathToOpenwebmail/etc/addressbooks/global

郵件規則在 PathToOpenwebmail/etc/filter.book ( 補充一篇郵件規則的設定教學 From 工頭的家 )

使用者個人設定在 PathToOpenwebmail/users/ ( 整個目錄 )

2.開始升級套件

在此我的狀況描述一下,本來以為很單純只要下載 2.53 版本解開,放上去就可以執行了,但系統一直給我 500 的 Error

後來才發現,原來我並沒有 suidperl 這程式,經過查詢後,發現2種解決方式

第一種就是直接去更新 Perl ,但我並沒有採用這種方式

# cd /usr/ports/lang/perl5.8
# make ENABLE_SUIDPERL=yes
# make test
# make install clean
# rehash
# whereis suidperl
# ln -s /usr/local/bin/suidperl /usr/bin/suidperl

第二種就是用 portupgarade 更新 Perl,而我是採用這種

#portupgrade -rf "perl-5.8.*" -m "ENABLE_SUIDPERL=yes"

一做下去,不得了了 ... 有196個套件因相依性的問題都一併做了更新 -_-

連帶我原本的 Apache、PHP、Webmin 等套件都幫我升級到了最新的版本,好在更新過程沒有什麼 Error

不過唯一一個有出錯的就是 OpenWebMail 無法透過 portupgrade 做更新,因此我又再一次進入 /usr/ports/mail/openwebmail 安裝了一次

3.倒回原本資料

就把前置備份作業的檔案,再 Copy or Move 回原本應有的位置即可

4.升級後可能會發生的問題

目前碰到的問題,和潛艦這篇問題一模一樣,閱讀時會出現 UTF-8 的字眼,故可參考看看修改看看

5.注意事項

升級前務必做好備份的工作,這非常重要!最簡單的方式,就是直接備份原本 OpenWebMail 所有的目錄,避免升級至新版本後,有無法預期的錯誤時,還有舊版本可以用

ps. 這次升級是心血來潮,選在大家上班時間進行,比預期的時間延長了3小時,但還是在下班前完成了,下次可能要在離峰時段做,不然電話一直來還蠻刺激的

bojack 發表在 痞客邦 PIXNET 留言(0) 人氣()