openSUSE 跨版本升級


准備工作

  此方法通過網絡跨版本升級,適合 Leap 升級到下一個發行版(如 42.2 升級到 42.3),也適合 Leap 升級為 Tumbleweed。首先必須確定升級的時候有足夠的時間、靠譜的更新源和快速並穩定網絡。然后整理磁盤內的數據,將不再用的軟件包卸載,不需要的東西刪除,避免一次下載過多的軟件包花費大量時間和者升級過程中磁盤空間不足的情況發生(以往的真實經驗:平均 256kb/s 的下載速度升級 3000+ 軟件包花費5個小時)。換源升級之前最好用 zypper up 命令將現有軟件升級到最新版減小軟件升級跨度。另外跨版本升級有一定概率失敗或出問題,切記要備份好重要文件和設置以防萬一!

 

替換軟件源

  將當前的軟件源全部替換為將要升級版本的軟件源。

方法一:一條命令直接替換(Tumbleweed 源結構略有不同,建議核對后用第二種方法。)

sudo sed -i "s/42.2/42.3/g" /etc/zypp/repos.d/*

方法二:

禁用當前所有的源,再加入將要升級版本的源。軟件源名字和地址自己定義不要照搬,加入哪些源根據實際需要來決定。(升級成功后一定要及時整理軟件源,否則誤操作重新打開了所有的源就麻煩了。)

sudo zypper mr -da
sudo zypper ar -f http://mirrors.ustc.edu.cn/opensuse/distribution/leap/42.3/repo/oss/ USTC-OSS
sudo zypper ar -f http://mirrors.ustc.edu.cn/opensuse/distribution/leap/42.3/repo/non-oss/ USTC-NON-OSS
sudo zypper ar -f http://mirrors.ustc.edu.cn/opensuse/update/leap/42.3/non-oss/ USTC-UP-O
sudo zypper ar -f http://mirrors.ustc.edu.cn/opensuse/update/leap/42.3/oss/ USTC-UP-N
sudo zypper ar -f http://packman.inode.at/suse/openSUSE_Leap_42.3/ packman

方法三:

直接去 YaST 界面一個個手動替換。

 

刷新源

sudo zypper ref

  

升級系統

  這一步依舊建議先 Ctrl+Alt+F1 切換到控制台登錄后執行。畢竟全面升級在不同桌面環境和升級狀況下有一定概率造成桌面環境崩潰,黑屏甚至虛擬終端程序中途退出中斷升級等問題,經驗不足的情況下非常容易損壞系統。

升級並自動應答

sudo zypper dup -y --auto-agree-with-licenses

或者執行升級命令后手動回答系統提問和指定設置

sudo zypper dup

  

整理軟件和設置

  更新過程全部順利完成后重啟,重新安裝一些因為依賴關系被卸載掉的軟件,必要的時候需整理第三方軟件。少部分軟件或系統功能可能需要重新設置,需要在使用過程中慢慢整理細節。

多媒體編解碼器一定要重新核實一遍是否都來自 packman 源,就像以前全新安裝時一樣。

sudo zypper dup --from http://packman.inode.at/suse/openSUSE_Leap_42.3/

  

  一切順利的話整個系統就直接升級到新版本了。命令非常少,不必制作安裝盤格式化分區,更避免了每新裝一次系統又要從頭開始進行各種安裝和配置非常方便。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM