Centos 7 pain

I suppose it had to happen. I did a major update of Centos 7 last week which downloaded megabytes of package updates. Since then, software updater disappeared, software disappeared, sound in Firefox stops after 12s.

For the record I am in 7.2.1511 and Gnome 3.14. I don’t know what they were before.¬† After some searching I found a package to put back the gui for software updates. More searching and I yum installed gnome-software. Re-downloaded Firefox which says it is 44.0 but still complains it is out of date.

I mean, come on. How hard can it be to actually maintain a working home system???? After I ditched Apple, Centos was doing so well, meeting all my needs and now it’s broken or at best will take hours of fixing. What a crock of shit.

I’m lovin’ it

No, not McDonalds, Centos7 of course. I now have this machine running with email, Windows 7 and Windows 8 VMs under KVM, sound, video and ICAclient to do remote working. It’s sooo much better than my bloated Mac. Having just got ICAclient working, I need to try and get hotkeys to work though since you can’t switch back to Linux once it has taken over your screen without disconnecting, which is a bit of a pain. Should be fixable with some tweaking though…

Centos 7 diary entry

As mentioned below, as I go off MacOS, I have been investing more (precious) time getting a Centos 7.0 desktop fully functional. Mail is up and running in the shape of Thunderbird, which I preferred over Evolution. Neither seem particularly customisable (particularly fonts) but Thunderbird seems to have the edge.

My next major requirement is virtualisation. I didn’t have any luck with VMware Player as a first attempt. It loaded some kernel modules and I pointed at my existing vmx files but the VMs didn’t boot and now the player just crashed with a couple of error lines in the USBArb log.

In any case, I wanted to use KVM on Linux and have reached the milestone of building a Centos 7 guest VM using VMM and qemu-kvm (after overcoming the obligatory hurdles, luckily relatively minor). I don’t have much faith in VMware and KVM working together although there’s no reason why they shouldn’t (VMware player is a type 2 hypervisor, or is it?) Things are complicated enough as it is without trying to run two hypervisors on the same machine!

Next experiment is to get my Windows desktops currently running under VMware workstation on Ubuntu into QEMU/KVM.

The vSphere limit effect

VMware Limit Effect on Linux top

VMware Limit Effect on Linux top

I believe the effects of limiting a guests CPU in vsphere are well understood but I for one don’t like the way VMware implement this. I have just verified the behaviour on ESXi 5.0.0 is the same as 4.1 (which is only to be expected).

Guests get confused, is the bottom line. At least Linux does, which is particularly noticable with “top”. In the screenshot above of a Centos guest, I have limited the CPU to 1000Mhz using virtualcenter. To me, it would be logical that the guest O/S would be presented with a 1000Mhz CPU but this is not the case. The output of /proc/cpuinfo means that Linux thinks it is running on a 3.47Ghz i5. Is it really hard to do, or something?

The upshot is that when the guest is maxed out, as in the screenshot, top shows 100% us time (correct) but only 29% of the CPU. Which is correct if you consider the pCPU but not, if like me you don’t think a guest should have any knowledge of the real hardware. I think Centos should see a 1000Mhz vCPU and top will correctly display 100% CPU Time.

Must check this on other hypervisors (Xen and KVM) sometime.

P.S.
Saddened to hear of the death of Dennis Ritchie today. Someone who I can identify as having a large impact on my life, though I never knew or met him. Such is the world we live in. Eventually we will all exit(0).

Progress, sort of

The best progress is that my QNAP is now working, fixed by a firmware upgrade at QNAP’s behest. This surprised me as I was convinced the problem was in MacOS, as I believe was everyone else. It is now running on 3.3.1¬†Build 0720T.

The upgrade itself was a bit hairy. The first time it bombed out with an error at 28%. The second time it got “stuck” at 10% for several minutes, then proceeded into the 20s and announced it was finished. The subsequent reboot took ages to finish and I was beginning to think it was broken. A reminder that patience is required in this game. Anyway, Time Machine is now backing up to it which is good.

Also managed to resurrect my Centos build on my lab machine. It’s actually a Xen build with Centos as Dom-0. For some reason I described it before as Centos with KVM. This is what happens, I reckon if you work too late. Of course, that means I still have to try the KVM hypervisor, which people have been telling me is the more popular of the two.

At least that’s two things off the immediate list so I can get back to concentrating (I use the term loosely) on seeing if I can get a VMFS datastore installed on a USB key to use with ESXi.

Back again

So, back from holiday and turning on the computer again.

What I’ve done is re-cut my 2G USB stick (using Unetbootin on my PC) with the Centos5.5 DVD .iso, effectively making the Centos Live USB. For some reason it died over the holiday.

Now booting with the “Live USB” and plugging in a second USB stick I followed the instructions http://lists.centos.org/pipermail/centos/2010-April/093806.html to make a bootable install USB stick (call this the Install USB). Usefully, the “livecd-iso-to-disk” command lives in the LiveCD folder on the Live USB stick.

Booting from the Install USB stick allows me to specify a disk-based install, using the second partition on the Install USB stick. This time I chose the “Server GUI” and “Virtualisation” modules and opted to install grub on the Install USB stick, as I know from experience that grub2 will not boot Centos.

And, yes, booting from the Install USB does boot Centos from the hard drive.

Progress!


					

Some progress

I have made some progress and can now boot Centos! Typically though, I did not solve the grub2/centos kernel interaction bug but worked my way round it. I discovered slightly different symptoms by installing a different Centos kernel:

Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0).

I tried several install experiments with different kernel and boot loader options and finally realised I could install the Centos grub bootloader on the USB stick, which is where the installer wanted to put it anyway.

So it’s cheating a bit because I still have to boot from USB and then boot Centos from the partition on the hard drive. But I don’t care ‘cos it works. Booting from the disk will still load grub2 from the MBR but it’s pretty useless as it can only boot Ubuntu. Maybe it will have more luck with OpenSolaris when I get to it.

Now, one final thing I have to do is re-make my Centos USB stick because I want to install the virtualisation kernel. I no longer boot the installer since it has been over-written with grub. Also I must point at the instructions I used as a starting place http://lists.centos.org/pipermail/centos/2010-May/094933.html or I will forget how I did it. And I will post my version too.

Grub2 pain

I’ve been busy with other things but have spent a few minutes every day for the last several days trying to fix grub2. This program is really annoying me now. I have it courtesy of Ubuntu but will it boot Centos? No.

I have the grub2 menu configured to boot Centos directly, grub2 detects Centos and makes a menu entry for it. This gives “Invalid magic number” when invoked. I also have a menu entry to chainload the Centos grub which gives “Grub disk error”.

There are no useful posts on the fora so I am still stuck.

Re-loaded

I finally managed to restore my system to something usable but it involved reformatting the hard-drive and re-installing Ubuntu. Still it gave me the opportunity to re-partition the drive more sensibly.

Originally I had one primary partition and one extended partition (with a couple inside) and the remainder, about 800Gs for datastore. That’s not too useful if you want to install several O/Ss and boot between them (using Grub). At least Ubuntu, OpenSolaris, Centos, Suse. vSphere boots from a USB device but it didn’t like having it’s datastore pulled out from under it. It does fully boot eventually but there’s a long pause at the end. I will need to look at the logs. I wonder why it wouldn’t let me delete the datastore before, even when I had deleted all the VMs and isos? Still like to get to the bottom of that.

I downloaded Centos to a live USB but it doesn’t have the luxury of installing. In fact it looks a bit fiddly, involving booting over the network and playing with Grub etc. (no DVD drive). Not something I bargained for but all good practice I guess.