Linux - NewbieThis Linux forum is for members that are new to Linux.
Just starting out and have a question?
If it is not in the man pages or the how-to's this is the place!
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
My family owns a small internet cafe business in New Zealand, thanks to the surge in online competitive gaming we are expanding and creating new computers.
We have a mixture of 25 computers with the following specs:
(G3258/8GB/256GB SSD) (i7 2600/8GB/256 SSD) (i3 4150/8GB/256 SSD) with Fiber Internet (75+Mbps down)
Because the shop does not employ a centralized system coupled with guest access we are running into the following problems which I am looking to remedy.
1. Hard drives are being fulled with unnecessary downloads.
2. Updates have to be made manually to each computer.
3. Each computer has different games and applications installed.
4. Unlimited access.
I have been building computers for the past several years but am lost when it comes to software.
That being said, I have always held an interest in software and hold a self starter mentality. I have thought about contacting a professional but before that I thought I might try to learn and to find out exactly what I need first.
I understand there are many Linux Server Distributions i.e. Ubuntu, CentOS, Debian. Which one should I be looking at to build a server to remedy the problems that I have? Would you be able to recommend me books/guides/forums that can help me?
You sound like you need a server. There are Server distributions (e.g. Red Hat Enterprise Linux, SuSE Enterprise, etc) and you pay for them and get maintenance (updates, & distro support). Then you need to set up and configure every service. Most of the other distros have the required server programs installed also, but have user type defaults. You can also use a flavour of BSD.
Either knuckle down to learning loads fast or hire someone as sysadmin who has done the learning. It usually can be done remotely. As for your problems
1. Should be simple to implement a daily delete as a fix for that.
2 & 3. More complex to implement, especially if the boxes run windows.
4. Linux can be restricted easily. Network restriction is more advanced but doable. Making sense of windows is a lost cause imho. Hacking protection can be tried, but it's the most difficult.
Hi there,
My family owns a small internet cafe business in New Zealand, thanks to the surge in online competitive gaming we are expanding and creating new computers. We have a mixture of 25 computers with the following specs:
(G3258/8GB/256GB SSD) (i7 2600/8GB/256 SSD) (i3 4150/8GB/256 SSD) with Fiber Internet (75+Mbps down)
Because the shop does not employ a centralized system coupled with guest access we are running into the following problems which I am looking to remedy.
1. Hard drives are being fulled with unnecessary downloads.
2. Updates have to be made manually to each computer.
3. Each computer has different games and applications installed.
4. Unlimited access.
I have been building computers for the past several years but am lost when it comes to software. That being said, I have always held an interest in software and hold a self starter mentality. I have thought about contacting a professional but before that I thought I might try to learn and to find out exactly what I need first.
I understand there are many Linux Server Distributions i.e. Ubuntu, CentOS, Debian. Which one should I be looking at to build a server to remedy the problems that I have? Would you be able to recommend me books/guides/forums that can help me?
I'll second what business_kid said, and add a little.
Selecting which version of Linux you want should be your first task. To that end, you have to decide if you want to support this yourself, or have paid support if you need it? CentOS is identical to Red Hat enterprise, but totally free...and totally self-supported. With Red Hat, SuSE Enterprise, etc., you pay for support and can call them for help. This is a good thing, but honestly if you're familiar with systems, you shouldn't have problems doing basic self-support, in my opinion. While the commands may be different from Windows, once you pick them up (and it won't take long...documentation abounds, and this site is excellent as a resource), you can keep things going. I'd suggest a hybrid approach in your case: use CentOS and hire someone locally who does know Linux to get things installed/configured for you, and get them to write you simple documentation on how to start/stop services, check things, etc. Give you the basics, and get you going, then you have breathing space to learn.
To deal with your points:
Yes, an automatic deletion job is easy to script/write/schedule. See previous suggestion about a local Linux consultant.
The server itself will update on its own. Since you mention gaming, I'll assume you probably 'need' Windows for this. Windows (at least Win10), can easily be set up to update itself.
For Windows systems, create a generic user for each system, without administrative rights. They won't be able to install anything without admin access, and this will also let you restrict which locations they can save data to. Since you could then map a network drive to the Linux server, that would be their only location, and would circle back to point 1...having that flushed daily if needed.
Set up squid as a proxy server, and employ dansguardian as a web filter. You can control what sites/times/users can access what using squid.
Spend your money on a local consultant. This shouldn't be a huge job for someone who knows what they're doing, but spell out EXACTLY what you expect before bringing them on, and get it all in writing. Make them deliver on every point before paying, especially documentation.
I'd second the recommendation for CentOS, if you want something free. It's much easier to handle than Debian, in my experience, and the documentation is better. Getting professional advice is also pretty vital.
It's customary to run Linux on a server without a GUI, as that makes trouble-shooting easier: less things going on, so it's easier to see what's happening. That may be good for an experienced administrator, but not for you! If you get some-one to set up the server for you, tell them you want a GUI.
We have a mixture of 25 computers with the following specs:
(G3258/8GB/256GB SSD) (i7 2600/8GB/256 SSD) (i3 4150/8GB/256 SSD) with Fiber Internet (75+Mbps down)
These specs are very good for a couple techniques I'm going to suggest, which can make your life a lot easier. In particular, I recommend dual booting with Windows and NFS-RAMBOOT. My NFS-RAMBOOT is here:
Basically, a client computer using NFS-RAMBOOT loads a compressed OS image over the network into local RAM, and then runs entirely from that RAM file system. That way, nothing any users do gets permanently saved. You just reboot, and the machine reloads to a fresh state. You can install updates on just one computer and then save back to the OS image.
However, you also mention gaming, and your gaming customers will demand Windows. So, I suggest dual booting with Windows as an option. However, NFS-RAMBOOT helps you here also. You can boot into NFS-RAMBOOT, and then from there restore from an SSD snapshot saved onto the network using "dd". Unfortunately, the way Windows works you'll still have to manage the computers individually, unless you go with an enterprise Windows licence (probably more of an expense than you want to deal with). That said, if you use remote desktop at least you won't have to physically run around from one computer to the next.
Quote:
1. Hard drives are being fulled with unnecessary downloads.
2. Updates have to be made manually to each computer.
3. Each computer has different games and applications installed.
4. Unlimited access.
These are all pretty easy to take care of if you can use linux only.
But if your customers want Windows games, you need to offer Windows. And while enterprise Windows products do offer ways to deal with these things, they are...expensive.
What I suggest is more of a simplistic hack - just taking disc images and essentially cloning the entire SSD over the network. Unfortunately, you can't just clone Windows from one computer to another. So you'll still have to individually manage each Windows workstation. But at least you'll be able to wipe them clean at the end of the day.
Quote:
I understand there are many Linux Server Distributions i.e. Ubuntu, CentOS, Debian. Which one should I be looking at to build a server to remedy the problems that I have? Would you be able to recommend me books/guides/forums that can help me?
There isn't much a Linux server can directly do for you other than act as a firewall to restrict what sites may be visited. However, I expect that customers will not appreciate this.
What can be done indirectly is that a linux server can be used to store image backups, and serve up clean OS images. So basically, the steps I recommend are:
1) Do clean Windows installs on each client computer
2) Within Windows, use Disk Management to shrink the OS by about 1GB.
3) Do minimal Debian 9 install on each, using the 1GB free space. No need for a GUI. The only important thing about these is to install the GRUB bootloader. This will make it user friendly to switch between the Windows and Debian OS later on.
Note - when doing the minimal installs, make sure to install the "ssh server". This will let you remote into the computers later on.
4) Do my NFS-RAMBOOT howto to set up the linux nfs file server. You will also set up the clients to boot from it.
5) Use the /netroot/ file share to store SSD images.
By default, your computers will be using DHCP for their IP addresses. You can use "ip neigh show" to determine their IP addresses. So, for example, let's suppose one of the neighbors is 192.168.111.157. You can use the last number as a convenient way to name the SSD images.
After the client is booted up into NFS-RAMBOOT, you can remote into it with:
Code:
ssh 192.168.111.157
Then, you can save to a disc image with:
Code:
su
dd if=/dev/sda of=/netroot/image157.img bs=32256
You can restore from that disc image with:
Code:
su
dd if=/netroot/image157.img of=/dev/sda bs=32256
Note that even with gigabit ethernet, taking and image or restoring it will take a long time. 256GB of data at about 100MB/s implies 42 minutes.
I'm not a gamer, however when the OP refers to this topic, they said "online competitive gaming" Therefore, are the recommendations for Windows actually necessary?
Don't know, but given that some games are Windows-only, and we don't know the games involved, the lowest-common-denominator would be the safest route. I totally agree that if you're talking about browser-based games things may be fine. But online gaming could also be things like World of Warcraft, Eve Online, and other such things which are Windows/Mac only.
Lacking enough info from OP at the moment, but if it was me, I'd go the Windows route for the end-users in a public-facing environment. Less friction and user-maintenance only because of familiarity.
I have into account the comments made by businesskid/Tbone and currently looking into Isaac's idea.
All the computers run on Windows 7 Professional with the following games: League of Legends, CSGO, Dota2, Player Unknown Battlegrounds, World of Warcraft. No browser based games.
One other thing that springs to mind. With the networked maintenance, online gaming, maybe network storage, you would definitely need 1G ethernet working throughout. That places limitations on things, (e.g. maybe cat6 instead of cat5, max length of cables, etc) but it would be worth it. I trust you have decent bandwidth in the internet connection.
Thanks for all the replies.
I have into account the comments made by businesskid/Tbone and currently looking into Isaac's idea. All the computers run on Windows 7 Professional with the following games: League of Legends, CSGO, Dota2, Player Unknown Battlegrounds, World of Warcraft. No browser based games.
Given what I've seen at some client sites, you would do very well to load Windows 10 and dump 7. I'm no fan of MS, but I will say Win10 appears to run faster, and you can lock it down easier than Win7.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.