Red Hat Enterprise Linux AS 3 發行公告


概要

這個《發行公告》含括下列的主題:

  • 啟動 Anaconda

  • 安裝程式相關的摘要

  • 關於輸入法的摘要

  • 一般摘要

  • 核心摘要

啟動 Anaconda

這個部份描述啟動 Red Hat Enterprise Linux 安裝程式 Anaconda 的必要程序。

第一片光碟是可開機的,而且可以使用來啟動安裝程式,假如您不要使用光碟為主的安裝方式(例如您想透過網路連線來安裝 Red Hat Enterprise Linux 3),在第一片光碟上的 images/ 目錄中的 boot.iso 檔案含有用來啟動安裝程式所需的光碟映像檔案。

安裝相關的摘要

這個部份描述與 Red Hat Enterprise Linux 安裝程式 Anaconda 相關的議題。

  • Red Hat Enterprise Linux 3 處理光碟片的順序已經變更了,當您要開機安裝程式時,您需要第一片光碟,還有在所有之後的光碟片都處理完後。

  • Red Hat Enterprise Linux 安裝程式擁有測試安裝媒體完整性的功能。 這個功能可使用在 CD、硬碟 ISO 檔以及 NFS ISO 檔等的安裝方式。 Red Hat 建議您在開始安裝過程以及回報任何安裝相關的問題前(許多之前已回報的問題都是因為不當燒錄的 CD 所造成),先測試所有的安裝媒體。 如要使用這個測試,請在 boot: 提示符號下輸入 linux mediacheck

  • Red Hat Enterprise Linux 3 包含一個稱為 hugemem 的新核心,這個 核心支援 4GB 的每一個程序使用者空間(其他的核心僅支援到 3GB),以及 4GB 的 直接核心空間。 使用這個核心將允許 Red Hat Enterprise Linux 在含有 64GB 主要記憶體的系統上執行。 在含有超過 16GB 記憶體的系統設定下,您需要 hugemem 核心以使用所有的記憶體。 這個 hugemem 核心也對含有較少記憶體的設定有利(例如當您執行需要較大的每一程序 使用者空間的應用程式時)。

    為了要提醒您這個問題,當您的系統設定含有超過 16GB 的記憶體時,Red Hat Enterprise Linux 3 核心將會於開機時顯示一個訊息,在系統開機後,下列的指令可以使用來檢查系統是否有 顯示該訊息:

    dmesg | less

    注意: 如要提供 4GB 的位址空間給核心與使用者空間,核心必須維護兩個分開的虛擬 記憶體位址映射圖,當您從使用者空間傳輸例如系統呼叫與中斷值到核心空間時,將會 增加系統的負載。 這個系統負載對整體效能的影響完全是取決於應用程式的。

    也請您特別注意,由於某些驅動程式原本並非是為大容量記憶體環境所撰寫的,當您 使用 hugemem 核心時,Red Hat 只支援一個檢驗過的驅動程式子集。 Red Hat 所檢驗過可 用於 hugemem 核心的驅動程式已包含在 kernel-hugemem 套件 中。 尚未檢驗過的驅動程式(不過我們仍然提供)可在 kernel-hugemem-unsupported RPM 中找到。 如需這些 RPMs 中所附的驅動程式清單,請使用下列指令:

    rpm -qlp <kernel-rpm>

    (這裡的 < kernel-rpm> 就是適當 hugemem RPM 的完整檔案名稱,請注意,可以在第二片光碟片上的 RedHat/RPMS/ 目錄找到這些 RPMs。)

    如果 hugemem 核心的額外系統負擔與可使用之驅動程式的子集不會對您的硬體設定 與系統環境造成任何問題,而且您想要使用 hugemem 的核心,您必須先安裝它。 如要安裝 hugemem 的核心,請在登入為 root 之後,輸入下列指令:

    rpm -ivh <kernel-rpm>

    (這裡的 <kernel-rpm> 就是 hugemem 核心 RPM 檔案的名稱 — 例如 kernel-hugemem-2.4.21-3.EL.i686.rpm。)

    在安裝完成後,請重新啟動您的系統,並確實選取新安裝的 hugemem 核心,在執行 hugemem 核心時,對您系統的正常操作進行測試之後,您應該要修改 /boot/grub/grub.conf 檔案才能使得系統預設開機 hugemem 核心。

  • Red Hat Enterprise Linux 3 可以被安裝在 IBM eServer xSeries® 440 與 445,然而安裝過程支援不超過一部以上 CEC (Central Electronics Complex) 以及不連接 RXE-100 Remote Expansion Enclosures 的配置。 假如您的系統配置並不符合這些需求,您可以移除任何額外的 CECs 亦或 RXE-100, 然後再執行安裝。 一旦安裝完成後,便可以重新安裝 CEC 亦或 RXE-100。而它們將會 在 Red Hat Enterprise Linux 下正常地運作。

  • Red Hat Enterprise Linux 3 現在已經含有對 邏輯磁區管理 (LVM) 的支援,LVM 是一種分配磁碟空間到一或多個邏輯磁區的方法,藉由此種方法,便可以 使用來實作易於調整空間的檔案系統。

  • 雖然大部分當代的電腦都能夠直接從第一片 Red Hat Enterprise Linux 的發行光碟開機進入安裝程式, 某些硬體的設定仍需要使用開機磁碟片。 假如您的硬體設定需要開機片, 您應該要留意以下的變更。

    Red Hat Enterprise Linux 3 使用一種與先前版本的 Red Hat Enterprise Linux 不同的開機磁碟片配置。 現在只有一個單一的開機片映像檔案 (bootdisk.img),以使用來開機所有需要開機片的系統。

    假如您正要執行的安裝並非來自一個 IDE 或 USB 裝置,您將會被提示以插入由下列 其中一個映像檔案所建立的驅動程式磁片:

    · drvnet.img — 用於網路安裝方式

    · drvblock.img — 用於 SCSI 的安裝方式

    · pcmciadd.img — 用於 PCMCIA 的安裝方式

    如同先前版本的 Red Hat Enterprise Linux,這些映像檔案可以在第一片安裝光碟的 images/ 目錄中找到。

  • 使用序列終端機的文字模式安裝在終端機支援 UTF-8 編碼時運作最佳。 在 UNIX 與 Linux 下,Kermit 支援 UTF-8。 而在 Windows 下,Kermit '95 也運作的不錯。 如果安裝時只有使用英文,不支援 UTF-8 的終端機也可以使用。 可以在開機選項 傳送 "utf8" 到安裝程式來使用一個功能強化的序列顯示。 例如:

    linux console=ttyS0 utf8

  • Red Hat Enterprise Linux 安裝程式的防火牆設定畫面已經簡化了,之前的 "高安全性", "中安全性" 與 "無防火牆" 的設定 已經由一個更直接的『開啟/關閉』形式控制所取代。 除此之外,預設防火牆的設定使得 NIS 認證、NFS 與 DNS 的使用者可以在不做任何自訂設定的情況下便可以配置 防火牆(不過您仍然可以以指定連接埠與通訊協定的方式來自訂防火牆設定)。

    注意: 這個變更也適用於 安全性等級設定工具 (redhat-config-securitylevel)。

  • 現在已經支援透過 VNC 進行安裝,如要開始一個 VNC 為基礎的安裝,請傳遞 vnc 當作一個開機選項,如果必要的話,可以藉由增加 "vncpassword=<密碼>" 到開機選項來設定一個密碼,這個 VNC 的顯示將會是 "<主機>:1",這裡的 <主機> 就是安裝 Red Hat Enterprise Linux 系統的主機名稱或 IP 位址。

    也可以讓 Red Hat Enterprise Linux 的安裝程式初始一個連線到聆聽中的 VNC 用戶端,這是藉由使用 vncconnect 的開機選項來完成的:

    linux vnc vncconnect=<用戶端>[:<連接埠>]

    (這裡的 <用戶端> 就是 執行聆聽中 VNC 用戶端的主機名稱或 IP 位址。而 <連接埠> 就是可選的指定 連接埠,假如 VNC 用戶端並不聆聽埠號 5500 時(這種連線類型的預設連接埠), 您可以在此指定。) 以下的例子顯示出如何指定標準與非標準的連接埠在開機選項中:

    linux vnc vncconnect=pigdog.example.com

    linux vnc vncconnect=pigdog.example.com:27910

    執行聆聽中 VNC 用戶端的系統必須啟動適當的軟體來執行聆聽模式的 VNC 用戶端程式, 對於 Red Hat Enterprise Linux 3 所提供的 VNC 用戶端程式,可以使用以下的指令:

    vncviewer -listen

    除此之外,已經新增一個新的 kickstart 指令來支援 VNC 為主的安裝:

    vnc [--password <密碼>] [--connect <主機>[:<連接埠>]]

    (這裡的 --password <密碼> 就是用來指定一個 VNC 密碼的可選參數,而 [--connect <主機>[:<連接埠>]] 就是用來指定執行聆聽中 VNC 用戶端系統的主機(以及可選的連接埠)的一個可選的參數。

    請注意: 假如您指定任何 VNC 相關的開機選項,它們將會強制覆寫 kickstart 檔案中 所列出的對應選項。

  • 為了我們顧客的方便,我們也提供了 XFree86 開放原始碼的 vmware 顯示驅動程式,不過 Red Hat, Inc. 並不提供這方面的支援。 然而,對於 Red Hat 所收到關於 XFree86 開放原始 碼的 vmware 顯示驅動程式的問題報告,我們都會將它們轉送到適當的 VMware 人員,以 使得他們可以進行調查。 如有任何關於這個驅動程式的程式錯誤修正,Red Hat 也許會進行 評估以便將來在時間允許的情況下將它們收錄在未來的修補程式與產品中。

輸入法

這個部份含有關於使用輸入法的一般資訊。

輸入法允許使用者可以輸入非西方字型的文字到一般的應用程式中,例如文字處理器電子 郵件以及即時傳訊工具。 Red Hat Enterprise Linux 中含有支援下列語言的輸入法:

  • 中文(簡體與繁體)

  • 日文

  • 韓文

以下的項目描述使用這些語言輸入法的資訊。

  • 簡體中文

    如要輸入簡體中文文字,您必須使用 miniChinput 輸入法,要啟動這個輸入法,請按下 Ctrl-Space

    miniChinput 輸入法支援下列的模組:

    · 智能拼音輸入

    · gbk 拼音輸入

    · 雙拼輸入

    · 內碼 (gb18030 碼) 輸入

    假如安裝過程中選取簡體中文的支援,將會預設安裝 miniChinput 套件。

  • 繁體中文

    如要輸入繁體中文文字,您必須使用 xcin 輸入法。 如要啟動這個輸入法,請按下 Ctrl-Space。 按下 Shift-CtrlCtrl-Alt-數字鍵 可以使您轉換到不同的輸入模組。

    xcin 輸入法支援下列的模組:

    · 倉頡

    · 簡易

    · 注音

    · 粵拼

    · 詞音

    · 拼音

    · 行列

    · 無調粵拼

    在安裝過程中,假如選取繁體中文語言的支援,將會預設安裝 xcin 套件。

  • 日文

    如要輸入日文文字,您必須使用 Canna、FreeWnn 或 skk 輸入法。 如要啟動這個輸入法, 請按下 Shift-Space

    支援下列的模組:

    · romaji

    · kana (只有 Canna — 取決於設定檔案)

    在安裝過程中假如選取日文語言支援,將會預設安裝 CannaFreeWnnskkinput 套件。

  • 韓文

    如要輸入韓文文字,您必須使用 ami 輸入法。 如要啟動這個輸入法,請按下 Shift-Space

    在安裝過程中,假如選取韓文語言支援,將會預設安裝 ami 套件。

一般摘要

這個部份描述後安裝階段的議題。

  • Apache HTTP 伺服器已經更新至 2.0 版本,所更新的套件將取代 1.3 版本,並且已重新命名為 httpd

    · auth_ldap, mod_put, mod_roaming, mod_auth_any, mod_bandwidth, mod_throttlemod_dav 等模組都已經被移除。

    · WebDAV 功能性現在已經收錄在 httpd 套件中。

    請注意: 對目前的設定檔案需要做某些變更,由其他協力廠商提供的 Apache 模組也許 也需要更新,請參考位於 /usr/share/doc/httpd-*/migration.html 的轉換手冊以取得更多資訊。

  • Red Hat Enterprise Linux 3 支援使用 PXE (Pre-Boot Execution Environment) 協定透過網路開機, 如同之前的發行版本,可以設定 Red Hat Enterprise Linux 3 當作一個安裝伺服器,也就是啟動網路 安裝方式以使得可以存取核心與映像檔案。

    在 Red Hat Enterprise Linux 3 中也支援網路開機的環境,一部網路開機伺服器(類似一部安裝伺服器) 使得網路開機的用戶端系統可以存取核心與映像檔案。 在開機後,網路開機的用戶端系統透過 NFS 掛載一個跟目錄檔案系統,減少本機連接之儲存裝置的需要。

    網路開機工具 (redhat-config-netboot) 是圖形化的設定工具使您可以配置這兩種環境。

  • LPRng 列印排存器(spooler)已經由 CUPS 所取代,建議您使用 印表機設定工具 (redhat-config-printer) 來設定它。 您也可以選取『系統設定』中的 『Printing』選項來啟動它。

  • 安全性等級的設定工具 (redhat-config-securitylevel) 已經簡化了,之前的 "高安全性"、"中安全性" 與 "無防火牆" 的設定已經由一個比較直接的『開啟/關閉』 形式的控制所取代。 除此之外,預設防火牆的設定使得 NIS 認證、NFS 與 DNS 的使用者可以在不做任何自訂設定的情況下便可以配置防火牆(不過您仍然可以以指定 連接埠與通訊協定的方式來自訂防火牆設定)。

    請注意: 這個變更也適用於 Red Hat Enterprise Linux 的安裝程式。

  • GNOME 列印管理員 - 一個簡單的圖形列印佇列管理工具,現在已經收錄在這個版本中。 您也可以選取『系統工具』中的 『列印管理員』選項來啟動它。 除此之外,當佇列中有一項列印工作時,在面板的系統提示區域會出現一個圖示。

  • Red Hat Enterprise Linux 3 包括 setarch 工具,setarch 使您可以變更由 uname 指令所產生的輸出,這對許多種狀況是很有用的,例如在 64 位元的環境中執行 32 位元的應用程式(那些撰寫來從 uname -m 獲得一個特定數值的)。

    setarch 指令的格式為:

    setarch <主機架構> <指令>

    (這裡的 <主機架構> 代表 欲使用的主機架構字串(例如 i386),而 <指令> 代表當主機架構 被修改時,欲執行的指令。) 請注意,在這裡可以省略<指令>,如此的情況下便會 執行 /bin/sh

    此外,某些應用程式(如舊版的 Java)是假設一個 3GB 的虛擬位址空間來撰寫的, 當在含有大型虛擬位址空間的系統上執行時(例如 64 位元的 x86-64 系統或執行 hugeme 核心的 32 位元系統),這些應用程式將會不正常運作。 setarch 工具程式使得它可以模擬一個 3GB 的虛擬位址空間,以允許如此的應用程式能夠正常運作:

    setarch -3 java

  • Red Hat Enterprise Linux 3 包含了 Native POSIX Thread Library (NPTL),它是 Linux 中一個新的 POSIX 執行緒的實作,這個函式庫提供效能強化以及增加延展性。

    這個執行緒函式庫是設計來與舊的 LinuxThreads 實作二元相容的;然而應用程式 倚賴偏離 POSIX 標準之 LinuxThreads 實作的地方需要被修正。 明顯的相異處包括:

    · 訊號的處理已經從每一執行緒(per-thread)的訊號處理改為 POSIX 程序訊號處理。

    · getpid() 傳回所有執行緒的相同數值。

    · 假如已使用 vfork(),註冊於 pthread_atfork 的執行緒處理程式並不會執行。

    · 無 manager 的執行緒。

    使用 NPTL 有問題的應用程式包括:

    - 1.4.1 版本之前的 Sun JRE

    - IBM JRE

    假如一個應用程式無法與 NPTL 正常運作,可以藉由設定下列的環境變數以使用舊式的 LinuxThreads 實作來執行它:

    LD_ASSUME_KERNEL=<核心版本>

    可以使用下列的版本:

    · 2.4.19 — 含有浮動堆疊的 Linux 執行緒

    · 2.2.5 — 不含浮動堆疊的 Linux 執行緒

    請注意使用 errno, h_errno_res 的軟體,在使用前必須將適當的表頭檔案(分別是 errno.h, netdb.hresolv.h) 加入 #include 中。 然而在該軟體被修正之前,您可以使用 LD_ASSUME_KERNEL=2.4.19 來避免發生類似問題。

  • 多執行緒的 C++ 程式使用執行緒 cancellation 也許需要被強制使用 LinuxThreads 函式庫(使用 LD_ASSUME_KERNEL=2.4.19 的環境變數設定)。 否則, 假如 cancellation 啟用時,該程式將會不正常終止(因為所產生的 exception 並未被抓到)。

    全新撰寫的 C++ 程式碼使用來自 C 執行環境的功能,也許已經被調整並將 cancellation 列入考量。 可以使用下列方法的其中之一來完成這個功能:

    · 不以 throw() 標示 C++ function (以使得呼叫者明白也許已經丟擲一個 exception 了),並且以 exceptions 編譯程式碼。 這是預設的編譯選項,使用者在編譯時不可以指定 -fno-exceptions

    · 在輸入呼叫 cancel-able 的 C 執行功能前,請完整地停用取消。 可以使用下 列的呼叫來完成:

    pthread_setcancelstate (PTHREAD_CANCEL_DISABLE, &oldstate)

    在呼叫 C function 後,可以使用下列的呼叫再度啟用取消:

    pthread_setcancelstate (oldstate, NULL)

    請注意: 在這裡,取消功能已啟用,因此這個功能呼叫 pthread_setcancelstate() 必須以啟用 exceptions 的方式編譯,而且必須被標示為 throwing exceptions。

  • 一個新的系統訊息已經新增到 Red Hat Enterprise Linux 3 中:

    應用程式錯誤: <應用程式名稱>(<應用程式程序 ID>) 中的 SIGCHLD 設定為 SIG_IGN, 不過卻呼叫 wait()。(請閱讀 'man 2 wait' 的 NOTE 部份)。 另一方法已啟用。

    這個訊息(顯示在系統主控台或系統紀錄檔中)指出應用程式在處理子程序的方面並沒有完全地合乎標準。 假如您看到這個訊息,您應該要警告該應用程式的開發者。

  • Red Hat Enterprise Linux 3 含有為 C、C++ 與 Java 產生 Position Independent Executables (PIE) 的功能,這項特色已被啟用,且編譯了 -fpie-fPIE 的 GCC 選項,它們分別類似 -fpic-fPIC 選項的用法,並且在連結時間也含有 -pie 選項。

  • fileutils, textutils, sh-utils 以及 stat 套件已經被新版的 coreutils 套件所取代。

  • 包含 網路管理工具 (redhat-config-network) 的 RPMs 已經更改名稱與功能。 redhat-config-network RPM 包含這個工具的圖形使用者介面,而 redhat-config-network-tui 則包含這個工具(伴隨它的文字使用者介面)。

  • 支援 XHTML1 — 重新格式化 HTML 為 XML — 的功能已經改善了。 這是由於增加了 xhtml1-dtd 套件、安裝 DTDs 到系統的 資料庫目錄以及增加在 libxml2xsltproc 工具的原生支援。

  • XML 工具組已經延伸為支援 Relax-NG 驗證以及對大型檔案的資料流能力。

  • OProfile 全系統性的分析工具已經被加入到 Red Hat Enterprise Linux 3。 OProfile 是用來分析系統效能的一種程式設計師的工具,使用許多嵌入當代電腦中的特殊硬體。 OProfile 的說明文件含括在 oprofile 套件中,在安裝完 Red Hat Enterprise Linux 3 後,請執行 rpm -qd oprofile 指令來取得可使用之說明文件的清單。 如需更詳細資訊,請參考 OProfile 的網站: http://oprofile.sourceforge.net。

    注意:Red Hat Enterprise Linux 3核心對 OProfile 的支援是基於來自 2.5 開發核心的部份程式碼,因此假如您要參考 OProfile 的說明文件,請記得所列出關於 2.5 核心特定的特色實際上是適用於 Red Hat Enterprise Linux 核心的(即使所附的核心版本為 2.4)。同樣地,所列 出關於 2.4 核心特定的特色並「」適用於 Red Hat Enterprise Linux 核心。

  • 目前 X 視窗系統使用兩種字型的子系統,每一個都含有不同的特徵:

    · 原始的(已使用 15 年以上)子系統是關於『主要的 X 字型子系統』。 由這 個子系統所處理的字型並沒有作灰階修邊,它們是由 X 伺服程式所處理,名稱類似:

    -misc-fixed-medium-r-normal--10-100-75-75-c-60-iso8859-1

    較新的字型子系統就是已知的 "fontconfig",它允許應用程式直接存取字型檔案。 Fontconfig 通常與 "Xft" 函式庫一併使用,它將允許應用程式使用灰階修邊來處理 fontconfig 的字型到螢幕上。 Fontconfig 使用較好聽的名稱如:

    Luxi Sans-10

    在不久的將來,fontconfig/Xft 將會取代主要的 X 字型子系統,目前使用 Qt 3 或 GTK 2 工具組的應用程式(包括了 KDE 與 GNOME 的應用程式)已經使用 fontconfig 與 Xft 的字型子系統,至於其他大部分的程式則是使用主要的 X 字型。

    往後的版本中,Red Hat 也許只支援 fontconfig/Xft 以取代 XFS 字型伺服程式, 使它成為預設的本機字型存取方法。

    注意: 對於以上所提的字型子系統使用方式,有一個例外的例子 - OpenOffice.org 使用它自己的字型處理技術。

    假如您希望新增字型到您的 Red Hat Enterprise Linux 3 系統,您必須要先知道所要進行的步驟完全取決於新字型要使用的字型子系統。 至於主要的 X 字型子系統,您必須:

    1. 建立 /usr/share/fonts/local/ 目錄(如果它原本不存在的話):

    mkdir /usr/share/fonts/local/

    2. 複製新的字型檔案到 /usr/share/fonts/local/

    3. 藉由執行下列指令來更新字型資訊(請注意由於格式的限制,下列的指令也許呈現超過 一行的形式,在實際情況下,每一個指令都必須以單一行的形式輸入):

    ttmkfdir -d /usr/share/fonts/local/ -o /usr/share/fonts/local/fonts.scale

    mkfontdir /usr/share/fonts/local/

    4. 假如您已經建立 /usr/share/fonts/local/,再來您必須將它加入到 X 字型伺服程式 (xfs) 的路徑中:

    chkfontpath --add /usr/share/fonts/local/

    增加新字型到 fontconfig 的字型子系統是比較直接的;只需要複製新字型檔案到 /usr/share/fonts/ 目錄下即可(一般使用者可以藉由複製字型檔案到 ~/.fonts/ 目錄來修改他們個人的字型設定)。

    在複製完新字型後,請使用 fc-cache 指令來更新字型資訊的快取:

    fc-cache <目錄>

    (這裡的 <目錄> 可以是 /usr/share/fonts/~/.fonts/ 目錄。)

    一般的使用者也可以使用圖形方式安裝字型,可以在 Nautilus 瀏覽 fonts:///,然後拖放新的字型檔案到這裡。

    注意: 假如字型的檔案名稱以 ".gz" 結尾,表示已經使用 gzip 壓縮,在 fontconfig 字型子系統使用該字型前, 必須先解壓縮(使用 gunzip 指令)。

  • 由於轉換使用新的字型系統在 fontconfig/Xft,GTK+ 1.2 的應用程式並不會 受到經由 Font Preferences 對話窗所作變更的影響。 對於這些應用程式,可以增加下列這幾行到 ~/.gtkrc.mine 檔案中來設定一種字型:

    style "user-font" {

    fontset = "<字型規格>"

    }

    widget_class "*" style "user-font"

    (這裡的 <字型規格> 表示由傳統的 X 應用程式所使用的字型規格的樣式,例如 "-adobe-helvetica-medium-r-normal--*-120-*-*-*-*-*-*"。)

  • 預設下,Sendmail 郵件傳送代理 (MTA) 並不接受從除了本機以外其他主機的 網路連線。 假如您想要設定 Sendmail 為其他用戶端的伺服器,請編輯 /etc/mail/sendmail.mc 檔案,並更改 DAEMON_OPTIONS 也聽取網路裝置 (或使用 dnl 這個註解區隔字元一併將這個選項加上註解。) 然後您將需要執行下列指令(以 root 身份)來重新產生 /etc/mail/sendmail.cf 檔案:

    make -C /etc/mail

    請注意您必須有安裝 sendmail-cf 套件才能使用這個功能。

  • Red Hat Enterprise Linux 3 中預設的 FTP 伺服器 vsftpd 已經更改為一個 SysV 的服務。

  • fdisk 對分割區大小的計算方式已經變更

    fdisk 指令現在對建立新的磁碟分割區時使用的大小計算方式有所不同,空間大小的尾數 K, MG 現在分別代表千、百萬與十億位元組的倍數。 這將與硬碟製造商所提供的磁碟大小規格較一致。

    因此,假如一個使用者想要建立一個 512MB 的分割區,所指定含有 "M" 字尾的分割區 大小數值將是 512*1024*1024 (536,870,912),四捨五入使其成為百萬的位數(537,000,000), 然後再以一百萬相除(537),結果的大小規格將會是 +537M

  • 雖然在之前版本的 Red Hat Linux 已經建立了執行檔與動態共享物件(DSOs,也稱為共用函式庫) 的相容性,而且 Red Hat Enterprise Linux 也支援,相同的狀況並不適用於物件(.o)檔案。 在之前版本建立的物件檔案可以被使用在 Red Hat Enterprise Linux 3 以建立新的執行檔或者是 DSOs (只當它們是在不含任何系統表頭檔案的情況下所建立的)。

    否則,使用這些檔案的唯一方法是連結物件檔案到 glibc 的相容版本(compat-glibc 套件的一部分)。 任何新產生的物件檔案必須使用來自相容套件的表頭,例如, 當您要編譯物件檔案時,請增加下列的資訊到編譯器命令列的開頭:

    -I/usr/lib/i386-redhat-linux7/include

    如要連結產生的執行檔或 DSO,請增加下列資訊到命令列中:

    -L/usr/lib/i386-redhat-linux7/lib

    任何混合舊的物件檔案與那些針對目前系統表頭檔所編譯的檔案將會有反效果的狀況,使用 一般的系統函式庫來連結舊的物件檔案也許會導致完全無法使用的執行檔或含有些微程式錯誤 (例如記憶體毀損)的執行檔。

核心摘要

這個部份含括 Red Hat Enterprise Linux 3 中,所有核心的相關議題。

  • Red Hat Enterprise Linux 3 核心使用一個全新的套件封包技術,由於硬體類型幾乎無限制地出現,Red Hat 無法完全支援所有的硬體元件。因此我們將含括完整支援硬體的核心模組在標準的 kernel 套件中,Red Hat Enterprise Linux 3 也收錄了一系列新的 unsupported 核心套件。

    至於每一個所釋放的核心套件,會有一個相對應未支援的核心套件,例如 kernel-smp-2.4.21-3.EL.i686.rpm 的未支援核心套件為 kernel-smp-unsupported-2.4.21-3.EL.i686.rpm

    注意: Red Hat Enterprise Linux 的安裝程式將不會安裝未支援的核心套件,因此為了要使用未支援的核心模組,您必須手動安裝對應到您系統所使用之核心的未支援核心套件。

    在安裝完適當的未受支援核心套件後,您必須使用下列指令以更新模組的相依性結構以及 您的 initrd:

    /sbin/new-kernel-pkg --mkinitrd --depmod --install <核心版本>

    (這裡的 <核心版本> 代表 已安裝之核心的版本。)

    未支援核心套件中所含括的驅動程式是核心開發小組盡力提供的,也就是說,也許不會 含有更新與上游開發者的程式修正,而且也將不會含括在與完整支援之驅動程式相同 的支援預期中。 含括在未支援套件中之驅動程式的自訂支援佈置也許會在某些情況下 由 Red Hat 所開發出來。

  • Red Hat Enterprise Linux 3 核心含有較精確的程序計時功能性,這個新的程序計時模式使用時間戳以提供更精確的閒置與程序時間的計時。 在啟用後,可以透過一般的系統監視工具 (如 top, vmstatprocinfo) 以及 getrusage 系統呼叫來取得這個資訊。

    如要啟用時間戳為基礎的程序計時,您必須使用下列的開機選項開機您的系統:

    process_timing=<數值>

    這裡的 <數值> 可以是 以下的其中之一,含有由逗號所分隔開的多重數值:

    · irq — 使用時間戳以計算 IRQ 的中斷值

    · softirq — 使用時間戳以計算核心中的 softirq 時間

    · process — 允許程序在內部啟用時間戳為基礎的 程序計時(然後將會預設停用所有的程序)

    · all_process — 在所有的程序(包括閒置的工作) 上強制使用時間戳為基礎的程序計時

    · everything — 與指定 irq,softirq,all_process 相同

    假如系統是以 process 的選項開機,預設將沒有任何的初始程序 啟用了時間戳為基礎的程序計時。 然而,程序可以使用 prctl() 系統呼叫來找出並修改它們的程序計時模式,找出程序計時模式的系統呼叫為:

    mode = prctl(PR_GET_TIMING, 0, 0, 0, 0);

    設定程序計時模式的系統呼叫為:

    status = prctl(PR_SET_TIMING, <模式>, 0, 0, 0)

    (這裡的 <模式> 是用於 啟用傳統的程序計時模式的 PR_TIMING_STATISTICAL 或用於啟用 時間戳為主的程序計時模式的 PR_TIMING_TIMESTAMP。) 請注意, 當您啟用一個程序計時模式,將會自動停用其他的模式。

    注意:prctl() 系統呼叫只能被使用在以 process 數值開機的系統,否則這個系統呼叫將會傳回 -EINVAL,如此也會 停用以 all_process 選項開機之系統上的時間戳為基礎的程序計時。

    一個子程序的計時模式將來自它的父程序,然而子程序可以使用 prctl() 系統呼叫來修改它自己的程序計時模式(侷限於之前摘要中所列出的條件)。

  • 我們以標準的核心套件提供 BusLogic 驅動程式(用於某些 Mylex SCSI 主機匯流排配 接卡),不過只當該核心是 VMWare™ 虛擬機器軟體中的一個 guest 作業系統時才受支援。 這是因為 VMWare 代表 BusLogic 驅動程式的一個模擬 SCSI 配接卡,而且這個環境已經徹底測試過了,而且也由 VMWare, Inc. 所支援。 這個 BusLogic 驅動程式在實體的 SCSI 主機配接卡並不支援,因為數年來這個驅動程式已經 不在官方的 Linux 核心中所維護了,而且在 Red Hat Enterprise Linux 核心中也沒有進一步地進行測試。

  • 數年來,qla1280 驅動程式(用於 Qlogic ISP1x80/1x160 SCSI 配接卡)已經不在官方的 Linux 核心中所維護了。 因此,雖然這個驅動程式可以在 Intel x86 主機架構中正常運作, 它並無法在其他的主機架構中正常運作。 因此 Red Hat 只支援在 Intel x86 平台的 qla1280 驅動程式。

  • 當您執行 Red Hat Enterprise Linux 3 時,基於 Intel I865/I875 晶片組且含有 ICH5 整合 AC97 音效功能的這些晶片組的系統也許會發生無法產生音效的問題。

    可以使用下列的指令來檢視其輸出以辨識整合 AC97 音效子系統的的 ICH5:

    /sbin/lspci -n

    ICH5 AC97 音效的 PCI"販賣商:裝置"編碼是 8086:24d5。

  • 基於 Intel I865/I875 晶片組,以及利用這些晶片組的 ICH5 序列 ATA (SATA) 功能性 的系統都應該為它們的 SATA 裝置配置 BIOS 設定為 "enhanced" 或 "native" 模式。 "Legacy" 或 "combined" 模式的 SATA 也有支援,不過不建議您使用。

    請注意: 並非所有的 BIOS 實作都可以提供更改這些設定的能力。

  • 新的核心支援已經增加以提供 IPv6 的功能,這個支援與上游 2.6 為基礎的實作(2.6.0-test3) 是一致的。

    請注意 Red Hat 將不會為這個發行的 Red Hat Enterprise Linux 實作額外的 IPv6 特色(例如任何用於 Mobile IP 的草稿標準),我們的目的是集中注意力在既有特色的程式錯誤。

  • 用於 ext3 檔案系統的 EA (延伸屬性 - Extended Attributes) 與 ACL (存取控制清單 - Access Control Lists),除此之外,ACL 的功能性也可使用在 NFS。

    Red Hat Enterprise Linux 3 包含了為 ext3 檔案系統提供 EA 與 ACL 支援的核心,也增加通訊協定的 延伸到 NFS 以支援 NFS 匯出之檔案系統中 ACL 相關的操作。

    如要啟用本機掛載之檔案系統的 ACLs,該檔案系統必須以 -o acl 掛載選項來掛載。 預設情況下,假如其下的檔案系統支援的話,NFS 伺服器 將會使用 ACLs,如要停用這個特色,您必須指定 no_acl 的匯出 選項來匯出。

    EAs 是真正用於 ACL 支援的,為了要分開使用 EAs,必須使用 -o user_xattr 掛載選項來掛載該檔案系統。

    這種支援包含在許多套件中:

    · kernel — 為 ext3 檔案系統提供儲存 EAs 與 ACLs 在磁碟上的支援, 以及用來處理 EAs 與 ACLs 的系統呼叫。 最後,核心套件提供了強制 ACLs 在檔案存取 的機制。

    · e2fsprogs — 包含新的磁碟上延伸屬性格式的知識,所以 fsck 可以使用這個新特色來檢查檔案系統。

    · attr, libattr — 提供存取附加在檔案上的延伸屬性。

    · acl, libacl — 提供工具用來設定、修改與查詢檔案上的 ACLs 設定。

    · libattr-devel, libacl-devel — 用來建立使用 acl 與 attr 函式庫之 程式的函式庫與包含檔案。

    · star — 一個歸檔工具,可用來建立與解開 tarpax 格式的歸檔檔案,而且可以用來備份與回復 EAs 與 ACLs。

    請注意: star 指令所能使用的選項並不完全與tar 指令所能使用的選項相同,因此請確定您有檢視 star 的 man page。

    · samba — 這次的發行版本中,Samba 可以匯出 ACL 的功能性。請參考 samba 的說明文件以取得如何在您的設定中啟用它的資訊。

    除此之外,coreutils 套件已經更新,所以 cpmv 指令將會複製與檔案關聯的 ACLs 與 EAs。

    如需關於設定與讀取 ACLs 的更多資訊,請看 setfaclgetfacl 的 man page。 關於 ACLs 的一般資訊可在 acl 的 man page 中找到。

    請注意: 一般的 tardump 指令將「無法」備份 ACLs 與 EAs。

    與較舊系統的相容性:

    任何尚未設定 ACLs 或 EAs 的 ext3 檔案系統在舊的核心上運作方式不變, 而且可以使用舊的 e2fsprogs 工具作檢查。

    一旦在檔案系統上有設定 EA 或 ACL 在任何檔案上,該檔案系統將需要 ext_attr 屬性,可以使用下列的指令來看取這個屬性:

    tune2fs -l <檔案系統裝置>

    取得 ext_attr 屬性的檔案系統可以被舊的核心掛載,不過很顯然的那些核心無法強制任何已經設定的 ACLs。

    注意: 舊版本的檔案系統檢查程式 e2fsck 將拒絕檢查含有 ext_attr 屬性的檔案系統。 這與 1.22 版本之前的 e2fsprogs 套件相同。

  • Red Hat Enterprise Linux 3 核心現在已經含括支援透過 NFS over TCP,如要使用 NFS over TCP, 當您在用戶端系統掛載 NFS 匯出的檔案系統時,您必須包含 "-o tcp" 選項在 mount 指令中。

    請注意: NFS 預設的傳輸協定仍為 UDP,如不使用 "-o tcp" 選項在 mount 指令中,將會使得經由 NFS 匯出的檔案系統是經由 UDP 被存取。

  • 在這個核心中,已經增加下列指令來掃描在所有連接之 SCSI 主機配接卡上的新裝置。

    echo "scsi scan-new-devices" > /proc/scsi/scsi

    目前這不是一個標準的增加項,由於 Red Hat 追蹤官方版的 Linux 核心中的這個領域, 在未來的核心中也許會使用一個不同的引數來提供相同的功能,或者是改變同一引數 (scan-new-devices) 的功能。

  • 更改用於使用者模式記憶體鎖定的權限功能

    Red Hat Enterprise Linux 3 現在允許非 root 的程序在它們的 RLIMIT_MEMLOCK 資源限制下使用使用者模式的記憶體鎖定系統呼叫。 預設的限制是每一程序佔用一個實體的頁面,而系統管理員可以在 /etc/security/limits.conf 檔案以每一使用者 ID、群組 ID 或全系統性的基礎來重新指定這個限制,root 的程序已不再受限於這個資源限制。

    由於這個功能上的變更,所影響到的系統呼叫為 mlock(2), munlock(2), mlockall(2), munlockall(2)shmctl(2)

( x86 )