一、安装ports系统
有三种方法来安装 Ports 系统:

  1. 通过安装盘,安装系统的时候选择安装ports系统
    这是最简单的方法,但是也有缺点。因为 Ports 系统总是随时更新的。因此你从安装光盘上安装的 Ports 系统肯定不是最新的了。

  2. 使用 portsnap 安装/同步 ports 系统

这是推荐的方法。

使用portsnap不需要事先安装 ports tree,并且能够在任何时候恢复到已知的最新状态(即使手工对ports tree进行了修改)。

使用 portsnap 分成两个步骤:下载压缩的 portsnap 快照,和更新现有系统。下载或更新 portsnap 快照的方法是portsnap fetch;首次安装,或希望将 ports tree 恢复到快照的样子,应使用 portsnapextract;之后更新系统中的 ports tree,则可以通过 portsnap update 来完成。对于服务器而言,推荐在crontab 中增加在每天3点执行 portsnap cron,以减少使用时所需要的下载时间。

首次下载 portsnap快照时,需要下载一个大约50MB的快照基础文件。在中国大陆,由于网络状况的原因,这可能需要较长时间。可以考虑用 portsnap fetch-s portsnap.cn.freebsd.org 做首次下载;之后的下载,还是推荐使用正常的 portsnap fetch。

可以使用下面步骤完成上述情况

a>.首先设置一个比较快的portsnap服务器,如果系统默认的地址你的访问速度也很快,可以不修改

vi /etc/portsnap.conf
设置SERVERNAME=portsnap.cn.freebsd.org ,你可以设置相对你速度快点的服务器的地址

b>.执行下面命令

portsnap fetch extract 这里直接下载ports并且解压
这样就完成了下载ports系统以及解压到/usr下面了

c>.设置最快的ports镜像

用ports安装软件的时候,如果没有设置相对于你来说最快的ports服务器地址,那就会默认的 ftp://ftp.freebsd.org/pub/FreeBSD/ports/distfiles/,这个地址对于很多地方来说是很慢的。

修改 /etc/make.conf 加入以下代码

MASTER_SITE_OVERRIDE=
ftp://ftp.freebsdchina.org/pub/FreeBSD/ports/distfiles/${DIST_SUBDIR}
ftp://ftp.tw.freebsd.org/pub/FreeBSD/ports/distfiles/${DIST_SUBDIR}
如果你有最快的地址,可以加到上面去,下载就会块了

  1. 使用 csup/cvsup 安装/同步 Ports 系统

这种方法已经不再推荐使用。

不管事先你有没有安装 Ports 系统,你都可以使用 csup/cvsup (推荐使用csup,这是基本系统中自己带的)来安装/同步最新的 Ports 系统。把/usr/share/examples/cvsup/ports-supfile 拷贝到一个地方(比如/home/user/tmp/ports-supfile),然后作适当的修改(比如修改要连接的服务器)。最后使用如下命令来安装/同步:

csup -L 2 /home/user/tmp/ports-supfile

Ports 树的目录结构

假设你的 ports 树安装在默认位置 /usr/ports。

文件:

/usr/ports/CHANGES # ports 开发者、维护者等的记录文档。
/usr/ports/COPYRIGHT # ports 树的版权。
/usr/ports/GIDs # 一些 port 可能用到的组名称。
/usr/ports/INDEX-xxx # 每个 port 的摘要
/usr/ports/KNOBS # 编译 port 时需要的一些环境变量与解释。
/usr/ports/LEGAL # 某些 port 的协议限制。
/usr/ports/MOVED # 被移动/删除了的 port 列表。
/usr/ports/Makefile # ports 树总的 BSD Makefile。
/usr/ports/README
/usr/ports/UIDs # 一些 port 可能用到的用户名称。
/usr/ports/UPDATING # ports 树的更新记录以及建议。

目录:

/usr/ports/Mk # 编译 port 需要的 Makefile 集合。
/usr/ports/Templates # 一些模板。
/usr/ports/Tools # 一些工具。

除开以上文件和目录,其他所有的目录都是 ports。一个 port 的目录结构:

/usr/ports/分类/名称

比如 firefox 被分类在 www。因此 firefox 在 ports 树中的位置就是:

/usr/ports/www/firefox

二、使用 Ports 系统
1 查询

比如,你想知道 ports 中是否有 pidgin 这个软件,那么可以这样:

$cd /usr/ports
$make search key=pidgin

同样也可以使用

$cd /usr/ports
$make search name=pidgin

/usr/ports/README 中还有更多的例子可以参考。
2 安装

非常简单。比如你要安装 firefox,那么作为超级用户 root:

cd /usr/ports/www/firefox
make install clean
3 卸载

要卸载 firefox 的话:

cd /usr/ports/www/firefox
make deinstall clean
4 升级

要升级 firefox:

cd /usr/ports/www/firefox
make deinstall reinstall clean