Calendar

九月 2019
« 十一月    
 1
2345678
9101112131415
16171819202122
23242526272829
30  

Categories

Page 5 of 71234567

mod_passenger 在用 https 協定連 redmine 的時候會出現 error

主要是一些 SSL 的環境變數有 key 沒 value,
詳細狀況懶得去追,
直接去 /usr/local/lib/ruby/gems/1.8/gems/passenger-2.2.5/ext/apache2 找到 Hooks.cpp 做以下修改:

然後執行:
/usr/local/bin/passenger-install-apache2-module --auto
重新編譯和安裝 mod_passenger.so,
最後重新啟動 apache 就可以了。

Redmine 的 Repository Controls plugin

每個 SVN 檔案庫都可以透過 conf/authz 去控制哪些人可以讀寫哪些路徑的檔案,
一般來說如果有在用 Trac 或 Redmine 這類 web front-end 的都會希望能在 web UI 上控制,
不會還想要進到 shell 下做修改,
Redmine 的 Repository Controls plugin 就是在做這件事,
不過它的控制方法有點微妙的不同,
不像之前設 Trac 的時候是直接讓 Trac 指向那個 authz 檔做修改,
而是直接掛 Perl module 去讀 Redmine db 裡的設定來控制存取權,
只是這有一個麻煩之處就是沒辦法直接用 SVN 內建的機制,
寫那個 Perl module 的人要重新實作那個功能一遍。

Continue reading Redmine 的 Repository Controls plugin »

FreeBSD 的 pkg_delete 有時會 segmentation fault

可能是因為 ports 本身有一些檔案沒寫好導致讀到空字串吧,
gdb 進去看 pkg_delete 的 core 檔會發現死在 strcmp() 上,
不知道為什麼五六年前已經有人寫出了 patch 卻到現在還沒修正,
就算 ports 的 maintainer 有東西沒寫好,
套件管理工具本身也不應該直接 crash 掉吧?
每次砍光 ports 做全面更新的時候都會遇上個幾次。

Continue reading FreeBSD 的 pkg_delete 有時會 segmentation fault »

FreeBSD 的 lang/php5 (5.2.11) 是壞的

簡單說就是一個大地雷,
當然如果裝 php5-extensions 的時候不勾 mhash/mysql/mysqli 就不會有事,
但是一勾下去的話無論是 CLI 還是 Apache module 都難逃一死,
在 command line 下直接輸入 php 或 php -v 就 Segmentation Fault 了,
真不知道是哪個天才 commit 進去的,
已經這麼久了還是沒人報也沒人修。

Continue reading FreeBSD 的 lang/php5 (5.2.11) 是壞的 »

在 Gentoo 上安裝 Insight

Gentoo 的 Insight 其實擺爛很久了,
裝了不能動就是不能動,
主要原因之一就是 Insight 內附的 tk 不支援較新的 xproto,
用 emerge =x11-proto/xproto-7.0.12 把 xproto 降回 7.0.12,
然後 emerge insight 這樣編出來的就會正常了,
之後再 emerge xproto 把 xproto 升回去也沒關係。

不錯的 LDAP 輔助工具集: ldapscripts

研究 LDAP 的便利工具也有一段時日了,
偏好使用純文字介面的我當然不太可能選擇 GUI client,
所以一開始是先挑了功能不太齊全的 ldapsh,
它提供了一個類似 shell 的介面讓人能編輯或刪除 LDAP 裡的資料,
不過似乎找不到新增資料的方式,
至於會啟動什麼編輯器則是看 EDITOR 這個環境變數決定;
最後相中的是 ldapscripts 這個 ports,
安裝完之後只要做一些簡單的設定就行了,
不過唯一的缺陷似乎是沒支援 starttls,
這樣可能會強迫我開 ldaps 協定吧,
不過目前我只把這個裝在 LDAP server 所在的機器上,
所以其實還算可接受的範圍內。

Continue reading 不錯的 LDAP 輔助工具集: ldapscripts »

在 MRTG 沿用舊的設定檔會出現 Unknown SNMP var xxx

以往有用 MRTG 透過 SNMPv2 或 SNMPv3 抓 CPU、MEM 和 Disk 使用量的,
可能會發現目前新的 MRTG 不管你怎麼 LoadMIB,
mrtg 照樣吐了像是 Unknown SNMP var ssCpuRawUser.0 這類的 msg 出來,
而且用 snmpwalk -v 2c 之類的去讀明明就好好的,
跑去網路上搜尋這些關鍵字都只看到一堆純嘴炮不然就是沒人回答,
不過直接去官網查 configuration reference 就可以發現,
因為 p5-SNMP_Session 似乎不吃 SNMPv2 以上的東西,
所以要加進這一行讓它用 p5-Net-SNMP 走 SNMPv3:

這樣就能快樂的使用原本的設定了。


PS. 如果你啟動了 mrtg 看到這段訊息而跑不起來:

Can't locate SNMP_util.pm in @INC (@INC contains: /usr/local/bin/../lib/mrtg2 /usr/local/bin /usr/local/lib/perl5/5.10.1/BSDPAN /usr/local/lib/perl5/site_perl/5.10.1/mach /usr/local/lib/perl5/site_perl/5.10.1 /usr/local/lib/perl5/5.10.1/mach /usr/local/lib/perl5/5.10.1 .) at /usr/local/bin/mrtg line 295.

千萬不要傻傻的跑去裝什麼 p5-SNMP-Util,
如果這樣做的話就代表你被騙了
應該要裝的是 p5-SNMP_Session 才對。

讓 SSL 憑證申請書包含多個 Common Name

以往用 openssl 的互動式介面來填寫憑證申請書時,
只有一次填寫 CN 的機會,
如果想填多個 CN 可以直接在 command line 把它填完:

CN 的順序是倒過來的,
最後填的一般會被不支援多重 CN 的 client 當成 CN,
這種做法雖然普遍不被多數 browser 接受,
不過用在 smtps/imaps/pop3s server 上倒是沒有什麼大問題,
所以如果 mail server 有多重 domain 的話可以考慮這樣填。

從 uw-imap 換到 courier-imap

應該很多人知道 uw-imap 因為漏洞太多又沒更新已經 bye bye 了,
FreeBSD 的 ports 裡先是把它設為 FORBIDDEN 之後直接砍了它,
對於這種幾乎不能 config 的 imap/pop3 client 我一直就很不爽,
偏偏大家又很愛裝它,
造成我前陣子也面臨了不得不將它換掉的狀況。

Continue reading 從 uw-imap 換到 courier-imap »

把 FreeBSD 7.1 直接安裝在 2TB 以上的硬碟裡

應該很多人都知道 FreeBSD 裝大於 2TB 的硬碟一直都是一個問題,
一般想要裝 2TB 以上硬碟的人都難免會來到 FreeBSD 官網的這個頁面:
http://www.freebsd.org/projects/bigdisk/index.html
它的主要問題是因為大部分跟硬碟相關的程式有這樣的特徵:

  1. 以 32-bit 整數表示容量相關的資料。
  2. 單位是 sector,一個 sector 是 512 bytes。
  3. 32-bit 只能表示 4T sectors,也就是 2TB。

跟硬碟相關的程式以及它們的特徵大致可以這樣歸納:

  1. 以前的 UFS 檔案系統只能支援到 2TB,2003 年起的 UFS2 則以 64-bit 整數來表示相關資料,使得檔案系統本身可支援到 2TB 以上。
  2. MBR、fdisk、bsdlabel 仍是以 32-bit 整數設計的,因此即使下層的檔案系統支援 2TB 以上的容量也沒有用。
  3. 以 GPT 代替 MBR 的話,可以解決問題,但 FreeBSD 7.1 之前並不支援 boot 在 GPT 分割區的功能。
  4. FreeBSD 目前為止 (7.1-RELEASE) 的 sysinstall 並不支援 GPT,所以安裝系統時無法分割 2TB 以上的硬碟。

再看看這個網頁下方的各種表格後還能發現,
目前 FreeBSD 相關的支援並不十分完善,
且有些功能已經拖了相當多年了。

Continue reading 把 FreeBSD 7.1 直接安裝在 2TB 以上的硬碟裡 »

Page 5 of 71234567