Tuesday, July 19, 2016

Information Dump: Uses for Old Computers

It seems like we have reached a point where people are no longer trying to save up and purchase the next up-to-date computer model or N core CPU and N RAM that leaves you using only 10% of except for when you decide you need 50 tabs open in chrome when you're only using 4 because bookmarks, back buttons and remembering where you've been seems like too much of a hassle. Now it's all outdated computers barely scrapping by and people cursing out their computer because even though it's old and slow, it should be able to run that flash game you like to play on the site filled with ads and using 7 different Javascript frameworks because jQuery wasn't easy enough for developers when you can copy-paste a widget with a different framework and paste it all in. If you can't tell by now, I'm sick of people asking me if they need a new computer and complaining about how bad their current one is even though half of the problem is them and the other half is a lack of understanding.

Even at my current job as an IT Specialist I hear the people I work with talk about using Linux to "prolong" the life of our old computers then talk about all the modern day software it needs to run. We're running Ubuntu 12.04 LTS on machines that sound like jet engines taking off just to start up. It's a nightmare. Even our "new" computers don't really cut it for some of the stuff the people I work with do. When you're running a virtual machines, you really need to step your game up.

That being said, there are plenty of uses for old computers. The main thing to use them for is very low resource things with light weight modern operating systems, for security reasons. Keeping an outdated OS or nearing out of date OS because it "works" is not recommended. All that ranting aside, let's dive into it.

As far as picking an operating system, options may be limited. The best I can advise you is that if you just meet "minimum requirements," don't get too excited. That means the system will run... until you start adding updates and robust programs you want to run. While you may assume I will list off just Linux distributions, you will find that you are sadly mistaken. So let's start with a fun one.

FreeDOS

Remember the good old DOS days? Remember all those cool retro games you used to play (or hear people talk about)? Of course you could run DOSBox, but you could also install and run an actual DOS system. This works pretty well out of the box and even includes graphical programs like GEM (the desktop) and Arachne (web browser). You can also download a ton of DOS games for free from quite a few different websites I'm not going to name off because you can Google what you want.

MenuetOS or KolibriOS

 Originally, a friend showed me KolibriOS, and I got a good laugh at this. It is capable of fitting on a single diskette. Aside from being absolutely tiny, it includes a basic web browser and FASM assembler. If you're really big into assembly programming and want a very minimal OS to do your work on virtually and junker you have laying around, this is a possibility for you. I can't really say much beyond that as I'm not that into this scene. So if you're interested, check out their websites for the full detail.

ReactOS

Currently in Alpha when writing this, and I have not tried it out yet. However, it claims to be an open source free to use Windows NT environment. The requirements seem low enough that you should be able to run it easy on really anything you could turn on. I hope this gains some real traction and I'll add some more after I have time to try it out.

Okay, so that is all I have beyond the realm of Linux, besides BSD. Of course there are other operating systems out there that I could in fact add to this, and I may over time. However, I'd like to focus now on application possibilities and leave the OS choice to you. To finish off I will list any extra lightweight distros I know off the top of my head that we can use for just a generic desktop that will meet the requirements of browse the web, store and access files, and some type of basic word processor or office suite.

There are a decent amount of network services that sit idle for quite some time and draw very little in the way of resources. Assuming your old machine also has a slower network card we can still use it for something. Some are so lightweight that we can add multiple services onto a single machine and even if it is old, it can still get the job done.

DHCP

This is simple a server that assigns computers an IP address. While it is true that most routers will do this for you, making your own server can give you far more control. This can also be used in conjunction with a TFTP server to allow network booting. Network booting can be used for some simple cloning solutions like Clonezilla or Fog.

DNS

This is another service most routers take over. However, if we use this with a DHCP server, we could develop a very capable SOHO network. This can also be used to simplify finding any devices you may have on the network rather than trying to remember an IP address.

T/S/FTP

TFTP can be used with DHCP for network booting or simple automated backup tasks. SFTP is the secure version of FTP and I'd recommend it over your standard FTP. This can be used for backups or a simple network storage. Who can turn down some extra file storage?

Domain Controller

In enterprise environments, there is often a domain controller and everything is part of a domain. You can do this as well, and it won't require much for resources. It will take a lot of time and patience. This will often use SAMBA, Kerberos and DNS working together. There are a lot of tutorials to set this up. This will make things a bit easier than statically entering in every DNS entry which can make life even easier if you constantly need access to network devices but IPs are hard to remember and setting up a static IP every time is inconvenient. It is recommended you use Kerberos for authentication and all that.

Cloning Solution

 I mentioned Clonezilla and Fog earlier. Clonezilla on a network boot creates and extremely flexible cloning option. It will allow you to send the clone any way you want and choose your cloning method very easily. Fog is a lot more robust, however I have run into minor issues with it and older computers at work. Fog allows you to register your hosts for easy tracking. You can clone in bulk with grouping. Easy installations and remote script running with snap-ins. Easy management through a web interface. Anti-virus scanning, wake on LAN, and much more. It is very robust and it's free. It is probably also one of the easiest things to setup on this list.

HTTP

If a web server isn't under a bunch of traffic, most of the time is just sits there twiddling its fan. An HTTP server doesn't even need to be open to outside traffic. You could simply use it for listing network services or practicing your web design skills. There are also administrative tools you could use for your other services you may install that use a web interface. You're only limited by your imagination.

RADIUS Server

RADIUS servers are used for authentication. This can be used to up your network security a little bit more. It's also needed for the WPA enterprise stuff. FreeRADIUS is an example of a free RADIUS server you can try.

Now I could list off service after service, however I like these because they offer a practical use and more of an immediate payout. The biggest resource they use up will be your time in setting up and fine tuning everything. Alternatively, you could make your own services and an old machine as a testing ground. Another possibility is to install an old or vulnerable OS to it like DVL and try to hack it or break it or secure it. Offers some good practice with a lot risk and no need for cranking up a virtual machine on your soon-to-be outdated Pooper-scooper 9000 with chrome accents, clear cover, and light-up fans. I didn't name off a real computer because I wanted to make a HAL 9000 joke and a poo joke, so two birds with one stone?

So now for the list dump of lightweight Linux distros. But before I do this, ask yourself what makes them lightweight. Most of what I see is "Less bloat! Optimizations! Benchmarks!" Unless you're Gentoo, then it's all you trying to optimize it. I hope you're more capable than I am, I needed to install it with the option that includes all the bloat just to get the network to work. Just some food for thought.

Now while I was going to put a list, I noticed DistroWatch has an Old Computer tag. So rather than copying someone's work or citing original credit, I will just link to it. I'd also recommend checking out DistroWatch as they are very useful in finding new distros and keeping up to date with very little effort.

THE LIST

I noticed that some of the ones I mentioned above are on their list despite being neither Linux or BSD. I can tell you I did not find them from that list, they were show to me or found in other research. For that reason I'm leaving them up, despite my dislike of duplicate information.

Tag Cloud

.NET (1) A+ (1) addon (6) Android (3) anonymous functions (5) application (9) arduino (1) artificial intelligence (2) bash (3) c (7) camera (1) certifications (1) cobol (1) comptia (2) computing (2) css (2) customize (15) encryption (2) error (15) exploit (13) ftp (2) gadget (2) games (2) Gtk (1) GUI (5) hardware (6) haskell (15) help (5) HTML (4) irc (1) java (5) javascript (20) Linux (18) Mac (4) malware (1) math (8) network (5) objects (2) OCaml (1) perl (4) php (8) plugin (6) programming (42) python (24) radio (1) regex (3) security (21) sound (1) speakers (1) ssh (1) telnet (1) tools (11) troubleshooting (1) Ubuntu (3) Unix (4) virtualization (1) web design (14) Windows (6) wx (2)