Bug 1096752
| Summary: | Impossible to install iptables-services package | ||
|---|---|---|---|
| Product: | Red Hat Enterprise Linux 7 | Reporter: | Martin Magr <mmagr> |
| Component: | yum | Assignee: | James Antill <james.antill> |
| Status: | CLOSED NOTABUG | QA Contact: | BaseOS QE Security Team <qe-baseos-security> |
| Severity: | urgent | Docs Contact: | |
| Priority: | unspecified | ||
| Version: | 7.0 | CC: | iptables-maint-list, james.antill, jpopelka, mmagr, twoerner, vmukhame |
| Target Milestone: | rc | ||
| Target Release: | --- | ||
| Hardware: | Unspecified | ||
| OS: | Unspecified | ||
| Whiteboard: | |||
| Fixed In Version: | Doc Type: | Bug Fix | |
| Doc Text: | Story Points: | --- | |
| Clone Of: | Environment: | ||
| Last Closed: | 2014-09-17 10:16:31 UTC | Type: | Bug |
| Regression: | --- | Mount Type: | --- |
| Documentation: | --- | CRM: | |
| Verified Versions: | Category: | --- | |
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
| Cloudforms Team: | --- | Target Upstream Version: | |
| Embargoed: | |||
| Bug Depends On: | |||
| Bug Blocks: | 1094969 | ||
iptables.spec in RHEL7 is almost the same as in rawhide (at least the Provides & Obsoletes) and I see no problem *in rawhide*: # yum --enablerepo=rawhide install iptables-services Resolving Dependencies --> Running transaction check ---> Package iptables-services.x86_64 0:1.4.21-8.fc21 will be installed --> Processing Dependency: iptables = 1.4.21-8.fc21 for package: iptables-services-1.4.21-8.fc21.x86_64 --> Running transaction check ---> Package iptables.x86_64 0:1.4.21-7.fc21 will be updated ---> Package iptables.x86_64 0:1.4.21-8.fc21 will be an update --> Finished Dependency Resolution so might this be a yum related problem ? Does "yum check" say anything? What does: yum list iptables iptables-services ...say? The error message is coming from rpm, but it's a bit weird and not something I'd expect to fail in rpm. Please add the output of rpm -qa "iptables*" So to reproduce I downgraded my iptables package. After that "yum check" makes my VM unresponsive. [para@localhost ~]$ yum list iptables iptables-services Loaded plugins: product-id, subscription-manager Installed Packages iptables.x86_64 1.4.21-12.el7 @/iptables-1.4.21-12.el7.x86_64 Available Packages iptables.i686 1.4.21-13.el7 compose iptables.x86_64 1.4.21-13.el7 compose iptables-services.x86_64 1.4.21-13.el7 compose [para@localhost ~]$ rpm -qa "iptables*" iptables-1.4.21-12.el7.x86_64 [para@localhost ~]$ sudo yum install iptables-services Loaded plugins: product-id, subscription-manager This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register. Resolving Dependencies --> Running transaction check ---> Package iptables-services.x86_64 0:1.4.21-13.el7 will be installed --> Finished Dependency Resolution Dependencies Resolved ======================================================================================================================================= Package Arch Version Repository Size ======================================================================================================================================= Installing: iptables-services x86_64 1.4.21-13.el7 compose 49 k Transaction Summary ======================================================================================================================================= Install 1 Package Total download size: 49 k Installed size: 23 k Is this ok [y/d/N]: y Downloading packages: iptables-services-1.4.21-13.el7.x86_64.rpm | 49 kB 00:00:00 Running transaction check ERROR with transaction check vs depsolve: iptables = 1.4.21-13.el7 is needed by iptables-services-1.4.21-13.el7.x86_64 You could try running: rpm -Va --nofiles --nodigest Your transaction was saved, rerun it with: yum load-transaction /tmp/yum_save_tx.2014-06-16.13-12.fWjXcc.yumtx [para@localhost ~]$ Ok, after a "while": [para@localhost ~]$ yum check Loaded plugins: product-id, subscription-manager check all [para@localhost ~]$ What version of yum is this? I looked at the requires, and they seem fine and yum would need to upgrade iptables if it installed a newer iptables-services ... but then it does do that here: # yum install iptables-services Loaded plugins: langpacks, product-id, subscription-manager Resolving Dependencies --> Running transaction check ---> Package iptables-services.x86_64 0:1.4.21-13.el7 will be installed --> Processing Dependency: iptables = 1.4.21-13.el7 for package: iptables-services-1.4.21-13.el7.x86_64 --> Running transaction check ---> Package iptables.x86_64 0:1.4.21-8.el7 will be updated ---> Package iptables.x86_64 0:1.4.21-13.el7 will be an update --> Finished Dependency Resolution Dependencies Resolved ================================================================================ Package Arch Version Repository Size ================================================================================ Installing: iptables-services x86_64 1.4.21-13.el7 rhel-7-workstation-rpms 49 k Updating for dependencies: iptables x86_64 1.4.21-13.el7 rhel-7-workstation-rpms 423 k Transaction Summary ================================================================================ Install 1 Package Upgrade ( 1 Dependent package) # yum list iptables iptables-services yum Loaded plugins: langpacks, product-id, subscription-manager Installed Packages iptables.x86_64 1.4.21-8.el7 @anaconda/7.0 yum.noarch 3.4.3-112.el7 @anaconda/7.0 Available Packages iptables.i686 1.4.21-13.el7 rhel-7-workstation-rpms iptables.x86_64 1.4.21-13.el7 rhel-7-workstation-rpms iptables-services.x86_64 1.4.21-13.el7 rhel-7-workstation-rpms yum.noarch 3.4.3-118.el7 rhel-7-workstation-rpms [para@localhost ~]$ sudo yum list yum Loaded plugins: product-id, subscription-manager This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register. Repodata is over 2 weeks old. Install yum-cron? Or run: yum makecache fast Installed Packages yum.noarch 3.4.3-117.el7 @compose [para@localhost ~]$ I tried the same yum as you James and got the same failure: [para@localhost ~]$ sudo yum install -y iptables-services; yum list yum iptables iptables-services Loaded plugins: product-id, subscription-manager This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register. Resolving Dependencies --> Running transaction check ---> Package iptables-services.x86_64 0:1.4.21-13.el7 will be installed --> Finished Dependency Resolution Dependencies Resolved ============================================================================================================================================================== Package Arch Version Repository Size ============================================================================================================================================================== Installing: iptables-services x86_64 1.4.21-13.el7 compose 49 k Transaction Summary ============================================================================================================================================================== Install 1 Package Total size: 49 k Installed size: 23 k Downloading packages: Running transaction check ERROR with transaction check vs depsolve: iptables = 1.4.21-13.el7 is needed by iptables-services-1.4.21-13.el7.x86_64 You could try running: rpm -Va --nofiles --nodigest Your transaction was saved, rerun it with: yum load-transaction /tmp/yum_save_tx.2014-06-24.14-35.OjzuiE.yumtx Loaded plugins: product-id, subscription-manager Installed Packages iptables.x86_64 1.4.21-12.el7 @/iptables-1.4.21-12.el7.x86_64 yum.noarch 3.4.3-118.el7 @/yum-3.4.3-118.el7.noarch Available Packages iptables.i686 1.4.21-13.el7 compose iptables.x86_64 1.4.21-13.el7 compose iptables-services.x86_64 1.4.21-13.el7 compose [para@localhost ~]$ So I have a reproducer, but it's not a yum problem: # repoquery -q iptables-services iptables-services-0:1.4.21-13.el7.x86_64 # repoquery --requires iptables-services /bin/bash /bin/sh systemd # rpm -qp --requires /var/cache/yum/x86_64/7Server/beaker-Server/packages/iptables-services-1.4.21-13.el7.x86_64.rpm warning: /var/cache/yum/x86_64/7Server/beaker-Server/packages/iptables-services-1.4.21-13.el7.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID fd431d51: NOKEY /bin/bash /bin/sh /bin/sh /bin/sh /bin/sh config(iptables-services) = 1.4.21-13.el7 iptables = 1.4.21-13.el7 rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(FileDigests) <= 4.6.0-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1 systemd systemd systemd rpmlib(PayloadIsXz) <= 5.2-1 ...yum can't deal with what it doesn't know about. Closing as per comment 11. (In reply to James Antill from comment #11) > ...yum can't deal with what it doesn't know about. Can you clarify what you mean by this? I believe this is what I'm hitting in https://bugzilla.redhat.com/show_bug.cgi?id=1324914 but it's unclear how to resolve the situation. The needinfo request[s] on this closed bug have been removed as they have been unresolved for 1000 days |
Description of problem: Trying to install iptables-services-1.4.21-13.el7 while having iptables-1.4.21-12.el7.x86_64 package installed fails with following error: Downloading packages: iptables-services-1.4.21-13.el7.x86_64.rpm | 49 kB 00:00:00 Running transaction check ERROR with transaction check vs depsolve: iptables = 1.4.21-13.el7 is needed by iptables-services-1.4.21-13.el7.x86_64 When I checked iptables-1.4.21-13.el7 SPEC file, I found: # provide and obsolete old main package Provides: %{name} = 1.4.16.1 Obsoletes: %{name} < 1.4.16.1 # provide and obsolete ipv6 sub package Provides: %{name}-ipv6 = 1.4.11.1 Obsoletes: %{name}-ipv6 < 1.4.11.1 I think removing version from Provides could fix this issue. Actual results: Package iptables is required to be updated manually to be able to install package iptables-services. Expected results: Package iptables-services gets installed no matter what version of package iptables is already installed.