[SOLVED] “subprocess pre-removal script returned error exit status 2″ error
The package was python-beagle and the error was: “E: python-beagle: subprocess pre-removal script returned error exit status 2″ and details showed:
“dpkg (subprocess): unable to execute pre-removal script: Exec format error
dpkg: error processing python-beagle (–remove):
subprocess pre-removal script returned error exit status 2
dpkg (subprocess): unable to execute post-installation script: Exec format error
dpkg: error while cleaning up:
subprocess post-installation script returned error exit status 2
Errors were encountered while processing:
python-beagle
E: Sub-process /usr/bin/dpkg returned an error code (1)”
I managed to fix it. Read on for how I did it.
Precaution: The process can break your system if not followed as mentioned (you may get into problems even if you follow the process). Please proceed at your own risk.
First, please try the following in terminal:
sudo aptitude update
sudo aptitude -f install
If it does not work, then you may want to try:
sudo dpkg --force all --remove
If both of them still produce similar errors, then continue. If the above commands fix your problem, you should not continue.
1. Close Synaptic or any package manager. Wait for or cancel any updates or install\uninstall.
2. Make Backups of current /var/lib/dpkg/status file. Just copy and paste to your home directory or Desktop.
3. Alt+F2 and launch type in gksu gedit /var/lib/dpkg/status and run it. Gedit will be launched with a text file open.
4. Now, search for the exact name of the package with problems and find it.
5. In my case, it I found the entry for the package python-beagle:
Package: python-beagle
Status: deinstall ok half-configured
Priority: optional
Section: python
Installed-Size: 168
Maintainer: Ubuntu Core Developers
Architecture: amd64
Source: libbeagle
Version: 0.3.5-2build1
Replaces: python2.4-beagle (<< 0.2.7-1)
Provides: python2.6-beagle
Depends: python (<< 2.7), python (>= 2.6), python-support (>= 0.7.1), libbeagle1 (>= 0.3.5), libc6 (>= 2.4), python-gtk2
Conflicts: python2.4-beagle (<< 0.2.7-1)
Description: Python bindings for beagle
Allow accessing Beagle daemon and peforming searches using Python.
6. Select and delete that information and that much information only, i.e. you will remove “Package: culprit-package-name” to “Description: culprit package description”. Remmber, “culprit package description” may be multiline and you will need to remove all the lines till a blank line. Don’t forget to leave a line blank between the package description above and the one below. To clarify things out, I have placed the images here, pelase have a look. Here the package to be removed is python-beagle.
7. Launch Synaptic (or any package manager) and then search for package. You will see the package as not installed. Mark it for installation and install it. If you start to see the same error, restart the same process from Step 1 but the next time, stop at step 6.
8. Now, you should be able to remove it if you no longer want the package. If you can’t, restart the same process from Step 1 but the next time, stop at step 6.
Hope this was helpful. Please post in comments.
If you enjoyed this post, make sure you subscribe to my RSS feed!
Related posts:
- [SOLVED] Unable to get Exclusive Lock Problem While Launching Synaptic, /var/lib/dpkg/lock – open (11 Resource temporarily unavailable) Error
- [SOLVED] “error: mountall Could not Connect to Plymouth”, “mountall main process (x) terminated with status 1″
- [HOWTO]Install Firefox 3.5 in Jaunty Jackalope and Make Add-Ons Compatible
- [SOLVED] API Key Installed but get the ERROR: WordPress.com Stats needs attention: please enter an API key or disable the plugin.
- [SOLVED] Facebook Chat Pop Opens in a New Window in Konqueror






Thanks a lot for your sharing, it saved me a hour encountering a similar problem in Ubuntu.
Got the fakeroot package permanently half-installed when my laptop battery ran out during upgrade. Thanks to your blogpost it finally got fixed!
Thanks for putting this out there. It’s a shame dpkg doesn’t have a more graceful way of showing its displeasure.
[...] script returned error exit status 2″ Error What I really should have done was to link to khattam’s article because he did a pretty good job of describing the solution to this error but for my own archives, [...]
wow, you rock dude.
thanks
Thanks, it help me very much. After 6-th step I downloaded the jaunty package – installed – and after all uninstalled. It worked!
thx alots .. this post is really helpful for me .. again .. thanks so much
Thanks dude,
searched hours for a damned solution and found your blog which helped. In my case it was the vim-gnome package due to a hardware crash during the installation.
Eek. That’s rather an over-the-top appreach. Better solution is to edit /var/lib/dpkg/info/packagename.prerm and comment out the offending lines (you can see what that script does, and do things by hand, if it’s failing)
In my case it was a lifesaver. Difference between having a slightl broken system and a totally broken system
http://ubuntuforums.org/showthread.php?t=1348866
Removing the -e flag in the prerm didn’t work.It keeps returning because of policy on the system. The hack is not ideal. A solution would be better.
Thanks.. This help my problems.
I’m from Indonesia, sorry I can’t speak English very well
Thanks for sharing it!!
Thanks for the tip. I fixed the problem in vim with following change command
:%s/Package:.*\nStatus:.*half-.*\(\n$\)*//
The trick is to treat the file like one long string and find problematic package paragraph by looking for the portion of the file that contains the string “half-” where the string is preceded by Package: and followed eventually by a blank line. Having found that portion, replace it with nothing. It harder to explain than do
A good way to be sure that it works is compare the changed file with a backup of the original file using vim “split diff with …” under the edit tab. I’ve been using vi/vim for 15 years and it still amazes me. It’s much better than beer
Thanks a lot. You saved my lots of efforts.
Hi this is one page that i will save for eternity..
Thank you very much. It was really irritating to see the errors everytime i installed anything.
[...] Related posts:[SOLVED] “subprocess pre-removal script returned error exit status 2″ error [...]