|
|||||||
| Forums | Search Forums | Register | Forum Rules | Man Pages | Albums | FAQ | Members | Calendar | Search | Today's Posts | Mark Forums Read |
| Red Hat Red Hat is the world's leading open source technology solutions provider with offerings including Red Hat Enterprise Linux (RHEL), Fedora, open source applications, security and systems management, virtualization, and Services Oriented Architecture (SOA) solutions. |
|
|
|
Thread Tools | Search this Thread | Display Modes |
|
#1
|
|||
|
|||
|
Difference in conflict resolving between yum and rpm installs
Hi Guys, I am trying to test installation of a local rpm to my RHEL5 server. I am expecting it to fail as a previous version of the same package name exists. On using rpm -i this behaves as expected but yum install does not pick up the conflict. Here is the element of my SPEC file with the conflict logic - Code:
Conflicts: BCCAWAAE113v1_DEV <= 1-8, BCCAWAAE113v1_UAT <= 1-8, BCCAWAAE113v1_PRD <= 1-8
root@ldnpsr36282 PROD # rpm -qa | grep -i cawaae
BCCAWAAE113v1_DEV-1-8
root@ldnpsr36282 PROD # rpm -i BCCAWAAE113v1_DEV-1-9.noarch.rpm
error: Failed dependencies:
BCCAWAAE113v1_DEV <= 1-8 conflicts with BCCAWAAE113v1_DEV-1-9.noarch
root@ldnpsr36282 PROD # yum install BCCAWAAE113v1_DEV-1-9.noarch.rpm
Loaded plugins: downloadonly, security
Setting up Install Process
Examining BCCAWAAE113v1_DEV-1-9.noarch.rpm: BCCAWAAE113v1_DEV-1-9.noarch
Marking BCCAWAAE113v1_DEV-1-9.noarch.rpm as an update to BCCAWAAE113v1_DEV-1-8.noarch
Resolving Dependencies
--> Running transaction check
---> Package BCCAWAAE113v1_DEV.noarch 0:1-9 set to be updated
--> Finished Dependency Resolution
Dependencies Resolved
========================================================================================================================================================================
Package Arch Version Repository Size
========================================================================================================================================================================
Updating:
BCCAWAAE113v1_DEV noarch 1-9 /BCCAWAAE113v1_DEV-1-9.noarch 273 M
Transaction Summary
========================================================================================================================================================================
Install 0 Package(s)
Upgrade 1 Package(s)
Total size: 273 M
Is this ok [y/N]:Any ideas why yum install works? This is what our platform team use to deploy. I am expecting a failed dependency. Is it something to do with me trying to install the rpm locally? I have been going round in circles with this and just can't work out why they are behaving differently. Thanks. G. Last edited by jim mcnamara; 12-31-2012 at 12:53 PM.. |
| Sponsored Links | ||
|
|
#2
|
||||
|
||||
|
That is the expected behavior for rpm. You were trying to install the package over an existing package. Try the rpm -U or -F options and see the difference.
|
| Sponsored Links | ||
|
|
#3
|
|||
|
|||
|
Thanks for your reply.
I am not questioning the behaviour for rpm -i as I would expect that to fail, given a previous version is already installed but why is 'yum install' allowing the package to install when the previous version is already there? I thought it would fail in the same fashion as 'rpm -i' given the previous version is already installed and I have it declared as a conflict also. Thanks again. G. |
|
#4
|
||||
|
||||
|
You are telling yum to install a particular version ( -localinstall) - hence that is what it is going to do, i.e. resolve the dependencies if possible and install package.
|
| Sponsored Links | |
|
|
#5
|
|||
|
|||
|
Just to point out, yum install by default will install if no package present and update if it is present. This has found it does not need to install only update: Code:
Install 0 Package(s) Upgrade 1 Package(s) |
| Sponsored Links | |
|
|
#6
|
|||
|
|||
|
Thanks Guys, that is really helpful but here is my issue.
I need to find away (within the package - not yum.conf) of preventing an install upgrading my package via yum install if a previous version exists. Basically, I can have a DEV, UAT and PRD package installed on the same server at one time and they have many shared files so upgrading DEV, would break UAT and PRD at the older version. My preference would be for it to abort and advise that all packages need to be removed (DEV/UAT/PRD) before the new version is installed. Is there an easy way to achieve this? Can I just do an rpm -qa packagname and exit 1 in the pre section or is there a simpler way? Alternatively, is there a way in the spec file to ensure that if I upgrade DEV, that UAT and PRD get updated at the same time. Thanks for everyone's help. |
| Sponsored Links | ||
|
![]() |
| Thread Tools | Search this Thread |
| Display Modes | |
More UNIX and Linux Forum Topics You Might Find Helpful
|
||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| Difference between Unix and Linux for resolving symbols | snowline84 | UNIX for Advanced & Expert Users | 12 | 10-30-2012 09:32 PM |
| Difference in binary file sizes after deploying package via yum/rpm | gazza-o | Linux | 4 | 10-16-2012 12:23 PM |
| How to install .rpm file from a directory using yum? | albertspade | UNIX for Advanced & Expert Users | 6 | 05-29-2012 09:01 AM |
| Remote installation of rpm package (Using YUM) | uday123 | Red Hat | 7 | 11-11-2009 09:30 AM |
| where to edit yum or rpm packages to update | csross | Linux | 2 | 09-23-2008 02:58 PM |
|
|