Chinaunix首页 | 论坛 | 博客
  • 博客访问: 832646
  • 博文数量: 97
  • 博客积分: 3042
  • 博客等级: 中校
  • 技术积分: 1610
  • 用 户 组: 普通用户
  • 注册时间: 2010-07-21 11:48
文章存档

2015年(1)

2014年(3)

2013年(4)

2012年(43)

2011年(44)

2010年(2)

分类: LINUX

2012-08-11 15:12:48

  1. 更新系统并移除孤立依赖的软件包 # emerge --update --deep --newuse world
    # emerge ----depclean
    # revdep-rebuild (搜索相应缺失的库,并且重新emerge相应的包,需安装gentoolkit,并需运行两次以便确
    认)
  2. emerge常用参数:
    • world | system world范围更广,包含了system,这是两个set,前面不用加--或-
    • -p --pretend 预览, 假装……
    • --ask 先予询问
    • --clean 清理系统
    • --unmerge 卸载,与emerge相反
    • --depclean 深度清理,移除与系统无关的包
    • --help 帮助文件
    • --verbose 详细内容
    • --search 查找
    • --searchdesc 从文件名和描述中查找,要慢一些
    • --update 升级软件包
    • --deep 计算整个系统的依赖关系
    • --emptytree 清空依赖树,一般不用,危险命令
    • --oneshot 一次性安装,不将其信息加入系统目录树
    • --onlydeps 只安装其依赖关系,而不安装软件本身
    • --tree 显示其目录树信息
    • --usepkg 使用二进制包
    • --usepkgonly 只使用二进制包
    • --fetchonly 仅下载安装包
    • --sync 从指定的rsync站点更新portage树, 先前所作所有portage树更改均失效
    • --newuse 使用新的USE FLAG,如有必要,需重新编译
    • --noreplace 更新system,但先前安装的软件不予覆盖
  3. 查找最快的mirror # mirrorselect -s3 -b10 -o -D >> /etc/make.conf 此命令对每个mirror均下载100k文件,以此确定最快源,要注意修改/etc/make.conf

  4. 系统升级 # emerge --sync 或 # emerge-webrsync (更新或称同步portage树)
    # emerge --update --deep --newuse world
    # emerge --depclean -pv 如果使用emerge-webrsync命令进行升级,可先下载最新的portage(以日期命名,而不要 用latest命名)至/var/tmp/emerge-webrsync/目录

  5. 查询包或者软件的信息
    • 查看安装XXX的情况,同时列出了使用的 USE 和LINGUAS # emerge -pv XXX
    • 在world中增加记录,避免自己已手动编译的软件被再次编译 # emerge -n fcitx (添加fcitx至emerge tree)
    • 查询XXX包用了什么 USE(需gentoolkit) # equery uses XXX
    • 找到 /bin/ls 所属包 #qfile /bin/ls
    • 列出 glibc 包所包含文件 # qlist glibc

  6. /etc/portage/package.*应用举例
    • package.use sys-apps/man-pages -nls
      sys-apps/pciutils -zlib
      media-libs/freetype bindist
      app-text/acroread linguas_zh_TW linguas_zh_CN linguas_en

      作用:

      不改变全局USE的同时,微调包的USE。 开始2个是说这2个包不使用相应的 USE,第三个说明要单独在这个包使用这个USE,最后一个是调整 LINGUAS 的,很容易明白。
    • package.keywords sys-apps/hdparm ~x86
      作用:

      指定相应的包的 KEYWORDS。比如你想 hdparm 包用 ~x86 的版本,而不用 x86 的版本,就用这个来指定。 注意,因为
      emerge 的设计,如果你的 make.conf 里边指定了 ~x86的话,你不能反过来通过指定 x86 而 不要 ~x86,只能用
      -~x86 来达到目的。 引用 gentoo@freenode 上的话: ”ACCEPT_KEYWORDS is incremental“
    • package.mask < sys-devel/libtool-1.5.23
      作用:
      屏蔽某个包某个版本,或者某些版本,甚至整个包。
      比如 libtool-1.5.23b 在我的系统有问题,那么就屏蔽一下,只用 比 1.5.23 小的。

    • package.unmask =net-www/apache-2.2.4 games-arcade/stepmania
      和 mask 一样,不过效果正好相反。我要用 2.2.4 的 apache,但是 portage 把他 mask 了,所以手动
      unmask 一下。
  7. 服 务管理
    • 往 default runlevel 里边加入 XXX 服务 (add) # rc-update -a XXX default
    • 从 default runlevel 里边删除 XXX 服务 (delete) # rc-update -d XXX default
    • 列出 default runlevel 所有的服务 (show) # rc-update -s default
  8. 删除过期的包 # eclean distfiles (请先 emerge gentoolkit)
  9. 清除emerge过程中产生的临时文件 # rm -rf /var/tmp/portage/*
  10. 清除所有安装源码包(除非太穷,否则不建议) # rm -rf /usr/portage/distfiles/*
  11. 配置文件更新工具 # etc-update 或
    # dispatch-conf 
阅读(2089) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~