當前位置: 首頁>>技術教程>>正文


從 12.04 升級到 12.10 時如何解決“無法計算升級”問題?

問題描述

自從今天發布以來,我一直在嘗試升級到 12.10,但我一直遇到這個錯誤:

An unresolvable problem occurred while calculating the upgrade:
E:Unable to correct problems, you have held broken packages.
This can be caused by:  
 * Upgrading to a pre-release version of Ubuntu  
 * Running the current pre-release version of Ubuntu  
 * Unofficial software packages not provided by Ubuntu

我已經嘗試更新所有當前安裝的軟件,刪除所有額外的 PPA,降級從 xorg edgers 的 ppa 安裝的文件,但我無法解決問題。

最佳方法

here 所述,並非每次都刪除 PPA 源。

您需要卸載有問題的軟件包。您可以通過以下方式找到它們:

grep Broken /var/log/dist-upgrade/apt.log

我的是一個 xorg 包。我使用以下命令將其刪除:

sudo apt-get remove xserver-xorg-video-all

然後升級可以繼續。

次佳方法

對於 “NonPainful” 版本升級。

  • 在繼續之前,請檢查新版本是否可用於升級。打開一個終端並給出這個命令 do-release-upgrade -c

如果是,請繼續:

  • 刪除您添加的所有外部 PPA。從 Software-Center >編輯 >軟件來源 >其他軟件。不僅要 un-tick ,還要刪除它們。

  • 然後關閉所有圖形應用程序,隻打開一個終端。(全屏更好)給出以下命令

    sudo apt-get update 
    sudo apt-get dist-upgrade
    
  • 然後發出下麵的命令來做一些家務

    sudo apt-get --purge autoremove
    sudo apt-get autoclean
    sudo apt-get purge $(dpkg -l | awk '/^rc/ { print $2 }')
    
  • 然後你可以繼續升級

    sudo do-release-upgrade
    

在升級過程中不要導航或打開窗口或程序。

請耐心等待升級完成。

友好:從第一天起就不要跑(或急於)升級。從第二天或第三天升級(更好)。

第三種方法

我通過刪除使用 ppa-purge 安裝的 ppa 包來修複我的

我知道我需要通過檢查 apt.log 文件末尾的 /var/log/dist-upgrade/中的日誌來做到這一點,你會看到是什麽混淆了它。我的它是一個視頻驅動程序,我正在運行幾次升級,所以我做了:

sudo ppa-purge ppa:ubuntu-x-swat/x-updates
sudo ppa-purge ppa:unity-team/staging
sudo ppa-purge ppa:webapps/preview
sudo ppa-purge ppa:nilarimogard/webupd8
sudo ppa-purge ppa:scopes-packagers/ppa
sudo ppa-purge ppa:glasen/intel-driver

最後一個 – glasen 驅動程序 – 似乎對我有用。升級現在正常進行。

第四種方法

我設法在不刪除任何包的情況下解決了這個問題。在更新管理器的設置中,我取消選中所有 Ubuntu 軟件選項,隻選中第一個框——“Canonical-supported 免費和開源軟件(主)”。

參考資料

本文由Ubuntu問答整理, 博文地址: https://ubuntuqa.com/zh-tw/article/12387.html,未經允許,請勿轉載。