Taking FreeBSD On The Road (4.2-RELEASE)
December 28, 2000 Written by Otter
For some time now, I've wanted to get a laptop so I can use my OS of choice(instead
of someone else's choice) when I'm away from home. Some of the tools available to us in the open source community just aren't there, or aren't allowed, in the corporately managed desktop environment. Being a person
who works in several locations, and on different equipment, I've found times where Ethereal would have come in handy, as would Expect,
just to name a few. The key to using a laptop for anything other than Windows, is to do your homework and make sure all the hardware in that model is actually supported. You can find other helpful info at the ~FreeBSD on Laptops page. Now I've got a laptop that the office can't manage. I drive home and grab my newly acquired 4.2-RELEASE FreeBSD CD and proceed to
customize this new machine to my own liking.
This new machine has everything I need, except a modem. The Toshiba Satellite 330CDS comes stock with a Pentium 266MHz CPU, 32MB RAM, 4.1GB hard drive, 2MB video memory, 3.5" floppy drive, CD-ROM, and a Yamaha OPL-3Ax audio chipset. The network card isn't stock, but the 10/100 3com 3CXFE574BT pccard works like a champ (thanks to the ep driver!). The remaining goo left over from the removed "Windows 95 compatible" stickers are just a bonus, I suppose.
Installation went pleasantly smooth. The hardest part was getting the pccard NIC to work, and found that I was one of the fortunate ones
who didn't have much trouble. I've heard from several folks that the pccard config can be tricky and it varies between all the different manufacturers of controllers. Once the OS was installed (minimal, as I usually
do), I went about searching for the answer to my pccard NIC dilemma, only to find that in the GENERIC kernel, there was the word "disable" at the end of the line providing device pcic1 support. Removing
the "disable" word and recompiling kernel and rebooting allowed the card to be found as it should have been (though I'm currently working on a Satellite 225CDS which isn't cooperating as the first one
did). I'm hearing that another trick to get this to work is to wire down the resources in kernel, and specify other values than default. As this is my first experience with a laptop, I can't say what's worked in the
past as all i've got from others is to just go through trial and error. Some tweaks to the /etc/rc.conf were necessary as well. Since I want the laptop to be networked with all my other machines here at home, I'm
giving it a static IP on the 192.168.1.x net. For the pccard network config to be done every time at boot, I added the following to /etc/rc.conf:
pccard_enable="YES"
pccard_flags="-i 10"
pccard_mem="DEFAULT"
network interfaces "ep0 lo0" (ep0 being the network card, lo0 the loopback)
pccard_ifconfig=192.168.1.30 netmask 255.255.254.0)
and the defaulrouter setting, my NAT machine (192.168.1.10). With this, m laptop can now access the Internet.
Now that the machine has access to the outside, you can install whatever you need/want on the machine. I've
found that security is not as important on this machine as it would be others, so I chose to run XFree86 v4.02 instead of the stable and more secure 3.3.6. 4.0.2 seems to be a bit lighter than 3.3.6. I pulled the
pcm line straight from the pcm man page and got sound working so I can take a few of my MP3s on the road with me. You need to make sure you use "device pcm" for PCI devices and the other for legacy
chipsets that are supported. I've got all my favorite browser, text editor, miscellaneous apps, and office suite installed. What more do I need? Well, I'm networked now. I can grab it when I need to. I'm planning to
setup Samba next week when I have more free time. This will enable me to share files with my Micro$oft operating systems and use the printers attached to them (via smbprint) when i'm at home. The only thing left to
do is configure my pccard modem when I get it. When I've got it configured, I'll update this info and leave it for you to get the most current version.
|