Ubuntu on Qube Feedback
Monday, March 26th, 2007
I’ve gotten a lot of feedback from my howto about installing Ubuntu on the Cobalt Qube. Please feel free to leave comments on this post if you like.
Ubuntu on Qube FeedbackI’ve gotten a lot of feedback from my howto about installing Ubuntu on the Cobalt Qube. Please feel free to leave comments on this post if you like.
New BlogI’ve migrated my blog to Wordpress. It should look pretty similar. bBlog hasn’t been maintained in quite awhile so this was long overdue. Wordpress offers some nice functionality, too. It’s much more blog software than I need, but at least it’s supported by an active community. Let me know what, if anything, you think about it. I’m sad to say that any links into the blog will be broken because I’m too busy to fool with apache mod_rewrite. Sorry. However, incoming requests for missing pages are being redirected to the archives page, which is about as good as it’s going to get. This is an amatuer operation.
Also, I sold my qube. Bummer.
Ubuntu Qube - Follow UpIf you’re looking for instruction to install Ubuntu Linux on your Cobalt Qube 3 or Cobalt Raq please see my Ubuntu Qube howto.
My Qube has been running quite well for a month now. It’s quite fast and has no problem serving a web site heavy with php, postgres, MySql, and server side includes. Without a GUI, it has never swapped with 512 MB of RAM. The temperature has been pretty steady at, if I recall correctly, around 70.
I initially did a disk copy from the first drive to the second so that I could swap out drives in a poor man’s raid, if necessary. I used dd if=/dev/hda of=/dev/hdd. Then occasionally, I’ve mounted the partition of the second drive under the /mnt partition of the first and used rsync to keep them synchronized.
Yesterday, Jeff Ball of zeffie.com wrote to point out that my first Ubuntu boot wasn’t entirely successful. I thought that was obvious, but apparently not obvious enough. That’s why I posted the next Qube post detailing the changes.
Read what Jeff had to say in his badly misspelled forum post:
well off the bat I would love to know what modifications jeff@404ster.com made that ment he should attach his e-mail to everything?
LOL
Quote:
You can also find a how-to on installing Ubuntu, just put online, and 2x 120gig drives are working fine.
http://www.prairienet.org/~jtuttle/blog/item/124/
you do relize this is a failed boot right?
can you tell everyone why it was a failure please?
Jeff Walter (jeff@404ster) wrote the kernel patch to support the Cobalt hardware including the LCD, LED, temperature sensor, RAM proc sensors, and the serial number. I, for one, don’t begrudge him his due for his work on the Qube.
Anyway, Ubuntu on the Qube is a smashing success. People from all over the world have written to confirm that it works and to express their gratitude. It’s nice be able to ‘apt-get update && apt-get upgrade’ or ‘apt-get install ‘ anything.
Server CollectiblesMy experience with the Cobalt Qube has piqued my interest in small server appliances. An obvious next step would be the Mac G4 Cube. It’s beautiful, features passive cooling, and is known to support Linux. Sadly, these are still bringing over $150 at auction. However, there are several other appliances that are equally interesting to the Linux hacker.
Among these are the Whistle InterJet 2 which is built to run BSD and the PowerElf from GreenComputers. I also like the Celestix Aries Server Appliance line including the Aries 210 the 310, and the 320. The Intrepid M from Levanta looks neat, too, although it’s still too new to be considered affordable. Some new hardware that is affordable are two systems from NorhTec- the MicroClient Jr and the MicroClient.
Aside from the Mac Cube, my first choice would be the Toshiba Magnia SG20.
There seem to be many options for people for older, Linux-friendly hardware in a small form factor server.
I totally spaced three machines that I’ve always wanted, even though they’re too old to be very practical. The Next Cube, BeBox, and the Mac Classic, which I’m ashamed to say I threw dozens of in the recycling heap at the University Of Illinois. Ouch!
Jackpot! QubuntuI finally had to sit down and learn about kernel compiling, initial ram disk images (initrd), and the like. I’ve got Ubuntu 6.06 Dapper Drake running on my Cobalt Qube 3 with a 2.6.19.2 kernel I downloaded from kernel.org. I’d better get to writing notes before I forget steps.
I’ve got the kernel config file and my own kernel image and kernel headers deb’s that I’d be glad to share if anyone is interested. Perhaps I’ll put them up on this site soon.
Update:Please see my Ubuntu on Qube Installation Howto.
Console output below:
Ubuntu on Qube - SuccessUpdate:Please see my Ubuntu on Qube Installation Howto.
So, I finally have Ubuntu 6.06 Dapper Drake running on my Cobalt Qube 3. However, I did compromise. I don’t have time to educate myself about the issues I believe were preventing a clean Ubuntu boot- specifically the role that initird (initial ram disk) plays in booting the Qube3. I suspect that, which some effort, one could do this in a much better manner than I did.
I initially ‘apt-get install linux-image i386′, which did not work. Then I added a vmlinux.bz2, which the Qube needs, to /boot. This also didn’t work. I got an error about it being it being an initrd kernel necessitating lilo or grub, which the Qube ignores, if I understand correctly.
I instead copied the 2.6.16 kernel from the CentOS install I did with Strongbolt earlier. In fact, I copied the entire contents of the CentOS /boot directory to the Ubuntu boot directory. I also copied the CentOS /lib/modules/2.6.16 directory to /lib/modules on Ubuntu. It’s a hack, but it works.
I’ve included the serial output below. You’ll notice that the network devices are not configured during boot, which I imagine can be easily fixed. This is only the second boot, so I haven’t tweaked anything. I’ll report back regarding the level of success I have with Ubuntu on this Qube. I’ll post the notes I wrote, too, but they’re basically the same as the other OS installs out there.
Oh, yes, almost forgot- I wanted to name this post “Qubuntu”, but thought I would be self-identifying as a real dork. Rock on.
See the serial output below:
Strongbolt on QubeI successfully installed CentOS using the Strongbolt installer. I used the 1.04 beta iso which doesn’t install the BlueQuartz web gui, but it’s easily installable using notes from webhostingtalk.com.
It works well, but I suspect my problem all along has been that the WD1200-JD drives I’m using aren’t compatible. I installed CentOS using the original 20GB drive that came with my Qube. For the first time I can login via the USB-to-Serial cable. I think I’ll try to install Ubuntu or Debian on this drive next. Then maybe I’ll use dd to copy that install, if it works, to the 120GB drive.
I’d just deal with the Red Hat EL-based CentOS, but after using Debian and Ubuntu I’m not interested in going back to an rpm-based distribution. I don’t think yum holds a candle to apt. Additionally, it would be nice to keep a consistent install base across my home and work machines. It makes it much easier to write cross-machine scripts and the like.
For comparison, the serial output is below.
Update: I installed one of the larger disk as the secondary disk into the cube and did ‘dd = if=/dev/hda of=/dev/hdd’, which worked. I can now boot from the larger disk. So, clearly it isn’t that the Qube can’t boot from one of these disks, it’s that the install just won’t work on them. Very odd. I’ll try to install Ubuntu 6.10 next in the same manner.
Qube re-TrialsThis weekend I was thinking that the device /dev/console led to the error:
Warning: unable to open an initial console.
Kernel panic: No init found. Try passing init= option to kernel
I was hoping it was something simple like wrong major/minor number, owner and group, or permissions. I created a new device with mknod, but that didn’t do it. Oddly, Debian 3.1 running in nfs boots the cube, but Debian 3.1 running on disk does not. I also noticed that disk Debian had ttyS0-5, but nfs Debian had none so I deleted them. No luck. They must have been created when I used MAKEDEV to create the /dev/hda devices.
Perhaps the kernel doesn’t load a console driver. Since I’m using a Cobalt kernel rpm that I ran alien on, I doubt that is the case. I have to admit I have no idea how init levels get passed to a kernel that isn’t loaded by a boot loader. The Qube3, and other Qubes, boot by loading an inital ROM kernel which, in turn, boots the kernel from disk (or nfs). So, the ROM kernel is the boot loader. Very unusual.
For reference, I’ve included the output from the Cobalt OS boot below.
Qube TrialsI installed Debian 3.1 on my Cobalt Qube 3 this weekend using Tim Wiley’s excellent howto. I started with Ubuntu 6.04, but had some difficulties getting the kernel working properly. I had some success with an older 2.4 kernel, but I eventually switched back to Debian.
It doesn’t boot correctly now, but the 2.4 Cobalt kernel does load in second stage. The problem seems to be with the node /dev/console. After the second state kernel loads, which is the Cobalt 2.4 kernel, the system throws and error and reboots. The error is:
Warning: unable to open an initial console.
Kernel panic: No init found. Try passing init= option to kernel
There are several possible reasons for this and I’ll post when I figure out what it is. I’ll post the whole session below. Another problems took some time to sort out- the Western Digital WD1200JB 120GB drive I’m using (I have two identical drives for RAID) wasn’t recognized. I had been using it with the jumper in the master position, but it only works in the cable select position. However, the full 512MB of memory are recognized. I expect I’ll try to solve the initial console problem above then switch drives and try to get Ubuntu with the 2.6 kernel working. There really isn’t any driving need to use the 2.6 kernel that I can think of, but I’d still like to try.
Also, it took some exploration to get minicom working over my USB to Serial cable. The trick is to use /dev/TTYUSB0 as the device. I set up minicom by ’sudo minicom -s -o’, set the parameters (115200 bps, 8-bits, no parity, 1 stop bit, /dev/TTYUSB0), saved the profile as qube, and run it with ’sudo minicom -o qube’.
Qube ProgressI haven’t had much time to put into my Cobalt Qube3 since I acquired it. My goal has been to install Ubuntu 6.06.1 LTS, but while playing with it I seemed to have corrupted the original OS. Using the Sun documentation and the Cobalt OS Restore CD I’ve been trying to restore the OS, which is much more troublesome than it sounds.
The trouble began with this error: “kernel panic: VFS: Unable to mount root fs on 16:40″, which I fixed by switching the order of optical drives in BIOS. Then, boot from net resulted in an instant kernel panic. I realized that my the DHCP from my router might be causing some havoc, so I disabled that. Currently, it seems to be working, but the LCD never says “booting kernel” as the readme says it should. The link light is intermittently lit, however, so I’m hopeful. I should root around for a crossover cable and skip my router completely in favor of simplicity and least point of possible failure.
I should mention that the OS restore CD requires a specific network interface card. I was fortunate enough to have a 3com 3C905B on hand that works with the old tulip driver. Oddly, while loading the linux kernel from the OS Restore CD, there are several errors about not being able to insmod the tulip module and I nmap doesn’t think the nic on the my computer is up. That might explain the lack of “kernel booting” message.
I did try installing Ubuntu on a drive in my desktop computer and moving to the cube mostly following Ben’s “Slackware on a Qube3 post, but only succeeded in scoring some kernel panics. I finally have a USB to Serial cable with a Null Modem adapter so I can use the serial console and I’ve upgraded the memory from 64MB to 512MB. Now perhaps I’ll try to use debootstrap and NFS to net boot a new system following Tim’s “Installing Debian 3.1 Sarge on a Cobalt RaQ4″ post next.
The output of the serial console while booting follows. I think that the boot is hanging after unpacking the kernel. Nmap shows me that the interface is up, but that there are no open or closed ports.
(more…)