LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 812|回复: 7

Gentoo的一个疑问

[复制链接]
发表于 2009-8-29 18:18:12 | 显示全部楼层 |阅读模式
Gentoo将软件包编译完成后, 使用FakeRoot的方法将软件安装在/var/tmp/portage/packagename/image 目录, 然后将这个目录打包, 信息放入数据库, 然后将这个目录的所有文件复制到根目录下.

问题1. Gentoo用什么工具整理image目录, 记录软件信息?
问题2. Gentoo将这些信息放到什么样的数据库中, 以便equery查询?

望各位不吝解答
发表于 2009-8-29 18:24:00 | 显示全部楼层
我也想听听。
回复 支持 反对

使用道具 举报

发表于 2009-8-29 23:14:32 | 显示全部楼层
image目錄是什麽意思。如果是說那個fakeroot的環境是誰營造的,那個叫sandbox。

數據在/var/db/pkg中。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-8-30 00:07:21 | 显示全部楼层
最新进展
ebuild install : 负责调用ebuild文件的install函数, 将软件安装到FakeRoot中
ebuild qmerge : 负责从FakeRoot中抽取文件信息, 打包, 放到数据库, 并拷贝(?)到系统根目录.

看来要读ebuild代码了. 难道...下一个要学习的语言是Python?
回复 支持 反对

使用道具 举报

发表于 2009-8-30 02:32:59 | 显示全部楼层
gentoo的系统维护工具基本上是python的,比如portage工具及其扩展工具

不过redhat系统配置工具一股脑都是python的了,这个算不了什么

另外,emerge的查询是通过检索文件目录的方式进行的,速度比较慢,可以使用eix来创建缓存进行查询,速度非常快,而且支持在所有的overlays查找指定的包。
回复 支持 反对

使用道具 举报

发表于 2009-8-30 02:41:27 | 显示全部楼层
都说了不是fakeroot
还fakeroot, fakeroot
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-8-30 10:03:09 | 显示全部楼层
Post by zhllg;2021789
都说了不是fakeroot
还fakeroot, fakeroot


呵呵, fakeroot这个词我是从LFS手册上听说的
他说几乎所有的发行版都用fakeroot的方式

貌似image目录就是这样
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-8-30 10:10:46 | 显示全部楼层
Post by 亞利艾爾;2021748
image目錄是什麽意思。如果是說那個fakeroot的環境是誰營造的,那個叫sandbox。

數據在/var/db/pkg中。


sandbox 貌似用类似钩子的机制跟踪所有的文件操作
不过大部分软件包不用启动sandbox, 因为如果他们采用了auto tools
只有对那些顽固不化拒不使用auto tools的软件包, 且不允许安装目录不同于文件最终运行的位置
的软件包, 才启动sandbox.

貌似有个paco项目, 全程用钩子跟踪所有的文件操作, 好累..
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表