Thanks for all the good info. If you're looking for a cheaper version of the thin client you could try the t5530. It's about $300 US but it only has 64 MB Flash. A 1GB flash module is $70 US but sounds like overkill for your application.
On 9/6/07, Gordon Henderson <[EMAIL PROTECTED]> wrote: > > On Thu, 6 Sep 2007, Jeremy P wrote: > > > I've been working on this the past few days and thought I would put it > out > > there to see if anyone else has interest in it. It really has nothing > to do > > with the Digium appliance, I've just been looking for some mass produced > > solid state hardware to run small branch offices off of for awhile now > and I > > think I've finally landed on something I like. > > > > Basically I've taken an HP thin client workstation which is all solid > state > > and loaded Debian and Asterisk on it (well, Asterisk-GUI too, but just > to > > prove I could make it "appliance-worthy"). I'd be interested in any > > feedback on how to improve it, specifically on how to make Debian and > > Asterisk take up less space so I could buy the model that only has 512 > MB of > > flash rather than 1 GB. > > I built my own "appliance" some time back - initially for a router > project, but I've since adapted it for Asterisk boxes and NAS boxes.. > > The basic unit has 64MB of IDE-flash, 256MB (or more) RAM. The flash IDE > device has one partition and is bootable, so it has a /boot with a bzImage > in it, enough of a /dev/ and /etc to make Lilo work on it and an initrd.gz > which is unpacked into a 128MB RAM disk, then the system runs entirely > from RAM once booted, so there's no continual write to flash issues (I > hope!) I do actually have a 2nd partition on the device which I tar all > the configuration files into - the bare minimal of what I need gets stored > there whenever something changes. (and a copy of astdb too). I don't think > this is perfect, and is prone to issues like a power cycle during write, > but ... > > I put a 2nd IDE flash device for Voicemail storage - that does have a live > filesystem on it (currently just ext2, which I force an fsck of at boot > time, if it's dirty) I've used 64MB to 256MB devices for this (storing VM > in GSM format only), some customers want call recording, so they get the > bigger ones, but I'm thinking of moving to a laptop drive for people who > want even more (and enable idle spin down, etc.) > > I build the kernel and initrd.gz file on a separate box - it's Debian, but > it could be anything as I don't actually put a "distribution" as such into > it, I just copy the files I need, and I'm lazy about it, so I copy all of > /bin, /lib, most of /etc and a /dev and selected bits of /usr/bin and > /usr/lib. (I use ldd on all the executables to work out which libraries I > really need from /usr/lib) The kernel is a custom kernel for the hardware > with no modules apart from Zaptel, etc. > > I copy everything into a 128MB file, zeroed (it compresses better) > formatted ext2, mounted as a lookback device. Once the copy is complete, I > unmount it, gzip -9 it and that's the initrd.gz file. You need to make > sure that the Linix kernel you compile has the ability to load an > initrd.gz file and a big enough ramdisk! > > It's not that efficient, and I could save space by using uClib, busybox, > etc. but it's really not worth it, but 2 things I don't have on the target > system is perl and vim.. Perl is about 10MB, as is vim. Right now I don't > have a need for either (and I use nano when I do need to tweak stuff which > is rarely) Perl would be nice so I could run stuff like mrtg locally on > the boxes, but isn't essential for now. > > So if there are some new security implications on the current Debian, or > an asterisk upgrade, I just upgrade/update the build box, then create a > new initrd.gz file and install it. (however this is in the order of 40MB > for an Asterisk system with apache & php) so it a bit tricky to do a field > upgrade if the remote system is bandwidth limited, but I can pull it in > off a USB drive if necessary. > > My /etc/asterisk and /var/www/docs are actually stored as part of the tar > file, so upgrading those is fairly trivial. > > This is what a running system looks like: > > $ df -h > Filesystem Size Used Avail Use% Mounted on > /dev/ram0 124M 107M 18M 87% / > tmpfs 125M 0 125M 0% /dev/shm > /dev/hdc2 60M 23M 37M 39% /data > > > If I mount the flash device, then: > > # ls -l /mnt > total 39019 > drwxr-xr-x 2 root root 1024 Aug 9 14:54 boot > drwxr-xr-x 13 root root 24576 Dec 6 2006 dev > drwxr-xr-x 2 root root 1024 Nov 15 2006 etc > -rw-r--r-- 1 dsx 1000 39758472 Aug 9 14:53 image.gz > drwx------ 2 root root 12288 Dec 12 2006 lost+found > > # ls -l /mnt/boot > total 2849 > -rw-r--r-- 1 root root 512 Dec 12 2006 boot.0300 > -rw-r--r-- 1 root root 512 Dec 22 2006 boot.0800 > -rw-r--r-- 1 root root 512 Dec 12 2006 boot.1600 > -rw-r--r-- 1 dsx 1000 1390066 Jun 5 15:47 bzImage > -rw------- 1 root root 31744 Aug 9 14:54 map > -rw-r--r-- 1 root root 98728 Sep 21 2006 memtest86+.bin > -rw-r--r-- 1 root root 241 Oct 28 2006 message > > Because everything is in RAM, it's actually quite fun to "play" with > trying to destroy it :) Eg. > > # cd / ; rm -rf * > > then just reboot it to recover... > > The one thing that's not "appliance" about it is the box - it's still a PC > at the end of the day, but I guess when I'm churning out 100's of these I > can afford a custom case design ;-) > > Those HP boxes do look nice though, but they're more expensive that I > build my own for (in the UK at least!) but I do have the option of wall > mount, desktop or rackmount cases I guess... > > Gordon > > _______________________________________________ > > Sign up now for AstriCon 2007! September 25-28th. > http://www.astricon.net/ > > --Bandwidth and Colocation Provided by http://www.api-digital.com-- > > asterisk-users mailing list > To UNSUBSCRIBE or update options visit: > http://lists.digium.com/mailman/listinfo/asterisk-users >
_______________________________________________ Sign up now for AstriCon 2007! September 25-28th. http://www.astricon.net/ --Bandwidth and Colocation Provided by http://www.api-digital.com-- asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users
