FreeBSD 用 CVSup 去更新你的 source tree, ports |
|
conundrum
尊榮會員 ![]() ![]() ![]() ![]() ![]() ![]() 發表:893 回覆:1272 積分:643 註冊:2004-01-06 發送簡訊給我 |
http://mail.tses.tcc.edu.tw/nuke/sections.php?op=viewarticle&artid=51
如何用 CVSup 去更新你的 source tree, ports (已閱讀: 456 次) * 安裝 cvsup-bin 首先我們會要求你安裝 cvsup-bin 這個 package, 你可以選用ports 安裝, 或是用 package 裝: 如果是 4.x 用: pkg_add ftp://ftp.tw.freebsd.org/pub/FreeBSD/packages/packages-4-stable/All/cvsup-bin-16.1.tgz 如果是 5.x 用: pkg_add ftp://ftp.tw.freebsd.org/pub/FreeBSD/packages/packages-5-current/All/cvsup-16-16.1.tgz * 修改相關的設定 在你的 /etc/make.conf 裡面加上這幾行: SUP_UPDATE= yes SUP= /usr/local/bin/cvsup SUPFLAGS= -g -L 2 # SUPHOST 代表要到哪台 CVSup, 請改成離你比較近的 Server. SUPHOST= cvsup.tw.FreeBSD.org SUPFILE= /usr/local/etc/stable-supfile PORTSSUPFILE= /usr/local/etc/ports-supfile 接下來, 請把 /usr/share/examples/cvsup/stable-supfile 以及同一個目錄下的 ports-supfile 複製到到 /usr/local/etc 下面: cd /usr/share/examples/cvsup cp stable-supfile ports-supfile /usr/local/etc (有空可以看一下這兩個檔案) * 檢查 sbase 如果你當初安裝的時候沒有裝 sys -> base 這個部分的話, 你可以用 /stand 下 面的 sysinstall (建議就用這種方法). * 先安裝好 old source ports (雖然非必要, 但強烈建議) 因為 cvsup 會吃掉 Server 許多的 resource, 為了避開大量 checkout 的動作, 建議把舊的 source or ports 先裝好. 而且這樣對於用數據機的 user 而言, 應該會比較省時間. 你可以用 /stand/sysinstall 把 source 跟 ports 裝好. * make update 如果上面的東西都做好了, 以後要更新 source tree/ports tree 的話, 請到 /usr/src 下面 make update 吧: cd /usr/src make update 然後它就會開始跑. 跑完以後就會有最新的 source & ports. * make world *請注意* 接下來的東西, 請詳細閱讀 /usr/src/UPDATING, 以這個檔案裡面說的 為準 !!! 在 make world 前, 請先看看 /usr/src/UPDATING, 以及 Mailing list 上面的 -current (如果你是玩 current) 或 -stable (如果你是玩 stable), 另外有時 候也會出現在 -questions. 一般沒有什麼大變動的話, 打 make world 就可以了: make -j2 world > /tmp/world 2>&1 & 然後你要看 make world 的情況, 打 tail -f /tmp/world 就可以了. * make kernel 在一般的情況下, make world 完後就 make kernel 吧: *請注意* 請詳細看 /usr/src/UPDATING 的說明, 有時候並不是 make world -> make kernel 的順序! cd /usr/src/sys/i386/conf config BLAHBLAHBLAH cd ../../compile/BLAHBLAHBLAH make depend all install *請注意* 如果你是從古董版本升級到 4.x, 請好好的看 /usr/src/UPDATING, 如果還是沒寫的話, 我們提供你一個不負責任的 make kernel 法: cd /usr/src make buildkernel KERNEL=BLAHBLAHBLAH make installkernel KERNEL=BLAHBLAHBLAH * mergemaster 做完 make world & make kernel 後, 有時候 /etc 下面的東西也會變更, 這 時候就要跑 mergemaster 把 /usr/src/etc 的東西跟 /etc 的東西 sync: mergemaster 然後請照他的說明做 :) 通常就是一直選 'i', 除了 csh.* 跟你的密碼檔 /etc/master.passwd 外... |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |