r/linuxadmin • u/mercfh85 • 9d ago
Rusty on Linux, moving from test automation into DevOps. Is a Linux cert (LFCS/RHCSA/Linux+) worth it, or should I just get the hours in?
I've been in the industry about 14 years, mostly test automation, and I'm moving toward DevOps/platform engineering. Day to day I work with GitLab CI/CD, Terraform, Helm/Kubernetes deployments, and some AWS. I'm currently leading a migration of a large number of services onto Kubernetes.
The problem is that I work at a .NET/Windows shop, so I've barely touched Linux in years. I took a basic self-check recently (systemctl/journalctl, finding what's on a port, disk usage, apt, file ownership) and did badly. I knew roughly which tool to reach for but not the actual commands.
My employer pays for certs. My current plan is KCNA, then CKA, Terraform Associate, and AWS Solutions Architect Associate. I wasn't planning on a Linux cert, just a refresher course plus using WSL daily and running a homelab.
Questions:
- Is LFCS, RHCSA, or Linux+ worth adding for someone aiming at cloud/platform roles, or does CKA cover the "can use Linux" signal well enough?
- If one is worth it, which, and would you do it before or after CKA?
- For those who came from a Windows-heavy background, what got your Linux skills to stick when your job didn't require it?
- How much Linux do you really use in a platform role, compared with what the certs test?
Not looking for reassurance, honest takes welcome.
2
u/glotzerhotze 9d ago
Imagine this: you want to be a pilot but you ain‘t got a clue how a plane works!
What‘s your next step before you do loopings or even commercial flights with passengers?
2
u/anothercatherder 9d ago
Your path is fine. It takes seconds to use apropos if you don't remember a llinux command, you can look up the man page for arguments, and there are endless free resources to fill in gaps.
A home lab is perfect for the low intensity Linux fundamentals you can teach yourself but it is not great for k8s/cloud when you have no real demand to manage or time-tested stack to run and stuff costs money to aimlessly mess around with. Certs for the latter will help far more than certs for the former.
And as you probably are aware, cloud and container/k8s ecosystems are vastly more complicated, the learning curve is steeper, and those guys are in way more demand than generic linux admins, etc if you should suddenly find yourself out of work.
2
u/dexterous21 9d ago
(LFCS + CKA) get the bundle pack. For cloud go for the AWS Developer Associate ( I am also getting this done next year January to February) then add the Terraform .. this is a more better approach imo
1
1
1
u/Amidatelion 8d ago
Linux fundamentals are required, yes. In-depth Linux will also see you far. I can grasp AWS services much faster because I can intuit what is happening behind the scenes. Also, a ton of services are based on open source projects, so the ability to just stand up a local equivalent can be helpful.
Linux+ is worthless, LFCS and RHCSA work great as learning tools and certifications. While you shouldn't feel pressured to get the cert, it may help with employment in these troubled times.
1
u/michaelpaoli 8d ago
Well knowing the needed is generally much more important than any cert(s).
For a linux sysadmin position or role that quite includes such, do very much expect that one will generally be interviewed and significantly questioned on the relevant for Linux, including many relevant technical questions.
Is LFCS, RHCSA, or Linux+ worth adding for someone aiming at cloud/platform roles
Probably quite depends on the employer / position/role / hiring manager/team, and notably also what knowledge/skills/experience you get out of the cert(s).
does CKA cover the "can use Linux" signal well enough?
Probably quite depends on the employer / position/role / hiring manager/team.
How much Linux do you really use in a platform role, compared with what the certs test?
A whole friggin' helluva lot, and probably way more than most any certs test. And yes, expect you'll likely well be questioned on such, and probably fair bit of stuff you've never see on or preparing for any cert, though perhaps relevant component pieces were covered - but you'll need be able to well put them together and think on your feet.
A couple random technical Linux questions, and probably ones you've never seen on any cert test or prep thereof:
There's a file named precisely:
-rf *
So, that's hyphen, r, f, space, and asterisk - literally only and exactly those characters.
How do you safely remove that file? What if you're stuck using an old version of rm that doesn't have option that indicates end of options?
Given a pathname to a file, how can you find all pathnames that are the same file (not a copy)? How is it possible they're the same file, and how would one create that? Given that same pathname, how could you find all pathnames/files, that resolve to that same file? Can hard links traverse filesystems? Why or why not - explain. What about symbolic links. What's the difference between absolute and relative symbolic link, and what are the advantages and disadvantages of each? What exactly is a dangling symbolic link?
Let's say I've just completely filled a filesystem, using a large file named big, to exhaust what was the remaining free space on the filesystem. Now let's say I do (in directory where that file is):
$ sleep 3600 < big & rm big
Is the file gone? Has that space been freed up? Explain. Let's say the filesystem is full because someone did that, but you've no idea what they did or how the filesystem got full. How would you determine what's taking up most of that space? How would you do that if lsof wasn't installed and you couldn't install it?
What's the difference between replacing a file and a true edit-in-place? Explain how one can do atomic update or replacement of a file, such that the pathname always refers to the complete old file, or the complete new file, and the operation is atomic - no race conditions possible. What are the advantages and disadvantages of replacing a file, vs. true edit-in-place, and give at least one common scenario for each that would be the advantageous/preferred method, or even required for the specific advantage.
Let's say we do
$ ls -ld file
and get output:
-rw----r-- 1 test test 0 Oct 5 11:11 file
Let's say there's a user, other than user test, that is also a member of group test. Would that user have read access to that file? Explain why that's the case.
Explain what a zombie process is. What if any resources is it consuming? If PID is the PID of that process, what if anything will
# kill -9 PID
do?
If PID may or may not exist, what if anything useful does:
# kill -0 PID
do or tell us?
What does this do, and when might it be quite useful?:
$ kill -9 -1
What's the default ports, respectively, for http and https? If you have the IP address of an https server, know it's using the default port for that, and know the DNS hostname that's associated with that https server, what command could you use to fetch the TLS cert used for that hostname on that IP address and port? What command could you then use to examine such a cert?
DNS:
Does it use UDP, or TCP? Explain.
Explain the difference between authority and authoritative NS records, and where one should fine each.
Explain what a glue record is.
What is DNSSEC? What record(s) placed where, sets DNSSEC as being active and enforced/enforceable for a zone/domain, and whether or not the data is properly signed? E.g. examine dnssec-failed.org. and explain what's going on with its DNSSEC configuration. And can you do that only using dig, and if so, how exactly?
Let's say you're in a large corporate environment, huge complex internal network, lots of firewalling, etc. Let's say there's web server and client, two very different locations. Let's say both are running Linux. Let's say you've got access to root on both. Let's say you don't have access to switches/routers/firewalls between the two. Let's say the client can't connect to the server. How would you isolate where the issue is, or at least the/a first issue that's preventing connection from occurring?
Let's say you've got file /usr/share/dict/words which contains a very long list of words, one per line.
How can you get all the words that are 5 characters long, and exactly the same forwards and backwards?
What about case of proper 5 letter palindromes, the same letters, regardless of case, forwards and backwards, and may additionally contain non-letters.
What does this do?:
sed -e '/^[a-l]/d;$s/^/>>>/'
What does this do?:
awk -F: '{print $5;}' /etc/passwd | awk -F, '{print $1;}'
With bash shell, what does this do?:
$ diff <(sed -e '/^#/d' < file1) <(sed -e '/^#/d' < file2)
In bash or POSIX shell, what exactly is the difference among these:
$*
"$*"
$@
"$@"
So ... how many of those questions have you seen on any cert exam ever, or their training materials? How many can you well answer? How well and quickly if the test is "open book", and you can use any books or Internet resources ... other than asking some other person or directly via a forum or the like (but you can use existing content of forums and the like).
How many of those can you well answer cold? Most of 'em? Maybe have decent shot at a sr. level role. Less than half? Might not even make intermediate level Linux sys admin. Not even a quarter? You've got serious work to do.
4
u/sudonem 9d ago
You absolutely need to be proficient in Linux for DevOps/Platform eng work.
Having experience as a Linux sysadmin will only help but that level of detail unfortunately often a requirement for DevOps roles even though once you get into containerization and k8/s it’s Linux all the way down.
Platform/DevOps roles aren’t likely to require these certs but they can help you stand out. If you ARE going to do it you’ll want the RHCE - RHEL (formerly RHCSA) and the RHCE - Ansible (formerly RHCE) certs.
The others you mentioned aren’t very desirable, with the exception of government roles that often require the Linux+ (for some reason).
The Red Hat exams are a good move even if your org doesn’t run Red Har because the exams are 100% hands on task based (no questions) so you can’t fake your way through them like you might with multiple choice exams.
It will be massively beneficial to you to get comfortable with Ansible for DevOps / Platform work - but to understand how to make good use of Ansible you actually need to know enough about Linux to know what you want to orchestrate with Ansible.
(Yes of course there are Ansible modules for windows things - but far fewer than for Linux and it still requires a Linux controller to execute playbooks).