Valeri Galtsev wrote: > On 2019-05-07 04:50, Stephen John Smoogen wrote: >> On Tue, 7 May 2019 at 04:06, wuzhouhui <wuzhouhui14 at mails.ucas.ac.cn> >> wrote: >>> >>> Recently, I encountered a interesting phenomenon that CentOS 6.3 >>> running as normal even if I (my colleague, actually) installed a kernel >>> that build for CentOS 7.x (e.g. kernel-3.10.0-327.el7.x86_64.rpm). >>> >>> I found kernel is mismatch accidentally when I using "uname -r" to >>> check kernel version. So my question is what the harmness we will get >>> if I install a el7 rpm into a el6 system? >>> >> Many CentOS-7 packages will not install because they will need >> dependencies that the EL-6 does not have. The kernel is different >> because it is mostly self-contained and meant to be parallel installed. >> In most cases, it should result in an unbootable system because >> the boot is going to be dracut+systemd bits and the EL-6 has none >> of that. >> > +1 > One needs to rebuild (recompile) everything that was not built on > "mismatched" version of the system. And this will constitute correct > "installation using old UNIX way". Otherwise you quite likely will have > problems (even if they are hidden, i.e. if it appears to you that "all > works"). One of examples would be using some library that is of different > version than your extra software was compiled against. The library might > be found, and successfully loaded at an execution time, but it may have > different subroutine entry names or some missing which may be discovered > only under some circumstances. At a compilation time the headers will be > what provides necessary information... Anyway, understanding this will > tell you apart as a sysadmin from "non-sysadmin" person ;-) > Yup, Valeri's absolutely correct. I *have* rebuilt drivers (Rocket Raid, for example, doesn't appear to maintain drivers for cards over about 4 yr old). The biggest problem in mismatches is that someone's changed a variable name, for whatever reason, and you get "unknown variable". mark