百度空间 | 百度首页 
 
查看文章
 
Gentoo Quick Guide
2009-05-10 12:15 P.M.
Gentoo Quick Guide
From Gentoo Linux Wiki
Jump to: navigation, search

1. emerge

同步 portage tree (第一步)

emerge --sync


安装 XXX包 需要做什么,同时列出了使用的 USE 和 LINGUAS

emerge -pv XXX

安装 XXX包 需要做什么(树状列出)

emerge -pvt XXX

系统升级

emerge -uDN world

模拟系统升级

emerge -uDNpv world

模拟系统升级 (树状列出)

emerge -uDNpvt world

删除 XXX包

emerge -C XXX

不光顶,还要补充点好

比如编译gcc, qt 等大家伙时,有时因为不可抗拒的因素被迫重启系统或ctrl +c 之类的,可用两种方法继续,一是
代码:
sudo emerge --resume
这种适合你刚开始编译,紧接着上一次的继续,如果到了 99.9999%的时候被迫停止了,从头来太可惜了,可用第二种方法
代码:
sudo sh -c 'FEATURES=keepwork emerge foo'
来继续,当安完后别忘了到/var/tmp/portage/ 去清理,
特别是刚开始用GENTOO,看着屏幕闪啊闪的很爽,
其实对于大家伙,比如kde,gnome这些,晚上睡觉前,sudo emerge foo; sudo halt -p 就得了,明早顺利的话就OK了,或者下午弄好了命令显示器一关,跑去外面玩了

清理系统用不到的包

emerge -uDN world (推荐)
emerge --depclean
revdep-rebuild


2. 其他相关软件使用

搜索相应缺失的库,并且重新emerge相应的包。

revdep-rebuild (请先 emerge gentoolkit)

比如如果发现 /bin/ls 需要的 /lib/libacl.so.1 缺失,就会重新编译相关文件所在的包,以及所用到该文件的所在文件的包。

重新编译外部内核模块

module-rebuild (请先 emerge module-rebuild)

module-rebuild rebuild 就可以重新编译所有内核的 外部 模块。比如 nvidia/vbox 这类软件用到的模块。当然,你要先装过 nvidia包和 vbox模块包,这样 portage 才有记录。

配置文件更新工具

etc-update

另一个更好的配置文件更新工具

dispatch-conf


3. 查询

快速查询名字包含了 XXX 字符的包

eix XXX (先 emerge eix)

注意,需要每次 emerge --sync 後运行 update-eix 才会更新索引。


查询哪个包用了YYY这个USE

euse -i YYY

查询XXX包用了什么USE

equery uses XXX (请先 emerge gentoolkit)

找到 /bin/ls 所属包

qfile /bin/ls

列出 glibc 包所包含文件

qlist glibc

查询之前编译过 glibc 所费时间。

genlop -t glibc (请先 emerge genlop)

所有USE都可以在这里修改,不用手动修改 make.conf 了,很方便。

ufed (先 emerge ufed)

4. /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 上<kojiro>的话: ”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 一下。


5. 启动相关

default 是 gentoo 启动用的 runlevel,类似一般系统的 runlevel 3。

往 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


6. eLog 相关.

emerge 大量软件的时候,很多提示的消息都一闪而过,现在给你一个查看他们的方法。

首先 emerge log查看软件

emerge elogv

或者图形界面:

emerge elogviewer # GTK
emerge kelogviewer # KDE

其次,修改 /etc/make.conf 文件,加入

PORTAGE_ELOG_SYSTEM="save"
PORTAGE_ELOG_CLASSES="warn error info log qa"

你可以根据需求去掉一些信息,比如 qa(质量保证) 你不需要,就可以去掉。

这样设置後,每次 emerge 都会记录下相应的信息,可以方便的通过 elogv 查看了。

PS.感谢 r0bertz@gentoo.org 告诉我这个方法。


参考资料:

http://en.gentoo-wiki.com/Noobie_cheat_sheet
http://gentoo-wiki.com/HOWTO_Maintain_Gentoo_-_%22Best_Practices%22

PS. 感谢 manphiz 的帮忙整理。
取自"http://zh.gentoo-wiki.com/Gentoo_Quick_Guide"

类别:新羊初蹄 | 添加到搜藏 | 浏览() | 评论 (0)
 
最近读者:
 
网友评论:
发表评论:
姓 名:
网址或邮箱: (选填)
内 容:
验证码: 请点击后输入四位验证码,字母不区分大小写
      

     

©2009 Baidu