站長新書 站長開講 首頁 最新文章 站長著作及審校 FreeBSD 筆記 Linux 筆記 Windows 筆記 虛擬化筆記 網管人雜誌 遊山玩水 關於本站
站長新書 VMware vSphere ICM 團購開跑了!!

CVSUP-更新 Port Tree

前言

[CVSUP] 為一套維持軟體原始碼和開發團隊的更新工具簡單來說就是套件管理工具,本篇為說明利用 [CVSUP] 來更新 Ports Tree。

實作環境

安裝及設定

步驟1.安裝 cvsup 套件

切換至 Ports Tree 路徑安裝 cvsup套件

 #cd  /usr/ports/net/cvsup-without-gui/     //切換到安裝路徑 
 #make install clean                        //安裝套件並清除安裝過程中產生不必要檔案

步驟2.Ports Tree 相關檔案說明

以下是更新相關檔案所需使用到的 Ports Tree 檔案說明

 #cd /usr/share/examples/cvsup/     //路徑
 cvs-supfile                        //更新 Main source tree and ports collection
 doc-supfile                        //更新 Document
 gnats-supfile                      //更新 FreeBSD bug database
 ports-supfile                      //更新 Ports collection
 stable-supfile                     //更新 Main source tree
 standard-supfile                   //更新 Main source tree
 www-supfile                        //更新 FreeBSD 官方網頁 

步驟3.修改 Ports Tree 更新設定檔 (ports-supfile or make.conf)

修改 Ports Tree 更新設定檔方式有二種 (隨個人喜好擇一即可):更改 ports-supfile、更改 /etc/make.conf

 #cd /usr/share/examples/cvsup            //路徑
 #cp ports-supfile /usr/                  //放到 /usr 下 (看你高興要放哪)
 #cd /usr                                          
 #vi ports-supfile                        //修改原更新站台位置內容如下
 default host CHANGE_THIS.FreeBSD.org     //官方站台 (預設值)
 default host cvsup.tw.freebsd.org        //改為國內站台交大資工如此下載速度較快 (還有 cvsup1 ~ 15 都可使用)      
 #vi /etc/make.conf
 SUP_UPDATE=yes
 SUP=/usr/local/bin/cvsup                 
 SUP=/usr/bin/csup                        
 SUPFLAGS=-L 2
 SUPHOST=cvsup.tw.FreeBSD.org
 PORTSSUPFILE=/usr/share/examples/cvsup/ports-supfile                  

步驟4.更新 Ports Tree

 #cd /usr                          //切換路徑
 #rehash                           //才不會出現指令無效訊息 (csup: Command not found.)
 #csup -L 2 ports-supfile          //開始更新 Ports Tree
 #cd /usr/ports                    //切換路徑
 #make update                      //開始更新 Ports Tree

步驟5.更新 Ports Tree 訊息

執行更新 Ports Tree 指令後可以看到更新的站台及 Ports Tree 版本及哪些檔案被更新、刪除,更新 Ports Tree 完成後可查看 /usr/ports/UPDATING 檔案了解更新 Ports Tree 日期即相關資訊 (例如: 升級某套件需注意的事項...等)

若看到下列訊息則代表更新 Ports Tree 途中因為某些因素中斷了更新,再執行一次指令更新 Ports Tree 吧

 Suspended

若看到以下訊息則代表 Ports Tree 更新完畢

 Shutting down connection to server
 Finished successfully

步驟6.更新 Ports Tree Index

更新 Ports Tree 完畢之後請執行下列指令 (隨個人喜好擇一即可) 來更新 Ports Tree 的 Index 檔 (索引檔)

 #cd /usr/ports ; make fetchindex        //方法一
 #portsdb -Uu                            //方法二

Me FAQ

Q1.更新 Ports Tree 到一半出現錯誤訊息?

Error Message:

更新 Ports Tree 到一半時出現如下錯誤訊息

 TreeList failed: Error in "/usr/sup/ports-all/checkouts.cvs:.": 155109: Missing "#" in mode.  Delete it and try again.

Ans:

將 checkouts.cvs 這個檔刪除後在執行一次更新 Ports Tree 指令即可

參考

[FreeBSD Handbook - A.6 Using CVSup]

[FreeBSD Chinese HOWTO-保持最新的 Ports Tree]

[FreeBSD CVSUP servers in Taiwan updating status report]

Go To Oddmuse OrgGo To FreeBSD OrgCreative Commons 2.5 Taiwansitestates.com