閱讀目錄
Fedora 22於5月26日發布,帶有不少新特性。yum 包管理系統被完全淘汰,全面使用 dnf 進行替代。Wayland 的應用更進一步,gdm 已經默認使用 wayland 了,但是 gnome-session 依然默認使用 Xorg 。以前每次升級新版本都是從頭開始安裝,但這一次,我使用了從 Fedora 21 升級到 Fedora 22 的策略,沒有從頭進行安裝。升級過程很順利,升級完成後,我的所有系統配置和美化方案都還在,而且我感覺 Fedora 22 比 Fedora 21 漂亮了很多。下面展示我的升級過程。
第一步是先將Fedora 21的所有軟件包更新到最新狀態。使用一條 sudo dnf update
命令即可:
sudo dnf update
其實在 Fedora 21 中就可以使用 dnf 進行軟件包的管理了,只不過在 21 中是 dnf 和 yum 並存,而在 Fedora 22 中是完全拋棄了 yum 。dnf 命令和 yum 命令幾乎是完全兼容的,切換起來沒有難度。
此次升級的工具是 fedup 。該軟件包需要自己安裝,命令如下:
sudo dnf install fedup
第三步就是升級系統了。直接使用如下命令:
sudo fedup --network 22
本以為一切升級過程會一切順利,結果升級過程中出現了意外。錯誤提示為“UnicodeEncodeError: 'ascii' codec can't encode characters in position 32-34: ordinal not in range(128)”。意思很清楚,說的是 python 語言對 ascii 字符的解析錯誤。在網上使用該錯誤信息進行搜索,發現這是 python 腳本編寫的問題,在 Python 腳本中加入如下代碼可解決問題:
import sys
reload(sys)
sys.setdefaultencoding( "utf-8" )
這說明 fedup 軟件包還存在一點點缺陷,這個 Bug 我已經提交了。但是我自己不可能去修改 fedup 的腳本。我是如何解決這個問題的呢?很簡單,將系統語言改成英文即可。升級完成後再修改成中文。也就是說,中文系統在升級的過程中會出錯,而英文的不會。
重啟系統,在 Grub 的啟動界面中選擇第一項,如下圖:
然後等待升級的完成,這個需要點時間。
升級過程很順利,升級後的系統也很穩定。升級的系統和新安裝的系統的區別就是盡量保持了用戶的配置。比如我升級後的系統連壁紙都沒有變,而新安裝的系統則是有另外一套壁紙。但是 Fedora 22 和 Fedora 21 相比還是有點小變化,窗口主題沒有了, gnome-tweak-tool 裡也沒辦法設置窗口主題了,只能設置 GTK+ 主題。因此,我告別了 clearlooks ,選擇了默認的主題。而 Fedora 22 的默認主題和之前的版本相比,確實漂亮很多。如下圖,左側是 gnome-terminal 的界面,黑色的,右邊是 firefox 的界面,白色的,窗口邊緣都有淡淡的光暈,看著很舒服:
更多Fedora相關信息見Fedora 專題頁面 http://www.linuxidc.com/topicnews.aspx?tid=5