LinuxQuestions.org
Welcome to the most active Linux Forum on the web.
Home Forums Tutorials Articles Register
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Hardware
User Name
Password
Linux - Hardware This forum is for Hardware issues.
Having trouble installing a piece of hardware? Want to know if that peripheral is compatible with Linux?

Notices


Reply
  Search this Thread
Old 03-23-2005, 05:05 PM   #1
bschiett
Member
 
Registered: Feb 2005
Posts: 32

Rep: Reputation: 15
hardware config voor small mail/file server?


Hi,

I need to set up a mail / file server for a home (small business ) network. there are a few windows and mac osx machines in the LAN. the goal is to move mailboxes currently residing on the desktop machines to a linux server such that they can be accessed from anywhere through an IMAP client or web interface. also, I want to access files on the linux machine and check in/out source code from the desktop machines on which software development is happening. the desktop machines also have address books I'd like to move onto the linux server.

so the server would run:

- imap (courier)
- postfix?
- ldap?
- samba? or can I access files from win xp / osx using some other package ?
- apache
- php (for some simple business apps)
- mysql
- php groupware or some other webmail interface

is it a good idea to have all this software on the same machine? I would like to run arch linux as distro.

right now I have all this set up on a pentium 2 with 400 mb ram and 120 gb harddisks on the onboard ata 33/66 controllers (asus p2b motherboard). but this is a little slow...

so what hardware config do I need to run all the above with decent performance? right now I'm alone in my home business but this might change in the future.. maybe up to 10 people.

I don't have a lot of money to spend on a server. I already have 3 ata133 120gb disks from maxtor (they are in the p2 machine right now and not used up to their full performance). what system should I put together? single processor? dual? amd? pentium? motherboard? ram? disks/controllers? what case (a silent one ??)

thanks in advance!
bert
 
Old 03-23-2005, 05:29 PM   #2
hob
Senior Member
 
Registered: Mar 2004
Location: Wales, UK
Distribution: Debian, Ubuntu
Posts: 1,075

Rep: Reputation: 45
You can put all of this on one machine.

Don't worry about CPUs or 64-bit if you will only be handling about 10 users. A standard AMD chip will be fine. The main thing is to have fast drives. Also, don't skimp on RAM - Linux can make use of as much RAM as you give it.

IMO, what really separates a desktop from a server is safety measures - tape backup and RAID. Think hard about how you be backing up data.
 
Old 03-23-2005, 06:26 PM   #3
bschiett
Member
 
Registered: Feb 2005
Posts: 32

Original Poster
Rep: Reputation: 15
more server hardware :)

Quote:
Originally posted by hob
You can put all of this on one machine.

Don't worry about CPUs or 64-bit if you will only be handling about 10 users. A standard AMD chip will be fine. The main thing is to have fast drives. Also, don't skimp on RAM - Linux can make use of as much RAM as you give it.

IMO, what really separates a desktop from a server is safety measures - tape backup and RAID. Think hard about how you be backing up data.
thanks for the prompt response. Will 1GB of ram and an AMD Sempron 2800 work? what motherboard chipset should I steer clear from if I am building a linux system and what chipsets are recommended? should I go SATA or ATA133? I tried SATA before but couldn't get it working with arch linux, the kernel hung itself when booting (the chipset was nforce MCP/IGP with software RAID support) and trying to detect the two 250gb maxtor drives I wanted to put in a raid 1 mirror config. so I finally put one 250gb disk in a win xp machine and traded the other one for two 120gb ata133 drives which would be easily detected by linux.

besides arch i tried about 5 other distros: knoppix, debian, fedora, slackware, ubuntu, etc.. pretty much all of them except fedora would not go past the hardware detection for the SATA drives and would stop at 'disabling irq 11'

what backup measures should I get besides the raid mirror? also, what about a UPS ? is this recommended and which ones work well with linux?
 
Old 03-24-2005, 04:23 AM   #4
hob
Senior Member
 
Registered: Mar 2004
Location: Wales, UK
Distribution: Debian, Ubuntu
Posts: 1,075

Rep: Reputation: 45
1Gb will be adequate - you'll find that modern desktop/graphical stuff consumes an order of magnitude more RAM to load. Network services don't require much to start, and use more as the demand increases. In this context 10 simultaneous users is fairly trivial.

Sorry, I over-simplified re: CPUs. What matters on a server isn't speed but cache. A workstation chip like an Athlon or P4 has enough. "Budget" chips like VIA C3, Sempron and Celeron don't, hence I'd recommend an Athlon as the best buy.

Disks: The key issue is handling simultaneous demands. SCSI and certain SATA drives have "tagged command queueing" for this (Google is your friend). A standard IDE drive is fast and cheap, but designed for a single-user system. For the apps you've described, the disks *will* be the bottleneck - all you can do is minimise it with TCQ support and a fast connector type. SATA is new technology so older distros don't support it well. SCSI support is rock-solid. You can probably see a trend in what I'm saying...

Mainboard: Spend money for a quality brand, but ignore fancy features. VIA chipsets are OK, Intel chipsets are the gold standard. Don't bother with nForce, SiS or anything else.

UPS: The batteries etc. make these high maintenance. They reduce the possibility of data-loss on a constantly-active system, but at the cost of actually increasing the amount of down-time - probably not the right trade-off for you. Do buy quality surge-protection adapters, though.

Also, do spend money on a good quality PSU and fans.

Distros: Any distro with a policy of two releases a year and 18 month of updates is not for servers storing data - you'll always be worrying about upgrading. I recommend CentOS 4 for servers as free, up-to-date and dependable (it's RHEL without the option to ring up Red Hat).

Backup: Is really about being able to restore data from a previous point in time. All that you need to do is have a system that makes copies of your data and config on a schedule, and puts them as far away from the main system as possible. Ideal solution is tape + safe but good tape systems are expensive. Poor man's solution: Get another box (at home ?) or a hosted server, and use something based on rsync plus SSH. Write a script, or search FreshMeat etc. for a ready-made system with a graphical interface. WARNING: OpenLDAP is fragile and hard to backup; include LDIF dumps as part of your backup regime.

I think that's everything...
 
Old 03-24-2005, 01:38 PM   #5
bschiett
Member
 
Registered: Feb 2005
Posts: 32

Original Poster
Rep: Reputation: 15
Quote:
Originally posted by hob
1Gb will be adequate - you'll find that modern desktop/graphical stuff consumes an order of magnitude more RAM to load. Network services don't require much to start, and use more as the demand increases. In this context 10 simultaneous users is fairly trivial.

Sorry, I over-simplified re: CPUs. What matters on a server isn't speed but cache. A workstation chip like an Athlon or P4 has enough. "Budget" chips like VIA C3, Sempron and Celeron don't, hence I'd recommend an Athlon as the best buy.

Disks: The key issue is handling simultaneous demands. SCSI and certain SATA drives have "tagged command queueing" for this (Google is your friend). A standard IDE drive is fast and cheap, but designed for a single-user system. For the apps you've described, the disks *will* be the bottleneck - all you can do is minimise it with TCQ support and a fast connector type. SATA is new technology so older distros don't support it well. SCSI support is rock-solid. You can probably see a trend in what I'm saying...

Mainboard: Spend money for a quality brand, but ignore fancy features. VIA chipsets are OK, Intel chipsets are the gold standard. Don't bother with nForce, SiS or anything else.

UPS: The batteries etc. make these high maintenance. They reduce the possibility of data-loss on a constantly-active system, but at the cost of actually increasing the amount of down-time - probably not the right trade-off for you. Do buy quality surge-protection adapters, though.

Also, do spend money on a good quality PSU and fans.

Distros: Any distro with a policy of two releases a year and 18 month of updates is not for servers storing data - you'll always be worrying about upgrading. I recommend CentOS 4 for servers as free, up-to-date and dependable (it's RHEL without the option to ring up Red Hat).

Backup: Is really about being able to restore data from a previous point in time. All that you need to do is have a system that makes copies of your data and config on a schedule, and puts them as far away from the main system as possible. Ideal solution is tape + safe but good tape systems are expensive. Poor man's solution: Get another box (at home ?) or a hosted server, and use something based on rsync plus SSH. Write a script, or search FreshMeat etc. for a ready-made system with a graphical interface. WARNING: OpenLDAP is fragile and hard to backup; include LDIF dumps as part of your backup regime.

I think that's everything...
OK, I thought that cache was an important parameter in choosing a CPU. I can't decide whether the cpu should be a regular P4, a Xeon, an AMD opteron, or athlon 64 ... at the local hardware stores it seems like 64 bit is popular now and they don't offer that many 32 bit processors anymore. but 64 bit linux is not there yet? at least in the distribution I was looking at, 64 bit is still under development (arch linux). I suppose I should choose a CPU with 1mb cache then .. is a dual CPU system recommended? in what situations would you recommend to use a dual CPU server?

you said openLDAP is fragile. is it reliable then? should I use something else to keep all my contact / customer info in one safe place in an industry-standard format?

thanks for all the tips - I will post the components I am planning on buying when I've chosen them all :-)

bert
 
Old 03-24-2005, 02:00 PM   #6
bschiett
Member
 
Registered: Feb 2005
Posts: 32

Original Poster
Rep: Reputation: 15
Quote:
Originally posted by hob

Disks: The key issue is handling simultaneous demands. SCSI and certain SATA drives have "tagged command queueing" for this (Google is your friend). A standard IDE drive is fast and cheap, but designed for a single-user system. For the apps you've described, the disks *will* be the bottleneck - all you can do is minimise it with TCQ support and a fast connector type. SATA is new technology so older distros don't support it well. SCSI support is rock-solid. You can probably see a trend in what I'm saying...

...

I think that's everything... [/B]

hi again,

I looked at some components and I was thinking about buying:

2 x 68-pins LVD: Maxtor 8C073L0 Atlas 15K 73GB U320 - 15000RPM/ 8192K/3,2ms harddisk
2 x PC3200 DDR 512 MB - 184pins - PC400 - CAS3 Infineon Original
1 x Intel Pentium IV Prescott 3,0 Ghz (0,09u) socket 478 - 1024K L2 800MHz FSB in-a-box with cooler
1 x Asus AP130-E1 AS4 (SCSI) Server S478

I was thinking about putting the harddisks in a raid-1 (mirror). the AP130 is a server barebone with support for 4 x u320 hotswap. not sure if the drives need to support his or if it is purely a host controller issue...

I could also replace the AP130 and the Prescott with:

YeongYang Server Case (Black) for extended ATX M/B - Server/Rackmount Version

AMD Opteron 242 1,6Ghz 64Bit CPU - socket 940 - 2-way cpu 0,13Micron 1MB Cache Retail Boxed with cooler

Tyan Thunder K8S Pro S2882 / Dual Socket 940 / AMD-8000 Series Chipset / Extended ATX motherboard


this would be a dual CPU config but it is obviously more expensive than the ASUS server..

all comments appreciated!
bert

Last edited by bschiett; 03-24-2005 at 02:13 PM.
 
Old 03-24-2005, 02:49 PM   #7
hob
Senior Member
 
Registered: Mar 2004
Location: Wales, UK
Distribution: Debian, Ubuntu
Posts: 1,075

Rep: Reputation: 45
Again, with only 10 users you aren't going to stress the CPU at all. To give you an idea, we run about 100 simultaneous users per single processor Xeon server on our LAN. And this is with Windows servers... Dual-proc and 64-bit give you number-crunching power that you will never use, at the cost of making the system much more complicated (and therefore less reliable). Avoid the temptation of new technology on servers - you need the thing to work :-). I think that the Intel list looks pretty sound, although I don't know that model of mainboard.

Mirroring your disks is a really good idea. With hardware RAID all the smarts are in the host controller - check out the rep of the model, though, as if you obviously can't do anything later if it turns out that the RAID controller firmware sucks.

OpenLDAP stores it's data in "Berkeley database" files. Berkeley database files will corrupt if you don't shut down the service cleanly, and the recovery tools don't necessarily work, so text file dumps are a necessity. SQL databases are built not to lose data, and have good backup and recovery tools (because money is at stake, I guess), so if you've only used SQL systems you may be surprised at how fragile Berkeley files are. If you're talking about customer contact info then I would use a CRM package for that purpose, which is highly likely to use a SQL database anyway. The Open Source packages I've heard of are SugarCRM and Compiere but this is not my field...
 
Old 03-24-2005, 04:32 PM   #8
bschiett
Member
 
Registered: Feb 2005
Posts: 32

Original Poster
Rep: Reputation: 15
Quote:
Originally posted by hob
Again, with only 10 users you aren't going to stress the CPU at all. To give you an idea, we run about 100 simultaneous users per single processor Xeon server on our LAN. And this is with Windows servers... Dual-proc and 64-bit give you number-crunching power that you will never use, at the cost of making the system much more complicated (and therefore less reliable). Avoid the temptation of new technology on servers - you need the thing to work :-). I think that the Intel list looks pretty sound, although I don't know that model of mainboard.

Mirroring your disks is a really good idea. With hardware RAID all the smarts are in the host controller - check out the rep of the model, though, as if you obviously can't do anything later if it turns out that the RAID controller firmware sucks.

OpenLDAP stores it's data in "Berkeley database" files. Berkeley database files will corrupt if you don't shut down the service cleanly, and the recovery tools don't necessarily work, so text file dumps are a necessity. SQL databases are built not to lose data, and have good backup and recovery tools (because money is at stake, I guess), so if you've only used SQL systems you may be surprised at how fragile Berkeley files are. If you're talking about customer contact info then I would use a CRM package for that purpose, which is highly likely to use a SQL database anyway. The Open Source packages I've heard of are SugarCRM and Compiere but this is not my field...
i was thinking about steering clear of software/hardware RAID and sticking with the linux software (md) raid ... I tried that on simple ata133 disks and it seems to work quite well. I also think md raid has proven itself over the years? I tried to get nForce raid (MCP) working on a shuttle XPC I bought ... it was a nightmare, all linux distros crashed when booting from the install CD..

ok so I should not be using berkeley DB for OpenLDAP then.. but if openLDAP stores its data in SQL then I might just as well not use it ... and not run it at all and use a groupware/crm like you mention I guess.. I thought LDAP was the way to go but I guess I don't need it in my case
 
Old 03-24-2005, 05:00 PM   #9
hob
Senior Member
 
Registered: Mar 2004
Location: Wales, UK
Distribution: Debian, Ubuntu
Posts: 1,075

Rep: Reputation: 45
The RAID hardware on enthusiast mainboards is not so well-supported, because the vendors don't co-operate. The vendors of professional RAID chipsets like Adaptec and LSI actively support Linux. I've heard people recommend Linux software RAID as more flexible, but I have no personal experience with it.

Generally, LDAP software is designed for directories of internal resources controlled by an administrator, rather than storing user-managed data. For example, you can't add contacts to an LDAP directory from Thunderbird or Evolution. OpenLDAP does it's job, you just have to be careful with it.
 
Old 03-24-2005, 05:21 PM   #10
bschiett
Member
 
Registered: Feb 2005
Posts: 32

Original Poster
Rep: Reputation: 15
Quote:
Originally posted by hob
The RAID hardware on enthusiast mainboards is not so well-supported, because the vendors don't co-operate. The vendors of professional RAID chipsets like Adaptec and LSI actively support Linux. I've heard people recommend Linux software RAID as more flexible, but I have no personal experience with it.

Generally, LDAP software is designed for directories of internal resources controlled by an administrator, rather than storing user-managed data. For example, you can't add contacts to an LDAP directory from Thunderbird or Evolution. OpenLDAP does it's job, you just have to be careful with it.
ok thanks for all the help. one last question: if I take a simple s775 motherboard from asus with an intel chipset and put a P4 on it with 1MB cache and 1GB memory and two 7200 rpm 8MB buffer drives on the ata133 channel (mirrored), would that give me adequate performance? I could fork out the money for a server but since I've just started I'd rather not overdo it.. especially since I already have the two drives lying around.
 
Old 03-24-2005, 05:42 PM   #11
hob
Senior Member
 
Registered: Mar 2004
Location: Wales, UK
Distribution: Debian, Ubuntu
Posts: 1,075

Rep: Reputation: 45
That may be all you need. Again, ATA isn't designed for handling multiple requests simultaneously, so you may see slow logins etc. during peak times when everybody's hitting the server at once. If isn't then you can repurpose it as a backup server and bring in something more powerful - migrating services is very easy with Linux.
 
Old 03-24-2005, 06:45 PM   #12
skaven
LQ Newbie
 
Registered: Mar 2005
Location: College Station, TX
Distribution: Slackware
Posts: 4

Rep: Reputation: 0
Well I'm coming in pretty late to this discussion, but I'll tell you how I've got my system set up, and you can take it for what it's worth:

Abit KT7A motherboard (leftover from old desktop)
AMD T-bred 1400Mhz
1GB PC133 memory
1x 20GB IDE system drive (on /dev/hda)
4x 160GB IDE storage drives (on PCI Promise ATA133 controller)
3Com 100Mbit NIC
APC 500VA UPS

I'm using software RAID-5 on the 4 storage drives (works out to 433GB useable space)

Distro: Slackware 9.1
Kernel: 2.4.29
Apps:
NIS -- I run several linux machines on my network and distribute the automount and password files to them with NIS.
QMail -- Best small business MTA ever.
Courier IMAP -- supports Maildirs, which is nice
Apache 1.3.x w/PHP
MySQL
FTP -- whatever ftp daemon came with slackware
GnuMP3d -- great MP3 streaming daemon
Samba -- lets roommates access the shared dirs
SquirrelMail -- great PHP-based webmail client, works hand-in-hand with Courier IMAP. No problems at all.

The network consists of an AMD K6-III 400Mhz machine with 64MB of RAM as the router. The router runs DHCP and the firewalling stuff. There are seven windows machines on the LAN, and three Linux machines. I host a modest messageboard and accept my own mail for my domain (http://www.djskaven.com)

My load average stays just over zero, unless there are a bunch of people trying to access files on the server. Generally file transfer speeds can max out the NIC (12M/sec), so I don't see that there's any problems using IDE hard disks. Locally on the machine I get around 50MB/sec transfers to the RAID volume when testing with hdparm -tT.

Basically what I'm saying is that you can set up a great server with pretty modest hardware. I think I spent around $600 on my whole setup, and it has served me well for over a year.

Last edited by skaven; 03-24-2005 at 06:47 PM.
 
  


Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
imap mail server for small LAN uberNUT69 Linux - Software 8 04-26-2005 09:32 AM
easy to setup internal mail server for small company nickcol Linux - Software 3 04-21-2005 06:24 PM
Hardware recommendations for a small server? linuxpyro Linux - Hardware 2 07-28-2004 07:23 PM
DNS Zone file config for mail server viniosity Linux - Software 4 09-16-2003 03:59 PM
Apache Server Config, Mail Server, & Uploading johan the olive Linux - Networking 5 03-14-2003 11:42 PM

LinuxQuestions.org > Forums > Linux Forums > Linux - Hardware

All times are GMT -5. The time now is 04:07 PM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration