CentOS 脈搏 #0904 —— 2009 年 8 月 16 日

[INFO]

訂閱這份電子報? 我們已經設立了唯讀的 centos-newsletter 郵件列表,透過一個摘要及連結向訂閱的讀者發佈新出版的 CentOS 脈搏。你可以 在這裡訂閱

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 所追蹤。

Upload new attachment "MarcusMoeller96.png"
Geerd-Dietger Hoffmann
Christoph Maser

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 檔案時,有些事情你應該留意:

一個簡潔的 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 "%{巨集}" 這個指令。

Geerd-Dietger Hoffmann

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 的話,這個程式的確幫助很大。

Geerd-Dietger Hoffmann

5. 專訪

在這欄裡我們將會訪問一位開發者,或者與 CentOS 有關的人仕,好讓這個社區能夠認識為我們帶來這個奇妙操作系統的人們。

這個月我訪問了 Russ Herrold,他是 CentOS 的其中一位開國元勳。有一則趣聞,就是他年青時曾參加帆船比賽,這些船在美國名叫 InterLake 及 Thistle,屬於 6 M 級別。現在他已經很久沒有接觸這些東西,並需要出海來找尋安寧:

RussHerrold


首先你可否介紹一下自己?(工作、居住地點、等……) 我頗肯定我是 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 開啟很多個終端機工作階段。

當你不是看著螢幕時,你做甚麼?

我已經結婚很久了,並且享受與家人一起;我亦積極參與在教會裡,在一個幫助貧困者的本地機構內,及在童軍活動中。有一件事我不會做的,就是無所事事地坐在電視前,相反我每年會閱讀數百本書。

你最喜歡甚麼飲品?

一杯麥芽威士忌會穫得我全副注意力;要不然,按次數來說,鄰近咖啡店的(黑)咖啡是我最常飲用的東西,因此可算是我最喜歡的。

Geerd-Dietger Hoffmann

6. 笑話及趣聞

6.1. 你又做甚麼?

三位男的程式編寫員站在廁所的企廁前。 頭一位程式編寫員完成後,行到洗手盆清洗他的雙手。 接著他很小心地弄乾他的手。他用一張接一張的廁紙來弄乾手上的每一點水珠。 他轉向另外兩位並說:「在微軟,我們被培訓為非常貫徹的人。」 第二位程式編寫員完成他要辦的事情後便行去了洗手。它只用了一張廁紙,但確保用了廁紙上的每一部份來抹乾他的手。 他轉身並說:「在 Intel,我們除了被培訓為非常貫徹的人外,更被培訓為極度高效率。」 第三位程式編寫員完成後直接來到門口,並回頭嚷道:「在 Linux,我們不會撒尿在自己的手上。」

[來源]

6.2. 從 Debian 開發者角度看 LinuxTag 中的 CentOS

CentOS_too_good

7. CentOS 修正

這欄突出各個被支援的 CentOS 版本的最重要安全性更新。

大部份的 CentOS 4 更新將會延遲至快將發行的 CentOS 4.8。

7.1. CentOS-3

7.2. CentOS-4

7.3. CentOS-5

8. 新聞裡的 CentOS

下列文章提及 CentOS,因此它們是理解傳媒(以及公眾)如何看 CentOS 的一個好資源。

近期的「給 Lance 的公開信」是過去數週的主要話題,並在媒體和網誌裡引起不同見解:從「CentOS 計劃危在旦夕」「一切正常」。然而最關鍵的共鳴就是這個計劃有很多事情要做才能撥亂返正(關乎架構、發行及安全性更新方面)。

日期

刊物

標題/連結

2009-08-06

bMighty.com

Is Your Linux Distro Here For The Long Haul?

2009-08-03

ITWire

CentOS head reappears, project back on track

LWN

CentOS turbulence and enterprise Linux tradeoffs

2009-08-02

The Register

CentOS back from brink of death

ZDNet

CentOS: Getting Their S#!t Together is a Top Priority

2009-08-01

LWN

Progress at CentOS

2009-07-31

DesktopLinux

Is CentOS ready for the fork?

InformationWeek

The CentOS Shakeup

2009-07-30

LWN

Weirdness at CentOS

News.com

CentOS Linux developers threaten mutiny

The H

Growing unrest within the CentOS project

The Register

CentOS airs dirty laundry as admin 'vanishes'

2009-07-25

DistroWatch

Ongoing CentOS 5.3 on Netbook saga

2009-07-20

DistroWatch

Installing CentOS 5.3 on a Netbook - A Cautionary Tale

Geerd-Dietger Hoffmann

9. 未來活動

CentOS Promo 特別興趣小組安排在各類型的會議及展覽中設立據點(攤位、簡報)。我們在這裡突出未來的活動。如果你有興趣幫忙,請參加 Promo 特別興趣小組

下一個大型的聚會將會是 FrOSCon2009,當中我們會有自己的攤位,並會派發各類贈品。如果你的附近,這拜訪我們來與我們傾談,並參予這個不錯的會議。

10. 貢獻給這份電子報

我們要今期的電子報中刪除某些專欄,因為我們人手不足。這一切都是透過志願者而成就的,因此我們經常在尋找有與趣參興的人,報告關於 CentOS 社區動向、維護電子報內的一欄、寫一篇文章、或者提示我們可以寫關於哪些有趣的題目、議題、文章或人物。如果你想在在電子報內出現,你需要正面地貢獻給 CentOS 社區,並等待我們的記者留意到你 ;-)

我們特別有一頁收錄了更多關於如何參予的資訊

Translation of revision 31

zh-tw/Newsletter/0904 (last edited 2010-03-08 06:21:17 by TimothyLee)