CentOSThis forum is for the discussion of CentOS Linux. Note: This forum does not have any official participation.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
If you havn't seen my other thread a quick recap:
I'm trying to download files for centos 7 using a centos 6 system with yumdownloader. This allows downloads to include all the deps.
I have most issues covered I need in order to write a program to make the process for cross release downloads possible and I think fairly easy. This is useful for air gapped equipment for whatever reasons. Hopefully it will be possible for multiple releases of any distro eventually.
---- The final issue -----
I've now hit what appears to be the last hurdle in downloading files.
Downloading core files seem fine but obtaining SOME programs outside of the main distro is causing a problem.
I was able to download and transfer gparted and it went smoothly.
(But it did show I need to build an "dep already available" filter in the final program!)
xz however is release specific. - This is the problem.
It is beyond me why such a program exists "in the wild" but there we are.
Any repo fileset that uses xz is a problem that generates the "xz is not installed " error
For example a common program now requiring this would be VLC for movie playback.
I cannot use yums --releasever because the download still sees the installed native xz as incompatible.
Attempting to install xz for C7 onto the C6 machine (C6 is now final and some file moving could be used anyaway) produces the error that xz is not installed. Copying the release or trying to install it from the xz RPM fails similarly.
The only solution I can see is to download the xz files and remove whatever is making it release specific - which defeats the object of making this publicly available as it would need to be done for every combination I think.
just an opinion
The correct solution would be not to use xz in repos the first place.
Having a release sensitive compression is dodgy at best - using one for an online file transfer of system software is highly suspect.
gzip and tar etc have served us well enough for years - I just dont get this "lets release it as we develop" idea.
If anyone can see a way round this I'd welcome the input.
All I can think do do at the moment is to download the xz sources but that would have to be done for every single release.
To my knowledge, xz is not "distribution dependent". However it does have multiple package dependencies (including pyliblzma).
I am not aware of any 32-bit port, but I have not had a need to look.
Question: I can understand running a system air-gapped for security. Why are you running air-gapped during system load? That would seem to me to be making your life needlessly complex. My question is, what is driving you to load an air-gapped system this way?
Multiple issues -regulations, security, off line locations.
Can we stay on topic please.
The issue is how to get xz to function across releases. Better still - to stop repos using it.
xz is release dependant and hence presumably although it hadn't occured to me - thank you - perhaps distribution dependant
in some cases (not sure about that though).
You have not given an example of a download that fails.
Your problem is that yum is trying to resolve dependencies based on the RPM database in the current machine. Some package that you are downloading has a dependency on a particular version of xz, and that is not the version that CentOS 6 has. It doesn't appear that yum has a way around that. You may have to download the affected packages manually from the repository rather than using yum.
better than an example - how to reproduce
I'm guessing you can reproduce the issue by typing the following (what I'm trying to do):
yumdownloader --resolve --destdir=/tmp/test --releasever=X --downloadonly vlc
You will also see the issue as well if you use :
yum whatprovides */vlc
yum whatprovides */gcc
etc - pretty much any yum command I'd guess
This demonstrates that it is nothing to do with dependancies on the download machine.
Some info:
You must have the repo's installed on your system for the later version 'X' in yum-repos.d
Not your lower current version
rememember to clean yum caches etc just in case - on my system (C6) this is:
yum clean all
rm -rf /var/cache/yum
run the yum commands as above.
the error message you will get is: 'xz compression is not available'
What all this does is demonstrate that
1. xz is release specific
2. xz breaks yums '--releasever' option for obtaining forward releases
I don't know for certain that something else isn't causing xz itself to fail
but that seems unlikely given the simple 'whatprovides' option is also broken.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.