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

Q1:我想把包下载到本地,方便以后安装,到哪儿下载呢?

A1:pkg用的包扩展名为txz,可以到http://pkg.freebsd.org里面下载。注意要分清用的是X86还是AMD64,主页面下方还有几个镜像可以使用,你可以挑一个快一点的。

Q2:我机器中没有pkg或者是版本比较老,但是需要安装txz软件包,应该怎么办呢?

A2:到上面的网址中下载最新的pkg,一般是pkg-2.x.x..txz,然后进入txz所有的目录,再执行:

tar xf ./pkg-1.2.1.txz -s ",/.*/,,g" "*/pkg-static"
./pkg-static add ./pkg-1.2.1.txz


第一句是把里面的pkg-static解出来,然后用pkg-static来执行pkg的安装。

另外,pkg-static是pkg的另一个静态编译的版本,不需要so依赖就能运行,可以用file命令来对比pkg和pkg-static。ldd命令对pkg-static无效的,但是对pkg则显示出一大堆依赖。

Q3:我需要安装到chroot目录中,怎么样实现呢?

A3::pkg 有个-c参数,专门用于chroot安装,先看示例:

pkg –c chroot /mnt/ add -f /temp/screen.txz


这个命令看似简单,而在实际执行的时候,会遇到很多问题:

(1)-c 参数必须紧跟着pkg,放到add之前,否则会遇到无效命令或命令错误的提示。原因是,-c是pkg的参数,add自已还有参数,这两者不能混淆。man pkg ,会发现它的命令格式为:

pkg 参数 command 子参数 

如果把 –c放到add 后面,则成为子参数,而子参数中并没有-c,所以就出现无效了。

(2)-f参数必须放到add 后面,原因同上,add的子参数可以man pkg-add

(3)screen.txz应该放在哪儿呢?是/temp/screen.txz还是/mnt/tmp/screen.txz?或者换一个角度思考:pkg是先chroot还是先读取txz文件?如果先chroot的话,那么txz就应该相对于chroot后的目录,也就是/mnt/temp/screen.txz;如果是先读文件,那么应该是/temp/screen.txz。你可以试一下,答案应该是前者,先chroot,再找文件。

注:原来的pkg-add系统,用的是后者。

该贴被wulcan编辑于2014-4-13 10:15:56

该贴由hui.chen转至本版2014-11-5 17:05:00



赞(0)    操作        顶端 
koei
版主
等级:大校
经验:4180
发帖:7
精华:0
注册:2011-7-21
状态:离线
发送短消息息给koei 加好友    发送短消息息给koei 发消息
发表于: IP:您无权察看 2014-4-17 4:57:02 | [全部帖] [楼主帖] 2  楼

楼主的头像怎么是叉叉? 北京联动北方科技有限公司



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