Univention Bugzilla – Bug 29355
Lesefehler bei der Paketinstallation
Last modified: 2014-03-03 09:34:47 CET
Ich habe auf einem UCS 3.0-2 DC Slave errata135 Probleme bestimmte Pakete zu installieren: Entpacken von texlive-latex-base-doc (aus .../texlive-latex-base-doc_2009-11.16.201205220901_all.deb) ... dpkg-deb (Unterprozess): data: interner gzip-Lesefehler: »<fd:0>: invalid stored block lengths« dpkg-deb: Unterprozess <Dekompression> gab den Fehlerwert 2 zurück dpkg: Fehler beim Bearbeiten von /var/cache/apt/archives/texlive-latex-base-doc_2009-11.16.201205220901_all.deb (--unpack): defektes Tar-Dateisystem - Paketarchiv ist defekt configured to not write apport reports Vormals abgewähltes Paket texlive-pictures wird gewählt. Das Problem tritt mit unterschiedlichen Paketen auf. Die MD5 Summen stimmen nicht mit den heruntergeladenen Paketen überein. Im Moment vermute ich die Ursache im Bereich Virtualisierung. Die KVM Instanz läuft derzeit auf odda (3.1 RC).
Ich konnte es folgendermaßen auf einem UCS 3.0-2 DC Slave reproduzieren: ucr set repository/online/unmaintained="yes" univention-install php-pear php5-ldap php5-xmlrpc python-pexpect liburi-perl libconvert-asn1-perl libhtml-tagset-perl libhtml-parser-perl libhtml-tree-perl libwww-perl libnet-ldap-perl libconvert-binhex-perl libio-stringy-perl libtimedate-perl libmailtools-perl libmime-tools-perl libconvert-tnef-perl libconvert-uulib-perl libcompress-raw-zlib-perl libarchive-zip-perl libunix-syslog-perl libio-multiplex-perl libnet-cidr-perl libnet-server-perl libberkeleydb-perl liberror-perl libdigest-sha1-perl libdigest-hmac-perl libnet-ip-perl libnet-dns-perl libcrypt-openssl-bignum-perl libcrypt-openssl-rsa-perl libmail-dkim-perl pax amavisd-new libsys-hostname-long-perl libnetaddr-ip-perl spamassassin spamc univention-spamassassin libtommath0 libclamav6 clamav-base clamav-freshclam clamav clamav-daemon univention-antivir-mail univention-sasl libffcall1 libsigsegv0 cl-asdf realpath common-lisp-controller clisp gawk libnet-daemon-perl libplrpc-perl libdbi-perl libdbd-mysql-perl mysql-client-5.1 mysql-server-core-5.1 mysql-server-5.1 libdb4.6 db4.6-util db4.7-util libzephyr4 libterm-readkey-perl libterm-readline-perl-perl python-univention-directory-reports tex-common texlive-common texlive-doc-base libpoppler5 luatex libkpathsea5 ed texlive-binaries texlive-base texlive-fonts-recommended texlive-latex-base texlive-latex-recommended texlive preview-latex-style texlive-pictures texlive-latex-extra texlive-lang-german univention-directory-reports univention-management-console-module-udm libt1-5 php5-gd libmcrypt4 php5-mcrypt php-log php-mail-mimedecode php-net-socket php5-pspell php5-mysql mysql-client mysql-server libmldbm-perl doc-base texlive-font-utils texlive-extra-utils feynmf gsfonts-x11 heirloom-mailx wwwconfig-common javascript-common lacheck latex-xcolor pgf latex-beamer libxp6 lesstif2 libfont-afm-perl libfreezethaw-perl libhtml-format-perl libhtml-template-perl libio-socket-inet6-perl liblqr-1-0 libmagickcore3 libmagickwand3 libmagick++3 libmail-spf-perl libplot2c2 libpstoedit0c2a lmodern make poppler-data poppler-utils texlive-generic-recommended texlive-pstricks prosper ps2eps pstoedit texlive-metapost purifyeps re2c texlive-fonts-recommended-doc texlive-latex-base-doc texlive-latex-extra-doc texlive-latex-recommended-doc texlive-luatex texlive-metapost-doc texlive-pictures-doc texlive-pstricks-doc texpower xpdf texpower-manual tipa xindy-rules xindy [...] Entpacken von texlive-latex-base-doc (aus .../texlive-latex-base-doc_2009-11.16.201205220901_all.deb) ... dpkg: Fehler beim Bearbeiten von /var/cache/apt/archives/texlive-latex-base-doc_2009-11.16.201205220901_all.deb (--unpack): defektes Tar-Dateisystem - Paketarchiv ist defekt configured to not write apport reports dpkg-deb: Unterprozess einfügen mit Signal (Datenübergabe unterbrochen (broken pipe)) getötet stefan@omar:/var/univention/buildsystem2/mirror$ md5sum ./ftp/3.0/unmaintained/3.0-2/all/texlive-latex-base-doc_2009-11.16.201205220901_all.deb 09c72e5c21fd7143f0c670567ae7b1f2 ./ftp/3.0/unmaintained/3.0-2/all/texlive-latex-base-doc_2009-11.16.201205220901_all.deb stefan@omar:/var/univention/buildsystem2/mirror$ root@slave133:~# md5sum /var/cache/apt/archives/texlive-latex-base-doc_2009-11.16.201205220901_all.deb 96ab7d29e458a4e470d459be0555227d /var/cache/apt/archives/texlive-latex-base-doc_2009-11.16.201205220901_all.deb root@slave133:~#
Bei mir auch auf einem 3.0-2 errata93 aufgetreten. Entpacken von openoffice.org-core (aus .../openoffice.org-core_1%3a3.2.1-11.395.201209281356_amd64.deb) ... dpkg-deb (Unterprozess): data: interner bzip2-Lesefehler: »DATA_ERROR« dpkg-deb: Unterprozess <Dekompression> gab den Fehlerwert 2 zurück dpkg: Fehler beim Bearbeiten von /var/cache/apt/archives/openoffice.org-core_1%3a3.2.1-11.395.201209281356_amd64.deb (--unpack): nicht vollständig gelesen in Pufferkopie für Backend dpkg-deb während »./usr/lib/openoffice/basis3.2/program/libbasctllx.so« configured to not write apport reports /var/univention/buildsystem2/apt/ucs_3.1-0/amd64 $ md5sum openoffice.org-core_3.2.1-11.395.201209281356_amd64.deb 8ff3c9bde89bc1528258056128dcdc3b openoffice.org-core_3.2.1-11.395.201209281356_amd64.deb md5sum /var/cache/apt/archives/openoffice.org-core_1%3a3.2.1-11.395.201209281356_amd64.deb ad2b8231b00350bdbffc442afcff531c /var/cache/apt/archives/openoffice.org-core_1%3a3.2.1-11.395.201209281356_amd64.deb
Ich bekomme bei einem univention-upgrade von 3.0-2 auf 3.1 die gleichen Meldungen wie in der Description. Aufgetreten ist es bei mir beim Upgraden einer Umgebung bestehend aus Master, Backup sowie Slave und zwar auf allen genannten Rechnern und bei mehrmaligem Testen in circa 75% der Fälle. Betroffen waren dann pro Upgrade eines Rechners ein bis zwei Pakete, allerdings keineswegs immer dieselben. Die MD5 Summen der Pakete stimmen hier ebenfalls nicht überein. Folgende Pakete waren betroffen (mit Größenangabe) : firefox-en_1%3a10.0.9esr-4.15.201210301508_amd64.deb 18M mysql-server-core-5.1_5.1.63-0.23.201209281413_amd64.deb 4MB openjdk-6-jre-lib_6b18-1.8.13-0.62.201207030838_all.deb 5,7MB libapache2-mod-php5_5.3.3-7.176.201211121028_amd64.deb 2,9 MB Es fällt dabei auf, dass die Pakete alle zu den vom Datenvolumen her größeren Paketen des Updates zählen. Auch die in Comment 1 und 2 genannten Pakete passen in dieses Muster: openoffice.org-core_1%3a3.2.1-11.395.201209281356_amd64.deb 42MB texlive-latex-base-doc_2009-11.16.201205220901_all.deb 1MB
Ich habe eine Umgebung um das Problem zu reproduzieren: Auf odda: sudo virsh snapshot-revert stefan_UCS-3.0-2-13.1-Kolab-Master pre_29355 sudo virsh snapshot-revert stefan_UCS-3.0-2-13.3-Kolab-Slave pre_29355 ssh root@10.201.13.3 univention-install kolabsys-kolab2 Dann sollte irgendwann dies erscheinen: Entpacken von texlive-latex-extra-doc (aus .../texlive-latex-extra-doc_2009-10.7.201104231551_all.deb) ... dpkg-deb (Unterprozess): data: interner gzip-Lesefehler: »<fd:0>: invalid stored block lengths« dpkg-deb: Unterprozess <Dekompression> gab den Fehlerwert 2 zurück dpkg: Fehler beim Bearbeiten von /var/cache/apt/archives/texlive-latex-extra-doc_2009-10.7.201104231551_all.deb (--unpack): nicht vollständig gelesen in Pufferkopie für Backend dpkg-deb während »./usr/share/doc/texlive-latex-extra-doc/latex/minitoc/minitoc.pdf« Das System ist aktuell auch in diesem Zustand.
Das Problem trat auch auf, nachdem ich den Festplatten-Cache für die virtuelle Maschine auf writeback umgestellt hatte.
Nich direkt relevant für diesen Bug, aber dennoch eben aufgefallen: Mal wieder eine Inkompatibilität zwischen qemu-kvm und qemu, die mit einer nichts-sagenenden Fehlermeldung aufschlägt: qemu: warning: error while loading state for instance 0x0 of device 'ram' qemu-system-x86_64: Error -22 while loading VM state Ursache ist eine Änderung in der RAM-Größe: qemu-kvm-1.1.1/hw/cirrus_vga.c VGA_RAM_SIZE=16MiB qemu-1.2/hw/cirrus_vga.c VGA_RAM_SIZE=8MiB Erst mit qemu-1.3 gibt es eine Property 'vgamem_mb', mit der man das auch anpassen kann; davor sind alle Saved-States durch diese Inkompatibilität unbrauchbar. -global cirrus-vga.vgamem_mb=16 qemu-1.3.0 tut nicht: Unknown savevm section type 48 qemu-system-x86_64: Error -22 while loading VM state Patch → <https://patchwork.kernel.org/patch/1658741/mbox/> qemu-kvm-1.2.0 tut. qemu-kvm-1.1.0 tut nicht. git bisect → 770 commits zwischen 1.1 und 1.2 Saved-State lässt sich nicht überall wiederherstellen, weil u.a. der Saved-State von "kvm-tpr-opt" nicht wiederhergestellt werden kann. TBC...
b7ab0fea37c15ca9e249c42c46f5c48fd1a0943c "qcow2: Fix avail_sectors in cluster allocation code" behebt es für mich und ist für mich auch schlüssig. Ich habe eine Anfrage auf der QEMU-ML dazu gestellt <http://lists.nongnu.org/archive/html/qemu-devel/2012-12/msg01537.html> und stehe noch jetzt mit Kevin Wolf in Verhandlung, ob das Sinn macht.
#!/bin/sh # Validate MD5sums of downloaded Debian package files cd /var/cache/apt/archives md5sum *.deb | while read ist p do soll=$(apt-cache show --no-all-versions "${p%%_*}" | sed -ne 's/^MD5sum: //p') [ "$ist" = "$soll" ] || echo "$p $ist $soll" done
(In reply to comment #8) Die folgende Variante handhabt auch veraltete .deb-Dateien von vorherigen Updates korrekt: #!/bin/sh # Validate MD5sums of downloaded Debian package files cd /var/cache/apt/archives md5sum *.deb | while read ist p do apt-cache show "${p%%_*}" | sed -ne 's/^MD5sum: //p' | grep -q "$ist" - || echo "$p $soll" done
In errata3.1-0 ist eine neuere Version von qemu-kvm-1.1.2 gebaut. svn11166, 1.1.2+dfsg-2.26.201212140657 In Debian habe ich dazu auch einen Bug angelegt: <http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=695905>
Noch ein weiterer Patch aus qemu-kvm_1.1.2+dfsg-3 wurde übernommen, der ein Speicherproblem mit der qcow2-Ref-Count-Table behebt: svn11180 Ein re-Import des neueren qemu-kvm-Pakets aus Debian erfolgt über Bug #29667. qemu-kvm_1.1.2+dfsg-2.26.201212140657 yaml: svn15896 <https://hutten.knut.univention.de/mediawiki/index.php/Errata-Updates> 1.1 OK 1.2 OK 1.3 OK 1.4 (OK)
Created attachment 4926 [details] Details of failed run
Created attachment 4927 [details] GIT bisect script
Yippie, ich glaube den Bug und den Patch dafür verstandne zu haben: Durch den Patch wird die Anzahl der Sektoren korrekt berechnet, was vorher falsch war. Durch die ungünstige Ausrichtung der Partitionen kam es dann dazu, daß 2 Schreib-Anforderungen den selben 64 KiB-Cluster der Qcow2 betrafen. Wegen der falschen Länge wurden die Requests nicht als überlappend erkannt und parallel ausgeführt, was zur Korruption geführt hat. Der Patch korigiert die Länge, damit werden die Requests jetzt als überlappend erkannt und nacheinander ausgeführt. Mail ging an die ML, Kevin Wolf und den Debian-Maintainer; ich hoffe noch auf eine Bestätigung, sobald die wieder Verfügbar sind.
Mit zwei VMs (c't-dvd und 3.1) getestet, dabei an den auffälligen Paketinstallationen in diesem Report orientiert, es traten keine Fehler auf. Kopieren großer Images und anschließender md5-Summenvergleich war ebenfalls Fehlerfrei.
http://errata.univention.de/3.1-errata3.html
*** Bug 29646 has been marked as a duplicate of this bug. ***