Ubuntu Servers

By Martin Jansen, Owner of Jansen-PCINFO

I have been using a home file server for several years now. I had a spare Dell OptiPlex 390 Mini Tower with an older i5-2400 processor. I started with 4 GB RAM but upgraded to 12 GB in anticipation of bigger projects. After experiencing some long term issues with SSD drives – the server runs constantly – I recently switched to older and hopefully more reliable 2.5 inch 500 GB drives to contain the operating system – Ubuntu Server. The data is stored on a separate 2 TB drive.

I configured my file server as both Network File Server (NFS) for the family Linux Mint computers and SMB or Samba which is recognized by Windows computers. The primary directories for the server are martin, lydia and public.

This file structure basically emulates the WD MyCloud that we used prior to the Ubuntu Server. Unfortunately the firmware died on the WD MyCloud forcing me to change – add to that, the WD MyCloud was old and no longer supported by Western Digital – I would have to buy a whole new system.

SMB or Samba

Samba is a free software suite that allows file and print sharing between computers running different operating systems, such as Windows, Linux, and Unix, using the Server Message Block (SMB) protocol. It enables seamless interoperability, making it easier for users on various platforms to access shared resources on a network.

They say that “necessity is the mother of invention.” In my case I first tried to emulate the Samba setup of the WD MyCloud, but that was an epic fail. I then started looking up ‘How to’ videos and tutorials on the internet. There was no shortage of information, but it is important to keep in mind that I wanted the latest information, not something from three years ago.

If I were to create my server again I would follow this guide. The link should lead you to a LinuxShout article by Heyan Maurya, who provides straightforward directions on Ubuntu Server 24.04 LTS, that is, long term support.

It took some experimentation to get everything connected – the 2 TB drive, Samba Config Files, Users and Permissions, but in the end our family can share files easily and safely behind our router firewall.

That takes care of the Windows side of things, but what about our Linux Mint computers? 

Network File Services (NFS)

NFS shares work by creating a transparent and smooth way for computers to share and access files over a network, using a server-client architecture model. By mounting a remote directory onto their local file system, clients can interact with files stored on the NFS server as if they were local, allowing for efficient file sharing and collaboration in networked environments.

In Linux, I followed a guide similar to this one to install NFS on Ubuntu Server and the client on our Linux Mint computers.  One can also install NFS client on Windows by following this guide.

Of course, the suggested shared file structure can be changed to meet the needs of the users in all these guides.

Self-Hosted Services

I’m really excited to learn about Docker and containerized self-hosting services. I followed a Self-Hosting with Docker & Linux: Run Your Own Services course by Jason Cannon on Udemy. I spun up another old Dell 7010 desktop as a Ubuntu server on my network. As I worked through the course I was able to SSH (a program and protocol for securely logging in to and running programs on remote machines across a network with encryption) into the Ubuntu server from my Linux Mint computer. Jason has a very straightforward style of instruction and I stopped the video sessions many times to make sure I followed his instruction exactly. Even so, I made some mistakes along the way and had to review the sessions to make corrections to my code.

I am coming close to creating my own self-hosted website to offer computers to low income families in the Fox Valley. I am looking at Hugo to build my static website. Don’t hold your breath for the website to come to fruition, I’m still quite new to this whole Docker system. Some day I hope to become an expert and have even more services available, like file sharing.

Conclusion

If you have an old desktop computer just sitting around, it can most likely be converted into a Ubuntu server for the whole family. All you need is a home network and admin access to the router. From there the sky is the limit on the services your old computer can provide.