FreeBSD Jail 裡面透過 Ports 升級軟體的方法

FreeBSD 6.0 與 jail 這篇裡面我提到了安裝的方法,另外也提到如何跟 host 共用 ports 的方法。但是如果你想要使用 portupgrade 升級軟體,你會發現因為沒有辦法寫入 /usr/ports (要更新 INDEX.db) 而失敗。( 跑來跟我幹剿 XD)

我發現這個問題可以想辦法避開寫入 /usr/ports 就可以了,在 portupgrade 的 manpage 裡面有提到 PORTS_DBDIR 這個變數:

PORTS_DBDIR    Alternative location for the ports database files.
               Default is ``$PORTSDIR''.

於是只要在 /usr/local/etc/pkgtools.conf 裡面設定:

ENV['PORTS_DBDIR'] ||= '/tmp'

指到 /tmp 就可以解決了。

4 thoughts on “FreeBSD Jail 裡面透過 Ports 升級軟體的方法”

  1. ychsiao says:

    我是在csh.cshrc裡加入
    setenv PORTS_DBDIR /var/db/pkg

    放到/var/db/pkg比較不會誤砍:p

  2. gslin says:

    砍了就給他啊,反正可以 rebuild 回來不是嗎 o_O

  3. ychsiao says:

    對厚....!@$#

Leave a Reply

Your email address will not be published. Required fields are marked *