Gentoo emerge 命令用法总结

来源:互联网 发布:数据救援大师破解版 编辑:程序博客网 时间:2024/06/05 05:15
Gentoo 的包管理工具称为portage(类似于 yum 和 apt).  而 emerge (类似于Debian的apt-get,Redhat 的yum 和 Suse的zypper命令)是作为portage的前端使用 portage 的命令。


一. ebuild

ebuild 是 Portage 包管理器的根本。它是 /usr/portage 的子目录下的很多个*.build纯文本文件,而每一个ebuild都会对应一个包(软件包)。ebuild会告诉 portage要下载的文件、该包可运行的平台、如何编译它、它所依赖的ebuild和一些修补代码的patch。Portage内有一个ebuild大集合,称为Portage tree,是gentoo网站所提供的ebuild。它包含了大部份常用的包,并且可以更新。


二. USE标志

USE标志的设置位于Gentoo系统的 /etc/make.conf 文档中,作用是使得 emerge 在处理依赖关系的时候可以做到不安装不需要的软件包(例如安装 Gnome 的用户没有必要因为一个软件包的依赖关系而安装KDE与Qt),而安装指定的软件包(同样以Gnome举例,Gnome的用户基本上都会安装GTK+),把系统的设置专注化。


三. Gentoo 的 emerge 命令参数用法详解

查看binary包依赖
# emerge -gp mozilla
# emrege --getbinpkg --pretend mozilla

查看依赖关系(这个包已经装了)
# emerge -ep opera
# emerge --emptytree --pretend opera
(不用pretend会重新编译这所有依赖的包,glibc因为安全关系没有列出)

只安装其依赖的软件
# emerge -o opera
# emerge --onlydeps opera


安装特定版本的软件

# emerge "=python-3.2"
# emerge "<python-3.2"


升级软件
# emerge -u opera
# emerge --update opera

升级系统软件
# emerge -u system

升级整个系统

# emerge -u world

world 来自 /var/lib/portage/world

当然,可以加个 p (再加个v就完美了),看看看是不是自己想要的:

# emerge -pvu world


避免升级覆盖掉版本更高的软件
# emerge -uU world
# emerge --update --upgradeonly world
安装了masked 软件包,升级时可能会降级处理的


查看某软件包可用的USE参数

# emerge -pv vim

这个就非常有用了


临时设置USE 并以临时的USE 变量emerge 软件包

# USE="-minimal" emerge -1 xinit 

这里的USE变量 -minimal 不用写入 /etc/make.conf, 且只对 当前 emerge 有效。

-1 等效于 --oneshort 告诉 portage 不将此软件包(此处是xinit ) 加入 world ( /var/lib/portage/world )


如果想以某种规则(USE)永久性的安装某软件包,那么在 /etc/portage/package.use 文件里添加如下一行内容:
# echo x11-apps/xinit -minimal >> /etc/portage/package.use

添加后,就会 以 USE="-minimal" 安装 xinit 了, 而且是永久性的(除非删掉此行)

不存在 /etc/portage/ 目录的话,手动创建之:

# mkdir -p /etc/portage




参考:

http://www.ha97.com/3192.html

http://www.funtoo.org/wiki/Funtoo_Linux_First_Steps


原创粉丝点击