Sep 13, 2006

Gentoo 2006.1 Install Updates

I assume some people might have had questions from the last post. Here's some specs of my "workstation":

1x DFI LanParty NF4 SLI-DR
1x Athlon64 X2 4200
2x 1GB OCZ Titanium
2x 74GB Western Digital Raptors
1x 36GB Western Digital Raptor
1x XFX GeForce 7800 GTX


I'm still having trouble getting the Sil3114 Raid Array to detect. Dmraid detects the controller, but the devices don't mount. It gives me an error code that I'll post later.

Genkernel isn't as bad as some people make it out to be. I really don't know what the big deal is. If you are going to want to use an initrd/initramfs, then genkernel makes your life a whole lot easier.

I couldn't mount other drives after I booted. I figured out that using the block devices directly under /dev was giving me the message that they were either busy or already mounted. Turns out you gotta use the block devices under /dev/evms. Everything works gravy then.

I have a dual core machine. Something having to do with a broken ACPI implementation apparently makes my machine act all funky. In X, I'll get very odd mouse behavior, and the keyboard will repeat strokes "at random". I recompiled the kernel again, and changed that one timer for events or some shit from 1000hz to 250hz. I also compiled psmouse as a module, and loaded it setting the rate to 80. I also set the internal timing mechanism to PIT. I'll edit these things with the proper specifics later, but if you look around you'll probably see where I mean. I found that information in the forums. I don't know if any one of them actually did it, since I did all three at once. I think the key culprit was the timing mechanism.

Sep 12, 2006

Gentoo 2006.1

I installed gentoo on my workstation over the weekend. I had failed to do so before because of the BIOS raid system I use. I have been trying to get any linux distro to install to the raid array for quite some time now, and have now had success. It's surprisingly stable, and I've had no file system corruptions yet even though everyone in the community says I'm walking on a tightrope (They are correct too, you'll see why lol.). At the worst I suspect that I could loose my root filesystem, which isn't a big deal because I keep my important files on a non-raid drive. Since it's a raid-0, I have a greater chance of loosing all of my data because if just one drive fails in the array, I loose it all. I'm using WD Raptors for the drives. As you can probably guess I'm a speed junky ;-P. Here's how I did it:

I use x86 instead of AMD64 just in case things weren't there quite yet with AMD64... I will do attempt an AMD64 install this weekend.

After booting the livecd, it failed to detect any of my arrays. I tried using the options doscsi and dodmraid to try and help, but still no luck. If you are like me, and this happens to you, all is not lost! Download a staticly linked version of dmraid that can detect your array. The one I used is located here. Download that to some directory and execute it with "./dmraid -ay". You need to rename the file to "dmraid" if you want to use that EXACT command, otherwise just use the full filename (DHER! If I REALLY had to tell you this, then you should NOT be doing any of this!!!). Now, your devices should show up under /dev/mapper. Use those and do a normal install, but stop when you get to compiling your kernel. Make sure your kernel has support for device mapper, and support for your drive chipsets. I used genkernel simply because I'm lazy, and it wasn't all that difficult(like i'd really change anything anyway... oh man i really REALLY need to put that latest uberfast new memory mapping algorithm that i've never ever tested and even thought up while i was drunk into i!). I did a "genkernel --dmraid --menuconfig all". I always use menuconfig so that I can tweak some options. Once genkernel finishes, we are not done yet. We need to edit the initramfs that genkernel created. The dmraid version that genkernel uses won't detect our array, so we have to use a version that does. Rename your initramfs first so the extraction utility doesn't have problems with it. Extract the initramfs to a directory with the utility found here. The command you should use is "./convinitrd -g -d initramfswhatever.cpio.gz". Go into the directory that was created from the extraction. Everything in there should look like it's the root of a filesystem. Go into /sbin, and replace the dmraid in there with the version you either downloaded or obtained by other means earlier that detects your array. Finally, repackage the initramfs. You should be done. Just complete installation like normal and you are all set. It's really not that difficult, just not documented very well.

So, to summarize:
If you are having problems getting your BIOS raid to detect when trying to install to it in Gentoo (probably other distros as well):

1. Before installation, download or compile a staticly linked version of dmraid that successfully detects your array.
2. Run before installation to detect your array, and then use the detected devices for your installation.
3. After your kernel is compiled, edit the initramfs that is created by injecting your version of dmraid.

Sep 7, 2006

Sep 6, 2006

Mono

Mono kicks ass. Gnome is including GTK+ C# bindings with the newest versions. I have to say, for once microsoft did something right with .NET. I like being able to use the same API and language to program for windows or linux. It's just so much easier. Sure, I wouldn't write anything that needed to execute with the utmost speed in .NET, but those requirements aren't exactly necessary for most projects nowadays. I'd be willing to bet that writing a FPS in .NET wouldn't be such a bad thing. With computing power these days, it's ok for a program to go through a layer of translation. I'm still getting my gentoo install up and running.... I decided to wait for 2006.1 so that my hardware wouldn't be as buggy, and for various other reasons. I've been using gentoo on other systems for some time, I just haven't put it on my newest workstation yet. I tried with 2006.0, but ran into obstacles compiling the kernel where gcc would segfault. I look back at the forum now and can find the answer, but too bad it wasn't there when I was going at it lol. Anyway, look forward to seeing many simple applications that I will be making in order to ease the transition for all those people that are accustomed to windows.