FreeBSD源配置

更换pkg源

1. PKG二进制仓储源文件存储目录 的使用方法

系统中常用的PKG二进制仓储源文件存储目录有两个,一个是系统级仓储文件目录,另一个是用户级仓储文件目录,系统级仓储文件目录为 /etc/pkg/, 而用户级别仓储文件目录为 /usr/local/etc/pkg/repos/,这个目录在默认情况下并不存在于系统中,需要用户手工建立,而这两个路径均由 /usr/local/etc/pkg.confREPOS_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>

此步骤不是必须,如果保留系统仓储源文件,则系统默认源将和用户源一同有效

5. 更新源

所有源在使用前最好进行一次强制更新。比如:

#pkg update -f Updating ChinaFreeBSD 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%
nyi repository update completed. 25828 packages processed.
Updating TW repository 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 -r TW Updating 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.cn
SERVERNAME=freebsd-portsnap.mirror.bjtulug.org
SERVERNAME=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 提供了一个源码包缓存机制,也就是说获取源码包的方式可以从本地或者远程的缓存目录中进行统一获取,这样可以加速源码包的下载速度。

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就应该处于第二行的位置,依次类推!

更换update源

1.编辑update配置文件

#vi /etc/freebsd-update.conf

2.将默认服务器注释掉

#ServerName update.FreeBSD.org

3.更改服务器镜像

ServerName update.freebsd.cn
ServerName 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) 才可以!!

 
 
posted @ 2021-03-13 01:16  五龙  阅读(836)  评论(0)    收藏  举报