寫這篇是要補 Enable core dump in Linux and FreeBSD 這篇沒提到的部份。
對於 setuid 或是 setgid 程式,FreeBSD 基於安全性原因是不會產生 core 的。如果有需要產生 core 需要修改 kern.sugid_coredump 的值:
# sysctl kern.sugid_coredump=1
這個在 Varnish 的 mailing list 上遇過,無意間看到這個參數才發現的:Varnish crash (SIGABRT) about every 10 mins。
沒有登入 Wikipedia 的情況下是沒辦法移除 Wikipedia 開頭的 Donation 廣告,即使登入後也只能縮起來,這讓人很煩。
套句 Userscripts.org 的標語:
Because it’s your web.
用 Firefox + Greasemonkey 的使用者可以安裝 Wikipedia Donation Ad Remover 把廣告移除。
測試時遇到的地雷,寫下來讓以後的自己搜尋到… (愚蠢的 bug 總是會一而再再而三的犯下 XD)
因為 lighttpd 已經用的蠻久了,所以都會有一份制式的 lighttpd.conf (精簡到「會動」而已) 拿來用,今天拿這個版本丟檔案的時候想用 Squid 當 reverse proxy 放在前面,結果發現永遠都是 TCP_MISS,看 HTTP Header 後發現 lighttpd 沒送 Last-Modified 欄位,應該是這樣造成 Squid 不會存下來。
lighttpd 不送 Last-Modified 的原因後來查出是因為沒有指定 MIME Type。這是一個 feature,而不是 bug (所以不會修正),所以我除了把線上得版本加上以外,在公版的 lighttpd.conf 裡也把 mimetype.assign 加上,這樣就正常了。
繼續觀察看看到底可以省多少 :p
在 Amazon Web Services Blog 上看到 Firefox Extension for Amazon EC2 這個好用的工具,在 Firefox 上裝起來測試後發現相當好用,如果要拿來推廣相當棒,不用自己再用 Python 的 boto 操作半天…
PS:剛剛注意到 boto 的作者參與了 Amazon SimpleDB 的 beta testing,在正式公開那天把 SimpleDB 的 library 加進去了,可以寫一些小玩意測試看看…
有訂閱 US-CERT 的人應該都有收到 Technical Cyber Security Alert TA07-355A (Adobe Updates for Multiple Vulnerabilities),用 Firefox 的人連上 about:plugins 可以看到 Flash Player Plugins 的版本,如果太舊記得去 Adobe 的網站上更新。
前陣子跟許多人討論時發現,不少人認為 GPLv2 與 GPLv3 是相容的,其實不然:Is GPLv3 compatible with GPLv2?。
某些使用 GPLv2 的軟體能夠與新的 GPLv3 相容的原因,是因為當初開發時以 “version 2 or later” 的方式宣告,這時候軟體本身可以採用 GPLv3 與其他的 GPLv3 程式碼相容。
對於新開發的軟體來說,只要小心檢查 Software license 就可以了。但對於舊的軟體,以及 package system 來說,是惡夢一場。
有兩套舊的軟體,一套是 GPLv2 only,另外一套是 GPLv2 or later,兩套都是有上百個人參與過的計畫,而且都用到一個 GPLv2 or later 的 library。現在這個 library 宣佈下一個版本開始變成 GPLv3,但因為沒有 API 改變,所以不打算增加 shared library 的 magic number。這時候 GPLv2 only 的軟體因為不相容而需要改寫 (或是把舊版的 library 放入 src 裡維護),package system 也因此不能產生 binary。
也因此很多人對 RMS 自稱的「自由」相當不以為然:他利用 “version 2 or later” 大力推廣而產生壟斷後,再利用優勢將他個人自認為的自由放入 GPLv3。相同的,Wikipedia 所使用的 “GFDL 1.2 or later” 轉成 CC 的步驟也是相同的道理。
權力使人腐化,不管是在商業公司還是在 Open Source Community 都一樣讓人噁心。
在 FreeBSD 上一堆 ports maintainer 要傷腦筋處理 Perl 5.8 與 Perl 5.10 之間的相容性問題了…
Perl 5.10.0 除了修正 bug 外,在效率上也做了許多改進,在 perl5100delta 可以查到完整的內容,幾個我比較有興趣的:
- 引入
// 運算子。以前寫 defined $a ? $a : $b,現在可以寫 $a // $b。同理,$a //= $b 等價於 $a = (defined $a ? $a : $b),表示 $a 沒有被定義時塞入 $b。另外,// 與 || 有相同的優先權。
- 有了 switch-case-default 的架構,不過在 Perl 裡叫
given-when-default。
- 更快的 Regular Expression Engine,以及一些變動。
- Perl 內建的 Unicode 資料庫更新到 5.0.0。
- 新增了一堆 module…
- 一堆效能的改善…
反正用就是了 XD
對了,大力推薦 Strawberry Perl,試圖在 Win32 平台上建立一個簡單而且強大的 Perl 環境,目前還是 Perl 5.8.8,等他正式推出 Perl 5.10.0 的版本…
如果要測試的人可以參考 Strawberry Perl Beta 2 Release 這篇抓 Beta 2 版測試。
Update:除了上面所說的,另外還有 Some perl 5.10 comparisons 提到的 say (與 print + \n) 以及 ~~ (與 grep + eq) 的效能比較。
Update:Strawberry Perl 5.10.0 正式出版了!
IE8 內部測試版本已經通過 Acid2,一個很有名的 CSS 的測試了:Internet Explorer 8 and Acid2: A Milestone,接下來是時間的問題了,離 IE6 與 IE7 消失還有很長一段時間,不過畢竟總是要有個頭。
Firefox 3 會不會 delay 到成為最後一個支援 Acid2 的主流瀏覽器?(真的發生的話也不意外,只是會有很多人笑得很開心)
因為被告不需自證其罪 (美國憲法第五修正案),所以不需要交出 PGP key 的密碼:Encryption Passphrase Protected by the 5th Amendment。
以後會演變成,在逮捕前想辦法先安裝 keylogger,或是在房間裡放監視器材,蒐集到密碼後才會拘提並扣押證物?那個 slzzp 小心點啊…
補充,如果有需要的人可以裝 TrueCrypt,免費而且是 Open Source。