¤Þ¥Î:
§@ªÌ³¥¤f¶©¥v
§A¤~¦n¯º¡A«e«á¤å¨S¬ÝÀ´´N¤@Ó«lªº²r§å
§Ú±qÀY¨ì§À®Ú¥»¨S»¡portsn¦n´X¹D«ü¥O¤~¯à¦w¸Ë
§Ú¥u¦³±j½ÕArchªºABS+AUR§ó±j¤j¤]¤ñports§ó¤è«K
½Öª¾¹D¨ºÓ¶Â¤Ñ¨Ï¨S¬ÝÀ´¡Aµw¬OnÂ_³¹¨ú¸q
«e±¨ºÓ¶Â¤Ñ¨Ï¬Æ¦Ü»¡§ó·s¥þ¾÷n¼gscript¡H¡I
¨º§Ú½Ð°Ý§A²Ä3¤è³nÅé¡Aports¸Ì¨S¦³ªº¨º¨Ç
§A¤]¤@¹D©R¥O§ó·s§¹¦¨µ¹§Ú¬Ý
½Ð°Ý¤W±¨º¨âÓ¤H¬OÂI¥X¤°»òªF¦è¤F¡H
³o¼Ë¤]¥s°ª¤â¡H
®³¨ìstudy-area¤£ª¾¹D¬O½Ö¤~·|³Q¯º¡H
¦pªGportsùرªºªF¦è¬O·½½X
Ãø¹D§A¤£¥Î¥ý./configurre¤£¥Î¥ýmake¶Ü¡H
³o±Ð¾Ç¸Ì¥Ü½dports¦w¸Ë¡A¸ò§Ú«e±»¡ªºmake¦A¨Ómake install¦³¤°»ò¤£¤@¼Ë¡H
¨ì©³¬O½Ö¦bJ»¡¤K¹D¡H
http://www.study-area.org/freebsd/h...ports.htm#ports
|
¬°¤°»ò§Ú·|»¡§A¤£°÷²`¤J¬O¦³ì¦]ªº... §Ú¤£¬O¨S¦³®Ú¾Ú¶Ã©ñ¸Üªº¤H...
¥»¨Ó¤£·Q¦^À³ªº, ¦ý¬O³o§â¤õ¬O§Ú¤Þ¥X¨Óªº, ·À¤@¤U¦n¤F.
ÁÙ§Ú§Ú¥ý¸ò³¥¤f¥ý¥Í¹Dºp, §Ú¥»·N¨Ã¤£¬On«ü³d¥L, ¥u¬O§Æ±æ§ó¥¿¤@¯ë¤H¹ï ports ªº»~¸Ñ.
¨S¦³¬dÃҩίu¥¿¨Ï¥Î¹LªºªF¦è, ÁÙ¬O«O¯d¤@ÂI¤ñ¸û¦n, ¤ñ§Ú±jªº¤H©Ò¦b¦h¬O, Á¾µê¤@ÂI¤~¯à¾Ç±o§ó¦h, ²¦³º±í¤lº¡¤F´N¦A¤]¸Ë¤£¤U¤ô¤F...
¥L¯uªº«Ü¼ö¤ß, ¤j®a¦³ arch linux ªº°ÝÃD¤]¥i¥H¸ò¥L½Ð±Ð.
©xºô»¡©ú±o«Ü²M·¡¤F...
http://www.freebsd.org/doc/zh_TW/bo...orts-using.html
¦b²Ä¥|¬q¦³...
¤Þ¥Î:
Note: ¥Î make install clean ´N¥i¥H¤@¤f®ð§¹¦¨è©Ò»¡ make¡Bmake install¡B make clean ³o¤TÓ¨BÆJ¤F¡C
|
§ÚÓ¤H¬O²ßºD make all install clean, µø±¡ªp·|¥[Ó BATCH=YES
§Ú¥i¥H§â§Úªºµ§°O¦C¥X¨Óµ¹§A¬Ý... §Ú¦b PCDVD ªº id ¸ò¦b¨ä¥L½×¾Â id ¬O¤£¤@¼Ëªº, ©Ò¥H§Ú¥u¯d¤U subject.
§Ú«Ü¤[¨S¸I FreeBSD ¤F, ³o¤å¥ó¦³ÂIÂÂ, §Ú¥»¨¤£¬O MIS, §Ú¬O¼gµ{¦¡ªº¤H, ©Ò¥Hµ§°O¥u°O§Ú¦Û¤v»ÝnªºªF¦è.
;===============================================================================
; Subject: FreeBSD Ports & Package ³nÅé¦w¸Ë
; By:
; Date:
; Last Modify:
;===============================================================================
Step 1. ½s¿è make.conf ³]©w§ì¨ú disfiles ªº¥D¾÷¦ì§}
shell# vi /etc/make.conf
[make.conf]
# °ê¤º¥Dnªº FreeBSD distfiles mirror ¯¸¥x
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}/ \
ftp://ftp10.tw.freebsd.org/pub/FreeBSD/distfiles/${DIST_SUBDIR}/ \
ftp://ftp11.tw.freebsd.org/pub/FreeBSD/distfiles/${DIST_SUBDIR}/ \
ftp://ftp12.tw.freebsd.org/pub/FreeBSD/distfiles/${DIST_SUBDIR}/ \
ftp://ftp13.tw.freebsd.org/pub/FreeBSD/distfiles/${DIST_SUBDIR}/ \
ftp://ftp14.tw.freebsd.org/pub/FreeBSD/distfiles/${DIST_SUBDIR}/
MASTER_SITE_OVERRIDE?= ${MASTER_SITE_BACKUP}
[/make.conf]
Note: ©Ò¦³ªº ports ³£¦b /usr/ports/ ¥Ø¿ý¸Ì¡C
Reference:
http://netlab.cse.yzu.edu.tw/~statu...-tut/cvsup.html
Step 2. ´M§ä·Q¦w¸Ëªº³nÅé
;¨Ï¥Î whereis §ä¦Û¤v·Q¸Ëªº³nÅé
shell# whereis -a [software]
shell# whereis -a lynx
;©Î¥Î make search:
shell# cd /usr/ports
shell# make search key="cvsup" | grep Path: | more
;©Î¬O¥Î find ¤]¥i¥H:
shell# find -name "php4" -print | less
Step 3.¨Ï¥Î pkg_info Àˬd¬O§_¤w¦w¸Ë¸Ó³nÅé
shell# pkg_info | grep [software]
shell# pkg_info -IX [software]
Note:
1. ports ¦w¸Ë«á·|¥H package ªº«¬¦¡¦s¦b¡A©Ò¥H§Ú̥Πpkg_info ¨Ó¬d¸ß¡C
2. ©Ò¦³ package ¦w¸Ë«á·|¦b /var/db/pkg ¤¤°O¿ý¡C
3. pkg_info -x ¸ò -X ªº®t²§¬O -X ¬O extended regular expression¡C
Tips:
If you want to quickly check for duplicate package/port installations,
try the following pkg_info command.
pkg_info | sort | sed -e 's/-[0-9].*$//' | \
uniq -c | grep -v '^[[:space:]]*1'
Step 4. ¦w¸Ë³nÅé
; ¥i¥H¤À¨B°õ¦æ
shell# make fetch
shell# make depended
shell# make install
shell# make clean
; ©Î¤@¦¸¸Ë¦n
shell# make all install clean
±`¥Îªº ports «ü¥O
+---------------------------+-------------------------------+
|make install |¦w¸Ë |
+---------------------------+-------------------------------+
|make deinstall |¸Ñ°£¦w¸Ë |
+---------------------------+-------------------------------+
|make clean |²M°£¤u§@¥Ø¿ý |
+---------------------------+-------------------------------+
|make rmconfig |²M°£³]©w |
+---------------------------+-------------------------------+
|make rmconfig-recursive |²M°£³]©w(¥]§t¬Û¨Ì©Ê) |
+---------------------------+-------------------------------+
|make distclean |²¾°£ distfiles |
+---------------------------+-------------------------------+
|make package |»s°µ package |
+---------------------------+-------------------------------+
; §ó¦hªº ports «ü¥O¥i¥H°Ñ¦Ò
shell# man ports
Step 5. ¨Ï¥Î portupgrade ¨Ó³æ¿W§ó·s¤w¦w¸Ëªº³nÅé
; §ó·s ports-tree ¤§«e¤w¦w¸Ë portupgrade ªºª©¥»¡G
shell# pkg_info | grep portupgrade
portupgrade-2.1.3.3_1,2 FreeBSD ports/packages administration and management tool s
; §ó·s PORTS-TREE ¤§«á¡APORTS ¤¤ portupgrade ªºª©¥»¡G
shell# grep \PORTVERSION= /usr/ports/sysutils/portupgrade/Makefile
PORTVERSION= 2.2.2
; ¥H·sªº portupgrade ¨ú¥Nªº portupgrade-2.1.3.3_1,2
; -o ªí¥Ü§ÚÌn¨Ï¥Î origin ports-tree ¨Ó¤É¯Åª©¥»¡A«á±n±µ ports ªº¸ô®|
shell# portupgrade -o /usr/ports/sysutils/portupgrade portupgrade-2.1.3.3_1,2
; ¦AÀˬd¤@¦¸¡A¤w¸g¦¨¥\¤É¯Å
shell# pkg_info | grep portupgrade
portupgrade-2.2.2,2 FreeBSD ports/packages administration and management tool s
*** 2008¦~¤T¤ëµù ***
*** ·sª©ªº ports-tree ±N ports ¤u¨ã¿W¥ß¬° ports-mgmt ¥Ø¿ý¤F ***
shell# grep PORTVERSION= /usr/ports/ports-mgmt/portupgrade/Makefile
PORTVERSION= 2.4.3
Step 6. §ó·s©Ò¦³¦w¸Ëªº³nÅé
Note: §ó·s§¹ Ports-Tree «á¡A¤w¦w¸Ëªº³nÅé¨Ã¤£·|¸òµÛ§ó·s¡A¥²¶·³z¹L¤U±´XÓ¨BÆJ¨Ó§ó·s¤w¦w¸Ëªº³nÅé¡C
««Ø ports index
shell# portsdb -Uu
×¥¿ package ¬Û¨Ì©Ê
shell# pkgdb -aF
´ú¸Õ¤É¯Å(«D¥²n)
shell# portupgrade -an
°õ¦æ¤É¯Å
shell# portupgrade -acCvy
Note: °õ¦æ portsdb -Uu ®Én«Ü¤[¡A@¤ßªºµ¥¤@¤U¡C
¨ä¥L¬ÛÃöªº«ü¥O¡G
Àˬd»Ýn¤É¯Åªº ports
pkg_version -v
¥u¬Ýþ¨Çª©¥»»Ýn¤É¯Å(index ¥²¶·¬O up to date ªº)
pkg_version -IvL = ©Î pkg_version -Ivl '<' ©Î portversion -vl '<'
¦C¥X®M¥ó¦A¥á¶i¥h¤É¯Å
pkg_version -Iql '<' | xargs portupgrade
Hints
¥X²{Âŵøµ¡¿ï¶µ¦w¸Ë®É¤@«ß¨Ï¥Î¹w³]Ȧ۰ʦw¸Ë¡A¥[¤@Ó BATCH=yes §Y¥i¡A¦p¤U¡G
make BATCH=yes install
¦pªG¥X²{ pkg_info: the package info for package 'p5-IO-stringy-2.110' is corrupt ¤§Ãþªº°T®§¡A
³o·N«ä¬O»¡¡A§Aªº package ¸ê®Æ®w¤£¥¿½T¡A¥i¥H¨ì /var/db/pkg ¤Uªº¬ÛÃö¦WºÙ¥Ø¿ý¬Ý¡A¥i¯à¦³¬YÀɮׯʤַ|·´Ãa¡C
¦Ó¦pªG¦³¦w¸Ë portupgrade ªº¸Ü¡A¥i¥H¸Õ¸Õ pkgdb -F ¨Ó×¥¿¡A man pkgdb ¬Ý§ó¸Ô²Óªº°T®§¡C
©ÎªÌ«·s¦w¸Ë¿ù»~ªº package¡C
¦p¦ó¬Ý¬YÓ package ¦w¸ËªºÀɮסH(Ãþ¦ü Red-Hat ªº rpm -ql)
¨Ï¥Î pkg_info -IX ¥ý¬d§¹¾ã¦WºÙ¡AµM«á¥Î pkg_info -L ¨Ó¬Ý¡A¨Ò¦p¡G
# pkg_info -IX vim
vim-7.1.315 Vi "workalike", with many additional features
# pkg_info -L vim-7.1.315 | grep vimrc
Reference:
http://freebsd.sinica.edu.tw/~statu...book/ports.html
http://freebsd.sinica.edu.tw/piperm...ril/000013.html
http://www.lsps.tp.edu.tw/~gsyan/freebsd2001/ports.html
http://ohaha.ks.edu.tw/ports.htm
http://ohaha.ks.edu.tw/portupgrade.htm
http://ohaha.ks.edu.tw/portexec.htm
http://www.study-area.net/freebsd/h...o_use_ports.htm
http://freebsd.csie.nctu.edu.tw/han...andbook197.html