Friday, April 06, 2007

FreeBSD - Portupgrade

FreeBSD 用 portupgrade 升級 ports

摘自 O’Reilly ONLamp.com 的 BSD DevCenter FreeBSD Basics 系列文章。

  1. 先更新 ports:cvsup -g -L 2 ports-supfile
  2. 再更新 ports 資料庫:/usr/local/sbin/portsdb -Uu
  3. 然後列出需升級的 port:/usr/local/sbin/portversion -l "<"
  4. 最後升級有裝的 port:/usr/local/sbin/portupgrade -arR
  5. 如果有提示就執行:/usr/local/sbin/pkgdb -F
  6. 如果天塌下來了就:/usr/local/sbin/pkgdb -fu

其他關於 portupgrade 的小筆記:

  • 每次 cvsup 更新 ports 之後就要跑一次 portsdb -Uu
  • pkgdb -fu 時無論如何都不要中斷動作
  • 可以用 pkg_which 查詢各檔案所屬 ports:pkg_which filename
  • 查某個 port 來源目錄:pkg_which -o kdemultimedia-3.1.3
  • 只上網抓回所需檔案但尚不升級:portupgrade -aFrR
  • 模擬而不實際升級:portupgrade -anrR
  • 指定記錄檔:portupgrade -rR portname -l logfile
reference:
http://moonfire.twbbs.org/15