Installing BT3 on the eee 901 with drivers, part I
*** Downloadable BT3 module for the eee 901 with network and graphics drivers posted in msg #10 ***
Well, having been the very lucky recipient of an eee 901, and having wanted to use BT3 for network analysis for some time, I have finally been forced to learn something about Linux. The following documents my experiences trying to get as much as possible working with BT3. Please excuse (and point out) any errors / easier ways to do things – most of what is here has been mashed up from various sources including these forums, but the mistakes are all mine :D I was completely new to Linux before starting this, so I can pretty much guarantee that some of the below does not represent the best way to do this...
A lot of this info is already out there, but not in one place, so hopefully this will be useful to someone. Additionally, I doubt I would have got anywhere without the support already built into BT3 for the 701.
Note that this is specific to the 901, the many other versions of the eee have different hardware configurations, so some or none of the following may be applicable. This is not a tutorial you can follow blindly - you need to apply some thought and read the text - if you just paste in the sample commands I can't guarantee it will work. I also can't post images - eventually I would like to add this to the wiki but for now this is the best I can do. I also tend to be quite verbose - sorry, it's just the way I write when I can't use pictures!
First, you need to decide how you are going to install BT3. For my purposes, I’m using an SD card in the eee SD card slot, then hitting escape on boot and selecting to boot from that card - this lets the rest of my family use the eee with Xandros without getting confused :-)
You could equally do an install direct to any of the eee flash drive partitions, even wiping out the default Xandros install if you want more space.
There are many excellent tutorials on this forum concerning installing BT3 on a hard drive or memory card / USB stick, so I’m not going to cover that. This post will cover setting up the system for persistent changes on the eee flash drive, and locating, building and configuring drivers for the various bits of hardware on the eee 901 which is not supported out of the box with BT3.
Setting up Persistent Changes on the eee
Once you have your BT3 installed and working on the SD card or other device, the first step is to install the BT3 kernel source module, since a number of drivers need to be compiled. You can get this file from the main page of the Wiki here (http://www.offensive-security.com/kernel.lzm,) and you should copy it to your BT3 bootable media in the /BT3/modules directory.
A quick note on getting files onto your eee. When you first boot BT3 you will have no wired or wireless network access. You need to download necessary files such as wireless drivers either using Xandros (I recommend the partition with /home on it) or onto a USB stick or something, so you can get things started.
We now need to decide where to store the persistent changes. You can store the changes anywhere writeable, but note that you will have to manually create the /changes folder in the root directory on that partition. I chose to store the changes in /changes/changes.dat on the larger unused partition on the eee 16Gb flash drive, which is /dev/hdd2 on my system. See the excellent tutorial here on how BT3 live installs work here for more information on how to configure the location to store persistent changes, for example as multiple folders, or as a single loop file.
Differences between ext2 vs ext3, and the difference between a live install and a hard disk install, and why we might choose live are topics for another time.
Either boot into Xandros, or preferably simply boot BT3 from your new bootable media on the eee, selecting e.g. BT3 Text Mode (KDE). It will complain a bit about VGA modes but just hit enter and you will end up with a useable text mode system. Log in as root / toor and do the following:
*Note that the following might be slightly different depending on your system configuration. You will have to identify the correct device name on system and replace hdd2 in the command below.
You could stop here and just specify the device /mnt/hdd2/ in syslinux.cfg below, and all your changes would be stored as individual files in the /changes folder. However, I prefer to create a loop file and use that, since it makes it incredibly convenient to backup your changes and creates less of a mess in your file system.
Now you need to modify syslinux.cfg.
dd if=/dev/zero of=changes.dat bs=10M count=100
# This file can be any size big enough to support modules / changes you want to create.
# Since it’s full of 0’s though, it will compress really nicely for backup. Hopefully the drive is
# smart enough that when you restore the file, it does not actually write to the cells that are already
# all zero, so it won’t affect the wear on your drive too much. Any pointers as to whether this is a
# good idea or not much appreciated…
losetup /dev/loop0 changes.dat
# Ignore the warning about this not being a block device.
mount –o loop changes.dat /tmp
# Slightly confusingly, your new file system in a file also needs a /changes folder in it or it’s not going to work.
losetup –d /dev/loop0
Put in something like:
cd /your boot device/boot/syslinux/
Note that I have explicitly specified the odd VGA mode required for the 901’s screen for the necessary boot modes, and also where changes will be installed. I do not automatically run xconf or launch KDE by preference.
MENU LABEL BT3 eee 901 Persistent
APPEND vga=785 initrd=/boot/initrd.gz ramdisk_size=6666 root=/dev/ram0 rw changes=/dev/hdd2/changes/changes.dat
MENU LABEL BT3 Graphics mode (Compiz) - Experimental
APPEND vga=785 initrd=/boot/initrd.gz ramdisk_size=6666 root=/dev/ram0 rw chexpand=256 load=cubez autoexec=xconf;cubez;startx
MENU LABEL BT3 Graphics mode (Compiz Nvidia) - Experimental
APPEND vga=785 initrd=/boot/initrd.gz ramdisk_size=6666 root=/dev/ram0 rw chexpand=256 load=cubez,nvidiadriver autoexec=xconf;startnvidia.sh;startx
MENU LABEL BT3 Graphics mode (KDE)
APPEND vga=785 initrd=/boot/initrd.gz ramdisk_size=6666 root=/dev/ram0 rw autoexec=xconf;kdm
MENU LABEL BT3 Graphics mode (Flux)
APPEND vga=785 initrd=/boot/initrd.gz ramdisk_size=6666 root=/dev/ram0 rw autoexec=xconf;flux
MENU LABEL BT3 Graphics mode (VESA KDE)
APPEND vga=785 initrd=/boot/initrd.gz ramdisk_size=6666 root=/dev/ram0 rw autoexec=kdm
MENU LABEL BT3 Text mode Frame Buffer
APPEND vga=0x317 initrd=/boot/initrd.gz ramdisk_size=6666 root=/dev/ram0 rw
MENU LABEL Run BT3 no DHCP
APPEND vga=785 initrd=/boot/initrd.gz ramdisk_size=6666 root=/dev/ram0 rw nodhcp
MENU LABEL Run BT3 no Hard Disk
APPEND vga=785 initrd=/boot/initrd.gz ramdisk_size=6666 root=/dev/ram0 rw nohd
MENU LABEL Run BT3 Safe Mode
APPEND vga=normal initrd=/boot/initrd.gz ramdisk_size=6666
MENU LABEL BT3 Graphics mode with Persistent Changes
APPEND vga=785 initrd=/boot/initrd.gz ramdisk_size=6666 root=/dev/ram0 rw changes=/changes/slaxsave.dat autoexec=xconf;kdm
MENU LABEL BT3 Graphics mode, Copy To RAM
APPEND vga=785 initrd=/boot/initrd.gz ramdisk_size=6666 root=/dev/ram0 rw copy2ram autoexec=xconf;kdm
MENU LABEL msramdmp
MENU LABEL Run Memtest utility