Hello,
On my centos boxes whenever I try to install packages I get a mix of packages from the repos that are both i386 and x86_64 in archictecture:
=============================================================================================================================================================================================================== Package Arch Version Repository Size =============================================================================================================================================================================================================== Installing: boost-devel i386 1.33.1-10.el5 base 4.3 M boost-devel x86_64 1.33.1-10.el5 base 4.4 M Installing for dependencies: boost i386 1.33.1-10.el5 base 863 k boost x86_64 1.33.1-10.el5 base 861 k libicu i386 3.6-5.11.4 base 5.2 M libicu x86_64 3.6-5.11.4 base 5.2 M
Transaction Summary =============================================================================================================================================================================================================== Install 6 Package(s) Upgrade 0 Package(s)
Without having so specify the arch on each yum command how can I automatically prune my yum repo files so that it will only grab packages that relate to the architecture I'm running?
Thanks in advance!
centos-bounces@centos.org schrieb am 07.03.2011 15:41:04:
Tim Dunphy bluethundr@gmail.com Gesendet von: centos-bounces@centos.org
07.03.2011 15:41
Bitte antworten an CentOS mailing list centos@centos.org
An
CentOS mailing list centos@centos.org
Kopie
Thema
[CentOS] yum tries to install a mix of architectures
Hello,
On my centos boxes whenever I try to install packages I get a mix of packages from the repos that are both i386 and x86_64 in archictecture:
===============================================================================================================================================================================================================
Package Arch Version Repository Size
===============================================================================================================================================================================================================
Installing: boost-devel i386 1.33.1-10.el5 base 4.3 M boost-devel x86_64 1.33.1-10.el5 base 4.4 M Installing for dependencies: boost i386 1.33.1-10.el5 base 863 k boost x86_64 1.33.1-10.el5 base 861 k libicu i386 3.6-5.11.4 base 5.2 M libicu x86_64 3.6-5.11.4 base 5.2 M
Transaction Summary
===============================================================================================================================================================================================================
Install 6 Package(s) Upgrade 0 Package(s)
Without having so specify the arch on each yum command how can I automatically prune my yum repo files so that it will only grab packages that relate to the architecture I'm running?
Thanks in advance!
-- GPG me!!
gpg --keyserver pool.sks-keyservers.net --recv-keys F186197B _______________________________________________ CentOS mailing list CentOS@centos.org http://lists.centos.org/mailman/listinfo/centos
Hi Tim Dunphy, that's a normal way when you're using x86_64. Do you need 32bit software? If not you can remove them with "yum remove *386".
Gruß Andreas Reschke ________________________________________________________________ Unix/Linux-Administration Andreas.Reschke@behrgroup.com
On Mon, Mar 7, 2011 at 9:41 AM, Tim Dunphy bluethundr@gmail.com wrote:
Hello,
On my centos boxes whenever I try to install packages I get a mix of packages from the repos that are both i386 and x86_64 in archictecture:
Jump to CentOS 6. Wait, that's not out yet. Buy an RHEL 6 license or test with Scientic Linux 6 until CentOS 6 is out. The default behavior of yum has changed, and it's just safier and easier to work with an architecture that does the "more selective" thing by deffault.
On Mar 7, 2011, at 9:41 AM, Tim Dunphy bluethundr@gmail.com wrote:
On my centos boxes whenever I try to install packages I get a mix of packages from the repos that are both i386 and x86_64 in archictecture:
Yum doesn't implicitly know if you want the 64 or 32-bit versions so it selects both. If you only want 64-bit put .x86_64 at the end of the package name.
The 32-bit versions are there for 32-bit binary application support.
-Ross
Hi guys,
I took your advice and performed a "yum remove *386" on this box. Also yes I can easily append x86_64 or i386 (depending on the machine) each time I go to install an app. But my question remains is there any way to instruct yum to automatically select the right package architecture through a setting in one of the config files rather than having to specify which architecture you are working with each time. This is just a curiosity and not of course anything at all critical or important.
thanks for your help.
Tim
On Tue, Mar 8, 2011 at 9:54 AM, Ross Walker rswwalker@gmail.com wrote:
On Mar 7, 2011, at 9:41 AM, Tim Dunphy bluethundr@gmail.com wrote:
On my centos boxes whenever I try to install packages I get a mix of packages from the repos that are both i386 and x86_64 in archictecture:
Yum doesn't implicitly know if you want the 64 or 32-bit versions so it selects both. If you only want 64-bit put .x86_64 at the end of the package name.
The 32-bit versions are there for 32-bit binary application support.
-Ross
CentOS mailing list CentOS@centos.org http://lists.centos.org/mailman/listinfo/centos
But my question remains is there any way to instruct yum to automatically select the right package architecture through a setting in one of the config files rather than having to specify which architecture you are working with each time.
You can place an exclude statement in /etc/yum.conf
ok that's great! thank you!
On Tue, Mar 8, 2011 at 10:29 AM, compdoc compdoc@hotrodpc.com wrote:
But my question remains is there any way to instruct yum to automatically select the right package architecture through a setting in one of the config files rather than having to specify which architecture you are working with each time.
You can place an exclude statement in /etc/yum.conf
CentOS mailing list CentOS@centos.org http://lists.centos.org/mailman/listinfo/centos
On 03/08/2011 09:51 AM, Tim Dunphy wrote:
ok that's great! thank you!
On Tue, Mar 8, 2011 at 10:29 AM, compdoc compdoc@hotrodpc.com wrote:
But my question remains is there any way to instruct yum to automatically select the right package architecture through a setting in one of the config files rather than having to specify which architecture you are working with each time.
You would put this in your /etc/yum.conf file
exclude=*.i386 *.i686
I would also do this:
yum reinstall *
The reason being that sometimes the /usr/share/ items (shared between BOTH packages) get removed when removing multi arch RPMS.
On Tue, Mar 8, 2011 at 8:54 AM, Johnny Hughes johnny@centos.org wrote:
I would also do this:
yum reinstall *
The reason being that sometimes the /usr/share/ items (shared between BOTH packages) get removed when removing multi arch RPMS.
The above lines added to the FAQ:
http://wiki.centos.org/FAQ/General?action=show#head-357346ff0bf7c14b0849c3bc...
Akemi
On Tue, Mar 8, 2011 at 12:05 PM, Akemi Yagi amyagi@gmail.com wrote:
On Tue, Mar 8, 2011 at 8:54 AM, Johnny Hughes johnny@centos.org wrote:
I would also do this:
yum reinstall *
The reason being that sometimes the /usr/share/ items (shared between BOTH packages) get removed when removing multi arch RPMS.
The above lines added to the FAQ:
http://wiki.centos.org/FAQ/General?action=show#head-357346ff0bf7c14b0849c3bc...
Take a look at http://docs.redhat.com/docs/en-US/Red_Hat_Enterprise_Linux/6/html/Migration_....
The better solution, at least for CentOS 5, is to add this to /etc/yum.conf
# Disable auto-installation of i386 and x86_64 #multilib_policy=all multilib_policy=best
This is pretty much the most useful thread I've ever been a part of on the CentOS mailing list!!
Thanks a ton to everyone who helped!!
Also the senior SA I work with gave me this little gem today:
yum -y remove $(yum list installed | awk '{print $1}'| egrep -v "(x86_64|noarch)")
But of course make SURE you uname -a and make sure the arch is right before you do because of the -y flag or of course just remove it if that makes you more comfortable!
Best! Tim
On Tue, Mar 8, 2011 at 2:23 PM, Nico Kadel-Garcia nkadel@gmail.com wrote:
On Tue, Mar 8, 2011 at 12:05 PM, Akemi Yagi amyagi@gmail.com wrote:
On Tue, Mar 8, 2011 at 8:54 AM, Johnny Hughes johnny@centos.org wrote:
I would also do this:
yum reinstall *
The reason being that sometimes the /usr/share/ items (shared between BOTH packages) get removed when removing multi arch RPMS.
The above lines added to the FAQ:
http://wiki.centos.org/FAQ/General?action=show#head-357346ff0bf7c14b0849c3bc...
Take a look at http://docs.redhat.com/docs/en-US/Red_Hat_Enterprise_Linux/6/html/Migration_....
The better solution, at least for CentOS 5, is to add this to /etc/yum.conf
# Disable auto-installation of i386 and x86_64 #multilib_policy=all multilib_policy=best _______________________________________________ CentOS mailing list CentOS@centos.org http://lists.centos.org/mailman/listinfo/centos
On Fri, Mar 11, 2011 at 2:32 PM, Tim Dunphy bluethundr@gmail.com wrote:
This is pretty much the most useful thread I've ever been a part of on the CentOS mailing list!!
Thanks a ton to everyone who helped!!
Also the senior SA I work with gave me this little gem today:
yum -y remove $(yum list installed | awk '{print $1}'| egrep -v "(x86_64|noarch)")
But of course make SURE you uname -a and make sure the arch is right before you do because of the -y flag or of course just remove it if that makes you more comfortable!
Best! Tim
Tim, unless you've misinterpreted what he said, that "senior SA" should have his scripting privileges revoked and his title replaced with "script-kiddie wanna-be". That command is hideously dangerous.
The first flaw is that it will flush the GPG keys, which have architecture '(none)'
The second flaw is that noarch and x86_64 packages may have *dependencies* on components that are i386 or i686 or some other architecture, and rippiong out the i386 packages may rip out the x86_64 packages as well.
Third is that using "yum" to generate the target list will wind up trying to remove packages you don't even have installed, or packages that have i386 versions in one repository but not in the other repository, and cause *real* chaos.
If you need to do something like this, take a look at an actual list generated with
LANG=C rpm -qa --qf '%{name}.%{arch}\n" | egrep -v "(x86_64|noarch)")
Then use yum to go down the list and *manually* accept them, not automatically, for your own safety.