寫教學的最大目的是教會未來的自己

FreeBSD 軟體安裝系統 ports

本篇 引用自

http://www.freebsd.org/doc/zh_TW/books/handbook/ports-using.html

http://cloverhsc.blogspot.com/2008/10/etcmakeconf.html

因為我所管理的sever中,有幾台是 FreeBSD,所以 這一篇 最主要是 記錄自己所學所寫下來的紀錄,不保證完全正確

 

前言:

ports 是FreeBSD 所用的 軟體安裝方式,根據我所理解是,ports 這套軟體 會把 所有軟體的安裝程式先全部下載到系統當中

但這只是安裝流程和 所需要的檔案,安裝時系統會根據安裝程式中的指示,去網路上下載所有必要的檔案解壓後 再進行安裝

不過這種安裝模式有個缺點,就是當軟體安裝失敗的時候,使用者必須自己去看 error log 去判斷問題

另外 所需檔案 的下載位置是在/etc/make.conf中 設去哪個伺服器下載,在linux系列中都有類似的方式,有許多人貢獻server架設鏡像站,

這部分台灣有多台server 分散在各大學當中(我們這台server 也有提供類似的服務),回到主體,現在進入真正的教學吧。

 

根據我所理解ports 是 FreeBSD 在安裝時,就會跟這安裝上的,並不需要我們來安裝

cvsup 是ports 的更新方式之一,如果要對ports 軟體清單做更新 可以用以下的方法

安裝CVSUP

#cd /usr/ports/net/cvsup-without-gui

#make install clean

更新PortsTree

#cp /usr/share/examples/cvsup/ports-supfile /目錄路徑/

#ee /目錄路徑/ports-supfile

設定default host值與更新目錄

*default host=cvsup.tw.freebsd.org

註解掉不需要更新的軟體目錄

  指令列輸入rehash,否則等會會出現cvsup: Command not found.

#cvsup -g -L 2 /目錄路徑/ports-supfile

 

Portsnap和cvsup 同樣功能的 另一種更新方式,這套系統在 freeBSD 6.0之後就已經內建,所以只需要執行下列三個指令

  1. # portsnap fetch
    
  2. # portsnap extract
    
  3. # portsnap update
    

 

軟體的安裝方式:

先移動到/usr/ports/ 底下的 軟體資料夾,之後輸入安裝指令

其中有三種指令

#make   把程式碼編譯

#make install 先編譯後 安裝

#make clean   清除安裝時所產生的暫存檔案

 

以上三個指令 只需要輸入

#make install clean 就可以一次完成

 

 

如果 安裝時出現 下載失敗的錯誤時怎麼處理呢?

通常 FreeBSD 內設定的 伺服器資料並不符合 台灣的現況,所以需要再做修改

修改 /etc/make.conf 主要是讓我們在make file的時候server裡面沒有的檔案

直接從我們設定的ftp內抓取我們所需的檔案,因為預設的make.conf是從國外

下載檔案,這樣會讓我們下載速度慢很多,所以我們把它改成國內的server

加速我們下載並且設定cvsup的更新位置指向過內的server。

修改 /etc/make.conf 加入:
 

# for make install
MASTER_SITE_BACKUP?= \
ftp://ftp.tw.freebsd.org/pub/FreeBSD/distfiles/${DIST_SUBDIR}/\
ftp://ftp2.tw.freebsd.org/pub/FreeBSD/distfiles/${DIST_SUBDIR}/\
ftp://ftp3.tw.freebsd.org/pub/FreeBSD/distfiles/${DIST_SUBDIR}/\
ftp://ftp4.tw.freebsd.org/pub/FreeBSD/distfiles/${DIST_SUBDIR}/\
ftp://ftp5.tw.freebsd.org/pub/FreeBSD/distfiles/${DIST_SUBDIR}/\
ftp://ftp7.tw.freebsd.org/pub/FreeBSD/distfiles/${DIST_SUBDIR}/\
ftp://ftp8.tw.freebsd.org/pub/FreeBSD/distfiles/${DIST_SUBDIR}/\
ftp://ftp9.tw.freebsd.org/pub/FreeBSD/distfiles/${DIST_SUBDIR}/

MASTER_SITE_OVERRIDE?= ${MASTER_SITE_BACKUP}
MASTER_SORT_REGEX=      \.tw/ \.tw\. \.edu/ \.edu\.
FETCH_CMD=fetch -U -A -P



# for cvsup make update

SUP_UPDATE=yes
SUP=            /usr/bin/csup
SUPFLAGS=       -g -L 2
SUPHOST=        cvsup2.tw.FreeBSD.org
SUPFILE=        /usr/share/examples/cvsup/standard-supfile
PORTSSUPFILE=   /usr/share/examples/cvsup/ports-supfile
DOCSUPFILE=     /usr/share/examples/cvsup/doc-supfile

WITHOUT_X11=yes

並讓cvsup的更新針對我自己的freebsd 的版本

到/usr/share/examples/cvsup/standard-supfile 修改
 

*default release=cvs tag=RELENG_7_0

Post to Twitter Post to Plurk Post to Facebook Send Gmail

發表迴響

Copyright © 2020. All Rights Reserved.

歡迎光臨
初音