Take the 2-minute tour ×
Unix & Linux Stack Exchange is a question and answer site for users of Linux, FreeBSD and other Un*x-like operating systems.. It's 100% free, no registration required.

Short question is: should we always do a yum update --exclude=kernel-* to do an update in Fedora?

I was a bit surprised that when I got a new Fedora machine at work (it used to be Red Hat Enterprise Linux (RHEL)), the first time it started up, it asked me to do an update, and I naturally said yes, and for anything it asked, I just used the default answer (usually replying "yes" by pressing ENTER).

But it turned out that the kernel was somehow corrupted, having 3.6.9 and 3.6.10 components, and the machine would not boot up (would cause kernel panic), and had to use the second option to boot up in the boot menu. (the IT department told me it is the "last problem-free version", like a checkpoint version). But even that, the machine was very slow and my coworker told me later on that my kernel was running partly on earlier version and partly running with 3.6.9 or 3.6.10 components and they might not be totally compatible and that's probably why it was so slow.

My coworker knew about Fedora for quite a while, and he was able to fix it by doing a series of yum remove and yum downgrade, and making the kernel and header and component all back to an earlier version (I think it was 3.3.4 but I will have to go back to work and check).

So is it true that for Fedora, we always have to abort the default update request, and do a

yum update --exclude=kernel-*

to be safe that we won't get a kernel that is not yet stable or still in beta? This is somewhat counter-intuitive to me, as I know other update systems would usually use only the stable version, unless the user specifically types in a particular version which might be a beta version.

Is there actually a way to update only the stable components, or do we need to use yum update --exclude=kernel-* all the time to be safe?

(this was a bit surprising to me, as anybody at work using Fedora can be affected by this, and it could be hundred or even thousands of people, so what is a more correct way of doing the system updates?)

share|improve this question
    
And which version of Fedora is this? –  Michael Hampton Jan 4 '13 at 1:18
add comment

2 Answers

the machine was very slow and my coworker told me later on that my kernel was running partly on earlier version and partly running with 3.6.9 or 3.6.10 components and they might not be totally compatible and that's probably why it was so slow.

This actually is not possible (or at least, not because of a normal distro update); kernel modules are signed and by default the kernel will only load modules that are compiled for it. On fedora, if you look at the kernels in /boot, there will always be a corresponding set of modules for them in /lib/modules.

I usually don't use distro kernels including on fedora, but I leave them installed and allow them to be updated along with everything else; usually the grub menu is also updated but I have never seen an update remove the entries I have there, so there is never a problem.

this was a bit surprising to me, as anybody at work using Fedora can be affected by this, and it could be hundred or even thousands of people

I just want to repeat the point that it is not possible using a stock fedora for you to be accidentally running components with conflicting version numbers -- your coworker is either wrong, lying, or else your system has been customized in a bizarre way.

In short: No, you do not have to use --exclude=kernel unless there is some unusual reason to do so.

share|improve this answer
    
I think my system was customized in a bizarre way... since the move from RHEL to Fedora was in Nov 2012, which is just 2 months ago, so maybe things are not that stable yet. My coworker ran into the same issue on his machine earlier as well. –  動靜能量 Jan 3 '13 at 14:15
add comment

There seems to be a misunderstanding here. First the system was RHEL with kernel 3.6.9??? Official release of Redhat uses kernel 2.6.x. RHEL versions and Kernel numbers

Now as for Fedora, you can only install unstable packages if you have them set up on your repositories.

By default Fedora does not allow installation of unstable unless:

  • You are installing a beta version and in that case it comes with unstable repos activated
  • The repositories files have been changed and unstable repos have been activated. You can check under /etc/yum.repos.d
  • You're using non-official repositories, ex a internal repository of your company and it contains also unstable packages.

For the moment the latest Fedora is 17 with 3.6.10 kernel. 3.3.4 kernel that is the very first kernel of Fedora 17.

doing yum remove and yum downgrade might not have been the best option (in my opinion) as you can do yum history undo transaction_id to undo the transactions. But the wonder of *nix is that there is more than 2 ways to do the same thing.

Check this site for explanation on undo for yum transactions YUM

share|improve this answer
    
I mean, my other coworkers are using RHEL, and I just joined the company and got a machine with Fedora (all new machines will have Fedora instead of RHEL) –  動靜能量 Jan 3 '13 at 14:12
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.