Are Ubuntu Mate "Home Servers" a good 'End of Life Cycle'?

Hi folks

I got some older hardware: a friend dropped off two working Pentium 4's and a Core 2 Quad, as well as mainboards, RAM, CPUS's, Heatsinks for more Core2 Duo and Quad systems.

What do you guys think about the end of life for this stuff? I was thinking of a small server in my home to host my own personal domain, some files, photos, movies, etc, or what have you, so I've very pleased with this OS.

I ran into a snag with installing a LAMP server on this machine. I've found it a really uphill battle. A lot of complicated syntax. So, I'm wondering if you think I should recycle this old hardware at the local center, where it likely gets unfortunately destroyed, my fear only. For some reason, I hate to throw out old computers that still work, even if they're older and slower.

As a 2nd note, would I be better to install Ubuntu Server or continue trying to go step by step through the installation of a LAMP server on a Ubuntu Mate workstation... ? Just looking for opinions. If I'd be making use of these old boxes and putting them to extended use I'd be pleased!

Thanks

Are you planning to host your own simple static private website ?
or are you planning to use the hardware as a file server ?

In both cases you don't need a complete LAMP stack.
Linux ? yes
Apache ? no
MySQL ? no
PHP ? no

As a file server:
Install ubuntu-server and only activate "sshd".

That is all. You can access the fileserver now from any platform
(Linux, Apple OSX, OpenSolaris, BSD, Dragonfly etc etc etc)

In case you are condemned to need access from the only non standards-compliant OS (MS-Windows)
then don't immediately install samba on linux: It is IMHO better to install WinSCP on windows (or FileZilla if that is more to your liking)

Why ? Samba is resonably complex , a bit of a hassle to set up correctly and a reliable source of version dependent incompatibilities (just like in windows) And why should everyone bow to the bidding of the only player in the field that refuses to play along with the rest ? so keep it stupidly simple (KISS) and use something that is simple, highly secure and native to the system, widely supported on all (but one) platforms and always works reliably.

If you want to use the server as a http/https server, just install lighttpd from the repositories.
See here for a swift and reasonable comparison between webservers.

Another thing: Don't install a desktop/GUI-system on your server because it brings the average uptime from 10 years down to possibly less than a month (besides the massive resources that GUIs eat for breakfast)

1 Like

If I remember correctly most Pentium 4's were 32 bit so you won't be able to run the latest version of UM.

I use UM as a home server running Next Cloud. It works really well for that purpose. Everything is familiar and if you need to do anything such as running the browser to look up info you just do it.

You can run Ubuntu Server and save about 400 MB's of RAM usage but you need to be comfortable with the command line for everything. It might be a good learning experience or a source of frustration depending on your purpose.

For a LAMP stack I've used tasksel to help with that. It's a text based installation program that you can install with:

sudo apt install tasksel

It's been a while since I last used it but it has an entry for a LAMP stack. You will probably also want to tick the box to install the ssh server at the same time.

Best of luck.

2 Likes

Hi mdd12,

You are definitely right about the 32-bit P4's:
I still have a laptop dated january 2004: Pentium 4 HT 3.06 - 32-bit. (Northwood)
A desktop I used to have dated march 2005: Pentium 4 HT model 640 - 64-bit. (Prescott 2M)

1 Like

Hello jaydee

If you have 32bit hardware and want to run servers, have you considered Debian? :penguin:

3 Likes

Thanks so much for the detailed and helpful reply.

In answer to the first question, yes, I just would like to host my own little static web-site, and with the additional 64Bit hardware I would definitely consider re-purposing them to file servers or whatever purpose I can find for them :slight_smile:

I have already installed:
Linux - this Ubuntu Mate 64 bit on the machine I'm writing this from
Apache - Already installed
MariaDB - installed (MySQL alternative I was directed to in installation)
PHP - already installed

I will take your advice in WinSCP with thanks.

I need to review your comparison guide yet on http/https servers as that is the direction I want my server to go, quite likely with lightppd as you recommended. Thanks again.

Deskop/Gui comment duly noted.

The last thing: When I try to start up my server, I'm presented with this from MultiPass (I'm not sure or what lead me installing MultiPass or if I needed to, nor should have :slight_smile: :
launch failed: KVM support is not enabled on this machine.
Please ensure the following:

  1. The system's CPU supports virtualization.
  2. Virtualization is enabled in the system BIOS.
  3. The KVM kernel modules are loaded.
    I do not seem to have the option to turn it on and I've update the BIOS to latest version. I guess the Intel Core 2 Quad CPU doesn't support that feature, or I'm not looking in the right place to enable it.

Again, thank you for the detailed tips and reply. Much appreciated!

Thanks for the tips! A wealth of information from you folks here.

Some of my P4's are 64b and others are 32B. I think I have one of each actually.

All the others are Core 2 machines (Duo and Quad) (I assembled a Quad machine, this one I'm writing from) and have parts for 3 others.

I agree running a dedicated Ubuntu Server from Command Line would be an interesting, challenging, and good learning experience!

I will check out tasksel. Tip about SSH noted.

Wonderful, helpful comments. Thanks again

I have one 32b Pentium 4. I hadn't considered Debian, but perhaps I should, based on your recommendation. Thanks!

Hi Jaydee,

I never worked with multipass but I think of one or two probable causes.

One possibility is that your hardware can not deliver the level of virtualisation that Multipass demands:

If multipass needs full hardware-assisted virtualisation then you need a reasonably new processor with at least an IOMMU and memory virtualisation to virtualize devices and memory. That alone needs some extra registers and instructions.

The Intel Core 2 Quad CPU you mentioned, does have VT-x (general virtualisation) but not VT-d (no IOMMU = no I/O-virtualisation) so that could be, depending on what multipass demands, a problem

Here is an article about hardware assisted virtualisation:

Best thing to do is forget about virtualisation on those very old computers for now.

in other words; just uninstall multipass, you won't need it.

Virtualisation on old desktop computers consumes a lot of resources without giving much in return. It is best on those old computers, to run your serverapps on bare metal.

Don't forget , you are the sole user of this server.
This is in stark contrast with a webhosting goliath that contains hundereds of websites for hundereds of different clients and needs (para)virtualisation to keep things secure between the clients. You have the luxury not to be in that situation :slight_smile:

1 Like

Great summary, thank you.

I didn't quite understand all the YouTube tutorials and web How-To's I was following, but I tried my best. It was a good learning experience.

When I set out to do this, I think I had in mind that I "needed" a LAMP stack. While that is possible, you and other contributors to this thread have shown other alternatives, like bare metal, using a command line server image, etc., etc.. So, it's good to know I have options other than that. :slight_smile:

Do you recommend now uninstalling MultiPass, as well as Apache, PHP, and MariaDB, or would I be better off, do you think, to reformat and start again from scratch, using the advice you and others have given? I'm wondering if all these server applications are so integrated into my Kernel now, if they'd easily uninstall to try running on "bare metal" as you described with those large applications running or or even installed on the system :thinking: Maybe I'd be better to clean the system by reinstalling, or perhaps the system is so advanced, it can easily "clean itself" and purge or remove all un-needed packages, easily, at this point. Thanks for any comments on this.

Do you recommend now uninstalling MultiPass

At this moment I would indeed recommend uninstalling MultiPass. :slight_smile:

as well as Apache, PHP, and MariaDB,

If you have that installed (the regular way, not on a VM-image), why not just use it ?, it's all you need for a website. :slight_smile:
Maybe install Lighttpd too, just to compare it to Apache, see what you prefer.
You can remove one or more of them later when you decide you don't want them anymore.

or would I be better off, do you think, to reformat and start again from scratch, using the advice you and others have given?

No need to reformat. If you have changed a lot of files and settings manually and you want to start with a clean slate, then a wipe + reinstall is easier and faster, but the system is indeed advanced enough to "clean itself" and purge or remove all un-needed packages with a little help from your command:

sudo apt-get clean && sudo apt-get autoremove.

However, the system is not clairvoyant: what you installed manually, you have to remove manually, but what has been installed as dependencies, can be removed automatically.

A Linux server is a bit like LEGO, you can add and remove pieces whenever you like without tainting the system.

When you have everything up and running:
Be very careful when using PHP+SQL (or JS+SQL), use it sparingly, avoid it if you don't need it

exploits_of_a_mom

https://xkcd.com/327/

:slight_smile:

2 Likes

Hey, I really appreciate both your knowledge, candour and wit :slight_smile:

To be honest, I had always wanted to build a LAMP server the "traditional" way by installing, as you outlined: Linux, Apache, MySQL, and PHP. I got a case of OCD with getting the job done and went through a bunch of tutorials from all kinds of sources.

I now need to go back through my browsing history in chronological order to see what I did, what I installed with respect to things like modules and dependencies, and in what order, etc., for example, my ethernet adapter is now named "netplan-enp0s25" and I don't remember, except being vaguely familiar with that happening several days ago. I think I consented to that in some snap or app or all the cool new things I'm learning!

If it turns out to be a hassle, I'll do I reinstall. Possibly on the P4 64B with 2GB RAM and 80GB HDD currently running a free 30 day trial of Win7 which would really make a nice web or file server. That one needs an IDE drive with the ribbon cable to let Linux install incidentally. I've tried 3 different flavors and the folks on reddit said the {DRDY} related errors I was getting at install were related to hdd failure, and were surprised Linux detected it but Win7 runs happily on the free-trial.

However, I like the way this machine I'm typing on runs now. It would be a shame to wipe it after all that you said above, I'll do my best! Thanks again... I really appreciate your guidance and educating me. :slight_smile:

Yes and no. Software virtualization on old HW is crippling. HW virtualization, on anything VTx-capable, generally performs at ~95%+ of bare metal. The Pentiums are a lost cause on that front, but the C2Q will be absolutely fine.
(I'm oversimplifying and skipping several pieces here, because this is not a road that he should be going down at this point, not least because as you say he doesn't actually have any reason to anyway).

2 Likes

You are absolutely right. :+1:

But there is something more.
Virtual machines eat RAM for breakfast.
Old computers don't have much RAM.
So it will run into swap pretty fast when starting VM's willy-nilly.

1 Like

It will, but you'd be surprised how far you can push things sometimes. :slight_smile:

If the VM host is being used as a VM host, and that's it, rather than e.g. doing something stupid like running Chrome on the host at the same time, it can be remarkably viable. Even if you know the guest is going to need swap, it's still not really much different to having the host own the swap instead, though Spectre etc have certainly made that measurably worse.

Despite Red Hat's best efforts :P, you can still run a server install in an impresively small footprint. Obviously things get tight very quickly once you start doing things on that server, but I would expect that OP will be fine since we're really talking about a single client.
(Note: I've worked professionally on embedded systems hosting a full LAMP stack plus a bunch of custom SW in < 256MB RAM. I certainly wouldn't recommend anyone try that, especially not a Linux newbie, but...)

Again, not really relevant to OP's question given the situation - just putting the info out there in case someone else sees it at some point under more favorable circumstances.

2 Likes