CentOS 脉搏 #0904 —— 2009 年 8 月 16 日
订阅这份电子报? 我们已经设立了只读的 centos-newsletter 邮件列表,通过一个摘要及连结向订阅的读者发布新出版的 CentOS 脉搏。你可以 在这里订阅! |
Contents
1. 前言
我现在送上新一期的电子月刊。它大部份是在 HAR2009 中写成,当中 CentOS 拥有自己的村落,并得多来自社区的人们拜访。可讨论的委实不少,因为近日发生的事情留下了深远影响。致 Lance 的公开信引起多方的响应,它似乎亦成为了焦点新闻。然而它不是唯一发生了的事情。
盼望你享受赶上最新的消息。
谨代表 CentOS 这个大家庭,
GeerdDietgerHoffmann —— 临时编辑
2. 发布
2.1. 内核 NULL 指标弱点
来自 Google 安全小组的 Julien Tinnes 及 Tavis Ormandy 最近发现一个自 2001 年起在所有结构上涉及全部 2.4 及 2.6 Linux 内核的弱点。这个弱点在 LWN 上发布。Brad Spengler 提供了一个利用它的方法。
这个错误已经被上游的 Bugzilla 所跟踪。
3. 包装 RPM 的最佳做法
在你开始包装之先,你应该设置一个包装环境。你应该能够以普通用户的身份来运用这些设置。如果你在 fedora/redhat 衍生的系统上进行包装,你可以借着安装 rpm-build、redhat-rpm-config 及 rpmdevtools 组件来进行简单的设置。有些预订的 rpm 设置将 %_topdir 设为某个只有 root 才能访问的目录。你应该在你的 ~/.rpmmacros 档内将 %_topdir 设为其它位置来局部覆盖这个设置。这个文件的内容可能会是这样: {{{%_unpackaged_files_terminate_build 0 %_topdir /tmp/yourname %buildroot %{_tmppath}/%{name}-build %_tmppath /tmp/yourname %packager yourname <yourname@yourserver.org> %_gpg_name %packager %vendor yourcompany }}}
当你写 SPEC 文件时,有些事情你应该留意:
- 保持简洁:尝试避免复杂的条件语句,除非是必须的。如果你有需要修改源代码,请考虑创建一个修正档并使用 patch 宏,而不要在 spec 文件内做每一件事情。
不用绝对路径:%files 段内的文件名称应该经常以宏起首(例如:%{_bindir}、%{_libdir} 等),%doc 的项目可作例外。
- 避免通配符:避免在 %files 段内使用通配符,因为当有更新时,新的或不存在的文件便会被检测到,而你应该避免将不必要的文件放置在 rpm 内。
尽可能使用宏,尤其是 %{name} 及 %{version},但如 %{__make} 及 %configure 等亦适用。
每行一个项目:针对 Requires、BuildRequires 等东西,它们应该逐行列出。这样做能简化找寻 spec 档之间的改动。
- 排序清单:如果你如上述所指有多个项目,将这个清单排序亦会帮助找寻改动。
一个简洁的 spec 文件就是 rpmforge 上的 htop 程序。它能简单地阐释上面所提及的技巧。
Summary: Interactive process viewer Name: htop Version: 0.8.3 Release: 1 License: GPL Group: Applications/System URL: http://htop.sourceforge.net/ Source: http://dl.sf.net/htop/htop-%{version}.tar.gz BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root BuildRequires: gcc >= 3.0 BuildRequires: ncurses-devel %description htop is an interactive process viewer for Linux. %prep %setup %build %configure %{__make} %{?_smp_mflags} %install %{__rm} -rf %{buildroot} %{__make} install DESTDIR="%{buildroot}" %clean %{__rm} -rf %{buildroot} %files %defattr(-, root, root, 0755) %doc AUTHORS ChangeLog COPYING INSTALL NEWS README %doc %{_mandir}/man1/htop.1* %{_bindir}/htop %{_datadir}/applications/htop.desktop %{_datadir}/pixmaps/htop.png %changelog * Wed Jun 24 2009 Dag Wieers <dag@wieers.com> - 0.8.3-1 - Updated to release 0.8.3.
以下是常见目录宏的列表:
%{_sysconfdir} /etc %{_prefix} /usr %{_exec_prefix} %{_prefix} %{_bindir} %{_exec_prefix}/bin %{_lib} lib (lib64 on 64bit systems) %{_libdir} %{_exec_prefix}/%{_lib} %{_libexecdir} %{_exec_prefix}/libexec %{_sbindir} %{_exec_prefix}/sbin %{_sharedstatedir} /var/lib %{_datadir} %{_prefix}/share %{_includedir} %{_prefix}/include %{_infodir} /usr/share/info %{_mandir} /usr/share/man %{_localstatedir} /var %{_initddir} %{_sysconfdir}/rc.d/init.d
要查看一个宏解扩充后的定义,你可以使用 rpm --eval "%{宏}" 这个指令。
4. 电子报提示栏
这栏将会介绍提示及有用的程序。如果你有一个好提示,或者想将一个很好用的程序公诸於世,请发电邮给我们。
今个月我想介绍 authconfig 这个程序。这个工具主要是为系统内的不同验证模块提供一个命令行界面,及提供一个设置它们的途径。你可以简单地用它来告诉系统使用 NIS、LDAP、Kerberos 5 或 SMB 来验证用户。最佳的解释就是采用一个简单的例子。WinbindADS 这个提示解释了好何通过 authconfig 令一个系统采用 windows 服务器来进行验证。 {{{# authconfig \ --update \ --kickstart \ --enablewinbind \ --enablewinbindauth \ --smbsecurity=ads \ --smbworkgroup=$ADSWorkgroup \ --smbrealm=$ADSDomain \ --smbservers=$ADSServer \ --winbindjoin=$AdminUser \ --winbindtemplatehomedir=/home/%U \ --winbindtemplateshell=/bin/bash \ --enablewinbindusedefaultdomain \ --enablelocauthorize }}} 你只需要这样做,便能设置一切及修改各个不同的文件。人手执行这些步骤会需要数个小时。
有一件事情你需要知道的,就是 authconfig-tui 已经被降级,并且不应再被采用。
很多人可能已经知道关於 system-config-authentication 这个图像界面程序。如果你采用 X 的话,这个程序的确帮助很大。
5. 专访
在这栏里我们将会访问一位开发者,或者与 CentOS 有关的人仕,好让这个社区能够认识为我们带来这个奇妙操作系统的人们。
这个月我访问了 Russ Herrold,他是 CentOS 的其中一位开国元勋。有一则趣闻,就是他年青时曾参加帆船比赛,这些船在美国名叫 InterLake 及 Thistle,属於 6 M 级别。现在他已经很久没有接触这些东西,并需要出海来找寻安宁:
首先你可否介绍一下自己?(工作、居住地点、等……) 我颇肯定我是 CentOS 核心开发者内最年长的一位。多数读者在 IRC 上会以 #centos 频道内那个粗暴、坏脾气的 Orc 来认识我。在那里我会尽所能为 centos 的系统管理员维系一个「苏格拉底发问法」的学习环境。我的本科大学对颁发「三重主修」学位并没有兴趣,因此我选修了经济学。接著我修读了一个法律学位,并且作了很多年的出庭律师。与此同时,我亦接触计算机方面的事情,并在接近二十年前转行专做计算机。
你的首部计算机是甚么?
技术上,首部计算机是 1964 年的一个注塑半加器,它是以不同长短的胶饮管来输入程序,导致短的金属线向左移或右移,这就是我们今日所谓的「触发器」。接著是一个以接插线来设计程序的磁簧继电器,它以灯来显示答案。然后我接触 IBM 509,它是用酚树脂打咭器及较美观的接插板来输入程序的。之后是 IBM 709 及 1620。我首部受薪来开发及操作的计算机是一台 IBM 1401。
你是如何开始采用 *NIX?
在接著的数十年,我继续受聘於服务机构及担任顾问。首先是大型计算机,进而兴起了规模计算机:我亲手绕接的 Intel 4004;Motorola 6800;一套处理器技术数据内的 Intel 8080;IBM 360 及 CDC 6600 上的商业程序;一个印刷 RPG II 解释器用的商业程序,编译给一台 Sycor 340 执行(内置一颗 8080,与及一台 30k 的硬盘) —— 差不多全部是用汇编语言,多数配合针对这些微型计算机的交叉编译器。我们多数以批次模式执行,因此类似 *nix 的占先式操作系统要不是不存在,就是由供应商所提供,以 IBM 360 为例。
当 Unix 这个概念冒出时,我在这个空间是活跃的;我会时不时试试新事物,并做了一些区部的操作系统开发。到了 1993 年,我开始即极地采用 'uix,而在 1994 至 1995 年间,我切换了它为作为我的首选环境。我试用过数款 BSD(当时 DDJ 杂志记载了 PC 版的 BSD 移植进程)。在我枱头上有全套 Craftworks Linux V2.0 的包装、光盘及小册子 —— 它们的序号是 0768。我当时仍未弄清楚免费开源代码对软件执照有甚么意义。到了 1995 年底,我已经提供 lib5(?)的修正给上游。
你如何成为一位 CentOS 开发者?
到了 2003 初,Red Hat 很明显会修订它处理 Linux 二进制程序的方法。当时本人及其它人都关注 RPM 组件将不会再公开发行;我联络了 Lawrence Livermore Berkeley 实验室的 Greg Kurtzer,并进行了数次电话会议来商讨前进的方案。这些都发生在 fedora.US 的早期尝试之后,当中我因为不同意管理上的某些问题而抽身离开了那个计划。
按照记忆,在 2003 年 6 月,Red Hat 宣布由 RHL 转移为今日的 RHEL,但我们在 cAos 大致上已解决了删除商标及重建系统的问题,主要是由於我与其它人在这方面已经下了不少功夫。
过了一会,CentOS 已经可以成为一个独立的计划。这样做亦为计划带来增长,因为坊间有很多以 RPM 为基础、活跃的「企业级重建者」,能够与我们合作,在某些情况下更容许将成果合并。由解决问题的开发者所组成的社区确实是妙极。
你主要在哪方面作出贡献?
我是这个计划的创办者之一;Lance Davis 很明显亦是其中一位。我希望在这里提及一位很有天赋的年青人,Rocky McGaugh。他在我的邮件存档中,是首位在 cAos 邮件里提及 centos 这个概念的人,而他与 John Newbigin 亦是首任的编译管理员。
Greg、Rocky 及本人曾在凤凰城举行的 Supercomputing 2003 内向一位 IBM 副总裁「推销」一个社区性的企业级及高性能运算平台,为要取得带宽及编译机器上的损赠,但我们只得到一个不起劲的响应。因不幸的,Rocky 已经不再在我们中间,因为雇用他的高性能运算公司烕胁要控告他违反了一个不披露协议(据他所说),而他不能承受这压力。
现在,我创建的组件来自上游发行的 SRPM、来自 Raw Hide、和一个本地镜像为很多计划所映射的源代码。基本上我从各方面查看计划中与沟通有关的事宜。很明显的,CentOS 如我所说是一个重视功劳的社区,而我通常会打醒精神,物适那些有专业精神、有才华、并与计划的目标一致人们。详细数据可参阅我的网志。
你希望在将来做甚么事情?
虚拟化对免费开源软件及规模计算机来说是一个「绿地」,亦拥有不可思议的契机。它亦可以采用随选网云运算来管理负荷。这些都配合我对 RPM,并系统性、专业组件与系统管理方面的兴趣。
你最喜欢哪一个程序?
利用 XFCE、X、konsole、连同 screen 打开很多个终端機工作阶段。
当你不是看著屏幕时,你做甚么?
我已经结婚很久了,并且享受与家人一起;我亦积极参与在教会里,在一个帮助贫困者的本地机构内,及在童军活动中。有一件事我不会做的,就是无所事事地坐在电视前,相反我每年会阅读数百本书。
你最喜欢甚么饮品?
一杯麦芽威士忌会获得我全副注意力;要不然,按次数来说,邻近咖啡店的(黑)咖啡是我最常饮用的东西,因此可算是我最喜欢的。
6. 笑话及趣闻
6.1. 你又做甚么?
三位男的程序编写员站在厕所的企厕前。 头一位程序编写员完成后,行到洗手盆清洗他的双手。 接著他很小心地弄干他的手。他用一张接一张的厕纸来弄干手上的每一点水珠。 他转向另外两位并说:「在微软,我们被培训为非常贯彻的人。」 第二位程序编写员完成他要办的事情后便行去了洗手。它只用了一张厕纸,但确保用了厕纸上的每一部份来抹干他的手。 他转身并说:「在 Intel,我们除了被培训为非常贯彻的人外,更被培训为极度高效率。」 第三位程序编写员完成后直接来到门口,并回头嚷道:「在 Linux,我们不会撒尿在自己的手上。」
来源]
6.2. 从 Debian 开发者角度看 LinuxTag 中的 CentOS
7. CentOS 修正
这栏突出各个被支持的 CentOS 版本的最重要安全性更新。
大部份的 CentOS 4 更新将会延迟至快将发行的 CentOS 4.8。
7.1. CentOS-3
- 2009:1134 重要 seamonkey 安全性更新(CVE-2009-2210)
- 2009:1154 极重要 dhcp 安全性更新(CVE-2009-0692、CVE-2009-1893)
- 2009:1163 极重要 seamonkey 安全性更新(CVE-2009-2462、CVE-2009-2463、……)
- 2009:1181 重要 bind 安全性更新(CVE-2009-0696)
- 2009:1185 极重要 seamonkey 安全性更新(CVE-2009-2404)
7.2. CentOS-4
- 2009:1180 重要 bind 安全性更新(CVE-2009-0696)
7.3. CentOS-5
- 2009:1138 重要 openswan 安全性更新(CVE-2009-2185)
- 2009:1148 重要 httpd 安全性更新(CVE-2009-1890、CVE-2009-1891)
- 2009:1162 极重要 firefox 安全性更新(CVE-2009-2462、CVE-2009-2463、……)
- 2009:1164 重要 tomcat 安全性更新(CVE-2007-5333、CVE-2008-5515、……)
- 2009:1179 重要 bind 安全性更新(CVE-2009-0696)
- 2009:1193 重要 kernel 安全性更新(CVE-2007-5966、CVE-2009-1385、……)
- 2009:1201 重要 java-1.6.0-openjdk 安全性更新(CVE-2009-0217、CVE-2009-2475、……)
- 2009:1203 重要 subversion 安全性更新(CVE-2009-2411)
8. 新闻里的 CentOS
下列文章提及 CentOS,因此它们是理解传媒(以及公众)如何看 CentOS 的一个好资源。
近期的「给 Lance 的公开信」是过去数周的主要话题,并在媒体和网志里引起不同见解:从「CentOS 计划危在旦夕」到「一切正常」。然而最关键的共鸣就是这个计划有很多事情要做才能拨乱返正(关乎结构、发行及安全性更新方面)。
日期 |
刊物 |
标题/连结 |
2009-08-06 |
bMighty.com |
|
2009-08-03 |
ITWire |
|
LWN |
||
2009-08-02 |
The Register |
|
ZDNet |
||
2009-08-01 |
LWN |
|
2009-07-31 |
DesktopLinux |
|
InformationWeek |
||
2009-07-30 |
LWN |
|
News.com |
||
The H |
||
The Register |
||
2009-07-25 |
DistroWatch |
|
2009-07-20 |
DistroWatch |
9. 未来活动
CentOS Promo 特别兴趣小组安排在各类型的会议及展览中设立据点(摊位、简报)。我们在这里突出未来的活动。如果你有兴趣帮忙,请参加 Promo 特别兴趣小组。
2009-08-22 → 2009-08-23: FrOSCon 2009,德国 St. Augustin —— 官方网站
2009-09-23 → 2009-09-24: OpenExpo Winterthur 2009,瑞士 —— 官方网站
2009-10-03 → 2009-10-04: T-DOSE 2009,荷兰 Eindhoven —— 官方网站
2009-10-05 → 2009-10-07: cPanel Conference 2009,美国休斯顿 —— 官方网站
2009-11-07 → 2009-11-08: Open Rhein Ruhr Conference 2009,德国 Bottrop —— 官方网站
下一个大型的聚会将会是 FrOSCon2009,当中我们会有自己的摊位,并会派发各类赠品。如果你的附近,这拜访我们来与我们倾谈,并参予这个不错的会议。
10. 贡献给这份电子报
我们要今期的电子报中删除某些专栏,因为我们人手不足。这一切都是通过志愿者而成就的,因此我们经常在寻找有与趣参兴的人,报告关於 CentOS 社区动向、维护电子报内的一栏、写一篇文章、或者提示我们可以写关於哪些有趣的题目、议题、文章或人物。如果你想在在电子报内出现,你需要正面地贡献给 CentOS 社区,并等待我们的记者留意到你
我们特别有一页收录了更多关於如何参予的信息!
Translation of revision 31