Impossible de calculer la mise à niveau, que s'est-il passé?


67

Je suis en cours d'exécution sudo update-manager -det lance le processus de mise à niveau. Je sélectionne l'option de mise à niveau et quand le gestionnaire entre Setting new software channels, une erreur est générée.

Impossible de calculer la mise à niveau

Un problème insoluble s'est produit lors du calcul de la mise à niveau.

 Cela peut être causé par:
 * Mise à niveau vers une version préliminaire d'Ubuntu
 * Exécution de la version préliminaire actuelle d'Ubuntu
 * Progiciels non officiels non fournis par Ubuntu

Si rien de tout cela ne s'applique, signalez ce bogue à l'aide de la commande 'ubuntu-bug ubuntu-release-upgrader-core' dans un terminal.

J'ai désactivé tous les packages non officiels et tiers, je n'ai pas de version préliminaire car je suis à 13.04 et j'essaie de mettre à jour vers la version bêta 2 qui n'est pas une pré-version. Avant de remplir un rapport de bogue, vu que cela se produit sur mes deux systèmes, j'aimerais savoir si quelqu'un d'autre a eu les mêmes problèmes.

EDIT : ajout d'une sortie pour commentaire.

$ sudo dpkg -l | grep -w "rc"`
rc google-chrome-beta 31.0.1650.16-1 amd64 The web browser from Google
ii sysv-rc 2.88dsf-13.10ubuntu15 all System-V-like runlevel change mechanism

$ cat /etc/apt/sources.list

deb http://dk.archive.ubuntu.com/ubuntu/ raring main restricted
deb-src http://dk.archive.ubuntu.com/ubuntu/ raring main restricted

deb http://dk.archive.ubuntu.com/ubuntu/ raring-updates main restricted
deb-src http://dk.archive.ubuntu.com/ubuntu/ raring-updates main restricted

deb http://dk.archive.ubuntu.com/ubuntu/ raring universe
deb-src http://dk.archive.ubuntu.com/ubuntu/ raring universe
deb http://dk.archive.ubuntu.com/ubuntu/ raring-updates universe
deb-src http://dk.archive.ubuntu.com/ubuntu/ raring-updates universe

deb http://dk.archive.ubuntu.com/ubuntu/ raring multiverse
deb-src http://dk.archive.ubuntu.com/ubuntu/ raring multiverse
deb http://dk.archive.ubuntu.com/ubuntu/ raring-updates multiverse
deb-src http://dk.archive.ubuntu.com/ubuntu/ raring-updates multiverse

deb http://security.ubuntu.com/ubuntu raring-security main restricted
deb-src http://security.ubuntu.com/ubuntu raring-security main restricted
deb http://security.ubuntu.com/ubuntu raring-security universe
deb-src http://security.ubuntu.com/ubuntu raring-security universe
deb http://security.ubuntu.com/ubuntu raring-security multiverse
deb-src http://security.ubuntu.com/ubuntu raring-security multiverse

deb http://extras.ubuntu.com/ubuntu raring main
deb-src http://extras.ubuntu.com/ubuntu raring main
deb http://dk.archive.ubuntu.com/ubuntu/ raring-proposed multiverse universe restricted main

$ lsb_release -c
Codename:   raring

$ sudo apt-get -y install aptitude && \
      sudo rename 's/\.list$/.list.disable/' /etc/apt/sources.list.d/*.list && \
      sudo aptitude update && \
      aptitude search '?narrow(?installed, !?archive(raring))'`

i   dropbox                       - cloud synchronization engine - CLI and Nautilus extension                      
i   google-chrome-stable          - The web browser from Google                                                    
i   google-talkplugin             - Google Talk Plugin                                                             
i   libdrm-intel1                 - Userspace interface to intel-specific kernel DRM services -- runtime           
i   libdrm-nouveau2               - Userspace interface to nouveau-specific kernel DRM services -- runtime         
i   libdrm-radeon1                - Userspace interface to radeon-specific kernel DRM services -- runtime          
i   libdrm2                       - Userspace interface to kernel DRM services -- runtime                          
i   libegl1-mesa                  - free implementation of the EGL API -- runtime                                  
i   libegl1-mesa-drivers          - free implementation of the EGL API -- hardware drivers                         
i   libgbm1                       - generic buffer management API -- runtime                                       
i   libgl1-mesa-dri               - free implementation of the OpenGL API -- DRI modules                           
i   libgl1-mesa-glx               - free implementation of the OpenGL API -- GLX runtime                           
i   libglapi-mesa                 - free implementation of the GL API -- shared library                            
i A libgles2-mesa                 - free implementation of the OpenGL|ES 2.x API -- runtime                        
i   libllvm3.3                    - Low-Level Virtual Machine (LLVM), runtime library                              
i   libopenvg1-mesa               - free implementation of the OpenVG API -- runtime                               
i   libxatracker1                 - X acceleration library -- runtime                                              
i   nodejs                        - Node.js event-based server-side javascript engine                              
id  nvidia-persistenced           - Load the NVIDIA kernel driver and create device files                          
id  nvidia-settings-331           - Tool for configuring the NVIDIA graphics driver                                
i   simplescreenrecorder          - A feature-rich screen recorder that supports X11 and OpenGL.                   
i A simplescreenrecorder-lib      - A feature-rich screen recorder that supports X11 and OpenGL.                   
i   sublime-text                  - Sublime Text is a sophisticated text editor for code, markup and prose         
i   vokoscreen                    - easy to use screencast creator                                                 
i   xserver-common                - common files used by various X servers                                         
i   xserver-xorg-core             - Xorg X server - core server                                                    
i   xserver-xorg-input-synaptics  - Synaptics TouchPad driver for X.Org server                                     
i   xserver-xorg-video-ati        - X.Org X server -- AMD/ATI display driver wrapper                               
i   xserver-xorg-video-cirrus     - X.Org X server -- Cirrus display driver                                        
i   xserver-xorg-video-intel      - X.Org X server -- Intel i8xx, i9xx display driver                              
i   xserver-xorg-video-mach64     - X.Org X server -- ATI Mach64 display driver                                    
i   xserver-xorg-video-nouveau    - X.Org X server -- Nouveau display driver                                       
i   xserver-xorg-video-r128       - X.Org X server -- ATI r128 display driver                                      
i   xserver-xorg-video-radeon     - X.Org X server -- AMD/ATI Radeon display driver                                
i   xserver-xorg-video-vmware     - X.Org X server -- VMware display driver        

Il semble que cela soit causé par des pilotes vidéo propriétaires.
topless

Exécutez cette commande et affichez le résultat dans votre réponse après édition:sudo dpkg -l | grep -w "rc"
Saurav Kumar

@Braiam J'ai ajouté la sortie que vous avez demandée, apt-get check est Construire une arborescence de dépendances et Lire des informations d'état ... Fait, et dpkg ne donne pas de sortie.
topless

Pourriez-vous faire ce qui suit: sudo apt-get -y install aptitude && sudo rename 's/\.list$/.list.disable/' /etc/apt/sources.list.d/*.list && sudo aptitude update && aptitude search '?narrow(?installed, !?archive(raring))'et coller les résultats? La première commande installera aptitude, la deuxième désactivera tous les PPA, la troisième mettra à jour votre liste et la quatrième, tous les paquets qui ne proviennent pas du référentiel.
Braiam

Réponses:


47

Ce qui a fonctionné pour moi a été de supprimer tous les paquets cassés, car ils empêchaient la mise à niveau.

Commencez par trouver quels paquets sont cassés:

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

Puis retirez-les:

sudo apt-get remove <packages to remove>

Certains peuvent être réinstallés lors de la mise à niveau, d'autres vous devrez peut-être vous réinstaller vous-même.


3
Il semble que j'ai une grande liste de paquets xserver-xorg-video- * cassés. Je ne suis pas vraiment sûr mais j'ai l'impression que si je commence à les supprimer, mon système va se détériorer. Avez-vous réussi à les supprimer avec succès? Quel genre de colis vous causait des ennuis?
topless

2
Je devais enlever le même. Les "bonnes" versions sont revenues à la fin de la mise à niveau. Ma mise à jour a été un succès.
DaShaun

1
J'ai les mêmes problèmes avec les paquets xserver-xorg-video- *. Comment les avez-vous enlevés? sudo apt-get remove xserver-xorg-video-*? J'ai une question ici avec plus de détails.
Modulitos

3
C'est exactement ce que j'ai fait 'sudo apt-get remove xserver-xorg-video- *'
DaShaun

8
grep Broken grep Broken /var/log/dist-upgrade/apt.logme donne plus de 700 lignes. Ne peut certainement pas les supprimer tous.
pasha.zhukov

29

Après la mise à niveau de votre système, vérifiez le fichier. /var/log/dist-upgrade/main.log

J'ai trouvé la ligne:

2013-10-17 15:00:30,543 ERROR Dist-upgrade failed: 'The package 'xubuntu-desktop' is marked for removal but it is in the removal blacklist.'

J'ai supprimé manuellement xubuntu-desktop. La mise à niveau a ensuite continué sans problème.


2
Est-il possible de conserver ce paquet et de le mettre à jour? J'ai postgresql-9.2et je ne veux pas l'enlever.
Abdulsattar Mohammed

1
vous pouvez simplement le réinstaller une fois la mise à niveau terminée.
ImaginaryRobots

Après avoir supprimé le seul ERREUR présent, j’ai obtenu un 2e ERREUR différent lorsqu’il a été exécuté à do-release-upgradenouveau, il a donc fallu supprimer manuellement celui-ci également. Vous devrez peut-être le faire plusieurs fois si vous êtes assez malchanceux. Il est également possible que l'une des autres méthodes ait également mis en évidence celles-ci telles que hold ou break mais je ne les ai pas essayées.
north-bradley

Postgres semblait être la chose qui me retenait. Merci de le signaler à @AbdulsattarMohammed!
Jocull

5

Problème similaire ici. Les dernières lignes du fichier "main.log" indiqué dans l'article précédent étaient:

2013-10-17 23:44:38,233 DEBUG blacklist expr 'unity$' matches 'unity'
2013-10-17 23:44:38,233 DEBUG The package 'unity' is marked for removal but it's in the removal blacklist
2013-10-17 23:44:43,585 ERROR Dist-upgrade failed: 'The package 'unity' is marked for removal but it is in the removal blacklist.'
2013-10-17 23:44:43,586 DEBUG abort called
2013-10-17 23:44:43,592 DEBUG openCache()
2013-10-17 23:44:43,592 DEBUG failed to SystemUnLock() (E:Not locked) 
2013-10-17 23:44:46,786 DEBUG /openCache(), new cache size 41453
2013-10-17 23:44:46,786 DEBUG enabling apt cron job

L'unité manuellement désinstallée et la mise à niveau se poursuivent maintenant. Pas tout à fait sûr de ce qui cause ce problème en premier lieu et si c'est vraiment une bonne "solution" mais je suppose que je le saurai une fois la mise à jour terminée?!?


4

Si vous utilisez les pilotes vidéo propriétaires AMD / ATI fglrx, la suppression des packages fglrx et du pilote vidéo xorg résoudra probablement les problèmes suivants:

sudo apt-get remove fglrx fglrx-amdcccle-updates
sudo apt-get remove xserver-xorg-video-ati:amd64

Dans mon cas, les pilotes fglrx ont été installés à partir du PPA xorg-edgers et la suppression de ces packages a effacé ma mise à niveau. Une fois la mise à niveau terminée, vous pouvez recommencer le processus de configuration des pilotes propriétaires.


C'est ce qui a fonctionné pour moi!
Nick Grealy

fglrx-coreétait toujours laissé sur mon système après avoir fait cela. D'autres peuvent aussi avoir besoin de l'enlever.
Michael Hoffmann

4

Dans mon cas, le problème était dû à un package en attente . Le remettre à l' état d' installation a résolu le problème.


Un moyen possible de mettre ou de supprimer un paquet en attente consiste à utiliser dpkg. Tout d’abord, vous obtenez l’état actuel de tous les paquets et le placez dans un fichier:

dpkg --get-selections > myselection

Ensuite, vous éditez le fichier et le remplacez installpar hold, ou inversement. Enfin, vous définissez la nouvelle sélection:

sudo dpkg --set-selections < myselection
sudo apt-get update
sudo apt-get upgrade

D'autres moyens sont décrits dans Comment empêcher un paquet d'être mis à niveau?


1
pourquoi ne nous dites-vous pas comment vous l'avez fait? Ce n'est pas une réponse complète, essayez de décrire vos étapes. Comment avez-vous trouvé le paquet et les actions que vous avez prises.
topless

1
Comment savoir quels paquets sont en attente?
Dennis

2

Apparemment, il existe un moyen simple d'ajouter /raringà chaque nom de paquet, comme ceci:

sudo apt-get install dropbox/raring google-chrome-stable/raring google-talkplugin/raring libdrm-intel1/raring libdrm-nouveau2/raring libdrm-radeon1/raring libdrm2/raring libegl1-mesa/raring libegl1-mesa-drivers/raring libgbm1/raring libgl1-mesa-dri/raring libgl1-mesa-glx/raring libglapi-mesa/raring libllvm3.3/raring libopenvg1-mesa/raring libxatracker1/raring nodejsnvidia-persistencednvidia-settings-331/raring simplescreenrecorder/raring sublime-text/raring vokoscreen/raring xserver-common/raring xserver-xorg-core/raring xserver-xorg-input-synaptics/raring xserver-xorg-video-ati/raring xserver-xorg-video-cirrus/raring xserver-xorg-video-intel/raring xserver-xorg-video-mach64/raring xserver-xorg-video-nouveau/raring xserver-xorg-video-r128/raring xserver-xorg-video-radeon/raring xserver-xorg-video-vmware/raring

Si cela ne fonctionne pas, essayez la méthode ci-dessous.


Comme prévu, vous avez plusieurs packages qui ne sont pas des référentiels Ubuntu qui sont critiques pour l'installation. Vous devriez les rétrograder un à un (je n'ai pas trouvé de moyen efficace de le faire), puis tenter la mise à niveau. Je vais en faire un exemple:

$ apt-cache policy libdrm2
libdrm2:
  Installed: 2.4.43-0ubuntu1.1
  Candidate: 2.4.43-0ubuntu1.1
  Version table:
 *** 2.4.43-0ubuntu1.1 0
        100 /var/lib/dpkg/status
     2.4.43-0ubuntu1 0
        500 http://archive.ubuntu.com/ubuntu/ raring/main amd64 Packages

Dans votre cas, quelque chose comme ceci devrait apparaître. Vous devez prendre note de la version qui a une URL, dans ce cas , 2.4.43-0ubuntu1qui a http://archive.ubuntu.com/ubuntu/, sauf la paire pour plus tard dans un fichier texte en utilisant le format <package>=<version>.

Si vous voyez quelque chose comme:

fluxgui:
  Installed: 1.1.8
  Candidate: 1.1.8
  Version table:
 *** 1.1.8 0
        100 /var/lib/dpkg/status

remarquez que vous n'avez pas d'URL , alors ce paquet peut être supprimé:

sudo apt-get remove fluxgui

Ensuite, vous finissez votre liste devrait ressembler à:

libdrm2 = 2.4.43-0ubuntu1 libdrm2 = 2.4.43-0ubuntu1 libdrm2 = 2.4.43-0ubuntu1 libdrm2 = 2.4.43-0ubuntu1 libdrm2 = 2.4.43-0ubuntu1 libdrm2 = 2.4.43-0ubuntu1

(encore et exemple, mais vous pourriez avoir une idée)

Une fois que votre liste est complète, tapez-la sudo apt-get -f installet collez-la afin qu'elle ressemble à ceci:

sudo apt-get -f install libdrm2=2.4.43-0ubuntu1 libdrm2=2.4.43-0ubuntu1 libdrm2=2.4.43-0ubuntu1 libdrm2=2.4.43-0ubuntu1 libdrm2=2.4.43-0ubuntu1 libdrm2=2.4.43-0ubuntu1

Si vous voulez le faire un peu plus rapidement, vous pouvez utiliser apt-cache policy libdrm2 libgbm1plusieurs noms de paquet.


La première approche n’a pas résolu le problème. Aujourd’hui, j’aurai un peu de temps pour passer en revue les étapes que vous suggérez. Il serait bien de fournir la commande pour pouvoir annuler les premières modifications car maintenant, apt-get ne peut pas être mis à jour.
topless

@topless si la première commande échoue, cela signifie que rien n'a été fait. Si apt-get updatecela ne fonctionne pas, cela signifie autre chose.
Braiam

sur apt-get updateje reçois ce genre d'erreursN: Ignoring file 'xorg-edgers-ppa-raring.list.disable' in directory '/etc/apt/sources.list.d/' as it has an invalid filename extension
seins nus

C'est une information / un avertissement, peut être ignoré, et est attendu puisque nous ne voulons pas d'APP.
Braiam

Je vais inclure "un moyen efficace" de supprimer les paquets "un par un" dans ma réponse ci-dessous. C'est juste une collection de tous les conseils que j'ai reçus de partout.
Nyxee

1

J'ai suivi plusieurs des réponses ci-dessus, essayant de faire en sorte que la mise à niveau fonctionne, aucune de celles n'impliquant pas la suppression de paquets cassés n'a fonctionné. J'ai eu 144 colis cassés, ce qui semblait complètement irréalisable. Je les ai supprimés un à la fois, en tentant la mise à jour après chacun. Après avoir supprimé 3 (perl-base, gnuplot, gnuplot-11), choisis essentiellement au hasard, la mise à jour a abouti. (14.04 à 16.04).


0

J'ai eu le même problème mais j'ai été facilement surmonté en exécutant ce qui suit dans le terminal:

sudo apt-get remove
sudo apt-get autoremove

3
sudo apt-get removene fait rien.
Guntbert

Ahh, mais il liste les paquets qui pourraient être supprimés avec auto remove. :) il y a de la folie à ma méthode.
SeyDoggy

1
Alors sudo apt-get autoremoveaussi.
Guntbert

+1 - Je devais courirsudo apt-get autoremove
Nick Grealy

-1

J'ai déjà répondu à cette question il y a quelque temps si vous aviez effectué une simple recherche ici avant de poser la question.

sudo mv /etc/apt/sources.list.d/ /etc/apt/sources.list.d.bak; sudo sed -i 's/raring/saucy/g' /etc/apt/sources.list; sudo apt-get update; sudo apt-get upgrade -y; sudo apt-get dist-upgrade -y; sudo apt-get install -f; sudo aptitude upgrade -y; sudo aptitude dist-upgrade -y; sudo mv /etc/apt/sources.list.d.bak /etc/apt/sources.list.d; sudo sed -i 's/raring/saucy/g' /etc/apt/sources.list.d/*; sudo apt-get update; sudo apt-get upgrade -y; sudo apt-get dist-upgrade -y; sudo apt-get install ubuntu-desktop -y

Terminé, résout tous les problèmes


1
S'il vous plaît, ne lancez pas ce genre de réponses. Cette procédure est potentiellement dangereuse si elle est effectuée sans précaution.
Braiam

En fait non ce n'est pas. Ce n'est pas dangereux du tout. Le fait que vous pensiez que c'est dangereux signifie que vous n'en savez pas grand chose. Je l'ai couru plusieurs fois dans le passé et avec beaucoup de gens. Si vous lisez réellement toute la commande, vous constaterez que j'ai expliqué tous les problèmes possibles. Il suffit à l'utilisateur de regarder le résultat de la commande. Ubuntu 13.10 a beaucoup de problèmes avec la mise à niveau, mais cela résout tout parfaitement et commodément en une longue commande. Je vous conseille de consulter la documentation sur le fonctionnement de «do-release-upgrade», car c’est précisément ce que fait cette commande.
mmstick

1
@mmstick Vous pouvez élaborer un peu plus sur votre commande longue et les problèmes qu'elle résout, tant que le problème est résolu et comment il le résout. Je vois que vous appelez plusieurs fois apt-get upgradeet le reste des commandes, alors vous pouvez peut-être à nouveau le scinder ligne par ligne et expliquer votre processus et son fonctionnement. Je n'ai pas le luxe d'essayer des commandes irréversibles à haut risque. Merci quand même pour l'effort. Nous sommes tous ici pour apprendre ..
topless

@mmstick, je suis à la recherche de votre réponse, vous avez mentionné il y a un certain temps et sa réponse est conforme à ma question. Vous auriez donc pu chercher un peu mieux avant de répondre de manière grossière à Braiam et à moi.
seins nus

2
@mmstick ne soyez pas paresseux, éditez votre réponse, à compléter pour référence future. C'est bien que vous ayez contribué tôt, mais le problème que je rencontrais pour la première fois avec la mise à jour 13.10.
topless
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.