|
Pebble - A smallish Debian Linux read-only distribution designed for embedded
style wireless devices.
Pebble Linux is a smallish (smaller than 64megs, larger than 8 megs) distro image designed for embedded style devices such as the Soekris boards, or a Stylstic 1000. It is based off of Debian GNU/Linux. It runs on many different types of systems, such as old 486 machines, mini-itx boards, or the $199 machine down at Frys. Please read the readme for more information.
Email: < pebble-distro at nycwireless dot net >
URL: http://www.nycwireless.net/pebble
Mailing list: http://freenetworks.org/mailman/listinfo/pebble-linux
This is a somewhat minimal (more than 16 megs, less than 400 megs,
designed to fit on a 128 meg CF card) Debian stripped distro aimed for
use in wireless embedded devices. It's biggest advantage is that it
mounts read-only. You don't have to worry as much about wearing down
the compact flash, and you don't have to worry about doing proper
shutdowns. Unplug and plug in as much as you want. Also you get the full
Debian "apt-get" functionality allowing you to easily add additional
software.
-----------Intro-----------------------------------
Installer requirements:
- A good _basic_ understanding of Linux. You don't need to be an
expert though. If you only run Windows or Mac OS X, then this
distro isn't for you. Have a Linux geek install it for you.
- A Linux computer to install the distro image with.
- A method to connect to the install medium, such as CF adapter.
Quick Instructions: (Read the full documentation below for more details)
Assumptions:
/mnt/cf = mount point of compact flash
/mnt/pebble = directory where pebble bz2 was untarred
/dev/hde1 = partition of compact flash
Steps:
fdisk /dev/hde # create one large partition
mkfs.ext2 /dev/hde1 # create the ext2 file system
mkdir /mnt/cf # create the cf mount point
mkdir /mnt/pebble # create the pebble untar space
cd /mnt/pebble # change to pebble dir
tar --numeric-owner -jxvf /root/download/pebble.vXX.tar.bz2
./pebble.update #
What it has installed:
Based on Debian GNU/Linux 3.0r1 (Woody)
Linux Kernel 2.4.26 - with Crypto modules
HostAP - 0.1.3 stable and utils and hostapd
MadWiFi CVS version from 04/20/2004
Prism54 1.1 stable
bridge-tools
djbdns caching dns server
elvis (tiny vi)
nano (tiny pico)
gnupg
iptables 1.2.6a
lynx
wget
lsof
host (DNS lookups, using instead of nslookup or dig)
lilo
NoCatAuth, running as non-root user, post 0.81 nightly
ntpdate
openSSH server 3.4p1-1.woody.2 patched
openSSL 0.9.6c patched with security fixes backported by Debian
pcmcia-cs (kernel module pcmcia)
Perl 5.6.1
ppp
pppoe
rsync
tcpdump
ISC dhcpd and dhclient
zebra 0.92a-5 (BGP, OSPF, RIP Routing Daemon)
-----------Requirements ------------------
What Pebble it been tested to run on:
Soekris Net 4501 (PCI version)
Soekris Net 4511 (Single PCMCIA Version)
Soekris Net 4521 (Dual PCMCIA Version)
Stylistic 1000 PCMCIA
Thinkpad T23 with mini-pci prism2 and Intel 10/100.
What Pebble has been know to run on:
Stylistic 500 with 16 megs of Ram (no NoCatAuth)
An old desktop machine with 32 megs of ram
mini-ITX boards with C3 500mhz processor
Vetco industrial machines with touchscreens
1U servers at a colo facility
Toughbook CF-17 with USB ethernet and 200mW wireless pcmcia
A robot at defcon
Will it run on a standard old pentium PC:
It should run fine on a standard PC. For development I run it
on my laptops. Minimum requirement is a 486 processor. 32mb of ram is
recommended, though you can probably get away with less, especially if
you don't start NoCatAuth.
What does Pebble load at boot-time:
By default, it does a DHCP request on eth0, loads a caching DNS
server (DJBDNS), starts up a DHCP server on wlan0, starts the SSH
daemon, and starts up NoCatAuth.
What brand compact flash do you use:
Works well:
* SanDisk
* Mr. Flash
Have seen work:
* Delkin
* Viking
* Lexar
Have seen not work
* Kingston
I use the SanDisk compact flash and would recommend it. They
tend to have better IDE emulation. I have heard of problems with
cheaper versions of compact flash being used. I have also used the
stylistic pcmcia hard drives in the stylistic and they work fine.
--- Documentation and Support -----------------
Your documentation sucks:
I dislike writing documentation, so getting this much in this
format is pretty amazing (he suckers others to read and edit it, Ben S.). If
you would like to update the documentation, and re-write it (completely
different formats is fine), email it to me (contact info below). Most people
don't read documentation anyway, so sometimes it feels pointless.
I've got questions and problems, who can I pester:
Start by reading this readme file from start to finish. Then
look at the mailing list archives. Then look at Google. Then post to the
mailing list. If all that fails, email me (unlikely he would reply, Ben S).
Is there a mailing list for pebble:
http://freenetworks.org/mailman/listinfo/pebble-linux
Contact info: Terry Schmidt < pebble-distro at nycwireless dot net >
--------- General Issues ---------------------
What is the serial port console set at:
9600 N 8 1
You may have to switch your Soekris BIOS to be the same if you
want to see it counting memory etc.
How long does it take to boot:
Less than 1 minute on my soekris net4501.
Why did you call it Pebble?
Because this distro should attempt to be small and simple, like a
pebble (a small stone).
Have you had any stability problems with it:
Nope, I have it running as my office AP, a net4501 with a D-Link
PCI 802.11b Prism2 card and 64mb SanDisk and it is very stable. The
current version of nocat has problems of dying, but is is circumvented
by placing the nocat startup in the inittab so it will automatically
respawn. When nocat fixes it's dying problems I will start it like a
regular daemon. Others have reported pebble to be very stable.
--------------Configs Files ---------------------------------
What files do I need to edit if I'm using different network configs:
/etc/dhcpd.conf # dhcp server configuration
/etc/network/interfaces # network interfaces configuration
/etc/default/dhcp # which interfaces DHCP server should
# listen on
/usr/local/nocat/nocat.conf # which interfaces and networks
# nocat should use
/var/dnscache/root/ip/ # what DNScache accepts requests from
/var/dnscache/env/IP # IP address DNScache binds to
What are the configuration files I should know about:
/etc/networks/interfaces - for the configurations of the NICs
/etc/default/dhcp - for which interfaces to run DHCP on
/etc/dhpcd.conf - for which address the DHCP server hands out
/usr/local/nocat/nocat.conf - nocat config file
/usr/local/nocat/htdocs/splash.html - the splash HTML file
/etc/modules - which modules are loaded at startup
/etc/inittab - where nocat is loaded and the serial console
/etc/fstab - which file systems are use at boot time
/var/dnscache/root/ip/ # what DNScache accepts requests from
/var/dnscache/env/IP # IP address DNScache binds to
What are some other system specific files:
/etc/inittab.pcmcia - no serial console getty
/etc/modules - modules for my t23 laptop where I do my dev work
/etc/modules.net4501 - modules needed for the soekris net4501
/etc/modules.net4521 - modules needed for the soekris net4521
/etc/modules.pcmcia - modules needed for stylistic 1000
/etc/modules.t23 - modules for my t23 laptop
/etc/network/interfaces.pcmcia
/etc/lilo-serial.conf - lilo configuration for serial console (serial)
/etc/lilo-standard.conf - lilo configuration for vga console
--------------- Install Issues --------------
How do I partition it, do I need swap space:
This is a read only distro, so no swap space is used.
Replace in the instructions below hde with whatever your compact flash is.
fdisk /dev/hde # create one large partition
mkfs.ext2 /dev/hde1 # create the ext2 file system
mkdir /mnt/cf # create the cf mount point
mkdir /mnt/pebble # create the pebble untar space
cd /mnt/pebble # change to pebble dir
tar --numeric-owner -jxvf /root/download/pebble.vXX.tar.bz2
./pebble.update #
How do I get pcmcia to start automatically:
ln -s ../init.d/pcmcia /etc/rcS.d/S65pcmcia
Why do you load networking before the pcmcia:
Configure your pcmica networking interface from
/etc/network/interfaces, not from /etc/pcmcia/network.opts. Don't
do "auto wlan0" if wlan0 is a pcmcia card.
Where are these network settings for the PCI & PCMCIA cards coming in from:
/etc/network/interfaces
What are the scripts you use to transfer the images to CF:
Take a look at:
/pebble.update
You may need to edit it to suit your needs. This assumes that
the paritition on the CF is already set up.
I'm having problems with file permissons and such, why:
When you untar, use the "--numeric-owner" option, this seems to
solve most problems. Check the beginning of the document for a step by
step example.
My wireless interface losses it's network configuration:
The default for wireless interfaces is to do dhcp client on them
to remove this, edit /etc/pcmcia/network.opts. I don't know if you
are using this card as an AP or a client, so I just leave it the default
to be a dhcp client on that card. Feel free to configure any way you like.
In the latest version I've disabled this, but it may crop back up.
How do I do PPPoE:
Pebble has PPP and PPPoE built as kernel modules.
Here is how I use PPPoE on the Pebble boxes.
#vi /etc/ppp/pap-secrets
edit, and put in your username and password info: i.e.
username@isp isp password
then edit
#vi /etc/ppp/peers/dsl-provider
edit, and change username to the username for your isp: i.e.
user username@isp
then do
#ln -s /etc/ppp/ppp_on_boot.dsl ppp_on_boot
This will trigger the /etc/rcS.d/S41ppp file to start that interface on boot.
I've got some funky old Linux system that I'm trying to use as my installer
for Pebble. It doesn't know those crazy bzip and tar commands you use,
what can I do:
#bunzip2 -c /root/download/pebble.vXX.tar.bz2 \
| tar --numeric-owner -xvf -
Also got the crazy funky old ssh-keygen, that doesn't know -t:
Better use chroot to execute pebble's version instead.
I've got a very old laptop or stylstics, that it is not cardbus, and pcmcia
is not working on post v.36 versions of pebble:
Look at the /etc/default/pcmcia file. Change it to have
PCIC=i82365 instead of yenta_socket. Also add "isa-pnp" to your
/etc/modules file. Most laptops will use the yenta_socket driver,
especially if they have cardbus.
--------------- Size Issues -----------------
This thing won't fit on a 64mb compact flash any more:
The original goal was to fit it on a 64mb compact flash.
Then I started adding stuff and using ext3 journaling file system.
After it got more stable, I stopped using ext3 and instead ext2.
Also I learned some more areas to trim the fat. Right now it fits
on 64mb CF using an ext2 file system (total 51 megs). If you do
"apt-get update", it brings it up to 64 megs.
So if you plan on adding any packages at all, use a 128mb CF
card. If you are going to use it in the stock format, it will fit in
64mb.
Do a "remove.docs" to purge excess baggage.
Luckily 128meg compact flash is pretty cheap. Currently 64mb is
$28 and 128mb is $39. If you want a smaller distro look at wisp-dist
based off of LEAF. http://leaf.sourceforge.net/
What was stripped:
removed a bunch of packages (do "dpkg -l" to installed pkgs)
/usr/share/man
/usr/share/doc
/usr/share/info
Perl POD stuff
Locales
Just went around deleting files that I thought it didn't need.
(When I broke something I went back a version).
Why doesn't it fit on a 16 / 32 mb compact flash:
Because it's got Perl, Debian package management, it wasn't
built from the ground up with space as the first concern (i.e.
recompiling with -Os, using uLibc or busybox, etc), and compact flash is
cheap. When I started pebble, there were other small distros out there,
but nothing in between like this. You can use a boot floppy distro and
get it onto a very small compact flash, or netboot it if you want (i.e.
Airport Linux).
You should have used FreeBSD, it's sweet, I've got it down to 22 megs:
I don't want to have to compile binaries if I don't have to.
Also I want people to be able to update this distro themselves without
having to do cvsup and compiling binaries. That would take up too much
space and too much time on an embedded device. Once FreeBSD adds the
apt-get update functionality, I'll visit it. (Rumor is that Debian
may one day work on a FreeBSD version).
----------- Security Issues --------------
How do I do Debian security updates:
#remountrw ; apt-get update ; apt-get upgrade ; remountro
What is the root password:
It is blank. You have to set it. You can't ssh in with a blank
password. No I won't set a default password, you have to login and set it
up yourself. You can do this via a serial console cable, local console,
or by doing the following command, while the CF is mounted.
#chroot /mnt/cf passwd
Or just run the pebble.update script, as it sets it then.
Where are the SSH server keys:
I don't distribute with the ssh server keys. That would defeat
the purpose of private unique ssh keys. look in /pebble.update
to see how I copy over the image. You can set them up by doing -
#ssh-keygen -t rsa -f /mnt/cf/etc/ssh/ssh_host_rsa_key -N ''
#ssh-keygen -t dsa -f /mnt/cf/etc/ssh/ssh_host_dsa_key -N ''
Or they are made in the pebble.update script.
Why don't you just have it automatically generate the ssh on startup:
Two reasons. First it boots up as read-only so the ssh key would
only last until it reboots and then it would have to regenerate them.
Second, this runs on slower embedded systems and the boot time would be
unnecessarily slowed down by having to generate ssh keys every time. People
who have enabled it at boot time, report 5 minutes bootup times.
---- Lilo Issues --------------------------
Why is there no /etc/lilo.conf file:
I don't know what type of system you are running it on, so I
provided /etc/lilo-standard-hdc.conf and /etc/lilo-serial-hdc.conf for setting
up lilo when the compact flash is in another computer. Edit one of
those to make your own lilo.conf. The lilo-standard.conf is for a
machine with a vga console, such as the stylistic. The lilo-serial.conf
is for a machine with a serial console, such as the Soekris boards.
How do I do lilo on a compact flash card in my laptop:
#chroot /mnt/cf lilo -C lilo-standard-hde.conf
or use lilo-pcmcia.conf. Check the conf files as it specifies
the device it writes to. It may be different on different computers.
On my Thinkpad the CF in the pcmcia socket is /dev/hde, and on my
Toughbook it is /dev/hdc. Don't use /dev/hde1 because you want lilo
installed on the master boot record, not the first partition. For some
compact flash usb readers it is /dev/sda instead.
Side note - Anyone know how to get grub to install on a device that
will be the primary device when booted, email me.
---------- Read Only Issues ------------------
Where are the files stored that need to be read-write:
Initially they are stored on /ro, at boot time they are copied
over to a dynamic ram drive (limited to 10 megs) at /rw. Files are then
sym linked to the /rw.
Where do I add a file to the ramdrive so it comes up every time I boot:
move the file to it's location in /ro
symlink the files original location to /rw
reboot
##example
#remountrw
#mv /var/readwrite.file /ro/var/readwrite.file
#ln -s /rw/var/readwrite.file /var/readwrite.file
#remountro
#fastboot
How did you do a read only file system:
I don't remember all the steps. It was a bit of trial and
error. I found a web page http://www.ultimeth.net/linux/ that gave some
general instructions then kept trying until it booted correctly. Take a
look at /ro to see which files and directories I moved. I symlinked
to their original locations.
What are those commands remountrw, etc:
These are shell scripts I created to make life easier, they are
located in /usr/local/sbin
remountrw - remounts the file system read-write
remountro - remounts the file system read-only
fastreboot - reboot fast, doesn't shut down, just remountrw then reboot
remove.docs - removes unnecessary doc files and apt-get info & baggage
What happened to all my log files. They are so fun to read at night:
The logs are rotated with logrotate. See the files in
/etc/logrotate.d For example, /var/log/messages is at a 100k size,
and gzipped. It saves the last three logs files. After that they get
deleted. Another option which I use, is to do a central syslog.
See the example commented in /etc/syslog.conf
---------- NoCat Issues ----------------------
Where the heck is nocat starting up:
/etc/inittab at the bottom, comment it out if you want.
Then do "init q" to reset the inittab program.
Why are you starting nocat in inittab:
To solve the problem of random nocat dying.
What version of NoCat are you running:
Boy, you don't read. Up above it says, in the "What it has installed:"
section.
---------- Customization Issues -------------
Can I make changes and give them back to you:
Sure. Just tar up the different file and send them back if there
are lots of changes, email me first to find out the best method. I'll
integrate them into the distro. Changes to the documentation is also
welcome.
Can you add XXXXX package:
You are welcome to do it yourself.
#remountrw ; apt-get update ; apt-get install XXXXX ; remountro
Keep in mind that the goal of this distro is to be small, so adding
everyone's favorite package is counterintuitive to that goal.
Can you add XXXXX kernel patch:
Unless there is a pressing reason, Pebble is going to stick with the
stock, vanilla, kernel.org, kernel. This way people can replicate the kernel,
and add there own stuff without wondering what crazy patched up kernel Pebble
uses. Also, stability on embedded wireless devices that you may never see
again is a good thing. However if you want to make a Debian package with a
modified kernel, and forward it to me, I'll include it on the Pebble web page,
or link to your page.
Can you use the CVS beta/alpha version of XXXXX software/kernel:
Beyond a small size, one goal of pebble is stability. Unless there
is pressing reason, Pebble will be sticking to non-CVS/beta/alpha releases.
I need to compile my own kernel. What kernel did you use and where is
the config file:
I use the stock vanilla kernels from www.kernel.org.
The config file is in the /boot directory.
i.e. /boot/config-2.4.26-pebble
I changed the network configuration settings and now DJBDNS is freaking out:
DJBDNS is configured to look for a specific IP interface. If you change
it you need to either not load DJBDNS or change the DJBDNS configuration files.
Otherwise it just constantly tries to restart and consumes CPU cycles. Read
the Configs section of this README to find out what files to change.
When I install a package, it freaks out and gives me a bunch of error messages
such as "dpkg: serious warning: files list file for package `gzip' missing,":
This is because relatively unused files have been tar & bzipped to save
space. You can either ignore these messages (what I do), or open up the
file. uncompress /var/lib/dpkg/info/dpkg.info.tar.bz2 to
/var/lib/dpkg/info/
I want to create my own Pebble distro, where are the scripts to make it:
Originally I made Pebble as a one-off for a project I needed it for.
So I don't have install scripts. Maybe the next complete re-write of Pebble
will have this. Check out Bewitched and Marble for a distro that is includes
a step by step on how to start from scratch. Though be prepared for more
work and a larger finished size.
http://www.personaltelco.net/index.cgi/BeWitched
Can I fork Pebble, you aren't adding the stuff I want:
You can please some of the people some of the time, but you can't
please all of the people all of the time. Feel free to fork it,
just make it clear that it is a forked distro, by renaming it or something
so that people don't get confused. Giving me credit for the original work
also would be nice. Forking it is a compliment to me, it says, hey
you have done a nice job so far, and now I can take your work and improve it.
I run 40+ Pebble boxes, and every time I do a new box I have to add a bunch
of stuff. Please add all the stuff I use or I'll go insane:
When I release a box, I often don't use a stock pebble release,
I also customize it. Try writing a simple shell script to do all the
customizations you need. Have it install all your favorite packages,
and set any config files you need.
If it is something that everyone could use, forward it to me, and I
will look at integrating it.
How do I upgrade an already existing pebble install to a new version:
Currently there is no easy method for this. Usually the changes
between versions aren't that big. One thing you can do is look at the
change log and just implement the individual changes yourself. If a full
re-write ever happens, it will include a method for updating to new versions
in an easier fashion.
How does pebble recreate the directory structures in /rw after every reboot:
Under /etc/init.d/mountall.sh, there is a line:
cp -a /ro/* /rw/
It copies everything in the /ro directory to /rw at boot time,
right at that the point that it should be mounting other filesystems.
How do I remove or stop DJBDNS, it sucks, and BIND rules, and I don't mind
the weekly BIND root exploits:
pebble:~# /etc/init.d/djbdns stop
pebble:~# /etc/init.d/daemontools stop
pebble:~# rm -f /etc/rc2.d/*djb*
pebble:~# rm -f /etc/rc2.d/*daemontools*
For a complete removal, after stopping:
#apt-get remove --purge djbdns
#apt-get remove --purge daemontools
You'll need to untar the info files in order to do the remove though.
Read the documentation for this reference.
Why do I get warning messages when I run iwconfig, fix this crap now:
It's not a big deal, it's just a warning. It's because
I choose not to recompile the wireless tools (and thus stray from the stock
debian woody wireless tools). Maybe one day I'll fix it. Until then
please bear with the warning.
What about QoS, how do I get to control that:
The hard part is done, the kernel modules are there, you just
have to load them (modprobe). You will need "tc" to set the parameters.
It is part of the "iproute" package, install that. Since most people
don't use QoS, I'll leave in the kernel modules but save the space
on the iproute. Do a google search for "Wonder Shaper".
Can you make the super bloated version of pebble with everything:
Why not just install a full version of Debian then. Read
the howto do a read-only linux below, and you'll be set.
There is a signifigant problem with pebble, Cardbus cards don't work:
It's not a Pebble problem. You just need to install a package.
apt-get install hotplug # hotplug PCI scripts Cardbus cards work fine
without the scripts, they just may not load automatically. This has
been fixed in v.40, as hotplug is now included to allow support for
prism54 drivers.
Will pebble run on a net4801 from Soekris:
On the initial release of the net4801, there were some bugs in the
BIOS. Update to the latest BIOS version from the Soekris website, and it
works fine. Previously it required a modified kernel, but this bug was
fixed in the latest BIOS version of the net4801.
------Thanks to --------------------
All the contributors to Debian, a wonderful Linux Distro.
All the contributors of free and open source software.
Thanks to Rob Flickenger for the pointers on how to make small distros.
Thanks to Adam Shand for the pointers on making Debian distros.
Thanks to UltiMeth systems for the Read-Only linux documetation.
http://www.ultimeth.net/linux/
Thanks to Ben Serebin for being forced to read and make editing changes
to this fabulous doc.
All the people who have contributed to Pebble.
All the people who have emailed me and I haven't responded to.
------Wish List --------------------
Panasonic Toughbook CF-18 with all the options.
-----------------changes:-------------------------
v.41 (2004/05/03)
- apt-get update ; apt-get upgrade (one security package update, rsync)
- remove.docs
- remove /usr/local/bin/wlansniff (it was left over from an old version)
- recompile hostap utils and hostapd on debian stable box
v.41a (2004/04/20) [non-public beta release]
- update to 2.4.26 kernel
- update HostAP, HostAP-utils and Hostapd to 0.1.3 stable
- update MadWiFi to CVS from 2004/04/20
- update prism54 to 1.1 stable
- apt-get update ; apt-get upgrade ; remove.docs (15 packages updated)
- updated documentation
- fix /var/log symlink after zebra package clobbered it
- updatedb (locate database)
v.40 (2003/12/3 - Where is my Stylistic Edition) (never officially released)
- update to 2.4.23 kernel, and include hotplug support for prism54
- recompile HostAP 0.1.2 against new kernel
- update MadWiFi to CVS from 2003/12/3
- first try at including the prism54 driver (Prism Duette, Indigo, & GT)
- add the hotplug utilities as they may be required by prism54 driver
- fix /var/run which was broken by the install of the hotplug utils
- update documentation
v.39 (2003/11/18)
- update to CVS version of MadWiFi from today
- update pebble.update to include path statement
- update documenation
- update /etc/motd
v.38 (2003/11/16 - Comdex/Apachecon Edition)
- roll back to v.36, since MadWiFi will be installed from new version
- clean up left over note
- update HostAP to drivers (0.1.2), utils (0.1.2), and hostapd (0.1.2)
- recompile kernel, and add iso9660 and paraport for CD distro and print servs
- clean up accidentially updated /etc/resolv.conf
- remove /ro/var/log/dns directory since DNS log files aren't stored there
- apt-get upate ; apt-get upgrade ; remove.docs (one openSSL fix)
- boot and do an updatedb
- new pebble.update thanks to Mina Naguib (saves your previous configurations,
does sanity checking, and allows for setting more options)
- install MadWiFi modules for Atheros Multi-Band Wireless (madwifi-20030802)
the latest version on the download website
- copy over Wonder Shape modules (wshaper). You will need to install "iproute"
- added class b subnet in dhcpd conf for those of you running networks with
more than 250 users.
- update documentation
v.37
- clean up left over note
- install MadWiFi modules for Atheros Multi-Band wireless
v.36
- update the lilo scripts to reflect new kernel (duh..)
v.35
- revert back to v.32 to fix syslog hanging problem
- install 2.4.22 kernel with USB (where did it go before?)
- install 0.0.4 hostap
- fix logrotate not running by adding /rw/var/lib/logrotate
- updated pebble.update to use variables for /mnt/cf and /mnt/pebble
- removed endscript from /etc/logrotate.d/nocat
- fixed pcmcia startup problems (yenta_socket in /etc/default/pcmcia)
v.34
- apt-get update ; apt get upgrade
- security upgrade of OpenSSH
v.33
- upgrade to kernel 2.4.22 (with Crypto modules useful for IPsec and such)
this kernel upgrade include many fixes to the Orinoco and Cisco wireless
drivers
- fix logrotate not running by adding /rw/var/lib/logrotate
- updated pebble.update to use variables for /mnt/cf and /mnt/pebble
- compiled hostap 0.0.4 with PRISM2_DOWNLOAD_SUPPORT
& PRISM2_NON_VOLATILE_DOWNLOAD. Don't break your cards.
- made sure to include hostapd and utils
- removed endscript from /etc/logrotate.d/nocat
- updated the documentation
- I was going to include the modules for error lights for the net4501
as someone had suggested, but the documentation on it and how to install
it are non-existant.
- apt-get update ; apt-get upgrade for security fixes.
- upgrade ssh to fix latest OpenSSH vulnerability in buffers.c
v.32 (never released publically)
- apt-get update ; apt-get upgrade ; remove.docs
(security update of gzip and pcmcia-cs)
- update fastreboot to include remountro
- large update to documentation
- update to 2.4.22 kernel (fixes possible local exploits, also includes crypto
in the stock vanilla kernel for FreeSWAN IPsec and such)
- update to 0.0.4 hostap, including utils and hostapd, this should fix
lingering stability issues with high bandwidth transfers
- updated the locatedb used in the locate command (bye bye 48k).
- fixed minor file permissions on files in /usr/local/sbin
- added more examples in syslog.conf of central syslog
- upped tmpfs to 10 megs limit (why is hostap so chatty?)
v.31
- fixed /etc/cron.daily/sysklogd from not running due to no docs; Thanks Dustin
- changed /etc/cron.daily/sysklogd to only save 5 days worth
- fixed /etc/cron.daily/nocatlog ; Thanks Dustin
- changed DJBDNS caching DNS logs to 3 days, statistics only ; thanks Dustin
- threw /usr/sbin/logrotate into distro without installing (due to dependecies)
- changed /etc/pcmcia/network.opts after Dustin's incessant pleading
- moved /etc/cron.daily/* to /etc/cron.disabled/
- moved /etc/cron.disabled/logrotate to /etc/cron.daily/
- updated /etc/logrotate.d/nocatlog with copytruncate ; thanks Adam
- added /etc/ntp.conf (though only ntpdate is installed)
- updated /etc/default/ntp-servers
- changed to a single pebble.update script
v.30
- deleted some more unnecessary files, thanks to Rob Flickenger, down to 42megs
v.29
- updated to 0.0.2 HostAP drivers - (supposed to fix some kernel crash
problems under certain situations)
v.28
- added updated kernel with Elan watchdog drivers
- updated to 0.0.1 HostAP drivers
- added HostAP utils and HostAP sniff to /usr/local/sbin
- updated install scripts, fix serial-standard typo
- changed to pebble.update.net4501.hdc instead so that you know which device
- updated lilo install scripts to specify device lilo-serial-hdc.conf
- fixed log rotation stuff again. not using logrotate, instead using savelog
- updated documentation
- clean out some unnecessary files from doing apt-get, now down to 55megs
v.27
- apt-get update ; apt-get upgrade ; remove.docs
- file size bloated to 57megs with security updates.
- updated documentation about --numeric-owner
- updated other documentation
v .26
- fixed file ownership on /ro/usr/local/nocat/pgp and /usr/local/nocat
v .25
- fixed problems in /usr/local/nocat/bin/initialize.fw that didn't work with a
non-root user. Modules are loaded at boottime, not by gateway daemon.
v .24
- recompiled and installed new kernel with Universal TUN/TAP support
v .23
- upgraded to the latest nightly of NoCatAuth which includes a fix for killall
HUP log rotations. Thanks Rob. 03/11/03
- Made the CVS version of hostap the default installed version. This version
has been pretty stable recently, and it includes some major new features
and fixes. Most important is a patch to allow .11g & Airport Extreme users
to associate, which is the main reason I switched from Stable to CVS. In
the future I will stick with the stable releases, unless there is a major
fix, such as this. CVS from 03/11/03
v .22
- removed /etc/cron.daily/standard. This is a read only system so most
of this stuff was going to fail from running aways.
- edit /etc/sysklog.conf, two places are /var/log/messages and
/var/log/auth for syslog messages. This removes the duplicate nature
of debian in it's default logging configuration.
- fix log rotation of /var/log/*
- image now reduced to 48 megs, (pre "apt-get update").
- got rid of /etc/cron.daily/sysklogd.
- all log rotations are done through logrotate
- symlinked /var/log/lastlog and faillog to /dev/null. It is used by lastlog
and faillog programs, which are never used by most admins.
v .21
- switched to ext2 from ext3. Distro is stable enough and you save the
journal disk space (this also allows you to use a 64mb compact flash
at this point release
- updated the documentation
- added commands in install scripts to copy over correct fstab file. I
still use ext3 on my devel pebble system. I will be migrating
away from it in a future release.
- redid the /var/lib/dpkg/info/dpkg.info.tar.bz2 file
- edited /etc/dhcpd.conf and /etc/network/interfaces
- removed /var/cache/apt/pkgcache.bin & srcpkgcache.bin and update
This reduced the image to 49 megs.
- removed /usr/bin files, and symlinked duplicate perl copies
- removed /usr/bin/localedef, tack, a2p
v .20
- removed Linux 2.4.19 kernel, 2.4.20 kernel is stable
- added packages host, lsof, nano
- got the updated version of libssl0.9.6c
- fixed the /var/log/nocat.log file permission problem
- updated the documentation
- did some more cleanup of files
- added hostap CVS version ( .g support, etc, avail as hostapXXX_cvs)
- compiled the kernel with a new version of the wireless tools
- added IDE pcmcia CS to the kernel modules
- added pcmcia serial to the kernel modules
- removed unused kernel modules
v .19
- updated to Linux 2.4.20 kernel
- included more networking kernel modules including via-rhine for mini-itx
- changed to ISC dhcpd instead of udhcpd so it can handle multiple subnets
- will switch to ISC dhcp client in the future
- added IPv6 kernel support, you will have to apt-get install ipv6 packages
- apt-get updated to Debian 3.0r1
- started doing a changelog
v .01 - .18
- developed the distribution and got it to a stable format to release
publically |
|