Is Mint good for learning networking and learning server management and sys admin...?

As the title says. Are there more appropriate ones and why? Am a Linux beginner but eager to somewhat get ut under control. I have Mint on a separate drive in my main PC, but I am willing to change if there are more suitable solutions.
Feel free to move the topic if its place isn’t here.
Thanks!

1 Like

@AnotherDev uses Linux in sysadmib work I believe.

The tools that come on a desktop aren’t really going to help you learn networking or server management, unless you use GNS3 or something like that.

You can use Mint for these things, but you’ll be using command line tools, which wouldn’t be different than if you had a box with a minimal/NoGUI environment that you ssh’d into to work with. That’s typically what I do. I have an Apple laptop that I do “corporate work” on, meetings, e-mail, chatroom, research, and other things like using an IDE or text editor. Then, I have a few virtual machines, cloud and local, that I ssh into and use for testing. They’ll have various things on them like Docker, mySQL/Postgres/Redis, nodejs/npm, Tomcat, Apache, PHP, etc.

Lately, I’ve been using Vagrant with Chef to test something on AWS or even in VirtualBox locally. Outside of some very particular shell scripts, things work the same across Debian, OS X, CentOS, and Amazon Linux.

So, yes, Linux Mint will be good for networking and server management, but don’t be surprised if you spend most of your time in the terminal. I recommend having a src directory to keep things you’ve cloned from GitHub/GitLab and built from source, and have a separate projects directory so you don’t cross your repositories. This is useful with things like rbenv, because you can have different Ruby versions for a “local” directory that differ from the system or global setting.

Same with Git, but that’s a post all on its own.

If you want to look at Linux networking specifically, take a peek at Ubuntu 18.x and how they do networking. It’s very different, but I believe it’s more friendly for SDN (software defined networking) if that’s something you’re wanting to explore. SDN is using the “Infrastructure as Code” archetype for networking stacks, using YAML, Python, and open source technologies. Very Linux friendly.

6 Likes

I am going to echo what @AnotherDev has said.

I use Mint as my desktop operating system but it is not used as a server based OS. It could be pushed into this role but then so could any desktop based Linux distro.

In my experience the main distros used for Linux servers are CentOS, Ubuntu, AWS Linux or Debian in their minimal headless configurations.

You then SSH into your server from your workstation and configure it. Once your server is setup you might find yourself connecting to it from your workstation with GUI based tools like MySQL Workbench for example it.

3 Likes

Thank you all for your inputs and expert advice.
Now, I’m fully aware that I’m going to have to get to know the terminal intimately. I’ve already installed a few things on Mint just so I can use a few commands and see if I manage frustration better than I have 12 or so years ago when I first came into contact with Linux. I have improved. I’ll Debian, then, since it seems to be mentioned a fair bit in the Dev waters. Then I’ll see where it takes me. I’ve also been discussing hardware in another topic so that’s also going to be a consideration depending on what I end up buying.

As far as networking goes, I have everything to learn. Do you have any pointers, advice resources or anything that I should take a look at? Tutorials, forums (aside from this one), courses, books…much appreciated!

1 Like

To add to what the others already said:

If you’re willing to invest $60-$70, I recommend you look into a Linux SoC (System-on-Chip) solutions, such as the Raspberry Pi or Odroid C4. This has the added advantage of having hardware to work with.

Yes, you can cut your teeth on Mint, but it’s not recommended. You can do it that way, sure, just as you can drive across the United States on a bicycle - however you will not learn to properly sysadmin a system that way, and if the Mint box is your daily driver, you may irreparably break something. If you do not have the money to spend on an SoC computer, GNS3 and Virtualbox is strongly recommended, since this way you are free to experiment without breaking stuff.

As for server distros, there are two main flavors of server distros, RHEL and Debian (and derivatives thereof, such as CentOS and Ubuntu respectively). Arch or Gentoo might help you get a better understanding of Linux, but is not run in many places due to the massive training costs.

I recommend you pick one distro, and stick with it until you know the ropes. Then learn the other main flavor(s), one at a time.

As for networking, start at the basics. You need to learn these topics:

  • The 7-layered OSI Model
  • The 4-layered IP Model
  • Useful programs: nc, ss, ip, wireshark (GUI), GNS3 (GUI), ssh, ping, traceroute, tcpdump, tc (iptables)
  • Layer 7 protocols: DNS, HTTP, SMTP, SNMP, SSH
  • Layer 4 protocols: TCP, UDP
  • Layer 3 protocols: RIP, OSPF, BGP, IP (v4 and v6), ICMP
  • Layer 2 protocols: LLDP, IEEE 802.11 (wireless), IEEE 802.3 (ethernet)

I know this list seems like an overwhelming task but it’s just like cleaning a stable. You start at one corner and then simply keep at it until done. :slight_smile: As for which corner to start with, learn how the OSI model works before all else, it then becomes much easier to place and name all other protocols. Second, learn TCP / IP and third learn DNS and how to use the programs to debug networks.

Good luck!

4 Likes

netstat is deprecated in Linux nowadays in favor of the ss tool. ifconfig is also deprecated in favor of the ip tool.

2 Likes

Thanks, I corrected the list and added tc and ip as well! :slight_smile:

1 Like

Thank you for this amazing write-up.
I’m already looking into buying a pair of raspberries and a simple switch, so I can start learning. I’m fortunate enough to have a friend who works in IT and is studying and specializes in networking. Along with this forum I think I should be ok!

You’re welcome! :slight_smile:

Oh, and one thing I forgot to add; Youtube has an incredible wealth of videos that explain stuff in various detail. If you’re willing to listen, a lot of the basics can be learned simply by subscribing to a couple of tech channels.

If you have further questions feel free to ask! :slight_smile:

1 Like

No.

Mint is not good. Go with centos RHEL distributions. No1 uses mint in sys admins networking etc.

1 Like