openSUSE 12.2 發行紀事


版本:

12.2.9 (2012-10-22)

Copyright © 2012 Novell, Inc.

在 GNU 自由文件授權(GNU Free Documentation License) 1.2 版或之後版本的規範下,您被允許複製、散佈和/或修改此文件, GNU 自由文件授權(GNU Free Documentation License)是由自由軟體基金會(Free Software Foundation)所發行。使用無恆常章節(no Invariant Sections),無封面文字(no Front-Cover Texts)及無封底文字(no Back-Cover Texts)。此授權的複本已包含在檔案 fdl.txt

如果您從較舊的 openSUSE 發行版本升級,請由此查看之前的發行紀事: http://en.opensuse.org/openSUSE:Release_Notes

此版本摘要包括以下範圍:

1. 雜項

N/A

2. 安裝

2.1. 詳細安裝資訊

要獲得詳細的安裝資訊,請參閱下方的 openSUSE 文件

3. 一般

3.1. openSUSE 文件

  • 在入門指引,您可以找到有詳細步驟的安裝教學,還有 KDE 和 GNOME 桌面,以及 LibreOffice 辦公室套裝軟體的介紹。 也涵蓋了基本管理的主題,像是佈署和軟體管理以及一個 bash shell 的介紹。

  • 參考涵蓋了管理,以及系統設定的細節,並解釋如何設定各種不同的網路服務。

  • 保全指引會介紹系統安全的基本概念,他同時包含了本地與網路保全的觀點。

  • 系統分析與微調指引會針對問題偵測、解決方案與最佳化提供幫助。

  • 使用 KVM 虛擬化提供了關於用 KVM, libvirt 以及 QEMU 工具設定、管理虛擬機的介紹。

3.2. Pre-installation Memory Test Incorrectly Identifies Good Memory as Bad

The pre-installation memory test (memtest) on the openSUSE 12.2 media got miscompiled. It reports errors in test 7 on good RAM modules. Use the openSUSE 12.1 media if you need to run memtest.

4. 系統升級

4.1. 經由 "zypper dup" 遠端更新

當由 openSUSE 12.1 (或更舊版本) 升級, 在安裝新的 openssh 套件升級時 openSSH 連線將關閉。如果您經由 SSH 進行 "zypper dup" 升級,請在可回復的終端多工器 (例如 "screen" 或 "tmux") 中執行 "zypper dup",以便能輕鬆的重新連線,或至少可以對連線流失免疫(例如經由"nohup")。

4.2. sysvinit 已不再適用

有些桌面元件依賴於僅由 systemd 所提供的服務。所以,雖然 openSUSE 12.2 仍具有使用 sysvinit 啟動系統作為備用的基本支援, sysvinit 還是被視為不宜使用且在某方面甚至可能造成錯誤或破壞。如果您遇到使用 sysvinit 開啟系統的問題,在回報錯誤之前先使用 systemd 開機。

4.3. mount 和 losetup 放棄 cryptoloop 的支援

cryptoloop 具有已知的弱點,所以在幾年前已被視為過時並改用 dm-cryptmount (例如,經由 /etc/fstab) 和 losetup 現在終於放棄 cryptoloop 的支援。 這意謂在舊的 fstab 項目中使用 cryptoloop 存取加密容器的方法已不再適用。 但此容器仍可以使用 dm-crypt (/etc/crypttab) 來存取。請參考 http://en.opensuse.org/Encrypted_Filesystems 的範例看如何使用這個新方法。

4.4. 使用 systemd 掛載加密的分割區

如果加密的分割區沒有被 systemd 自動掛載,可能是在 /etc/fstab 這些分割區有 noauto 旗標,將這旗標用 nofail 代替可修復此問題。例如,將下面這行:

/dev/mapper/cr_sda3  /home   ext4    acl,user_xattr,noauto 0 2

改成

/dev/mapper/cr_sda3  /home   ext4    acl,user_xattr,nofail 0 2

5. 技術

5.1. 使用 KMS (Kernel Mode Setting) 初始化顯示卡

在 openSUSE 11.3 我們已為 Intel, ATI 和 NVIDIA 顯示卡切換到 KMS (Kernel Mode Setting) ,這是我們的預設值。若您在 KMS 驅動程式支援(intel, radeon, nouveau)遇到問題,可以在核心開機指令行加上 nomodeset 來停用 KMS。在使用 Grub 2,我們預設的開機載入器,要永久設定此參數,請用 root 身份在您的 /etc/default/grub 文字檔中將它加入核心預設載入選項行 GRUB_CMDLINE_LINUX_DEFAULT 中,然後執行終端機指令

sudo /usr/sbin/grub2-mkconfig --output=/boot/grub2/grub.cfg

來讓此變更生效。 若您使用傳統 Grub,請將它加到 /boot/grub/menu.lst 的核心指令行中。此選項會確認相對應的核心模組(intel, radeon, nouveau)在 initrd 載入時會使用 modeset=0,也就是說,停用 KMS。

在少數情況下,當從 initrd 載入 DRM 模組時會產生問題,這是一個一般性的問題,和 KMS 無關,我們也可以完全在 initrd 停止載入 DRM 模組。要這樣做的話,用 YaST設定 sysconfig 變數 NO_KMS_IN_INITRDyes,完成後會重新產生 initrd,接著請您重新開機。

在 Intel 顯示卡不用 KMS 的話,X伺服器會回歸到 fbdev 驅動程式(intel 驅動程式只支援 KMS); 然而對 Intel 較舊的 GPU,也可以使用 "intellegacy" 驅動程式 (xorg-x11-driver-video-intel-legacy 套件),這個驅動程式仍支援 UMS (User Mode Setting)。要使用此驅動程式,編輯 /etc/X11/xorg.conf.d/50-device.conf 並變更驅動程式項目為intellegacy

在 ATI 當下主流的 GPU 顯示卡則會回歸使用 radeonhd。在 NVIDIA 顯示卡沒有 KMS 則會使用 nv 驅動程式( nouveau 驅動程式只支援 KMS)。注意,如果您在核心啟動參數中 指定 nomodeset ,較新的 ATI 和 NVIDIA GPU 會回歸 使用 fbdev

5.2. 使用不建議的 sysvinit 開機

現在 openSUSE 開機預設使用 systemd。如果遇到麻煩,您可以在開機時按 F5 來切換回使用 sysvinit 的老方法。關於使用 sysvinit 開機的詳細資訊與限制,請參閱 節 4.2, “sysvinit 已不再適用”

5.3. systemd: 提供服務啟動參數

systemctl 僅支援 "標準" 參數 (詳見 http://www.freedesktop.org/wiki/Software/systemd/Incompatibilities)。

您可以藉由直接呼叫啟動程序來迴避此新行為,例如:

cd /etc/init.d
./apache2 <您的_參數>

5.4. systemd: 系統關機

使用 systemd 時系統要停機或電源關閉,請在命令行 用 halt -pshutdown -h now 或 使用您的桌面環境所提供的關機按鍵。

注意:單單 halt 命令將無法正確關閉系統。

5.5. systemd: 使用 tmpfs 在: /run, /var/run, /media, 等。

systemd 掛載一些僅會包含變動資料的目錄為 tmpfs 檔案系統: 這些目錄包含了 /run, /var/run, /var/lock, 以及 /media 。 要知道更多的背景資訊,請參閱 http://lwn.net/Articles/436012/

注意: 不要儲存任何在重開機後還需要存在的檔案在 /run, /var/run, 等目錄。

5.6. systemd: 清除目錄 (/tmp 以及 /var/tmp)

systemd 會依照指定在 tmpfiles.d 目錄及 /lib/systemd/system/systemd-tmpfiles-clean.timer 檔案中的設定來維護目錄。 要得到更進一步的資訊,請參閱 tmpfiles.d 的手冊頁。

預設情況下, systemd 依照 /usr/lib/tmpfiles.d/tmp.conf的設定每日清除 tmp 目錄:

d /tmp 1777 root root 10d
d /var/tmp 1777 root root 30d

注意: systemd 不會遵照在 /etc/sysconfig/cron 中的 sysconfig 變數,像是 TMP_DIRS_TO_CLEAR

5.7. USB 媒體自動掛載

Gnome 和 Xfce 現在使用 udisks2 來自動掛載 USB 媒體到 /run/media/$USER 目錄下。 KDE 使用 udisks 版本 1 ,仍掛載 USB 媒體到 /media 目錄下。

5.8. Specifying Partitions for Loopback Devices

With Kernel 3.4 there are two ways to have partitions for loopback devices. The first is with max_part and the second is with the -P parameter to losetup. They behave slightly differently since -P will dynamically allocate minor numbers for each device (including adding or removing them on the fly with blockdev --rereadpt). Using the max_part parameter causes each loop device to allocate that many minor numbers for each device.

So when you use max_part=8 and do not change max_loop, which defaults to 8, you are using all of the allocated minor numbers with the first device.

The solution is either to use -P or to also use max_loop.

5.9. 在 /etc/adjtime 中的時區資訊

/etc/adjtime 的第3行,現在包含了您的 BIOS 時鐘是運行在 UTC 或地區時區的資訊(之前是儲存在 /etc/sysconfig/clockHWCLOCK)。

如果 /etc/adjtime 包含了錯誤的偏差資訊 (例如用 ntpdate 修正日期和時間之後或有 ntpd 正在運作),在檔案 /etc/sysconfig/clock 中設定變數 USE_ADJUST 為 "no" 。

5.10. GNU tar 預設會建立 POSIX-相容格式檔案

GNU tar 現在預設為 --format=posix 並且以 PAX extended headers 建立 POSIX-相容格式檔案。請檢查您的 scripts 和應用程式和此格式是否相容。

前一版預設的行為可以藉由設定環境來重建:

TAR_OPTIONS='--format=gnu'

TAR_OPTIONS='--pax-option=delete=[ac]time*'