September 23, 2008
I’ve had the same old Linksys WRT54G router for years and it’s always been good to me. Recently I’ve noticed a bit of a problem though. I have several wireless devices, including several laptops, a Wii, and various wifi USB cards. They’ve all connected to the router fine. However, when my wife’s laptop is sending a lot of upload traffic over wireless (say, uploading pictures to Picasa or, now, doing a full backup to our local server), then my laptop drops off the network and can’t connect until her traffic is complete.
I have 4 current clients on the wireless network, and looking at my DHCP logs, my wife’s computer (broadcom b43) is uploading things just fine, and my mythtv box seems happy (zydas zd1211b), but both my laptop (atheros ath5k) and the wii (unknown) appear to be struggling to reconnect while her computer is generating soo much upload traffic. All computers run Ubuntu Hardy or Intrepid.
So, is it common for other computers to drop off the network if one wireless client is sending a lot of traffic? Why would I not have seen this before? I tried looking at the router’s QoS options but there really aren’t any for wireless devices. Options?
Posted by john under linux | Comments (2)
September 14, 2008
Just a short note talking about the various things I’m splitting my time doing when I’m not a) doing work, or b) enjoying my family life.
So, between work which keeps me very very busy, real life, and all these little projects, I think I’m set with free time for a while.
Posted by john under linux | Comments (1)
September 2, 2008
A few months ago both my personal laptops broke. My Compaq v3000z (only a little over a year old) had a power socket that went trippy, and my fallback old reliable iBook G3 900 finally gave up the ghost. But I didn’t have the money for a new laptop (and I was annoyed that my HP went soo soon), so I went without a personal laptop for a while, which meant lugging my 15″ work MacBook Pro home all the time. Not a bad laptop, but I like to work late into the night, and the MBP gets scalding hot and the fan turns on at the drop of the hat (or a compile of anything longer then a few seconds). The heat and noise made it annoying to use in the same room as my sleeping wife.
So, I scrounged up enough money to treat myself to a new laptop. I didn’t want a mac given my experience with the MBP (even though I loved my 12″ iBook), and I wanted something that was going to LAST, i.e., something that wasn’t a consumer level HP notebook. I also wanted an AMD processor because I do virtualization work and SVM is -soo- much nicer than Intel’s VT, but that wasn’t really an option outside of HP. I wanted small, cheap, light, and reliable.
So, Lenovo it was, and the fact they released the new T400 just recently made me take the plunge. It arrived this morning. It’s a pretty minimal config: P8400 processor, 2GB ram, 160GB 5400rpm HD, 4cell battery. But I did splurge on the LED 1440×900 display. Here are my impressions so far:
- It’s pretty light weight, only slightly heavier then my old 12″ iBook. Not bad for a 14″ laptop.
- The lack of heat and noise is wonderful. Head and shoulders above the MBP. The bottom gets lukewarm at most, and the fan is barely audible. And this is with running with the ATI 3460 discrete graphics card enabled
- Vista Home Basic is slow. I wasn’t expecting bloatware from Lenovo, but they have a lot of it, and no easy way to install a clean install.
Of course, I spent most of the day getting Linux up and running. I’m now running Intrepid, and it’s running very smoothly. A few things that tripped me up:
- Switchable Graphics: If you leave this option enabled in the BIOS, then linux will see both video cards (the internal Intel card and the discrete ATI 3460HD). This trips up the Intrepid installer, so I couldn’t install Intrepid directly. Interestingly, Hardy worked, although it detected and used the Intel card when I was expecting it to use the ATI one. By setting the BIOS to ‘Discrete only’ and the primary video device to ‘PCI Express’ instead of internal, Linux only sees one video card now.
- ThinkPad Wireless a/b/g III: The actual card is an Atheros AR242x wireless device. This is not supported by the version of MadWifi in Hardy, so it doesn’t work. It may be supported by latest madwifi SVN code if you compile it yourself, I didn’t try. It is, however, supported by the new open source ath5k driver in Intrepid. There’s a catch though. Intrepid ships with both madwifi and ath5k. In my case, madwifi got loaded first, putting the card into a bad state that only a reboot would fix. Blacklisting the madwifi drivers (ath_pci, ath_hal) in /etc/modprobe.d/blacklist and rebooting allows the card to work like a champ. UPDATE 11/2/2008: Ubuntu decided to throw us a curveball right before intrepid was released. To fix the madwifi/ath5k conflict, they removed the ath5k driver from the default kernel. This means that you’ll have to install the package linux-backports-modules-intrepid-generic to get the ath5k driver. You will probably still need to blacklist madwifi as shown above. This package is supposed to be included on the default install CD. See the 8.10 release notes for more details.
- ATI Radeon 3460 HD: Intrepid detects the card fine and uses the ATI driver. Interestingly, I tried to use the radeonhd driver, and got a blank screen. I should probably report that. Of course, no 3D, or even 2D acceleration, but ShadowFB acceleration seems plenty fast enough for now. I always have the option of switching to the intel graphics in the BIOS if i need 3D before the R600 folks figure it out. And yes, I could run fglrx too, but I like the fact I think I’m running with a completely open source system.
- Fingerprint Scanner: Not supported under Linux. Mine’s an AuthenTec 2810 USB scanner, and it doesn’t have linux support. Yes, I know fingerprints aren’t very secure, but it’s just cool to use. I’ll see if I can work with the fprint folks to get it working. I just hate USB snooping.
- The Back/Forward keys: This is an annoyance more then anything. Lenovo has an inverted T-style cursor keys on the keyboard (good), that’s slighly dropped down from the level of the spacebar (ok), and they’re narrower than the other keys (ok), but unstead of leaving a blank spacer around in the upper left and upper right of the inverted T, they added two new buttons. A ‘Page Forward’ and ‘Page Back’ button (bad, very very bad). Because the keys are narrower then the other keys, and are dropped half a row lower then the spacebar/bottom row of the rest of the keyboard, I’m often hitting these buttons when I mean to hit the cursor forward/back keys. This is extremely annoying when typing on a web page, because these keys are mapped to forward/back in the browser. You just try typing a long entry into a web form only to look up and see that you hit the back button 50 words ago and you’ve lost everything. I must find a way to disable these keys, or I’ll go insane.
That’s about it, I’m very happy with it. Hopefully this one lasts a lot longer then my HP.
Posted by john under linux | Comments (9)
June 21, 2008
Never knew this, but I was configuring apt-mirror to set up a ubuntu mirror and it dawned on me that I needed both amd64 and i386 binaries. In apt-mirror’s config file, there’s a ‘set defaultarch’ option to mirror a different arch then what your machine is currently, but that won’t help mirroring more then one arch in the same repository.
The answer gleaned from the comments of this blog post is to append the arch to extra deb lines in the mirror.list file. I.e. to mirror both amd64 and i386, you add these lines to /etc/apt/mirror.conf:
deb-i386 http://us.archive.ubuntu.com/ubuntu hardy main restricted universe
deb-amd64 htp://us.archive.ubuntu.com/ubuntu hardy main restricted universe
If you think about it, it then makes sense why the source lines start with ‘deb-src’. Huh. Learn something new every day.
Posted by john under linux | Comments (0)
June 20, 2008
Sometimes you want a bare-minimum LiveCD that you can use as a base for other projects. Creating one on Ubuntu is a rather big pain. GUI tools like ‘Reconstructor’ or ‘Ubuntu Customization Kit’ are meant to modify the existing install/Live CD’s, and don’t allow you to really strip down the CD to the bare minimum.
Debian has a project called live-helper which allows you to do just that with a debian distribution. This is also included in Ubuntu Hardy, but it doesn’t -quite- work out of the box. However, with the following small changes, you can make it work. I’ve just create a 77MB minimal hardy boot CD, and it works like a charm.
Here’s what you need to do:
- apt-get Install live-helper cdebootstrap
- cdebootstrap has a bug on hardy that doesn’t look like it’ll be fixed until Intrepid gets released. To fix it, edit the file ‘/usr/share/cdebootstrap/suites’, and att the following lines to the bottom:
Suite: hardy
Config: generic-ubuntu
Keyring: ubuntu-archive-keyring.gpg
It’s pretty obvious someone just forgot to add the entry for hardy.
- This isn’t strictly necessary, but in order to build a CD with the latest security and updates, you’ll need to modify one of the scripts. Debian appearently names their updates repository with a ‘/’ instead of a ‘-’ like Ubuntu. This means that the live-helper scripts try to access ‘hardy/updates’ instead of ‘hardy-updates’. To fix this, you need to edit the file ‘/usr/bin/lh_chroot_sources’ and change all references containing
${LH_DISTRIBUTION}/updates
to
${LH_DISTRIBUTION}-updates
You should find them on lines 64, 68, 233, and 237.
- Now you’re ready to actually use the live-helper scripts, so first, create a directory to use for scratch:
$ mkdir ~/live && cd ~/live
- This is the really important line. run ‘lh_config’ with the correct parameters. To create a minimal ubuntu CD, I used this command line:
lh_config -p minimal -a i386 -d hardy –mirror-bootstrap “http://us.archive.ubuntu.com/ubuntu” –mirror-bootstrap-security “http://security.ubuntu.com/ubuntu” –mirror-binary=”http://us.archive.ubuntu.com/ubuntu” –sections “main restricted” –mirror-binary-security “http://security.ubuntu.com/ubuntu” –initramfs casper -k generic –linux-packages=”linux-image” –apt-secure disabled –bootstrap cdebootstrap
To break this down further:
- ‘-p minimal’ : use the minimal package set
- ‘-a i386′ : use 32-bit packages so this will run on any 32-bit or 64-bit x86 system.
- ‘-d hardy’ : specify the distribution to use.
- ‘–mirror-*’ : set these up to point to the ubuntu mirrors instead of the debian ones. Note you can use local mirrors if you have 32-bit mirrors lying around. The ‘*-binary*’ entries are what the LiveCD will use, the ‘*-boostrap-*’ entries are what cdebootstrap will use to download the packages for the livecd.
- ‘–sections “main restricted”‘ : set the allow the liveCD to grab packages from both ‘main’ and ‘restricted’. Note this leaves out universe.
- ‘–initramfs casper’ : Use ‘casper’ instead of ‘live-initramfs’. live-initramfs doesn’t seem to work quite right on Ubuntu yet, so not setting this parameter left me with a system that booted but with no terminal prompt and thus no way to do anything.
- ‘-k generic’ : suffix to add to ‘linux-image’ package name. ‘-generic’ gives you a standard 32/64 bit kernel.
- ‘–linux-packages “linux-image”‘ : Debian uses ‘linux-image-2.6′, as well as includes some module packages that are included by default on Ubuntu, so you must set this.
- ‘–bootstrap cdebootstrap’ : by default it will try and use ‘debootstrap’ which failed for me because it didn’t install gpgv by default, whereas cdebootstrap did. If omeone could make this work with debootstrap, we wouldn’t need to cdebootstrap fix above…
- ‘–apt-secure disable’ : Actually, may not be needed, was playing around with this trying to figure out the gpgv problem up above, so this can probably be ignored.
- Run
lh_build
and cross your fingers. With any luck, it’ll run to completion and you’ll have a nice, ~80MB ‘binary.iso’ file waiting for you in the current directory.
live-helper is actually quite powerful and quite involved. See the Manual for more information.
Posted by john under linux | Comments (26)
Older Posts »