Where to start?
-
@Reid-Cooper said in Where to start?:
Why not start with something really basic, like a simple website. Maybe make a DokuWiki site that you can host at home and use that to document your network as you go. Give yourself a real reason to be using the system right from the beginning.
The intention is exactly what I want to do and exactly why I asked the question. Thank you for the info. I'm always wanting an electronic calendar that everybody can connect to. I'll see what I can do about creating a site-based calendar.
-
Where I almost always start is something like Drupal. www.travisdh1.net is still almost blank. I need to start filling that out with what I've been up to!
-
@scottalanmiller has a really good list of projects to work on. I saved it for offline use but here it is quoted.
- There are some books in addition to the one I am writing here.
- Start with CentOS (I think he advocated Fedora now for most tasks)
- If you are serious about making a huge transition, phase out Windows in your life (temporarily at least) and go to a full Linux desktop / laptop to force yourself to change your mindsets about everything (Linux on the desktop teaches you nothing about Linux, but it might teach you something about perspective.) Use Fedora because it is closer to CentOS 7 and will prepare you for CentOS 8 when it comes.
- Build a Linux testing environment (you have XenServer today, replace it with KVM so that you have exposure to both Linux-ecosystem hypervisors.)
- Replace every Windows system you have with Linux, one at a time.
- Make loads of new Linux systems you don't have with Windows...
-
- Home web server / intranet
-
- Home info portal, WordPress
-
- Home shared data site, MediaWiki
-
- Home ticketing system, osTicket
-
- Home NextCloud or similar storage
-
- Home NFS shares
-
- Home PBX
-
- Home media server
-
- Home chat server (OpenFire, Rocket.Chat, MatterMost)
-
- Home minecraft server
-
- Home Jump server
-
- Home Ansible or Salt (or both) server
-
- Home backup server
-
- Home monitoring server (zabbix, zenoss, nagios)
-
- Home logging server
-
- Home firewall
-
- Home repo for faster updates with less bandwidth
-
Do you want to learn CentOS or do you want to learn how to manage an application on CentOS? I ask because, as a Linux noob, I found that when I installed Nextcloud on Ubuntu, I didn't learn a lot more about Ubuntu, but I learned how to install and manage Nextcloud.
I'm now at about 15 VMs running various flavors of Linux and each running it's own application.
While I've learned quite a bit by getting these applications setup, I don't know that I learned a ton about CentOS or Fedora or Ubuntu except as related to the installation and maintenance of those apps or websites.
I'm interested as to what will be suggested here to see if I should change my approach.
-
@NashBrydges said in Where to start?:
Do you want to learn CentOS or do you want to learn how to manage an application on CentOS? I ask because, as a Linux noob, I found that when I installed Nextcloud on Ubuntu, I didn't learn a lot more about Ubuntu, but I learned how to install and manage Nextcloud.
That's very true. If it is your first CentOS app, it will force you to do some CentOS things (depending on how you do the install) but not a lot of core CentOS things. Also, NextCloud specifically doesn't do things the "normal CentOS way" so you will be learning how to "work around" certain parts of CentOS instead of CentOS itself.
-
@NashBrydges said in Where to start?:
Do you want to learn CentOS or do you want to learn how to manage an application on CentOS? I ask because, as a Linux noob, I found that when I installed Nextcloud on Ubuntu, I didn't learn a lot more about Ubuntu, but I learned how to install and manage Nextcloud.
Well this is one reason why I try to make all my guides so detailed.
You see all the commands laid out for you.
Though, I will admit I got lazy and dropped the SELinux commands into a script on GitHub for my last Nextcloud guide.
-
This is really a general problem with operating systems. Think of Windows. I need to deploy IIS on Windows. How much Windows am I really going to learn while doing that? Very little. Operating systems always have this problem, you can do a million tasks on them and skip learning tons of things.
-
@scottalanmiller said in Where to start?:
This is really a general problem with operating systems. Think of Windows. I need to deploy IIS on Windows. How much Windows am I really going to learn while doing that? Very little. Operating systems always have this problem, you can do a million tasks on them and skip learning tons of things.
Right, and by doing things over and over for different applications, you learn more and more commands.
-
There are many tasks and skills that you will never learn on Linux as an admin, but need as an engineer. For example, an admin "never" chooses filesystem types, tunings or layouts. Only the engineers really ever do that. If you just deploy vanilla CentOS 7 VMs, you might never dive into XFS, EXT4 and BtrFS performance. If you never need to resize or snap machines, you might never touch LVM, even though it is really important. If you have plenty of RAM, will you spend time pouring over SAR, top, glances and free?
-
@NashBrydges said in Where to start?:
Do you want to learn CentOS or do you want to learn how to manage an application on CentOS? I ask because, as a Linux noob, I found that when I installed Nextcloud on Ubuntu, I didn't learn a lot more about Ubuntu, but I learned how to install and manage Nextcloud.
I'm now at about 15 VMs running various flavors of Linux and each running it's own application.
While I've learned quite a bit by getting these applications setup, I don't know that I learned a ton about CentOS or Fedora or Ubuntu except as related to the installation and maintenance of those apps or websites.
I'm interested as to what will be suggested here to see if I should change my approach.
I am not really interested in the application on top of CentOS as I am concerned about CentOS, itself. I am trying to find me a foothold coming from Windows into Linux. I can install about anything on Windows and manage Windows itself, pretty easily.
I have always wanted to learn Linux and really didn't care what kind of Linux as long as I had learned some form of Linux. I have heard Scott talk about how Red Hat has a major market share of the Internet and industries generally. I have a church friend that is also the IT manager for an international company. One day, I point blank asked him what distribution of Linux server he is running and he said Red Hat.
As we all know, Red Hat falls within the Fedora realm and a very close sibling to Red Hat is CentOS. Therefore, I am wanting to learn CentOS to therefore, learn Red Hat minus additional repos that are only supported within Red Hat.
I start learning CentOS, then I can start learning other systems, such as FreePBX, NextCloud, etc.
-
@JaredBusch said in Where to start?:
@scottalanmiller said in Where to start?:
This is really a general problem with operating systems. Think of Windows. I need to deploy IIS on Windows. How much Windows am I really going to learn while doing that? Very little. Operating systems always have this problem, you can do a million tasks on them and skip learning tons of things.
Right, and by doing things over and over for different applications, you learn more and more commands.
It's true. But you have to realize that you'll only learn the tiniest bit with each install. It reinforces things, but it is a slow go. You learn more from running systems than installing, but it is hard to really run one that you didn't install. I think having lots of machines is important, you need variety and quantity to start putting the pieces together.
-
@NerdyDad said in Where to start?:
I am not really interested in the application on top of CentOS as I am concerned about CentOS, itself. I am trying to find me a foothold coming from Windows into Linux. I can install about anything on Windows and manage Windows itself, pretty easily.
What do you "manage" on Windows, though?
-
Operating systems are, by definition, platforms for applications. So learning an OS is tightly tied to learning the applications, at least to some degree. Just like how hypervisors only exist to host VMs. No VMs, and the hypervisor doesn't really... do anything.
-
@scottalanmiller said in Where to start?:
@NerdyDad said in Where to start?:
I am not really interested in the application on top of CentOS as I am concerned about CentOS, itself. I am trying to find me a foothold coming from Windows into Linux. I can install about anything on Windows and manage Windows itself, pretty easily.
What do you "manage" on Windows, though?
Really nothing much more than the IP address, updates, activation, joining to domain with a computer name and that is it. I know how to get into the registry and make changes, if guided, but would not know where to go on my own to fix a problem. I know there is a loopback file but would not know where to go without doing some googling. I can manage disks and partitions within the GUI, but not command line. Otherwise, everything else is application layer on top.
-
@NerdyDad said in Where to start?:
Really nothing much more than the IP address, updates, activation, joining to domain with a computer name and that is it.
On CentOS use nmtui to set the IP address, yum -y update for updates and the domain you don't need. You've caught up!
-
@scottalanmiller said in Where to start?:
Operating systems are, by definition, platforms for applications. So learning an OS is tightly tied to learning the applications, at least to some degree. Just like how hypervisors only exist to host VMs. No VMs, and the hypervisor doesn't really... do anything.
Thus the reason, to put an application on top of the server in order to give the server purpose for living. Would you hire somebody and pay them without giving them something to do in return for you? No. That would be ludacris.
-
@NerdyDad said in Where to start?:
@scottalanmiller said in Where to start?:
@NerdyDad said in Where to start?:
I am not really interested in the application on top of CentOS as I am concerned about CentOS, itself. I am trying to find me a foothold coming from Windows into Linux. I can install about anything on Windows and manage Windows itself, pretty easily.
What do you "manage" on Windows, though?
Really nothing much more than the IP address, updates, activation, joining to domain with a computer name and that is it. I know how to get into the registry and make changes, if guided, but would not know where to go on my own to fix a problem. I know there is a loopback file but would not know where to go without doing some googling. I can manage disks and partitions within the GUI, but not command line. Otherwise, everything else is application layer on top.
The point being made here is to setup several systems that each do their own thing, DokuWiki was mentioned, maybe you setup a PBX etc.
As you install different systems you'll learn how to manage the operating system.
-
@NerdyDad said in Where to start?:
@scottalanmiller said in Where to start?:
Operating systems are, by definition, platforms for applications. So learning an OS is tightly tied to learning the applications, at least to some degree. Just like how hypervisors only exist to host VMs. No VMs, and the hypervisor doesn't really... do anything.
Thus the reason, to put an application on top of the server in order to give the server purpose for living. Would you hire somebody and pay them without giving them something to do in return for you? No. That would be ludacris.
Many people consider the application part of the learning, even when it is not part of the OS itself. And some things cross boundaries. Is Apache an app, or the OS? On Windows, it's an app no question. On CentOS, it's the OS. So the OS is much bigger, in some ways.
-
@DustinB3403 said in Where to start?:
@NerdyDad said in Where to start?:
@scottalanmiller said in Where to start?:
@NerdyDad said in Where to start?:
I am not really interested in the application on top of CentOS as I am concerned about CentOS, itself. I am trying to find me a foothold coming from Windows into Linux. I can install about anything on Windows and manage Windows itself, pretty easily.
What do you "manage" on Windows, though?
Really nothing much more than the IP address, updates, activation, joining to domain with a computer name and that is it. I know how to get into the registry and make changes, if guided, but would not know where to go on my own to fix a problem. I know there is a loopback file but would not know where to go without doing some googling. I can manage disks and partitions within the GUI, but not command line. Otherwise, everything else is application layer on top.
The point being made here is to setup several systems that each do their own thing, DokuWiki was mentioned, maybe you setup a PBX etc.
As you install different systems you'll learn how to manage the operating system.
Exactly. I'll know where to put the html files so that the webserver would know where to read and send information as requests come in, etc.
-
The place that I would start is with infrastructure, unlike something like NextCloud or WordPress, infrastructure pieces will force you to think about your Linux system. What about a jump box as a starting point?