LinuxSir.cn,穿越时空的Linuxsir!

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

关于依赖重建,关于/var/lib/portage/world 文件重新生成

[复制链接]
发表于 2010-10-13 13:26:47 | 显示全部楼层 |阅读模式
我曾经运行过emerge -e world 但是大约emerge 了有一半的包后,我Ctrl+C 停下了,
并且记下了还没有emerge 的包的名字,写了个脚本 emerge 了这些包。
但是这样做后,很多原先依赖的包(并不是我明确要安装的,只是因为依赖而被安装的那些包)也被记录到world 文件中,当我emerge -C 一个软件后,那些本来的依赖包仍会留在系统中,我现在就是想重新生成一个world 文件,重新根据系统中现有的包,重建它们的关系,使world 文件减小
发表于 2010-10-13 15:59:45 | 显示全部楼层
Post by jixiuf;2115280
我曾经运行过emerge -e world 但是大约emerge 了有一半的包后,我Ctrl+C 停下了,
并且记下了还没有emerge 的包的名字,写了个脚本 emerge 了这些包。
但是这样做后,很多原先依赖的包(并不是我明确要安装的,只是因为依赖而被安装的那些包)也被记录到world 文件中,当我emerge -C 一个软件后,那些本来的依赖包仍会留在系统中,我现在就是想重新生成一个world 文件,重新根据系统中现有的包,重建它们的关系,使world 文件减小


首先先研究下emerge的man page
  1. man emerge
复制代码

特别看--one-shot這option可以讓你emerge而不加入world...當一切安定下來(emerge -e/-u world成功後)用
  1. emerge -a --depclean
复制代码

看有那些dep是不需要的。

另外如果你嫌world太大你可以:
  1. cat /var/lib/world/portage | while read pkg; do equery d $pkg; done
复制代码

看看那些package是其它的依賴。虽然嚴格來說你可以把有别人依賴它的package unemerge掉,但我习慣會保留比較大、自己拉進很多其它依賴的package。
回复 支持 反对

使用道具 举报

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

本版积分规则

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