[Eisfair] E1: kernel-update

Marcus Roeckrath marcus.roeckrath at gmx.de
Do Mai 12 08:21:26 CEST 2016


Hallo Holger,

Holger Behmann wrote:

>> Installiere zunächst den aktuellen Kernel in der -Virt-Version.
>> 
> Saving to: 'eiskernel-virt.tar.gz'
> 
> eiskernel-virt.tar.gz
>
100%[=====================================================================>]
>  25.40M   604KB/s   in 44s
> 
> 2016-05-12 00:42:17 (593 KB/s) - 'eiskernel-virt.tar.gz' saved
> [26636204/26636204]
> 
> Please wait ...
> Saving your kernel configuration in /tmp/kernel-backup.tar.gz:
>  /boot
>  /etc/lilo.conf
>  /lib/modules/2.4.31
>  /lib/modules/3.2.67-eisfair-1-SMP
>  /System.map-3.2.67-eisfair-1-SMP
>  /var/install/packages/eiskernel
>  /var/install/packages/eiskernel-smp
> tar:
> lib/modules/3.2.67-eisfair-1-SMP/kernel/drivers/block/paride/pcd.ko:
> File shrank by 11384 bytes; padding with zeros
> 
> 
> Error occured during taring your kernel configuration, cancelling
> installation.
> Kernel update failed.
> 
> Was soll mir diese Meldung sagen? Tar.gz kaputt?

tar schmeißt beim Erstellen ddes Backups des aktuellen Kernels einen Fehler
raus, so dass das Kernelupdate aus Sicherheitsgründen abgebrochen wird, da
ein Restaurieren des vorigen Kernels nicht sichergestellt werden, wenn
etwas beim Installieren des neuen Kernels fehlschlägt.

Warum tar allerdings Probleme mit obiger Datei hat, kann ich nicht sagen?

Du könntest mal auf der Kommandozeile tar-Testarchive erstellen und schauen,
ob der tar Fehlermeldungen ausgibt:

z. B. (jeweils in eine Zeile):

tar
-cvvf /root/test.tar /lib/modules/3.2.67-eisfair-1-SMP/kernel/drivers/block/paride/pcd.ko

tar
-cvvf /root/test.tar /lib/modules/3.2.67-eisfair-1-SMP/kernel/drivers/block/paride

Im Internet fand ich:

[Zitat]
Nachtrag: Im tar-Source findet man in src/create.c (das ist der Code, der
die Option "-c" implementiert) die Meldung "%s: File shrank by %s byte;
padding with zeros" in der Funktion dump_regular_file(). Die Funktion
besteht aus einer großen "while (size_left > 0)"-Schleife, in der mit der
Funktion safe_read() count (maximal bufsize) Bytes an Daten gelesen werden.
Wenn count != bufsize ist, hat die Datei nicht die erwartete Größe und tar
druckt die Meldung.

Das kann nur dann der Fall sein, wenn das Dateisystem die Größe falsch
zurückgibt oder die Datei die Größe während des Backups geändert hat.
[/Zitat]

Vielleicht wäre doch mal ein Check des Dateisystems angesagt.

Wenn Du die Datei /forcecheck anlegst, wird beim nächten Boot ein
Filesystemcheck durchgeführt:

touch /forcefsck

-- 
Gruss Marcus


Mehr Informationen über die Mailingliste Eisfair