上篇講完了 VPS,這篇來講在獨立主機 Dell PowerEdge R310 上裝 Gentoo 遇到的問題。
這個問題的就是最近數個月 Gentoo 的 minimal installation CD 裡的 firmware 無法正常解壓:
如果需要 firmware 的是其它硬體還好,偏偏在這機器上需要 firmware 的就是 bnx2 網卡,所以當然不是打個 emerge linux-firmware 就能解決的問題。
其實這個問題也早就有人遇到了:
Install problem on x86_64
https://bugs.gentoo.org/show_bug.cgi?id=455924
Bug 443024 - install-amd64-minimal-20121107 /lib/firmware.tar.bz2 is 0 bytes, init.d/firmware fails, /lib/firmware/ is empty
雖然也是被裝死了好幾個月,但應該近期就會修正了吧。
system diary
在 x86 環境下編譯 GCC 4.8 會出現 '_ITM_TYPE_M256' does not name a type 的錯誤
我想應該不少人已經知道 x86 平台被很多 software developer 無視已久了。
特別是歷經了用 gcc -O3 編譯 zlib 以後會讓包括 ssh 在內的一大堆程式爆炸,叫修又被裝死很長一段時間的這段血淚史,讓我對這個潮流更加印象深刻:
Bug 270120 - (PR40838) [4.4/bad-code] -ftree-vectorize causes segfaults on x86 due to stack misalignment
Bug 41156 - [4.4/4.5/4.6 Regression] zlib segfault in inflate_table() compiled w/ -O -msse2 ftree-vectorize
不過最近在租用外國 KVM 服務的時候,居然遇到一家實體 CPU 採用 Xeon E3-1270 V2 的主機商,無論如何就是無法讓 64-bit 的 FreeBSD ISO 能 boot 起來,無論是 8.3 和 9.1 都不行。
相對地,其它 Linux 家族的 64-bit 安裝光碟都完全沒事,可以正常 boot 也能裝得很開心,這實在是讓我這個喊了 FreeBSD 才是王道超過 10 年的人看得很傻眼。
雖然主機商馬上 call 了 FreeBSD 的 maintainer 來看看有沒有辦法解決,但最後只是推測這新的 CPU 架構和 USB 裝置的初始化有衝突,要修正還是不知道得等到何年何月,所以我就和主機商說讓我改裝 i386 的 FreeBSD 9.1 了。
因此在切換到 x86-64 環境的數年後,我又再次被迫回到 x86 平台這個戰場來編譯程式,向者艱辛的道路邁進。
Read more在 x86 環境下編譯 GCC 4.8 會出現 '_ITM_TYPE_M256' does not name a type 的錯誤
FreeBSD 的 boost-1.45.0 沒辦法用 gcc 4.7 編譯的問題
因為最近還是很忙,所以就常話短說。 拿 GCC 4.7 當編譯 ports 用的 compiler 去 bui ...
用 gcc-4.3+ 編 graphics/graphviz 遇到 libgvc.so: undefined reference to `sincos' 錯誤時的解法
錯誤訊息: gmake[3]: Entering directory /usr/ports/graphics/ ...
Read more用 gcc-4.3+ 編 graphics/graphviz 遇到 libgvc.so: undefined reference to `sincos' 錯誤時的解法
使用 X server 遠端執行 VirtualBox 時一進入設定就會 Segmentation fault
這個問題是在 FreeBSD 8.2-STABLE 上遇到的,但我想其實跟 OS 無關。 主要是 Window ...
Read more使用 X server 遠端執行 VirtualBox 時一進入設定就會 Segmentation fault
FreeBSD 在 mysql55-{server,client} 改用 CMake 建置後某些編譯選項無法傳遞
以往在 FreeBSD 編譯 databases/mysql55-{server,client} 時,要下這樣 ...
Read moreFreeBSD 在 mysql55-{server,client} 改用 CMake 建置後某些編譯選項無法傳遞
Apache 從 2.2.12 開始支援 SNI
其實這資訊 lag 了一年多了吧 (現在都 2.2.17 了)。
前幾週被人問到 SSL 時丟相關資訊給他,
才發現 wikipedia 的 SNI 那頁更新過了:Server Name Indication
這功能是從 Apache 2.3 merge 回來的:#34607 - Support for Server Name Indication
設定範例可以參考 Apache 的 wiki:SSL with Virtual Hosts Using SNI
其實設定上沒什麼新東西要注意,
一切都恢復到過去設 SSL vhost 的方式即可。
最多就是記得要擺 NameVirtualHost *:443 和 SSLStrictSNIVHostCheck off 這兩行吧。
拖稿很久的 LLVM 使用文
因為單純就是使用也沒有去動內部的東西,
所以這篇文從 llvm-2.1 一路拖到 2.7 才終於想寫。
對一些早就在用的人來說這內容應該也 lag 好幾年了,
總之都是些沒什麼技術性的東西。
所以我也不分類在 programming 而是 system diary 了。
透過 pf 來限制某國 IP 才能存取某些 ports 的方法
簡單說就是鎖國啦。
這個上一手資訊來自機八林餅幹,
忘記他是從哪邊看來的。
反正幾乎沒在出國的話把 ssh port 之類的鎖起來可以省很多力氣。
sshguard
又是一篇遲來的文章。
但是還是寫一下免得被人一問再問。
如果成天看到有相同 IP 沒事在那邊一直狂 try ssh login 的,
可以裝個 sshguard 直接搞定。