How much memory is needed is completely dependent on your install, what daemons are running, and that sort of thing. A custom Ubuntu install can probably take under 100MB of RAM if needed. OTOH, people are buying servers with over 16GB of RAM these days, fully intending on using all of it
I guess what I’m saying is, it just depends on what daemons are running.
500+ MB of RAM is usually enough to get by for a typical server install for light usage, but that is a bit limiting, and not having any swap makes it kind of tough…
However, the email processing is what gets you – SpamAssassin and ClamAV are both pretty RAM intensive.
I was wondering if /var/log/syslog might show any memory errors, but I don’t see any. Does “dmesg” show anything unusual? (especially towards the end of the output)
Even though you have some free RAM now, the problems you’re seeing may be because there wasn’t enough RAM available when it was needed. For example, a package could have been corrupted during installation.
My concern in your case is that even if you manage to get it up and running now, you’d be in a constant battle against available RAM. Having as little free RAM as you do, without any swap, means there’s really not much room to grow (or even briefly burst).
However, I’d certainly recommend trying to remove any/all daemons you don’t absolutely need. I’d be sure to remove PostgresSQL and Mailman, for example, as well as run clam and spamassassin via the command line scanners rather than as daemons.
I’d also remove any Apache and PHP modules that you don’t need, in order to save some RAM there.