Warum ist mein Upgrade auf 12.04 mit dem Fehler "glibc not found" oder "libc6" oder "erfordert Kernel 2.6.24" fehlgeschlagen?


8

Ich habe mein Server-Installationsformular 11.04 auf 11.10 und dann über ssh auf 12.04 aktualisiert. Alles scheint fast in Ordnung zu sein - aber es gibt ein kleines Problem mit glibc, das meine Wohnung durcheinander bringt.

Ich habe es versucht, sudo apt-get install -faber es bekommt nicht das, was es braucht. Ich verwende eine virtuelle OpenVZ-Maschine.

Wie kann ich meine passenden Abhängigkeiten beheben?

sysadmin@svr:~$ sudo apt-get update 
Ign http://archive.canonical.com precise InRelease
Ign http://archive.ubuntu.com precise InRelease
Ign http://archive.ubuntu.com precise-updates InRelease
Ign http://archive.ubuntu.com precise-security InRelease
Get:1 http://archive.ubuntu.com precise Release.gpg [198 B]
Hit http://archive.canonical.com precise Release.gpg 
Get:2 http://archive.ubuntu.com precise-updates Release.gpg [198 B]
Hit http://archive.canonical.com precise Release      
Get:3 http://archive.ubuntu.com precise-security Release.gpg [198 B]
Hit http://archive.canonical.com precise/partner i386 Packages
Get:4 http://archive.ubuntu.com precise Release [49.6 kB]
Ign http://archive.canonical.com precise/partner TranslationIndex
Get:5 http://archive.ubuntu.com precise-updates Release [49.6 kB]
Get:6 http://archive.ubuntu.com precise-security Release [49.6 kB]               
Get:7 http://archive.ubuntu.com precise/main i386 Packages [1274 kB]            
Ign http://archive.canonical.com precise/partner Translation-en                  
Get:8 http://archive.ubuntu.com precise/restricted i386 Packages [8431 B]
Get:9 http://archive.ubuntu.com precise/universe i386 Packages [4796 kB]
Hit http://archive.ubuntu.com precise/main TranslationIndex                                                                                                                       
Hit http://archive.ubuntu.com precise/restricted TranslationIndex                                                                                                                 
Hit http://archive.ubuntu.com precise/universe TranslationIndex                                                                                                                   
Get:10 http://archive.ubuntu.com precise-updates/main i386 Packages [20.2 kB]                                                                                                     
Get:11 http://archive.ubuntu.com precise-updates/restricted i386 Packages [770 B]                                                                                                 
Get:12 http://archive.ubuntu.com precise-updates/universe i386 Packages [2258 B]                                                                                                  
Get:13 http://archive.ubuntu.com precise-updates/main TranslationIndex [72 B]                                                                                                     
Get:14 http://archive.ubuntu.com precise-updates/restricted TranslationIndex [71 B]                                                                                               
Get:15 http://archive.ubuntu.com precise-updates/universe TranslationIndex [72 B]                                                                                                 
Get:16 http://archive.ubuntu.com precise-security/main i386 Packages [11.8 kB]                                                                                                    
Get:17 http://archive.ubuntu.com precise-security/restricted i386 Packages [14 B]                                                                                                 
Get:18 http://archive.ubuntu.com precise-security/universe i386 Packages [1357 B]                                                                                                 
Get:19 http://archive.ubuntu.com precise-security/main TranslationIndex [72 B]                                                                                                    
Get:20 http://archive.ubuntu.com precise-security/restricted TranslationIndex [70 B]                                                                                              
Get:21 http://archive.ubuntu.com precise-security/universe TranslationIndex [71 B]                                                                                                
Hit http://archive.ubuntu.com precise/main Translation-en                                                                                                                         
Hit http://archive.ubuntu.com precise/restricted Translation-en                                                                                                                   
Hit http://archive.ubuntu.com precise/universe Translation-en                                                                                                                     
Get:22 http://archive.ubuntu.com precise-updates/main Translation-en [9145 B]                                                                                                     
Hit http://archive.ubuntu.com precise-updates/restricted Translation-en                                                                                                           
Get:23 http://archive.ubuntu.com precise-updates/universe Translation-en [1344 B]                                                                                                 
Get:24 http://archive.ubuntu.com precise-security/main Translation-en [3549 B]                                                                                                    
Hit http://archive.ubuntu.com precise-security/restricted Translation-en                                                                                                          
Get:25 http://archive.ubuntu.com precise-security/universe Translation-en [760 B]                                                                                                 
Fetched 6279 kB in 57s (109 kB/s)                                                                                                                                                 
Reading package lists... Done
sysadmin@svr:~$ sudo apt-get ugrade
E: Invalid operation ugrade
sysadmin@svr:~$ sudo apt-get upgrade
Reading package lists... Done
Building dependency tree       
Reading state information... Done
You might want to run 'apt-get -f install' to correct these.
The following packages have unmet dependencies:
 libc6 : Depends: libc-bin (= 2.13-20ubuntu5.1) but 2.15-0ubuntu10 is installed
 libncurses5 : Depends: libtinfo5 (= 5.9-1ubuntu5) but 5.9-4 is installed
 libnih-dbus1 : Depends: libnih1 (= 1.0.3-4ubuntu9) but 1.0.3-4ubuntu2 is installed
E: Unmet dependencies. Try using -f.
sysadmin@svr:~$ sudo apt-get install -f
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Correcting dependencies... Done
The following packages were automatically installed and are no longer required:
  libswscale0 libavutil50 python-support g++-4.5 libboost-program-options1.42.0 librpmio1 libpostproc51 libavformat52 libstdc++6-4.5-dev libavfilter1 libavcodec52
  libboost-filesystem1.42.0 libboost-system1.42.0 libavdevice52
Use 'apt-get autoremove' to remove them.
The following extra packages will be installed:
  libc-dev-bin libc6 libc6-dev libncurses5 libnih1
Suggested packages:
  glibc-doc
The following packages will be upgraded:
  libc-dev-bin libc6 libc6-dev libncurses5 libnih1
5 upgraded, 0 newly installed, 0 to remove and 335 not upgraded.
2 not fully installed or removed.
Need to get 0 B/9099 kB of archives.
After this operation, 1618 kB disk space will be freed.
Do you want to continue [Y/n]? 
locale: /lib/i386-linux-gnu/libc.so.6: version `GLIBC_2.15' not found (required by locale)
Preconfiguring packages ...
Setting up libc-bin (2.15-0ubuntu10) ...
(Reading database ... 31190 files and directories currently installed.)
Preparing to replace libc6-dev 2.13-20ubuntu5.1 (using .../libc6-dev_2.15-0ubuntu10_i386.deb) ...
Unpacking replacement libc6-dev ...
Preparing to replace libc-dev-bin 2.13-20ubuntu5.1 (using .../libc-dev-bin_2.15-0ubuntu10_i386.deb) ...
Unpacking replacement libc-dev-bin ...
Preparing to replace libc6 2.13-20ubuntu5.1 (using .../libc6_2.15-0ubuntu10_i386.deb) ...
locale: /lib/i386-linux-gnu/libc.so.6: version `GLIBC_2.15' not found (required by locale)
Checking for services that may need to be restarted...
Checking init scripts...
runlevel:/var/run/utmp: No such file or directory
Checking for services that may need to be restarted...
Checking init scripts...
runlevel:/var/run/utmp: No such file or directory
WARNING: init script for samba not found.
Stopping some services possibly affected by the upgrade (will be restarted later):
  cron: stopping...done.

WARNING: this version of the GNU libc requires kernel version
2.6.24 or later. Please upgrade your kernel before installing
glibc.

The installation of a 2.6 kernel _could_ ask you to install a new libc
first, this is NOT a bug, and should *NOT* be reported. In that case,
please add lenny sources to your /etc/apt/sources.list and run:
  apt-get install -t lenny linux-image-2.6
Then reboot into this new kernel, and proceed with your upgrade
dpkg: error processing /var/cache/apt/archives/libc6_2.15-0ubuntu10_i386.deb (--unpack):
 subprocess new pre-installation script returned error exit status 1
No apport report written because MaxReports is reached already
                                                              Processing triggers for man-db ...
locale: /lib/i386-linux-gnu/libc.so.6: version `GLIBC_2.15' not found (required by locale)
Errors were encountered while processing:
 /var/cache/apt/archives/libc6_2.15-0ubuntu10_i386.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)
sysadmin@svr:~$ 


Ich habe mich entschlossen, eine Weile zu warten, bis ich das Update durchgeführt habe, in der Hoffnung, dass das Problem ohne weiteren Aufwand behoben wird. Ich musste das System bereits einige Male neu installieren. Ich vermute, dass die Top-Antwort den Schlüssel zum Problem enthält, habe sie aber noch nicht getestet. Ich werde es ankreuzen, sobald es überprüft wurde - was ich bald tun werde.
Billy Moon

Danke Billy - bitte kommentiere die Antwort, wenn du weitere Fragen / Probleme hast!
ish

Antworten:


11

Erst die Erklärung, dann eine Lösung :)

Dies liegt daran, dass auf Ihrem Host mit ziemlicher Sicherheit OpenVZ auf einem 2.6.18-Kernel ausgeführt wird (alle OpenVZ-Container teilen sich den Host-Kernel). Der Grund kann von Stabilität bis hin zu Faulheit reichen. Das Problem ist, dass die in Precise enthaltene libc 2.15 einen Kernel von mindestens 2.6.24 benötigt, um zu funktionieren. Manchmal führt dies dazu, dass das Release-Upgrade fehlschlägt. Es ist jedoch möglich, eine teilweise aktualisierte Situation zu beenden, in der Sie weder hier noch nicht dort sind, wie Sie es getan haben.

Fürchte dich nicht, die libc-Anforderung ist eine Option zur Kompilierungszeit und kann niedriger eingestellt werden (in diesem Fall enthält die Bibliothek Problemumgehungen für ältere Kernel). Ich denke, das Minimum auf 0,24 zu setzen ist eine Möglichkeit, Leute in das Jahr 2012 zu ziehen :)

Ich habe eine PPA eingerichtet, die eine neu kompilierte Bibliothek enthält, die unter 2.6.18 oder neuer funktioniert (bitte überprüfen uname -r!), Und die die von Precise bereitgestellte aktuelle Bibliothek überschreiben sollte. Fügen Sie einfach ppa: izx / ovz-libc hinzu , aktualisieren Sie, und es sollte Ihnen ermöglichen, darüber hinwegzukommen . Konkret so etwas:

apt-add-repository ppa:izx/ovz-libc
apt-get update
apt-get -f install
do-release-upgrade

und fahren Sie fort, bis das Upgrade erfolgreich abgeschlossen wurde. Ich empfehle dringend, geänderte oder nicht vorhandene Konfigurationsdateien NICHT zu ersetzen.

Ich werde die ppa auf dem neuesten Stand halten, sobald libc stromaufwärts aktualisiert wird. Wenn Sie in diesem Fall einen ähnlichen Fehler vermeiden möchten, möchten Sie möglicherweise eine PIN libc-binmit hoher Priorität an meine PPA anheften, damit diese erst aktualisiert wird, wenn die "feste" Version von der PPA verfügbar ist.

Hoffe das hilft und bitte poste hier, wenn jemand Fragen oder anderes Feedback hat.


Können Sie erklären, wie Sie diese Änderung vornehmen konnten? Ich habe versucht, in der libc6-Quelle zu stöbern, kann sie aber nicht finden. Ich stecke auf einem OpenVZ VPS mit 2.6.18 in einem halb aktualisierten Zustand fest, aber für die Pakete ist libc6 2.17 und nicht 2.15 erforderlich. Jede Hilfe wäre sehr dankbar.
Red_sky

3

Versuchen Sie diesen Befehl. Sie können ein Terminal mit Alt+ Ctrl+ öffnen T:

sudo apt-get -o APT::Immediate-Configure=0 -f install

Nachdem Sie eine tun können sudo apt-get upgrade.

Ich hatte das gleiche Problem ... mit Ubuntu Server ... seltsam, nicht wahr?
Hoffe es wird für dich funktionieren.


1

Für alle, die im do-dist-Upgrade stecken bleiben und nicht laufen können

apt-add-repository ppa:izx/ovz-libc

Fügen Sie einfach die folgende Zeile manuell hinzu /etc/apt/sources.list:

deb http://ppa.launchpad.net/izx/ovz-libc/ubuntu lucid main

Dies funktioniert bei Virtuzzo-Containern bei mir nicht. Ich benutze eine Vorlage von 10.04 und schlägt fehl. Aber von Debian 6.0 mit einem aktualisierten Kernel funktioniert es für Virtuozzo 4.6
Shakaran

0

Ich weiß nicht, ob es einen anderen Weg gibt, aber ich hatte wichtige Dateien auf meinem Desktop, die ich nicht gesichert habe, als Ubuntu genau auf mich abgestürzt ist. Ich hatte zufällig die Ubuntu 11.10 Boot Multi-Option-Installation zur Hand CD und so habe ich mit der CD neu gestartet und dann "Upgrade von 12.04 LTS auf 11.10" ausgewählt. Nach der Zeit, die für die Neuinstallation von 11.10 aufgewendet wurde, kann ich endlich wieder mit meinen wichtigen Dateien arbeiten.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.