emerge一些命令

来源:互联网 发布:淘宝个人申请企业店铺 编辑:程序博客网 时间:2024/06/05 21:20

同步portage树

emerge --sync


emerge xxx #安装

emerge --search xxx #查询

emerge -vp xxxx #查询已安装

emerge --info #查看use

equery l  | grep apache #查询已安装

emerge -C mozilla  #删除

--unmerge #卸载

--depclean
深度清理,移除与系统无关的包

-deep
计算整个系统的依赖关系

emerge -pv XXX #查看安装XXX的情况,同时列出了使用的 USE 和LINGUAS

equery uses XXX #查询XXX包用了什么 USE(需gentoolkit)



USE标记分两类:全局和局部USE标记。
   全局USE标记适用范围是整个系统,可以被许多包使用。这就是大多数人眼里的USE标记。
   局部USE标记只被单个包用来做该包特有的决定。
当前可用的全局USE标记列表可以在网上或者本机的/usr/portage/profiles/use.desc文件里找到。
当前可用的局部USE标记列表可以在本机的/usr/portage/profiles/use.local.desc 文件里找到。


通过在/etc/make.conf里定义USE全局变量来实现的。在这个变量里,添加你需要的额外的USE标记,或者移去你不需要的USE标记。后者可通过在标记前面加个负号(“-”)前缀来实现。


为单个包声明USE标记

如果你想要为一个(或者几个)程序而不是系统范围内声明一个USE标记,你需要创建/etc/portage目录(如果没有这个目录的话),然后编辑/etc/portage/package.use文件。通常这是一个文件,不过它也可以是一个目录;请看man portage以获得更多信息。下面的例子假设package.use是一个文件。

比如说,如果你不想全局的启用berkdb支持,但是你想把它应用到mysql,你可以这样:
代码 2.3: /etc/portage/package.use示例
dev-db/mysql berkdb


你当然也可以直接为某一个程序禁用USE标记。比如说,如果你不想要PHP的java支持:
代码 2.4: /etc/portage/package.use第二个示例
dev-php/php -java

重构

emerge --update --deep --newuse world

revdep-rebuild

原创粉丝点击