Take the 2-minute tour ×
Ask Ubuntu is a question and answer site for Ubuntu users and developers. It's 100% free, no registration required.

Over the time I installed many i386 packages, which I no longer need. How can I clean up the system and stay only with the amd64 packages?

share|improve this question

4 Answers 4

up vote 5 down vote accepted

If they are not in your way, I would leave them where they are.
If you insist on deletion, use dpkg -l | grep i386 to create a list of i386-packages. You can delete these after careful checking with something like sudo apt-get purge <package-name>.

share|improve this answer
2  
Except that aptitude is broken on multiarch, so that won't work so well :P –  tumbleweed Mar 19 '12 at 19:43
    
apt-get purge <package-name> should still work, though. –  Eliah Kagan Jun 15 '12 at 9:53
    
"after careful checking" -- that is vague. Please be more clear. –  kevinarpe Feb 9 at 11:06

I blitzed all my 32bit packages like this:

sudo apt-get remove `dpkg --get-selections | grep i386 | awk '{print $1}'`
share|improve this answer
1  
how to make these kind of commands, i know apt-get and grep but whats awk'{print $1}', just want to know. –  Sushantp606 Nov 27 '13 at 2:07
    
awesome, and I was able to remove the i386 architecture now, but when I do dpkg -l | grep i386 to check the packages are still there any ideas, also +1 for the previouse comment and my guess it's related to shell scripting techniques –  Ismail Marmoush Jan 10 at 12:07

The upper automated solution are dangerous and not always working (1), so here another way

sudo aptitude purge `dpkg --get-selections | grep ":i386" | awk '{print $1}'`

or

sudo apt-get purge `dpkg --get-selections | grep ":i386" | awk '{print $1}'`

(Try to use always and only one of the tools. Since aptitude is better when having dependency trouble, I prefer that.)

Good idea to also

dpkg --remove-architecture i386

and maybe

dpkg --print-foreign-architectures

(1) The former commands also lists packages having only i386 in their name (although they are for 64bit architecture), the regular expression didn't work and dpkg shows packages which are already removed, but still have configuration files left (dpkg -l shows "rc" instead of "ii" as status).

share|improve this answer

Here is another way that is even lower risk:

apt-get remove "^.*:i386$"

This will specifically match only packages ending with ":i386", which is the standard naming convention for all i386 architecture Debian packages.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.