Gentoo Logo

Gentoo月报: 2008年8月31日

内容:

1.  介绍

本月GMN

欢迎阅读7月份的Gentoo月报!

和往常一样,你可以在对应的论坛帖子里面讨论与本期月报相关的任何问题。我们期待听到您的声音!

2.  Gentoo新闻

PHP4已从Portage树中移除

在8月8日,上游终止了PHP4上的全部工作,不会再发布新的安全补丁和bug修复。从2007年10月,PHP4就已经在Portage树中被强制屏蔽了(由于安全原因),现在它已彻底从Portage树中移除

如果条件允许,你应当升级到PHP5。这是一个仍然有bug修复和安全更新支持的版本。

如果你或你的公司还没有升级到PHP5,这里有一个PHP4的overlay。尽管如此,因为它们仍然包含许多的安全漏洞,所以我们并不推荐在面向公众的服务上使用这些老版本的PHP4软件包。

理事会议摘要

Gentoo理事在8月18日举行了月度会议。这里是日程表;晚些时候,他们将就已提议的基金会章程投票。

近期活动

  • Bugday:想找到不花太多时间就能帮助Gentoo的方式吗?在9月6日参加我们每月一次的bugday活动,帮助我们捉一些bug吧。
  • 议会会议:Getoo议会会议每个月都会召开两次会来讨论影响整个Gentoo的重要技术问题。下次会议计划在9月14日UTC时间20:00,在irc.freenode.net的#gentoo-council频道举行,欢迎大家参与。
  • 理事会议:9月19日。

3.  倾听社区

采访:Google代码之夏中的学生Nandeep Mali

在我们对代码之夏学生们进行的第三次采访中,我们和Nandeep Mali进行了对话,他正在做“Setting Beacon Afloat”方面的工作。继续阅读下去可以了解更多关于他和他的项目的信息。

GMN:向我们简单介绍一下你自己吧。你从哪来?在哪上学?学什么专业?你有没有主页或是能让爱好者了解你的其它方式?

Nandeep:大家好!:)我来自印度。我在斋浦尔NIT大学学习计算机工程,并于今年5月份完成了本科学业(B.Tech)。以前我的主页和博客在miniorb.in,但现在那只是一个等待维护的空域名。大家可以常给我发邮件或是到Freenode上找我(别名为n9986)。

GMN:你在加入代码之夏前是否已经是Gentoo或开源中的一员了?如果是的话,请跟我们讲讲你是如何选择的,为什么你喜欢编写开源的代码。

Nandeep:今年的夏天是我第一次参加这种让人上瘾的活动。:D

我一直对整个网络前端(就是web)的概念比较感兴趣,觉得web应用比本地应用更有用,我想把我的精力都投入到web应用上。

当我在寻找一个合适的项目的时候我在Gentoo的项目页面发现了这个有趣的点子。因为我认识Anant(游戏中的战友),我跟他讨论了Beacon的可行性。在草案阶段rane热心的回应帮助我了解了Gentoo社区。看到我的项目页面显示“申请已接受!”的那个时刻真是棒极了。

从那之后我有了很大的进步,因为我通过挂在#gentoo-dev频道上和邮件列表学到了有关Gentoo的不少东西。

GMN:到目前为止,你在Gentoo社区的体验怎么样?

Nandeep:我很高兴能与这些精干又有才华的开发者接触。文档编写得很好,用户参与贡献也很容易。虽然有谣言说投入Gentoo不好玩,我却觉得这里的人们都很和善也很专业。

GMN:请给我们的读者简单介绍一下你正在进行的项目,你为什么觉得它对Gentoo用户有用?什么促使你开始这个项目?对这个项目你有什么目标?

Nandeep:这个项目重新启动了沉睡的“Beacon”项目(是的,我们很高兴接受最佳项目名称奖),它是Anant Narayanan在2006年的代码之夏中创立的项目。像rane所说的,我让这个工具复活,把Gentoo文档团队从中世纪式的在线编辑(vim和cvs)当中解脱出来。代码基础很健壮,让我拥有一个很好的开头。

Beacon有很多特性。它的富文本编辑器可以帮助节省很多时间,而且与文档站点结合以后可以用它来对文档进行简便的wiki式的编辑。非常有用的repodoc-web模块已经就位,(类似Google Docs的)合作式编辑器应该会给文档团队的工作方式带来一些有趣的改变。

事实上我对这次访谈的回答就是在Beacon的富文本编辑器上打出来的,大概节省了GMN一点时间。^_^

GMN:你在编程之余都做些什么?(爱好,兴趣,最喜欢的电视节目之类)

Nandeep:动漫,游戏,听喜欢的音乐(取决于情绪),读托尔金的奇幻小说,罗尔德·达尔的怪异故事,还有在网上翻看杂七杂八的东西。电视对我来说是个陌生的概念。当然我从来不把编程看作工作。:)

GMN:谢谢你接受采访!

Planet Gentoo

并行编译Zac Medico宣布了Portage新的并行编译功能,Jeremy Olexa进行了一些初步测试

新的软件包集合Zac Medico介绍了Portage 2.2 RC版本中增加的软件包集合

新的IRC机器人:因为IRC机器人Jeeves完成了他的使命,Robin H. Johnson做了个替代品:Willikins

另一本电子书Sven Vermeulen谈论了他的一本关于Linux的且主要介绍Gentoo的书的进展

Gentoo相关新闻

Gentoo最近被Linux Identity杂志法文版推荐。有些文章是Gentoo开发者Olivier FisetteLuis Francisco Araujo所写。其中的部分甚至可以在线浏览 (法文)。

Tigase:一个基于Gentoo的LiveCD

Tigase是一个新的基于Gentoo的发行版。此项目致力于开发XMPP(Jabber)服务器和基于web,AJAX的客户端。

此LiveCD包含了Tigase服务器、Drupal CMS和Dovecot IMAP4服务器,这些都已预先配置好并作为一个系统运行。所有服务使用同一个用户数据库进行认证。你既可以直接使用Jabber客户端在示例网站发布新闻,也可以用Jabber客户端接收新的评论、帖子的通知。详见它的下载页面。这个LiveCD演示了Tigase的Jabber代码是怎么与其他系统整合的。

虽然此项目的代码是用Java写的,但开发平台一直用的是Gentoo Linux,而且所有的Tigase服务器均基于Gentoo Linux。所以用Gentoo来做LiveCD也是自然的选择。它使开发者在对所安装组件和程序进行管理方面拥有充分的灵活性和控制力。此外,开发者还能够容易地用Portage更新所有的包。

此LiveCD是32位的环境,这样可以使其在尽可能多的平台上运行。但它是在64位的Gentoo上准备和建立的。尽管架构有所不同,建立LiveCD还是相当容易与顺畅的。

Tin Hat:一个基于Hardened Gentoo的LiveCD

Tin Hat是一个基于Hardened Gentoo的LiveCD。它的目的是提供一个非常安全、稳定、快捷的完全驻留在RAM中的桌面环境。它是一个巨大的磁盘镜像(2.3GB),可以在启动时把自己加载到tmpfs中,所以不需从CD挂载任何文件系统。Tin Hat也可以从USB盘中运行,这样启动时间会短些。不论用CD还是USB盘,一旦Tin Hat运行在内存中,它就非常快了,而且之后再也不去访问启动介质了。

Tin Hat非常重视安全性,甚至致力于“信息零丢失”——它的开发者为确保数据在机器甚至被入侵者物理上获取后仍保证数据的安全都采取了措施。为使系统免受网络/代码漏洞方面的攻击,Tin Hat加上了GRSEC、PAX和其他巧妙办法的层层保护。更多关于Tin Hat的安全性、速度及原理方面的信息可以在它的项目页面上找到。

Tin Hat通过模板使制作你自己的版本变得容易。你甚至能够保存一个当前正在运行的Tin Hat系统的快照,并以此快照为基础完成定制、增添文件等工作。

想试用Tin Hat?请到此获取

4.  心得技巧

使用lsof来查找正在使用中的文件和目录。

你是否在删除文件或卸载装置时遇到过一些问题,即便你以root用户操作也解决不了?很有可能是因为设备挂载处的文件或文件夹正在被另一个用户或程序使用中。本期的心得技巧告诉你如何查找哪个用户或程序正在使用你要删除的文件或文件夹。

首先安装lsof工具:

代码 4.1: 安装lsof

# emerge lsof

lsof会列举出系统使用中的文件。一个使用中的文件可以是你正在使用其它程序编辑、阅读中的一个文件,也可以是你正在浏览的一个文件夹。下面举例说明如何在卸载设备时出现拒绝卸载的问题中使用lsof工具。比如拉里牛想把几天前装载的一个CD-ROM卸载了,当他试着操作时,得到了如下的错误信息:

代码 4.2: 卸载一张CD

# umount /mnt/cdrom
umount: /mnt/cdrom: device is busy
umount: /mnt/cdrom: device is busy

/mnt/cdrom正被使用中。由于拉里不记得是什么程序正在使用光驱,他运行了lsof,并得到如下提示:

代码 4.3: 使用lsof

# lsof | grep /mnt/cdrom
bash  6453   larry  cwd  DIR  7,0  2048  1856 /mnt/cdrom
su    15774  root   cwd  DIR  7,0  2048  1856 /mnt/cdrom

前两个字段标注的是进程名称和进程ID,第三个字段是进行的所有者,第四个是文件描述信息,之后的字段分别为文件类型、设备号、文件大小、节点号码,最后是文件名。文件描述信息也即文件类型,在这个实例中此处是cwd,或者当前工作目录。这表明用户larry在某处把自己的shell目录指向了/mnt/cdrom。由于拉里打开了很多shell程序,他决定缩小范围以查找可能占用设备的shell程序:

代码 4.4: 检查shell

# lsof -R | grep /mnt/temp
bash  6453   6437   larry  cwd  DIR  7,0  2048  1856 /mnt/cdrom
su    15774  6453   root   cwd  DIR  7,0  2048  1856 /mnt/cdrom

此时多出现了一个字段,显示出了bashsu的父进程。正如你所看到的,subash的子进程。这可能意味着拉里在使/mnt/cdrom一直处于忙碌状态的那个bash会话中运行了su。接下来,拉里查找到bash的父进程:

代码 4.5: 查找父进程

# ps aux | grep 6437
larry  6437  0.0  0.7  38880 24628 ?  S  Aug09  9:00 konsole [kdeinit] -session 10be696

拉里使用Konsole做为他的终端程序。因此他知道必须在Konsole的其中一个窗口中寻找相应的bash会话。拉里运行pstree已找到可能的Konsole窗口:

代码 4.6: 查找Konsole

# pstree 6437
konsole-+-bash---python---{python}
        |-2*[bash]
        |-bash---su---bash---pstree
        |-2*[bash---su---bash]
        |-bash---su---bash---vi
        |-bash---ssh
        `-bash---su---bash---man---sh---sh---less

利用这些信息,拉里进一步缩小自己的推测范围,定位于第四个bash会话,该会话中运行了su。为使/mnt/cdrom不再处于忙碌状态,他退出了su终端并使用cd命令退出了/mnt/cdrom目录。

lsof也可用于其他用途。例如,你可以用它来监控网络连接:

代码 4.7: 监控网络连接

# lsof -i TCP:22
COMMAND  PID   USER   FD  TYPE  DEVICE SIZE NODE NAME
sshd    6094   root   3u  IPv4    9145      TCP *:ssh (LISTEN)
ssh     9962 andrey   3u  IPv4 3489405      TCP larry.cow:35467>larry.bull:ssh (ESTABLISHED)

此处我们看到了监听ssh连接的sshd服务和一个向外连接的ssh会话。

lsof工具的/usr/share/lsof/scripts/文件夹下还有一些脚本。大部分脚本在如何更好地监视系统用户方面会对你有所帮助。

5.  人员变更

总结

Gentoo现在有242名活跃的开发人员,当前43人暂时离队。从Gentoo成立至今,先后共招募过649名开发人员。

离开

下列开发者最近离开Gentoo项目:

  • Chris Gianelloni (wolf31o2)
  • Nguyen Thai Ngoc Duy (pclouds)
  • Benjamin Smee (strerror)
  • Guillaume Destuynder (kang)
  • Christian Heim (phreak)
  • Antoine Raillon (cab)
  • Benigno Batista Júnior (bbj)
  • Stefan Knoblich (stkn)
  • Ingmar Vanhassel (ingmar)
  • Bo Ørsted Andresen (zlin)

加入

下列开发者最近加入Gentoo项目:

  • Jesus Rivero (neurogeek) 加入了Python团队

变更

下列开发者最近改变了在Gentoo项目内的职位:

  • Ben de Groot (yngwin) 加入了LXDE团队

6.  Portage

总结

这一小节总结了Portage树当前的状态。

统计汇总
架构 15
类别 151
12839
ebuilds 24971
关键字分布
架构 稳定 测试 合计 %占总包数
alpha 3685 461 4146 32.29%
amd64 7203 4041 11244 87.58%
arm 1590 112 1702 13.26%
hppa 2712 567 3279 25.54%
ia64 3230 597 3827 29.81%
m68k 494 21 515 4.01%
mips 1004 787 1791 13.95%
ppc 6366 2910 9276 72.25%
ppc64 3493 657 4150 32.32%
s390 1194 50 1244 9.69%
sh 1407 62 1469 11.44%
sparc 4852 1313 6165 48.02%
sparc-fbsd 0 367 367 2.86%
x86 9432 3217 12649 98.52%
x86-fbsd 0 2730 2730 21.26%

图示 6.1: 不同架构的软件包分布

Fig. 1: 不同架构的软件

下面的部分列出了Portage树中新近加入和删除的包。删除软件包的操作来自于多个地方,包括uri link="/proj/en/qa/treecleaners/">树清理者项目

已经移除:

包: 移除日期: 联系人:
dev-db/freecdb 2008年8月01日 Akinori Hattori
mail-client/claws-mail-pdf-viewer 2008年8月03日 Christian Faulhammer
包: 移除日期: 联系人:
www-apps/knowledgetree 2008年8月09日 Christian Hoffmann
dev-php4/ZendOptimizer 2008年8月09日 Robin H. Johnson
dev-php4/adodb-ext 2008年8月09日 Robin H. Johnson
dev-php4/creole 2008年8月09日 Robin H. Johnson
dev-php4/eaccelerator 2008年8月09日 Robin H. Johnson
dev-php4/ffmpeg-php 2008年8月09日 Robin H. Johnson
dev-php4/jargon 2008年8月09日 Robin H. Johnson
dev-php4/jpgraph 2008年8月09日 Robin H. Johnson
dev-php4/pecl-apc 2008年8月09日 Robin H. Johnson
dev-php4/pecl-crack 2008年8月09日 Robin H. Johnson
dev-php4/pecl-fileinfo 2008年8月09日 Robin H. Johnson
dev-php4/pecl-http 2008年8月09日 Robin H. Johnson
dev-php4/pecl-id3 2008年8月09日 Robin H. Johnson
dev-php4/pecl-imagick 2008年8月09日 Robin H. Johnson
dev-php4/pecl-json 2008年8月09日 Robin H. Johnson
dev-php4/pecl-mailparse 2008年8月09日 Robin H. Johnson
dev-php4/pecl-memcache 2008年8月09日 Robin H. Johnson
dev-php4/pecl-pdflib 2008年8月09日 Robin H. Johnson
dev-php4/pecl-ps 2008年8月09日 Robin H. Johnson
dev-php4/pecl-radius 2008年8月09日 Robin H. Johnson
dev-php4/pecl-sqlite 2008年8月09日 Robin H. Johnson
dev-php4/pecl-tidy 2008年8月09日 Robin H. Johnson
dev-php4/pecl-translit 2008年8月09日 Robin H. Johnson
dev-php4/pecl-yaz 2008年8月09日 Robin H. Johnson
dev-php4/pecl-zip 2008年8月09日 Robin H. Johnson
dev-php4/php-java-bridge 2008年8月09日 Robin H. Johnson
dev-php4/phpdbg 2008年8月09日 Robin H. Johnson
dev-php4/phpunit 2008年8月09日 Robin H. Johnson
dev-php4/suhosin 2008年8月09日 Robin H. Johnson
dev-php4/syck-php-bindings 2008年8月09日 Robin H. Johnson
dev-php4/xcache 2008年8月09日 Robin H. Johnson
dev-php4/xdebug 2008年8月09日 Robin H. Johnson
包: 移除日期: 联系人:
mail-mta/xmail 2008年8月24日 Torsten Veller

已经加入:

包: 加入日期: 联系人:
sci-geosciences/osmosis 2008年7月28日 Hanno Boeck
sci-geosciences/mkgmap 2008年7月28日 Hanno Boeck
media-libs/sublib 2008年7月29日 Steve Dibb
dev-python/pygene 2008年7月30日 Jesus Rivero
dev-perl/Text-Markdown 2008年7月30日 Torsten Veller
dev-perl/CGI-FormBuilder 2008年7月30日 Torsten Veller
app-emacs/tempo-snippets 2008年7月30日 Ulrich Müller
app-misc/tmux 2008年7月30日 Sven Wegener
dev-java/lucene-analyzers 2008年7月30日 Jean-Noël Rivasseau
x11-libs/xpyb 2008年7月30日 Donnie Berkholz
dev-util/radare 2008年7月31日 Ioannis Aslanidis
net-misc/wicd 2008年7月31日 Jeremy Olexa
dev-perl/LWP-Authen-Wsse 2008年8月01日 Torsten Veller
dev-perl/XML-Atom 2008年8月01日 Torsten Veller
dev-perl/Feed-Find 2008年8月01日 Torsten Veller
dev-perl/URI-Fetch 2008年8月01日 Torsten Veller
dev-perl/XML-Feed 2008年8月01日 Torsten Veller
dev-perl/LWPx-ParanoidAgent 2008年8月01日 Torsten Veller
dev-perl/Net-OpenID-Consumer 2008年8月02日 Torsten Veller
net-misc/switzerland 2008年8月03日 Cédric Krier
net-analyzer/nagvis 2008年8月03日 Tobias Scherbaum
dev-java/glassfish-transaction-api 2008年8月03日 Petteri Räty
java-virtuals/transaction-api 2008年8月03日 Petteri Räty
sci-chemistry/xds-bin 2008年8月03日 Donnie Berkholz
包: 加入日期: 联系人:
sci-chemistry/arp-warp-bin 2008年8月04日 Donnie Berkholz
games-action/wordwarvi 2008年8月04日 Michael Sterrett
sys-apps/ack 2008年8月04日 Rajiv Aaron Manglani
media-libs/libass 2008年8月05日 Alexis Ballier
media-sound/a2jmidid 2008年8月06日 Alexis Ballier
www-apps/horde-dimp 2008年8月07日 Gunnar Wrobel
app-doc/casting-spels-emacs 2008年8月08日 Ulrich Müller
dev-libs/luafilesystem 2008年8月08日 Matsuu Takuto
dev-util/luadoc 2008年8月08日 Matsuu Takuto
app-emacs/bongo 2008年8月08日 Ulrich Müller
app-emulation/virtualbox-guest-additions 2008年8月10日 Markus Ullmann
包: 加入日期: 联系人:
x11-plugins/pidgin-msn-pecan 2008年8月18日 Bernard Cafarelli
dev-db/m17n-contrib 2008年8月18日 Matsuu Takuto
net-analyzer/symon 2008年8月19日 Peter Volkov
net-analyzer/syweb 2008年8月19日 Peter Volkov
dev-python/python-scw 2008年8月20日 Jesus Rivero
net-wireless/iwl5000-ucode 2008年8月21日 Tony Vroon
dev-python/webut 2008年8月21日 Jesus Rivero
dev-perl/LWP-UserAgent-Determined 2008年8月22日 Torsten Veller
dev-perl/Net-Amazon-S3 2008年8月22日 Torsten Veller
x11-drivers/xf86-input-synaptics 2008年8月22日 Tony Vroon
x11-wm/echinus 2008年8月22日 Ben de Groot
dev-perl/XML-SAX-Expat 2008年8月23日 Torsten Veller
dev-perl/Net-LibIDN 2008年8月23日 Torsten Veller
sys-libs/mars 2008年8月23日 Luca Barbato
dev-perl/Email-Date-Format 2008年8月23日 Torsten Veller
dev-python/gnome-python-base 2008年8月24日 Arun Raghavan
dev-python/gconf-python 2008年8月24日 Arun Raghavan
dev-python/gnome-vfs-python 2008年8月24日 Arun Raghavan
dev-python/libgnomecanvas-python 2008年8月24日 Arun Raghavan
dev-python/libbonobo-python 2008年8月24日 Arun Raghavan
dev-python/libgnome-python 2008年8月24日 Arun Raghavan

7.  Bugzilla

统计信息

Gentoo社区采用Bugzilla(bugs.gentoo.org)来记录和跟踪bug、消息、建议和开发团队所用的其他事务。下面的饼图显示了2008年7月27日至8月29日间Bugzilla的运行情况。


图示 7.1: Bug活动构成

Fig. 1: Bug活动

在当前还未被修复的11946个bug中:14个被标为blocker106个被标为critical422被标为major

被修复的bug排行榜

在这段时间内修复最多bug的开发者和团队有:

排名 开发者/团队 Bug数
0 其它 931
1 Gentoo Linux Gnome桌面团队 65
2 Gentoo核心系统软件包团队 47
3 Gentoo安全 44
4 Gentoo游戏 41
5 Python Gentoo团队 34
6 media-video团队 33
7 Portage团队 27
8 Gentoo Linux bug wranglers 26
9 Gentoo non-Linux Team 26

图示 7.2: Bug关闭排行榜

Fig. 2: Bug关闭

bug分配排名

在这段时间内被分配得到最多bug的开发者和团队有:

排名 开发者/团队 Bug数
0 其它 720
1 新软件包的默认受托人 85
2 Gentoo安全 53
3 Gentoo Linux Gnome桌面团队 30
4 Gentoo KDE团队 26
5 Gentoo核心系统软件包团队 25
6 Java团队 21
7 Gentoo工具链维护者 20
8 Gentoo/BSD团队 20
9 Gentoo X packagers 18

图示 7.3: Bug分配排行榜

Fig. 3: Bug分配

8.  加入我们

GMN的内容依靠志愿者和社区成员提供。如果您有兴趣为GMN写文章,请将纯文本或GuideXML格式的文章寄到gmn-writers@gentoo.org

注意: 下一期的投稿截止日期为:2008年9月19日。

我们热盼所有月报读者的反馈。如果你对文章、栏目有什么主意,或者对GMN有什么想法,不要犹豫,赶快发信给gmn-feedback@gentoo.org

你可以把关于GMN的反馈和评论发表到该页面

9.  月报订阅

订阅Gentoo月报,请发一封空邮件到gentoo-gmn+subscribe@gentoo.org

退订Gentoo月报,请从你订阅的邮箱发一封空邮件到gentoo-gmn+unsubscribe@gentoo.org

10.  其他语言

Gentoo月报有下列语言的版本:



打印

更新于2008年 8月 31日

总结: 这是第八期GMN月报,覆盖时段为2008年7月至8月。

Anant Narayanan
Editor

Joshua Saddler
Editor

Andrey Falko
Author

Christian Faulhammer
Author

Olivier Fisette
Author

Artur Hefczyc
Author

Anthony G. Basile
Author

温安邦
Translator

殷铭
Translator

胡晓可
Translator

徐浩洋
Translator

刘清
Translator

何志通
Translator

张乐
Reviewer

Donate to support our development efforts.

Copyright 2001-2012 Gentoo Foundation, Inc. Questions, Comments? Contact us.