移植 CentOS-5 至 CentOS-6
|
註:以下描述的方法均不獲 CentOS 計劃支援。 |
1. 直接升及不被支援
以 anaconda 或 yum 升級都完全不被支援。請參閱 6.0 發行注記
有些用戶成功地透過下列方法以 anaconda 完成升級。其中一個移植 CentOS-5 至 CentOS-6 的方法是:
1.1. 最安全的移植法
- 為舊系統建立並測試一個整全的備份
- 在新的硬件或另一個碟盤/分割區上以 CentOS-6 建立第二台系統。
- 把用戶及系統的應用程式、資料和設定從 CentOS-5 轉到 CentOS-6,特別留意檔案和應用程式在語法及操作上的差異。
- 尋找升級後遺留下來的 /etc/*.rpm* 設定檔備份並比較新舊版本,按需要作出修改。
- 停用舊系統並改用新系統。
論壇上的用戶分享了它們的經驗,包括他們把桌面電腦從 CentOS 5.6 移植至 6.0 時遇上的問題
1.2. 較高風險的移植法
- 如上將系統備份。
- 重新安裝 CentOS-6。
- 找出哪些應用程式可運用舊有的資料。
1.3. 孤注一擲
anaconda 有一個選項可強迫安裝程式辨認現有的安裝和嘗試升級。這就是開機時的 upgradeany 選項。現在安裝程式中採用它,請於開機時按 <Tab> 鍵來中斷開機程序,然後編輯開機指命行並在行未加上該字串。
利用這個方法來移植 CentOS-5 至 CentOS-6 有下列數個(並非全部!)已知問題:
- CentOS-5 的 centos-release 套件的 epoch 值是 10,但 CentOS-6 版的 epoch 刻意被重置為 0。結果就是 centos-release,甚至軟件庫定義都不被升級。這個問題必須在升級前或後以手動方式解決。有關辦法請參閱發行注記。
很多套件已被改名,因此它們未必有正接對照。譬如,CentOS-5 -> CentOS6:
yum-fastestmirror -> yum-plugin-fastestmirror
yum-priorities -> yum-plugin-priorities
- 其它……
yum-utilities 內的 package-cleanup 也許可提供協助 —— 見說明頁。有用的選項包括 --orphans、--dupes 及 --problems。
rpm -qa --last 這個指命會按照套件的安裝次序列出套件,這或許能協助你辨認殘留的舊套件,rpm -qa | grep c5 亦有異曲同工之妙。
總括來說,這樣做比重新安裝及移植還要麻煩。當然這個做法也不能保証系統沒有潛在的問題及不穩定性。再一次,這個做法不獲支援。
這頁的英文版本由 PhilSchaffner 建立及維護。歡迎其他 Wiki 用戶作出更正、添加、或修改。
Translation of revision 8