Ubuntu 16.04 使用apt-get -f install修復依賴關係後系統問題
由於之前安裝的依賴比較雜,在不明原因情況下安裝Ruby出現了依賴衝突。系統提示使用apt-get -f install
進行修復,修復過程中破化了包括Gnome在內的大量環境,同時重新安裝報錯E: 無法修正錯誤,因為您要求某些軟體包保持現狀,就是它們破壞了軟體包間的依賴關係。
本篇文章記錄個人修復過程,可供參考。
1 無法安裝庫問題
apt/apt-get
是ubuntu使用者最常用的安裝工具,但在依賴混亂的情況下功能受限。此處推薦另一個更加完善的安裝工具:aptitude
,使用方法:
$ sudo apt-get install aptitude $ sudo aptitude [install-package-name]
在使用aptitude
安裝庫出現依賴問題時,aptitude
會給出多套
包括不安裝或降級依賴的安裝方案,此時可使用[Y/n/q/?]進行選擇:
- Y:同意使用該安裝方案
- n:拒絕使用該方案並檢視下一個方案
- q:取消本次安裝
- ?:檢視可選擇的操作
使用aptitude
最大的好處在於他可以順帶解決依賴問題,最大的問題就是版本可能會不斷地回退。這裡本人採取的方案為先儘可能安裝庫,隨後換源升級。
2 系統登入後無法載入桌面(Desktop)
這裡的情況比較少見,邊欄和應用都可以正常載入,但桌面黑屏且無法使用右鍵功能。首先發現的是系統設定中顯示(Display)出現“無法獲取螢幕資訊(Could not get screen information)”,安裝unity-control-center
後發現可以正確定位螢幕資訊,隨後安裝gnome-tweak-tool
並執行,進入Desktop
中開啟Icons on Desktop
解決問題。(但系統預設Display 依然無法get screen information)
3 GUI問題的備選/安裝方案
- ubuntu-gnome-desktop
- xubuntu-desktop
END -最好還是定期儲存系統快照,在執行autoremove
等可能出現未知破壞操作情況下一定要至少保留解除安裝列表。本次好在留存了log基本恢復了開發環境,但一點點恢復還是耗費了一整天修復系統。