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