I was going to reply to TrekJunk's article I'm a strong proponent of Linux but realized the reply was more of a story and would be fairly long so I linked the article.
Getting Started
About 20 years ago I was working in the dining facility of a private college in Kentucky. The campus engineers and the cable company were bringing high-speed internet into the facility where there had previously been nothing.
My boss knew that I knew a thing or two about computers as my experience with Novell networks had come up in my interview some time before.
"How much would it be to install a file-server? and can you do it?"
"I'll put a proposal together."
An Army buddy of mine and I had a small side business going. We built and sold computers for people in the area. This was before Walmart got into the computer business. We were the only ones for miles around that could or would do this. This was probably our last project. Walmart did, in fact, put us out of business.
We got our parts list together and I made the proposal. I don't remember how much everything was or even how fast the machine was.
We got a green light on the project and ordered everything we needed. We decided to name the machine strangelove.
Software
Part of the proposal was that we install a Travan tape drive to do nightly backups. The facility director felt that it was a little too pricey and brought us a CD/RW to to try. CD/RWs were fairly new and we had never fooled with one.
Back then CD-ROMs of any description were not Plug-and-Play supported by any distribution of Linux. You had to write your own CD.rc to get the thing to work.
Another hurdle we had to jump was figuring out how to write the script for emergency shutdown when the UPS kicked on during a power outage. We got it to work when a power outage signal came from the UPS but if a power restored signal came we could not stop the shutdown process.
We explained that position and it was decided that shutdown was imperative but resume was not. They could always restart the machine after the incident.
Now we had to consider software. We had to set up SAMBA so the Windows machines could use strangelove as a server. There was no need to set up CUPS since printers could be shared the native Windows Network. Apache Web Server was installed to be used (or not) at a future date.
If there was a new Catering Director, how would they at the college add them? And the Facility Manager didn't need access to Catering files. How do we accomplish this? Simple. We had to set up groups.
- director - Facility Director needs access to everything.
- manager - Facility Manager needs access to catering, kitchen, and dining.
- dining - Dining Manager only needs access to dining.
- catering - Catering Manager only needs access to catering.
- assistant - Assistant needs access to catering, dining, kitchen and manager for billing purposes.
- kitchen - Chefs only need access to kitchen.
We used groupadd to do this. To add users you can use the useradd function. With that you have to put in comma separated values to populate /etc/passwd correctly. Slackware has a script, adduser, that asks questions and does the tedious work for you.
I tweaked the adduser script some so that if my buddy or I were not around to add a new user someone at the facility could do it. The script would ask for the new username then present a choice something like this:
- 1 - Director
- 2 - Manager
- 3 - Dining
- 4 - Catering
- 5 - Assistant
- 6 - Kitchen
Choose one:
Wrapping it up
strangelove also acted as a firewall and was behind a firewall. We had set up hosts.allow to deny any connection other than the 192.168.x.x subnet that we'd set up.
I left the area about a year after that and my buddy took over. In another year or two the facility changed hands and my buddy was gifted strangelove. I think he cannibalized and used it for other projects.
I don't remember what the longest uptime we had was, but I do know that it was over 90 days.
Slackware is my preference but I understand most people would consider it tedious.