FreeBSD源配置
更换pkg源
1. PKG二进制仓储源文件存储目录 的使用方法
系统中常用的PKG二进制仓储源文件存储目录有两个,一个是系统级仓储文件目录,另一个是用户级仓储文件目录,系统级仓储文件目录为 /etc/pkg/, 而用户级别仓储文件目录为 /usr/local/etc/pkg/repos/,这个目录在默认情况下并不存在于系统中,需要用户手工建立,而这两个路径均由 /usr/local/etc/pkg.conf 中 REPOS_DIR 变量控制,原则上可以由用户自由定制。
2. 建立通用户级PKG二进制仓储源文件存储目录
#mkdir -p /usr/local/etc/pkg/repos
3. 建立常用的用户级PKG二进制仓储源文件
#cd /usr/local/etc/pkg/repos
建立仓储源文件的格式要求为:必须使用 .conf 为后缀名结尾的文件。最好使用 “0.” 或者 “1-” 等数字为前缀的文件名,因为同时启用多个 PKG 源文件时,PKG源文件名的第一个数字前缀直接影响着源的使用优先级,其文件格式的建立如下:
定制第一个仓储文件为 0.ChinaFreeBSD.conf
chinafreebsd: {
url: "pkg+http://pkg.freebsd.cn/${ABI}/quarterly",
mirror_type: "srv",
signature_type: "none",
fingerprints: "/usr/share/keys/pkg",
enabled: yes
}
定制第二个仓储文件为 1.TW.conf
nyi: {
url: "pkg+http://pkg0.twn.freebsd.org/${ABI}/quarterly",
mirror_type: "srv",
signature_type: "none",
fingerprints: "/usr/share/keys/pkg",
enabled: yes
}
定制第三个仓储文件为 2.USTC.conf
ydx: {
url: "pkg+http://mirrors.ustc.edu.cn/${ABI}/quarterly",
mirror_type: "srv",
signature_type: "none",
fingerprints: "/usr/share/keys/pkg",
enabled: yes
}
定制第四个仓储文件为 3.BJTU.conf
isc: {
url: "pkg+http://freebsd-pkg.mirror.bjtulug.org/${ABI}/quarterly",
mirror_type: "srv",
signature_type: "none",
fingerprints: "/usr/share/keys/pkg",
enabled: yes
}
4. 禁用默认 PKG 仓储源
可以直接禁用系统级源文件,换源的主要目的是增加 pkg install 命令下载速度,或者是不能忍受默认源的龟速,用户可以直接禁用系统默认的官方源。比如:
#echo "FreeBSD: { enabled: no }" > /usr/local/etc/pkg/repos/FreeBSD.conf
注意:
</span></h3>
此步骤不是必须,如果保留系统仓储源文件,则系统默认源将和用户源一同有效
</span></h3>
5. 更新源
所有源在使用前最好进行一次强制更新。比如:
#pkg update -fUpdatingChinaFreeBSDrepository catalogue... Fetching meta.txz: 100% 944 B 0.9kB/s 00:01 Fetching packagesite.txz: 100% 6 MiB 268.1kB/s 00:22 Processing entries: 100% nyi repository update completed. 25828 packages processed. UpdatingTWrepository catalogue... Fetching meta.txz: 100% 944 B 0.9kB/s 00:01 Fetching packagesite.txz: 100% 1 KiB 0.0kB/s 01:00 ......
或者更新某个想要使用的源。比如:
#pkg update -rTWUpdating bme repository catalogue... Fetching meta.txz: 100% 944 B 0.9kB/s 00:01 Fetching packagesite.txz: 100% 6 MiB 268.1kB/s 00:22 Processing entries: 100% bme repository update completed. 25828 packages processed.
6. 用 -r 选项使用任意指定源安装软件
安装二进制安装包时可以使用 -r 选项选定要使用的源,源名称为源文件中第一行中冒号之前的名称 比如 TW
#pkg install -y -r TW emacs
如果只想保持一个源可以把要禁用conf内的enabled: yes改为enabled:no
更换portsnap源
1.编辑portsnap配置文件
#vi /etc/portsnap.conf
3.将默认服务器注释掉
#SERVERNAME=portsnap.FreeBSD.org
4.更改服务器镜像
SERVERNAME=portsnap.freebsd.cnSERVERNAME=freebsd-portsnap.mirror.bjtulug.orgSERVERNAME=portsnap.tw.freebsd.org#SERVERNAME=portsnap.hshh.org(2,3,4)
5.下载ports快照
#portsnap fetch extract
6.更新
#portsnap update
之后只要使用这个命令更新就行了
更换ports源
1. ports源简介
- FreeBSD 的 ports 系统是在当前系统下通过源码方式安装和管理软件包的管理器,当安装软件包时,如果需要对软件包的附加功能进行定制时,我们需要从源码的方式编译安装软件,除此情况以外建议使用 FreeBSD 下的 PKG 系统进行二进制安装软件包。
- FreeBSD 的 ports 管理器中所维护的源码获得途径在默认情况下是通过源码官网的发布主站获取。但是 FreeBSD 提供了一个源码包缓存机制,也就是说获取源码包的方式可以从本地或者远程的缓存目录中进行统一获取,这样可以加速源码包的下载速度。
- 在 FreeBSD 9.0 以前,官方 ports 缓存目录的位置为 ftp://ftp.freebsd.org/pub/FreeBSD/ports/distfiles/ 目录,此目录的权限为可浏览权限。但是由于安全等原因在 FreeBSD 9.0 以后 ports 缓存目录被移到 http://distcache.FreeBSD.org/ports-distfiles/ 目录下,并且权限为不可浏览,只能通过已知的源码包名称直接获取,而且封闭了镜像接口。
2. 更换 ports 源(远程源码缓存目录)
如果不想让源码直接从源码所为维护的官方主站上直接获取,那么我们需要为 ports 系统指定远程缓存目录,也就是通常所说的 ports 换源。换源的方法如下:
1、为了能使用官方ports源,你需要修改或创建/etc/make.conf添加如下配置:
MASTER_SITE_OVERRIDE?=\ http://distcache.FreeBSD.org/ports-distfiles/
其中第一行意义为使用地址覆盖指令覆盖掉 ports 中默认下载地址,而第二行则表示需要使用的新地址。
2、使用第三方非授权源替代官方源,需要修改/etc/make.conf添加如下配置:
MASTER_SITE_OVERRIDE?=\ http://ftp2.za.freebsd.org/pub/FreeBSD/ports/distfiles/
3.如需使用China FreeBSD 源,需要修改/etc/make.conf添加如下配置:
MASTER_SITE_OVERRIDE?=\ http://ports.freebsd.cn/distfiles/
4.如需使用多个源地址,需要修改/etc/make.conf添加如下配置:
MASTER_SITE_OVERRIDE?=\ http://ports.freebsd.cn/distfiles/ \ http://mirrors.ustc.edu.cn/freebsd-ports/distfiles/ \http://freebsd-pkg.mirror.bjtulug.org/ports-distfiles/\
http://ftp2.za.freebsd.org/pub/FreeBSD/ports/distfiles/ \
http://distcache.FreeBSD.org/ports-distfiles/
其中第2-5行结尾处的“\”表示换行。
技巧:
</span></h3>
速度越快的源地址应该优先级越高,也就是越靠上,比如:ChinaFreeBSD 源的速度是最快的,那么USTC就应该处于第二行的位置,依次类推!
</span></h3>
更换update源
1.编辑update配置文件
#vi /etc/freebsd-update.conf
2.将默认服务器注释掉
#ServerName update.FreeBSD.org
3.更改服务器镜像
ServerName update.freebsd.cnServerName freebsd-update.mirror.bjtulug.org
4.使用如下的命令下载(同版本内子版本升级)
#freebsd-update fetch
5.安装
#freebsd-update install
重要:
如果出现了错误,可以使用 #freebsd-update rollback 回退到上一次的修改。
6.跨版本升级使用如下命令
#freebsd-update upgrade -r 11.0-RELEAS
更新后重启再次执行freebsd-update install
注意:
</span></h3>
目前 update.freebsd.cn 包含了 FreeBSD 5.5 至
12.1的所有RELEASE版本,不包含BETA以及RC版本的升级文件。另外,如果进行跨版本升级,首先要把当前子版本号升级到最高版本才可以,比如:(9.3-RELEASE-p45,
10.1-RELEASE-p37, 10.2-RELEASE-p20 or 10.3-RELEASE-p6) 才可以!!
</span></h3>

浙公网安备 33010602011771号