emerge 命令学习笔记
emerge 是 Gentoo Linux 系统上的包管理器,用于安装、更新和删除软件包。
常用选项
安装选项
-a: 使用所有可用的USE标志安装软件包。
-d: 安装软件包时不安装任何依赖。
-f: 强制安装软件包,即使它已经被安装。
-g: 下载并使用二进制包。
-i: 安装软件包时不考虑依赖。
-k: 使用二进制包而不是源代码编译。
-l: 在安装前显示软件包的变更日志。
-n: 不添加安装的软件包到世界集合。
-o: 只安装软件包的依赖。
-p: 演示将要执行的操作,但不实际执行。
-r: 重建世界集合中的软件包。
-s: 安装软件包时包含推荐的依赖。
-u: 更新已安装的软件包到最新版本。
-v: 显示详细信息。
依赖和构建选项
–buildpkg: 建立二进制包。
–buildpkgonly: 只建立二进制包,不安装。
–changed-use: 重新安装改变了USE标志的软件包。
–complete-graph: 构建完整的依赖关系图。
–config-root: 设置配置根目录。
–debug: 启用调试模式。
–deep: 考虑软件包的整个依赖树。
–fetchonly: 只下载源代码。
–fetch-all-uri: 下载源代码中的所有内容。
–getbinpkg: 使用二进制包。
–getbinpkgonly: 只使用二进制包,不编译源代码。
–ignore-default-opts: 忽略默认选项。
–jobs: 设置并发构建的作业数。
–keep-going: 出错时继续安装其他软件包。
–load-average: 根据系统负载平均数限制并发作业数。
–main-repo-only: 只从主仓库安装软件包。
–noconfmem: 忽略配置文件记忆。
–nodir: 不创建目录。
–oneshot: 安装软件包但不添加到世界集合。
–onlydeps: 只安装依赖,不安装软件包本身。
–package-moves: 执行必要的包移动操作。
–pretend: 演示将要执行的操作。
–quiet: 减少输出信息。
–rebuild-exclude: 排除重新构建的软件包。
–rebuild-if-new-slot: 如果新版本有不同的插槽,则自动重建软件包。
–rebuild-if-new-ver: 如果新版本不同,则自动重建软件包。
–rebuild-if-unbuilt: 如果源代码未构建,则自动重建软件包。
–rebuild-binaries: 用重建的二进制包替换已安装的包。
–skipfirst: 跳过第一个软件包。
–sysroot: 设置系统根目录。
–tree: 显示软件包的依赖树。
–unordered-display: 显示未排序的合并列表。
–usepkg: 使用二进制包。
–usepkgonly: 只使用二进制包,不编译源代码。
–useoldpkg: 优先使用旧的二进制包。
–with-bdeps: 包含非严格必需的构建依赖。
环境变量
ROOT: 设置系统根目录。
PORTAGE_CONFIGROOT: 设置 Portage 配置目录。
输出
emerge 命令的输出包括各种状态标志,如 U 表示更新,D 表示降级等。
注意事项
在安装或更新之前,使用 --pretend 选项预览将要执行的操作。
使用 --update 选项自动更新已安装的软件包。
在命令行上指定的 USE 标志会覆盖默认设置。
文件
/etc/portage/make.conf: 包含构建过程的变量设置。
/etc/portage/color.map: 包含颜色设置。
/etc/portage/sets/: 包含用户定义的软件包集合。
/var/lib/portage/world: 包含用户指定的软件包列表。