I've gotten plenty of DevOps interviews, I even work myself as a DevOps Engineer right now - and I would say I only use Linux about 10% of the time - when I'm writing Pipelines for Github Actions. But that's literally just writing some CLI commands, nothing more. It's incredibly easy, and if i didn't know anything about Linux, I could learn what I need to do for my job within 2-3 days.
Yet on the internet everybody and their grandmothers are saying that you need to know a ton of Linux to be able to make it in DevOps, you need to read the Linux Programming Interface book, you need to know every thing inside out.
So question 1: Are people just lying, or are does it depend from job to job, or...? My experience is just that you can get by with knowing very little.
Question 2:
I've done a bunch of random tasks using Linux (for Kodekloud, just to get more adept).
Just to list 6-7 random ones:
-
Installed & configured PostgresQL databases, users and their permissions
-
Created Linux users with non-interactive shells, and linux users with expiration dates
-
Managed incoming & outgoing connections for Apache & Nginx using IPTables
-
Used sed & awk to manipulate strings through bash scripts.
-
Limited access to webservers through securing URLs with PAM Authentication - requiring OS users to authenticate their SSL connection before connecting
-
Implemented passwordless SSH authentication for scripts
-
Configured Apache servers, controlling ports, changing headers, hiding version numbers, and redirecting URLs
Just a bunch of random tasks like this - quite a few more than this. I google my way through like any good engineer. If you ask me anything about the Kernel or whatever, or how Linux actually works, what are the differences between the Distros, I woudn't have a clue. What is the difference between the /etc directory vs /home directory vs all those other random directories? No idea.
So do I "know" Linux? How much do I need to know to be able to say I "know" Linux? And why do all these subreddits say you need to "Know" Linux when the only time I ever use Linux in my job is when I'm writing very basic CLI commands for e.g a pipeline in Github Actions - which is less than 10% of my job?
Videos
This question come of course from a total noob. Please, do not be harsh on me. I just could not find detailed answer and some people that I know, don't use linux at all and while they are not 100% time DevOps, they never needed a linux on their PC. Maybe this is true only if you are doing only some basic stuff and you are not full DevOps guy?
As far as I know, most stuff just works on Windows right now (docker, kubernetes, ansible etc). Do they works much better on Linux tho? Is there anything that just does not work on Windows and just require Linux?
I know that most of the cloud run on Linux but if you are working with AWS or Azure, you still work with everything by using either AWS or Azure portal or this looks different and for example you need to use console a lot and thus ssh to the server etc?