[原创]简述FreeBSD的pkg配置_VMware, Unix及操作系统讨论区_Weblogic技术|Tuxedo技术|中间件技术|Oracle论坛|JAVA论坛|Linux/Unix技术|hadoop论坛_联动北方技术论坛  
网站首页 | 关于我们 | 服务中心 | 经验交流 | 公司荣誉 | 成功案例 | 合作伙伴 | 联系我们 |
联动北方-国内领先的云技术服务提供商
»  游客             当前位置:  论坛首页 »  自由讨论区 »  VMware, Unix及操作系统讨论区 »
总帖数
1
每页帖数
101/1页1
返回列表
0
发起投票  发起投票 发新帖子
查看: 2681 | 回复: 0   主题: [原创]简述FreeBSD的pkg配置        下一篇 
wulcan
版主
等级:中校
经验:1795
发帖:124
精华:0
注册:2014-3-19
状态:离线
发送短消息息给wulcan 加好友    发送短消息息给wulcan 发消息
发表于: IP:您无权察看 2014-12-26 17:05:54 | [全部帖] [楼主帖] 楼主

FreeBSD现在使用pkg来安装、查询、卸载软件了,但是它的具体配置却很少资料提及。现总结一下它的配置。

首先需要知道怎么样查看当前的配置,是去查看配置文件吗?不是,配置文件还不一定马上起效呢:

# pkg -vv
Version : 1.4.1
PKG_DBDIR = "/var/db/pkg";
PKG_CACHEDIR = "/var/cache/pkg";
PORTSDIR = "/usr/ports";
INDEXDIR = "";
INDEXFILE = "INDEX-10";
HANDLE_RC_SCRIPTS = false;
ASSUME_ALWAYS_YES = false;
REPOS_DIR [
"/etc/pkg/",
"/usr/local/etc/pkg/repos/",
]
PLIST_KEYWORDS_DIR = "";
SYSLOG = true;
ABI = "FreeBSD:10:amd64";
ALTABI = "freebsd:10:x86:64";
DEVELOPER_MODE = false;
VULNXML_SITE = "http://vuxml.freebsd.org/freebsd/vuln.xml.bz2";
FETCH_RETRY = 3;
PKG_PLUGINS_DIR = "/usr/local/lib/pkg/";
PKG_ENABLE_PLUGINS = true;
PLUGINS [
]
DEBUG_SCRIPTS = false;
PLUGINS_CONF_DIR = "/usr/local/etc/pkg/";
PERMISSIVE = false;
REPO_AUTOUPDATE = true;
NAMESERVER = "";
EVENT_PIPE = "";
FETCH_TIMEOUT = 30;
UNSET_TIMESTAMP = false;
SSH_RESTRICT_DIR = "";
PKG_ENV {
}
PKG_SSH_ARGS = "";
DEBUG_LEVEL = 0;
ALIAS {
}
CUDF_SOLVER = "";
SAT_SOLVER = "";
RUN_SCRIPTS = true;
CASE_SENSITIVE_MATCH = false;
LOCK_WAIT = 1;
LOCK_RETRIES = 5;
SQLITE_PROFILE = false;
WORKERS_COUNT = 0;
READ_LOCK = false;
PLIST_ACCEPT_DIRECTORIES = false;
IP_VERSION = 0;
AUTOMERGE = true;
VERSION_SOURCE = "";
CONSERVATIVE_UPGRADE = false;
Repositories:
FreeBSD: {
      url : "pkg+http://pkg.tw.FreeBSD.org/FreeBSD:10:amd64/latest",
      enabled : yes,
      mirror_type : "SRV",
      signature_type : "FINGERPRINTS",
      fingerprints : "/usr/share/keys/pkg"
}


pkg -vv命令显示当前的pkg配置(你没看错,确实是两个v,否则只显示很少的信息),主要分了两段,其实对应两个文件,上半部分是一些变量,下面是仓库的配置。

上面的部分对应的文件是/usr/local/etc/pkg.conf,这里面主要是pkg功能方面的配置,比如pkg本身的位置,cache的位置,当前的版本号,仓库配置文件位置等等,还有连网超时时间等,这些都比较好理解,就不再一一解释了。

pkg.conf最下方还可以定义了很大一部分的别名(alias),以后就不需要那么输入那么多的字了,比如官方的配置示例文件中:

ALIAS : {
all-depends: query %dn-%dv,
annotations: info -A,
build-depends: info -qd,
download: fetch,
iinfo: info -ix,
cinfo: info -Cx,
isearch: search -ix,
csearch: search -Cx,
leaf: query -e "%a == 0" "%n-%v",


比如以后在使用pkg query -e "%a == 0" "%n-%v"的时候,就可以直接用pkg leaf代替了,工作量少了许多。

在pkg -vv信息的下面Repositories部分,对应的是pkg的仓库,这个配置对应/etc/pkg/FreeBSD.conf,当然也可以在上面提到的pkg.conf中改掉这个位置。

这个文件没有什么好说的,内容也就是上面显示的那些,基本上是一字不差地照搬的,我们可以使用的只有第一行:

url             : "pkg+http://pkg.tw.FreeBSD.org/FreeBSD:10:amd64/latest",


默认的为pkg.FreeBSD.org,在我们神奇的国度里,最好还是改为日本或台湾的镜像吧,速度不是一个级别的。

另外注意,这个协议部分,是pkg+http的,至少说明三点:

(1)pkg和http两种协议都可以;

(2)pkg是自己写的一种协议,不是通用的协议;

(3)既然是http,那么你就可以用浏览器去浏览和下载,可以把常用的一些软件包下载下来备用,这样能方便不少。

该贴由hui.chen转至本版2015-1-5 10:17:03




赞(0)    操作        顶端 
总帖数
1
每页帖数
101/1页1
返回列表
发新帖子
请输入验证码: 点击刷新验证码
您需要登录后才可以回帖 登录 | 注册
技术讨论