A second wardrivebox build / 2011-08-14

2011-08-14 A second wardrivebox build 9 years ago
A friend asked me to help him get his own wardrivingbox going. I had a harder time doing this than expected, so I decided to retrace the steps.

He had installed ubuntu 11.04 on it from usb stick. This wouldn't boot, the grub setup was al wrong. Fixing the grub setup still left it non-booting.

This time I had the Heavy Duty Boot Environment available to help me, since the alix.1c / alix.1d boards are quite capable of PXE booting. This didn't turn everything into a simple install-party as the via_rhine drivers in anything but the most recent linux distro give issues. So the complete pxe load via network works fine but after that the network drivers don't work, making it impossible to do an OS installation which I can reproduce.

Update 1:

So I chose the 'easier' option: start with the Linux install I built for the wardriving box, adjust a number of parameters and try to get that running on it.

With the CF module in the alix.1d I booted PLD Linux, and partitioned the CF to have one big ext3 partition, made a filesystem on it and installed grub on it:
# mke2fs -j /dev/sda1
# mkdir /mnt
# mount /dev/sda1 /mnt
# grub2-install '(hd0)' --root-directory=/mnt
I could have done the whole grub dance on a running system to prepare the CF disk for the wardrivebox but I find it a bit scary to do that: I'm working in an environment I don't want to break and the mapping of linux devices versus physical devices is somewhat volatile.

But this leaves me with a problem transferring the files since the pld-20090221 version has the issue with the via_rhine drivers. I first thought I had to remove the CF from the alix.1d and do this in the development workstation but I thought later that simply using an USB flashdrive for copying the data would probably also work.

Update 2:

Yes that part sort-of works: I have to disable USB 2.0 in the alix.1d setup in order to make the mounting of an USB stick work in the PLD linux environment. This time I get the whole thing booting itself, but it hangs during boot, the last messages:
PCI: Probing PCI hardware
PCI: Using IRQ router NatSemi [1022/2090] at 0000:00:0f.0

Update 3:

New attempt: recreate an environment to use grub version 1, that's what I had running before. To create an environment like that without changing anything within with my running ubuntu install, I used debootstrap again: And within that environment, switched to grub-legacy:
root@jobs:/# apt-get install grub-legacy
Grub needs access to the disk devices. I made really really sure the CF was /dev/sdc ..
root@jobs:/# mknod /dev/sdc b 8 32
root@jobs:/# mknod /dev/sdc1 b 8 33
And grub complained about missing stage1 and stage2. Which I still had in the previous running image...
root@jobs:/home/koos/project/wardriverbox/cfimage/boot/grub# mount /dev/sdc1 /mnt/other/
root@jobs:/home/koos/project/wardriverbox/cfimage/boot/grub# rsync -av . /mnt/other/boot/grub/
Now grub wants to install:

    GNU GRUB  version 0.97  (640K lower / 3072K upper memory)

       [ Minimal BASH-like line editing is supported.   For
         the   first   word,  TAB  lists  possible  command
         completions.  Anywhere else TAB lists the possible
         completions of a device/filename. ]

grub> root (hd0,0)
 Filesystem type is ext2fs, partition type 0x83

grub> setup (hd0)
 Checking if "/boot/grub/stage1" exists... yes
 Checking if "/boot/grub/stage2" exists... yes
 Checking if "/boot/grub/e2fs_stage1_5" exists... yes
 Running "embed /boot/grub/e2fs_stage1_5 (hd0)"...  15 sectors are embedded.
 Running "install /boot/grub/stage1 (hd0) (hd0)1+15 p (hd0,0)/boot/grub/stage2
/boot/grub/menu.lst"... succeeded

Something is still wrong, grub now reports an 'Error: 2' in stage 1.5. Which means something in the menu does not exist. I find out this can be caused by mixing grub versions so I redo the whole grub-install dance:
root@jobs:/# grub-install --root-directory=/mnt '(hd0)'
Now I have a booting system with grub 0.97 .. still ending at the same kernel message.

Update 4:

Comparing the kernel messages from my alix.1c with the messages above and what I remember I guess I need to check the ACPI settings in the BIOS.

Update 5:

ACPI now enabled in the setup. Kernel messages look different but the system still hangs right after the PCI configuration. One improvement: the network interface now works when I boot pld linux. When I compare the boot messages to the ones from the working system the system seems hung in the timer choice.

Update 6:

Newer kernels have the option to use the specific timers available in the Geode, so I'm trying to build a kernel. Which gives other problems: I can't compile madwifi anymore (it has gone deprecated). So to get a running system again I need to use the newer ath5k drivers.

Update 7:

Linux boots (with some warnings I need to investigate) and produces a running system. Now I need to fix things like kismet using the other drivers, but we're getting somewhere.

Update 8:

Again some time to work on this, and I notice weird driver issues with the dependencies. This probably has to do with the modules.dep file being generated with a slightly different version of depmod. The version of depmod within the chroot environment is up to date so I can use that one. And after configuring kismet to use the right wireless driver that leaves me with:

A working wardriver box!

I've seen a lot of issues, and I might have given up if I wasn't sure this could be made to run! In the dmesg for the alix.1d wardrive box I notice the specific timer is not available:
cs5535-clockevt: Could not set up IRQ 7
cs5535-clockevt: Unable to set up the MFGPT clock source
But one timer is working, the pit timer.

Still todo: fixing the place the results are copied to, maybe configure a different GPS.

Tags: , , ,

IPv6 check

Running test...
, reachable as koos+website@idefix.net. PGP encrypted e-mail preferred. PGP key 5BA9 368B E6F3 34E4 local copy PGP key 5BA9 368B E6F3 34E4 via keyservers

Meningen zijn die van mezelf, wat ik schrijf is beschermd door auteursrecht. Sommige publicaties bevatten een expliciete vermelding dat ze ongevraagd gedeeld mogen worden.
My opinions are my own, what I write is protected by copyrights. Some publications contain an explicit license statement which allows sharing without asking permission.
Other webprojects: Camp Wireless, wireless Internet access at campsites, The Virtual Bookcase, book reviews
This page generated by $Id: newsitem.cgi,v 1.54 2020/12/31 15:36:31 koos Exp $ in 0.005632 seconds.