On Fri, 2011-04-01 at 14:44 -0700, Bill Longman wrote:
...
> So, what can you actually *do* on this, other than an "ls" or two?
Well, first the "challenge" did not require that it had to have any use.
But thinking about what you said, I remember when I first started using
Linux, it was not unthinkable to think that was enough memory to do
stuff.
So I decided to build another VM and actually install stuff on it. I
thought about what I'd typically be running on my desktop. Being that
this is a graphics-less machine, I installed non-gui equivalents:
* mutt for email
* irssi for irc
* vim for text editing
* pidgin (finch) for IM
* lynx for browsing the web
* screen for multi-tasking
Then I added a NIC so that I could actually get on the network.
Interestingly enough, adding the virtio NIC made the VM jump up to 18MB
on the initial boot/shell, but adding a non-virtio NIC kept it down to
3MB.
Then I added a regular user and did "typical" things:
marduk@lilpenguin $ ps -ef |grep ^$USER
marduk 2081 2080 0 21:36 ttyS0 00:00:00 -dash
marduk 2094 2081 0 21:36 ttyS0 00:00:00 screen -T vt100
marduk 2095 2094 0 21:36 ? 00:00:02 SCREEN -T vt100
marduk 2096 2095 0 21:36 pts/0 00:00:00 -/bin/dash
marduk 2101 2096 0 21:36 pts/0 00:00:00 mutt
marduk 2102 2095 0 21:37 pts/1 00:00:00 -/bin/dash
marduk 2107 2102 0 21:37 pts/1 00:00:00 lynx
http://m.reuters.com/
marduk 2110 2107 0 21:37 pts/1 00:00:00 [lynx] <defunct>
marduk 2111 2095 0 21:37 pts/2 00:00:00 -/bin/dash
marduk 2116 2111 0 21:38 pts/2 00:00:00 vim helloworld.py
marduk 2117 2095 0 21:38 pts/3 00:00:00 -/bin/dash
marduk 2122 2117 0 21:38 pts/3 00:00:00 irssi
marduk 2124 2095 0 21:41 pts/4 00:00:00 -/bin/dash
marduk 2129 2124 0 21:41 pts/4 00:00:00 finch
marduk 2131 2095 0 21:42 pts/5 00:00:00 -/bin/dash
marduk 2149 2095 0 21:43 pts/6 00:00:00 -/bin/dash
marduk 2154 2149 0 21:43 pts/6 00:00:00 ssh tanuki@victoria
marduk 2176 2131 0 21:46 pts/5 00:00:00 ps -ef
marduk 2177 2131 0 21:46 pts/5 00:00:00 grep ^marduk
marduk@lilpenguin $ free -m
total used free shared buffers cached
Mem: 33 28 5 0 0 9
-/+ buffers/cache: 18 14
Swap: 0 0 0
marduk@lilpenguin $ netstat -tn|grep ESTABLISHED |wc -l
5
So, running screen (with 7 sessions), 8 dash shells, mutt, irssi, finch,
an ssh session, lynx, vim and 5 TCP connections open still only takes up
18MB RAM (excluding cache). Still not bad.