Good Morning I am trying to follow the work around instructions but not having full success yet. I am using libglew1.5 to replace PACKAGE and that works fine what do I use to replace PACKAGE_VERSION?? I tried 1.5.2.0ubuntu1 but that doesn't seem to work Cheers chipppy On Tue, 2010-07-06 at 15:30 +0000, enguerran wrote: > ** Description changed: > > Under some conditions package installation/upgrade/removal fails with > the following error: > > -- Error during installation -- > Setting up screenlets (0.1.2-7) ... > dpkg (subprocess): unable to execute installed post-installation script: Exec format error > dpkg: error processing screenlets (--configure): > subprocess installed post-installation script returned error exit status 2 > > -- Error during removal -- > Removing gnome-do ... > dpkg (subprocess): unable to execute installed pre-removal script: Exec format error > dpkg: error processing gnome-do (--purge): > subprocess installed pre-removal script returned error exit status 2 > > This error occurs when one of the installation or removal scripts > (/var/lib/dpkg/info/PACKAGE.p*) is empty or corrupted. > > == HOW TO REPRODUCE == > Install a package and emulates a system crash before 30 seconds: > # apt-get install hello; sleep 20; echo b > /proc/sysrq-trigger > [simulates a system crash] > After reboot both installation and removal scripts are 0 bytes. You will notice that hello.list was correctly written to disk because of the fsync call in dpkg/src/filesdb.c > $ ls -l /var/lib/dpkg/info/hello.* > -rw-r--r-- 1 root root 323 2010-02-09 00:42 /var/lib/dpkg/info/hello.list > -rwxr-xr-x 1 root root 0 2009-08-15 19:17 /var/lib/dpkg/info/hello.postinst > -rwxr-xr-x 1 root root 0 2009-08-15 19:17 /var/lib/dpkg/info/hello.prerm > > If you replay the test but adding a sync before the system crash: > # apt-get install hello; sync; echo b > /proc/sysrq-trigger > After reboot the files are fine: > $ ls -l /var/lib/dpkg/info/hello.* > -rw-r--r-- 1 root root 323 2010-02-09 00:46 /var/lib/dpkg/info/hello.list > -rwxr-xr-x 1 root root 103 2009-08-15 19:17 /var/lib/dpkg/info/hello.postinst > -rwxr-xr-x 1 root root 74 2009-08-15 19:17 /var/lib/dpkg/info/hello.prerm > > If I adjust /proc/sys/vm/dirty_expire_centisecs to be below the sleep > time, ( for exemple 1000 in the test above ) then data are correctly > written to disk. > > == WORKAROUNDS == > Execute the following commands in a terminal > (GNOME: Applications -> Accessories -> Terminal > KDE: KMenu -> Applications -> System -> Terminal [Konsole] ) > > Workaround A: Remove the package and reinstall > > $ sudo rm /var/lib/dpkg/info/PACKAGE_VERSION.p* > $ sudo apt-get remove --purge PACKAGE > $ sudo apt-get clean > $ sudo apt-get update > > Then reinstall the package > > Workaround B: Finish the install when the package can't be removed > > $ sudo apt-get clean > $ sudo aptitude download PACKAGE > $ sudo dpkg --unpack ./PACKAGE_VERSION.deb > $ sudo dpkg --configure PACKAGE > > Replace PACKAGE with the package name which fails to install/remove. > > == Localization == > The same error in non-english language: > . Erreur de format pour exec() > . Error de formato ejecutable > . Errore di formato di exec > . Exec format error > . Formatfel på körbar fil > . Érvénytelen végrehajtható fájlformátum > . Exec formátum hiba > . Verkeerd uitvoerbaar bestand > . Exec 格式错误 > - . Formatfel på körbar fil > + . Formatfel på körbar fil > > -- > [MASTER] Exec format error : package failed to install/remove : installation/removal script returned error exit status 2 > https://bugs.launchpad.net/bugs/512096 > You received this bug notification because you are a direct subscriber > of a duplicate bug. > > Status in “dpkg” package in Ubuntu: Triaged > Status in “dpkg” source package in Karmic: New > Status in “dpkg” package in Debian: Fix Released > > Bug description: > Under some conditions package installation/upgrade/removal fails with the following error: > > -- Error during installation -- > Setting up screenlets (0.1.2-7) ... > dpkg (subprocess): unable to execute installed post-installation script: Exec format error > dpkg: error processing screenlets (--configure): > subprocess installed post-installation script returned error exit status 2 > > -- Error during removal -- > Removing gnome-do ... > dpkg (subprocess): unable to execute installed pre-removal script: Exec format error > dpkg: error processing gnome-do (--purge): > subprocess installed pre-removal script returned error exit status 2 > > This error occurs when one of the installation or removal scripts (/var/lib/dpkg/info/PACKAGE.p*) is empty or corrupted. > > == HOW TO REPRODUCE == > Install a package and emulates a system crash before 30 seconds: > # apt-get install hello; sleep 20; echo b > /proc/sysrq-trigger > [simulates a system crash] > After reboot both installation and removal scripts are 0 bytes. You will notice that hello.list was correctly written to disk because of the fsync call in dpkg/src/filesdb.c > $ ls -l /var/lib/dpkg/info/hello.* > -rw-r--r-- 1 root root 323 2010-02-09 00:42 /var/lib/dpkg/info/hello.list > -rwxr-xr-x 1 root root 0 2009-08-15 19:17 /var/lib/dpkg/info/hello.postinst > -rwxr-xr-x 1 root root 0 2009-08-15 19:17 /var/lib/dpkg/info/hello.prerm > > If you replay the test but adding a sync before the system crash: > # apt-get install hello; sync; echo b > /proc/sysrq-trigger > After reboot the files are fine: > $ ls -l /var/lib/dpkg/info/hello.* > -rw-r--r-- 1 root root 323 2010-02-09 00:46 /var/lib/dpkg/info/hello.list > -rwxr-xr-x 1 root root 103 2009-08-15 19:17 /var/lib/dpkg/info/hello.postinst > -rwxr-xr-x 1 root root 74 2009-08-15 19:17 /var/lib/dpkg/info/hello.prerm > > If I adjust /proc/sys/vm/dirty_expire_centisecs to be below the sleep time, ( for exemple 1000 in the test above ) then data are correctly written to disk. > > == WORKAROUNDS == > Execute the following commands in a terminal > (GNOME: Applications -> Accessories -> Terminal > KDE: KMenu -> Applications -> System -> Terminal [Konsole] ) > > Workaround A: Remove the package and reinstall > > $ sudo rm /var/lib/dpkg/info/PACKAGE_VERSION.p* > $ sudo apt-get remove --purge PACKAGE > $ sudo apt-get clean > $ sudo apt-get update > > Then reinstall the package > > Workaround B: Finish the install when the package can't be removed > > $ sudo apt-get clean > $ sudo aptitude download PACKAGE > $ sudo dpkg --unpack ./PACKAGE_VERSION.deb > $ sudo dpkg --configure PACKAGE > > Replace PACKAGE with the package name which fails to install/remove. > > == Localization == > The same error in non-english language: > . Erreur de format pour exec() > . Error de formato ejecutable > . Errore di formato di exec > . Exec format error > . Formatfel på körbar fil > . Érvénytelen végrehajtható fájlformátum > . Exec formátum hiba > . Verkeerd uitvoerbaar bestand > . Exec 格式错误 > . Formatfel på körbar fil > > > > To unsubscribe from this bug, go to: > https://bugs.launchpad.net/ubuntu/+source/dpkg/+bug/512096/+subscribe