What's new

Mac or Ubuntu for server use

  • SNBForums Code of Conduct

    SNBForums is a community for everyone, no matter what their level of experience.

    Please be tolerant and patient of others, especially newcomers. We are all here to share and learn!

    The rules are simple: Be patient, be nice, be helpful or be gone!

djoniba

New Around Here
Hello all.

I am a novice in the world of servers. I have two laptop macs in the house that both need backup possibilities (via Time Machine). I have two spare computers (both desktop) laying around that I can use as servers, and I need to know which one to put to the job. One is a dual 1gHz G4 mac with 1 gig RAM, and the other is a PC Pentium 5 3gHz with 1 gig RAM. I am planning to connect the server via cable to my wireless router (Thomson Speedtouch) and put it in my storage room in the basement.

What I need the server to do is:

1. Serve as "Time Capsule" for both laptops (probably on two different partitions).

2. Have BitTorrent installed to take care of all big downloads.

3. Be a regular file server to store movies, music, pictures etc.

4. Be a testing server for Joomla and other web applications when I design web pages.

Can I set up a server to do all these things?
Should I go for OSX server or Ubuntu? (what is the easiest to set up and will work)
 
Or should I sell the computers and buy a Buffalo LinkStation Live?
I don't think I'd do that. Others have reported problems with Buffalo supporting multiple Time Machine clients.

I don't know anything about OS X server. Ubuntu can probably do everything you want, but you'll probably need to be comfortable with Linux command lines and installing packages. Check this article for Time Machine support by Ubuntu.
 
OS X Server Snow leopard does not support PPC G4 and OS X server 10.5 does not run well on G4. You would need OS X server 10.4 tiger, but I don't think anyone would recommend it because the OS is likely not sold anymore. OS X Server does run pretty much the same as OS X Desktop though.

You can do all those things on Linux or Windows, but torrent clients for Linux are not as nice as uTorrent - though azureus/Vuze is great when you install the plugins, it is resource intensive because of the Java VM environment.

Apache, MySQL and PHP runs much better in Production on a Linux/POSIX system, but XAMPP/WAMP for Windows should be fine for development.

If you want to install multiple Operating Systems on your server and have them run at the same time, use VMWare Server ESXi 3.5 (not 4.0 because it is 64-bit CPU only). It is free and installs a thin VMware OS onto the HDD. You then install as many OSes as you want inside VMWare. When the computer turns on, it boots into the VMWare server OS and then loads the daughter OSes you installed into VMWare.

I would personally install VMWare Server even if you only want to run 1 OS, because in the future if you want to experiment with different file serving protocols, like iSCSI from FreeNAS, you can install whatever you want without interfering with the main server OS. This was you are not tied down to the limitations or drawbacks of a single OS, and your computer is beefy enough to have more than 2 Full production OSes running at once. Also, the HDD is not technically formatted the guest OS file system like NTFS for Windows or EXT4 for Ubuntu 9.10 - VMware OS formats the HDD in VMFS (proprietary) and the guest OS installations are stored in a file on VMware.

If you want to try something easy, consider Windows Home Server. It is a lightweight x86 OS that installs on a computer (requires reformat and a 80GB or larger HDD). It is basically a SMB server with plugins and there are some nice plugins for TimeMachine, uTorrent, Antivirus (to scan torrent DLs), disk defrag. A nice feature of WHS is when you have multiple HDDs in your server it will use all available free space across the different drives and show the clients a single drive with the pooled capacity of all the drives (but this only happens when you install WHS natively to the server and not using VMware because WMware manages the HDD partitions). It also does this without RAID 0 or RAID 5 and offers data redundancy, but you should know that it formats the drives when you add them to the pool.

This is still a good option for installing using WMWare. Also not that OS X server will not install in WMWare because of there is no EFI on a PC and VMware supports only x86 and not PPC.


So to answer your questions
1. Time Machine can backup to a network drive using SMB or AFP. It does not require a Time Capsule.
1 b. You can always use Carbon Copy Cloner for Mac and have it store the iterative images on your SMB server. Carbon Copy Cloner is better than time capsule because you can select what you want to backup or select your entire partition to image. It is also much easy to restore than Time Machine and people sometimes encounter corrupted Time Machine Backups that they can not mount or boot from and get screwed. If you have a lot of space, use Time Machine and CCC at the same time and set CCC to backup once every 2 months or whatever.

2. Install Vuze/Azureus/Bittyrant in Linux because it has an RSS downloader and Web interface (with plugins). Install uTorrent if you choose windows because it consumes much less resources and supports RSS and WebUI natively - it also has a bandwidth cap to limit your monthly bandwidth at xGB per month.

3. Ubuntu supports Windows SMB file sharing through samba. Windows server supports this natively. Mac/Linux/Windows client PCs all support SMB natively. You can also install an AV uPNP server on both (Tvserity for Windows and MediaTomb for Linux). I don't know if TV capture is support by MythTV/Mthbuntu while using a WMware hypervisor.

4. Joomla/Drupal as well as most free CMS projects are built using PHP. Ubuntu Server has LAMP (Linux-Apache-MySQL-PHP) builtin (choose Web server when you install). PHP Installer packages for Windows (XAMPP and WAMP) work fine for development, but there is no file/folder permissions/ownership in Windows when you run as Admin unlike in Linux/BSD. This can create problems (and likely will) when you develop on Windows and deploy for production on a POSIX system like a paid service PHP Webhost (not a problem if you deploy on Windows). If you develop on Linux and deploy on Linux or Windows, it should work if permission are set correctly.

Also, Python/Perl/Ruby extension scripts for PHP apps (like a Adobe Flash Policy server for Comet/Ajax serving) run MUCH better in Linux/BSD and most free scripts won't run on Windows even if you have the proper scripting environment.

Extra - Both support VNC server and RDP servers for remote administration. Windows supports PPTP VPN server and client natively since XP (PPTP VPN has bad security) and Server 2003/2008 support L2TP/IPSec VPN. You can install OpenVPN server on Linux and Windows and the client is available for Windows/Linux and OS X.

Extra - Both support SSL VPN using Adito (aka OpenVPN ALS) which is a great VPN-like tunnel. Clients only need a Webrowser and it will always work wherever you are because it uses the SSL HTTPS protocol on port 443. It is a breeze to install on Windows if you find the prepackaged binary. On linux, you need to install Apache Tomcat and Java JRE and configure it from the web.

So it seems Ubuntu wins if you want to develop/test PHP apps on your server. If you don't plan on deploying the website publicly on a hosted Linux server, you can choose Windows for your home server. You can always develop or test them on your laptop too using Virtualbox and Ubuntu Desktop.

If you plan on torrenting a lot, Windows or Windows Home server may be more appealing for you. There is also client software for Windows PCs if you are using a Windows Home Server that will auto backup to the WHS box.


I would personally install VMWare ESXi and install Windows XP/7, Windows Home Server and Ubuntu Server 9.10.
 
Most would not recommend buying an off the shelf NAS if you already have spare PCs lying around because they are much more robust if you are not too concerned about performance.
 
Thank you for very thorough answers (got a little blown away at first :))

I think the most important features for me will be backup, file server and Torrents. I have previously tested Ubuntu by running MAMP on my Mac. This worked pretty well, so I might stick with that option (it was VERY easy to set up).

Think I just have to sit down and try out the different options :)

Again. Thanks
 
Last edited:
VMWare ESXi requires a RAID array to be installed and you would need to buy a SATA RAID controller to get SATA drive support. It is not a good idea to install VMWare on your system.

Try Ubuntu 9.10 on your server because it best suits your needs. Windows is also fine if you are uncomfortable with Linux. You can always install Ubuntu on the Windows server using Wubi if you do not want to mess with the partitions on your HDD.
http://wubi-installer.org/
It will only boot into Linux or Windows but not both, but you always have the option of easily removing Ubuntu from within Windows (it is difficult to remove if you use the regular installer).

Wubi installs the Desktop version of Ubuntu which is fine, so just enable SMB sharing and install LAMP after it installs.
 
Thank you. Exactly what a friend of mine recommended. I actually have the Wubi install already on the PC, so it´s good to go (just need to install Netatalk and LAMP)
 
OK. Just read a little about different solutions. The question now is wether to choose Windows Home Server or Ubuntu. It looks like Windows Home Server is easy to use and would work fine for my needs. But my friend told me Ubuntu is a lot faster on the network. The main thing for me is that once everything is up and running, I want it to just work (meaning I do not have to think about it anymore). That is in my mind the idea of a server. Everything just works and serves my needs. So what is the best way: Windows Home Server or Ubuntu?
 
Ubuntu is more robust and can also be used as a cableCARD MythTV/LinuxMCE backend if you buy the necessary hardware. Automated backup is more difficult to setup using rsync on both client and server. Ubuntu 9.10 has an ntfs-3g driver so that it can natively write to mounted NTFS drives (but performance is greatly reduced over FAT32 or EXT2/3/4). You also have access to the Debian package repo, which has over 10,000 pre-packaged binary apps. Data redundancy must be handled by a RAID array (unless you do not want bit for bit parity and are satisfied with rsync on a secondary drive). Onboard RAID controllers and software RAID 1/5 greatly reduce write/read performance but is acceptable for most. If you are concerned about transfer speeds, a RAID controller PCI/PCI-e card will be necessary. Also adding more storage to a RAID array is difficult and drives must be the same capacity or space is wasted and RAID 5 requires at least 3 identical derives to get setup - RAID 1 needs two of course. There are was to use JBOD in Linux (like LVM), but you do not get any redundancy accross the array.

WHS is much more limited but easier to backup and administer because it was designed to solely for this purpose. It also supports a proprietary version of JBOD which is great for clients if you want to add more storage to your system, but WHS will format every drive you add to the storage pool (same with RAID). There is also non-raid data redundancy in case a drive fails and you can add whatever capacity drives you want without wasting space (b/c it is JBOD based). The extension/addon library is a great feature and grows every month - you can also write your own extension.

You also should not decide based purely on transfer speed. You should use something that you are comfortable with.

If you don't care about data redundancy use Ubuntu. When you add more storage to a non-RAID Ubuntu server, you will have to network share the new space (as a secondary/tertiary network folder) and configure your clients to backup to the new network share. You can also setup jumbo frames on a gigabit ethernet to reduce Client and Server CPU usage when transfering over the network. I use this method for Video and it works great (but no redundancy), and I never need to reboot because of crashes.

If you want data redundancy and think you may want to add more storage in the future, consider WHS (it is selective redundancy and not bit for bit parity). It is much easier to plan and setup the storage hardware because it is JBOD with data redundancy and WHS takes care of it automatically. WHS is based off the Win 2003 Server kernel and it has great stability so long as your hardware is not defective or does not overheat.


So if you want some data redundancy and the ability to add storage using a JBOD type storage pool, try WHS because it is very nice to administer once setup. Also, do not be too concerned with speed unless to backup GigaBytes every hour.
 
Last edited:
Similar threads

Latest threads

Sign Up For SNBForums Daily Digest

Get an update of what's new every day delivered to your mailbox. Sign up here!
Top