So my company is switching half our Windows servers to Linux....
Posted by A_SingleSpeeder@reddit | sysadmin | View on Reddit | 527 comments
I've been in IT for almost 3 decades. I've dabbled in Linux but I've never had to be a Sys Admin for it. Those days are over. I'm watching some Plural Sight (my company has a subscription) training videos and I'll start building a test server next week. We aren't changing overnight but in the coming months. Any tips on learning how to be a Sys Admin for Linux would be greatly appreciated.
I've been a Windows Sys Admin forever it feels like. I've dabbled in Linux, like I said, dabbled in the Cisco firewalls and switches, and all sorts of other software like Atlassian (building Jira, Confluence), etc. So I have the aptitude just not sure where to start besides the Plural Sight videos.
skankykankles@reddit
Get to know the folder hierarchy - where executable programs/tools are located. As many have said already, the CLI will be your best friend once you get to know it.
desmond_koh@reddit
Get a Linux distro (preferably the same one that you will be switching to) and install it on your personal laptop. You’ll learn your way around in a hurry because you will be forced to.
It is a good skill to push yourself to learn something new. Linux is basically required nowadays. Has been for a while in fact. I am surprised you made it 30 years without learning more about it. But hey, never too late to start and learning new stuff is fun.
Kamwind@reddit
Since they are doing RHEL... Go get a personal account, not business email that will be used for business subscription, and then sign up for a developer license on redhat. It is free and allows you to download all the redhat images; it does require that you renew the subscription every year.
Also you will be contacted by redhat sales, just tell them you run it at work and using it for studying for redhat certification and they will stop contacting you.
dustojnikhummer@reddit
Just curious. Work offered to pay for some courses. We run Oracle Linux and Debian, would a RHCSA be worth it even considering? I'm a homelabber so I got a grip of Alma/Debian basics but still.
Kamwind@reddit
The oracle cert is multiple choice the rhel one is a lab computer you are given a bunch of things to do on an image. Unless it has changed there were hardly any job listing that mentioned an oracle linux cert but lots for rhcsa.
dustojnikhummer@reddit
Well, OL is still Redhat based (we run it because of databases) so I'm thinking it could still be useful
Kamwind@reddit
It you just want it to increase you knowledge then sure, but in that case why spend the time and money(there is still expense even if company pays for the cert) for the cert.
My thinking is that you should invest the time and possible money on certs that will help you get a job you want, and oracle cert does not look wanted enough for that. Other thing is it does not look like oracle has yet to come out with the version 9 certification. So the cert name on your resume would be "Oracle Certified Professional Oracle Linux 8 System Administrator Certification" with the 8 version just a few years from end of life kind looses some life to it.
dustojnikhummer@reddit
Honestly it's mostly just for the general linux admin stuff which I can learn on my own. I'm not a DBA, we have different people for that. I'm also not job seeking now so that is why I'm just looking at options.
Thanks
Kamwind@reddit
Look for the Sander van Vugt courses, they are excellent have labs and everything else if you just wanting the learn the skills.
wired-one@reddit
Yes. Oracle Linux is based on RHEL. The courses would help you in your management of Oracle LInux.
i_am_fear_itself@reddit
Scrolled till I found this comment. /u/A_SingleSpeeder doing this is an accelerator. When you force yourself to use it at home, doing it on the job feels less daunting.
Then again, with almost 30 years in, you probably get as far away from them as possible when the whistle blows.
mangeek@reddit
Just a heads-up on that. It might be hard to get your hands on RHEL or Oracle Linux to play with, but you can definitely look nearby int he family tree of whatever flavor your company is going to run and use CentOS Stream for those.
If your company is going with Debian or Ubuntu, it's easier to bring up your own lab systems.
Also, pay attention to what value-adds your vendor supplies. Red Hat in particular will often 'buff up' an open source set of packages and rebrand it as a different product name in their ecosystem. If you want Tomcat servers on Red Hat, you probably really want "JBoss Web Server". If you run Red Hat Certificate Services, that's really just Dogtag PKI.
flurfdooker@reddit
I'll second this. Eons ago I worked at a university when Novell switched over to Linux and we had exactly one summer to get up to speed. I figured "screw it" and installed SuSE on my work desktop so I'd be forced to get used to it. It's the equivalent of immersive language training, like moving to a country to learn a new language. SuSE in 2005 had a workable desktop environment but it wasn't easy, and I had to learn the ins-and-outs of Linux fast to do my job. I had three certifications six months later.
There really isn't a better way to learn an OS than to just have to deal with it on the daily. Even using Linux as a desktop will force you to learn so much you can use as a sysadmin.
desmond_koh@reddit
100%
You know how to install it. Know what file systems are available, know how to connect to a network, install packages, etc... You learn a lot by using it.
But if you install it on your "secondary" machine and plan to "learn it when you have time" it will never help.
flurfdooker@reddit
Remember the "Compiz" 3D rotating desktop?
https://upload.wikimedia.org/wikipedia/commons/c/cb/Fedora-Core-6-AIGLX.pngI learned damn near everything about the basics of linux kernel/driver installation trying to get that shit to work on a Dell desktop with an unsupported ATI card. It took me two weeks. When I finally got it working my boss said it was good I finally figured it out, because if I took any longer he was going to have to fire me.
desmond_koh@reddit
Yeah, I used to run Windows XP under VirtualBox on one side of the cube.
Linux isn't hard to get working anymore. It will support 99% of your hardware out of the box if you use one of the more mainstream distros. It's almost as easy as Windows.
TipIll3652@reddit
It's not unheard of. We just had a guy retire who knew practically nothing about Linux.
desmond_koh@reddit
No, not unheard of. But you do have to life in a pretty homogeneous Windows-only world.
Geminii27@reddit
Not everything's automated on Linux. You'll have to manually install your own spyware and ads.
GenerateUsefulName@reddit
No Linux Copilot? Get outta here!
heinternets@reddit
What do they run on the Windows servers that they are switching to Linux for?
Reasonable_Host_5004@reddit
The CLI is your friend. You do not need a GUI for most administrative tasks. Once you are comfortable using CLI you will appreciate it.
In Linux everything is a file. Learn navigating inside the CLI, finding files and editing files (nano is the easiest text editor in my opinion).
Before editing a file, copy it and add ".backup" to the end of that file. If something goes wrong you do have the original file accessable.
hops_on_hops@reddit
Lol. You mentioned Nano and summoned all the vim evangelists.
r3rg54@reddit
Tbf it will occasionally be the only available text editor.
steavor@reddit
Not on common server / LTS distros. We're not talking about Linux-based appliances here, but most likely run-of-the-mill stuff, and there you'll actually find nano preinstalled more often than vim.
snark42@reddit
POSIX standards require vi be present. What systema are you talking about that have nano and not vi?
_wojo@reddit
I was under the impression he was referring to vim and not vi.
steavor@reddit
Exactly, the original comment referred to vim and while that is the more comfortable variant of vi you'll find it missing (by default) on several distros. vi is a must per POSIX, vim is not.
Hoooooooar@reddit
thats good because VIM is the fucking devil. I get it though, I know how to play dwarf fortress with my keyboard and I'm completely lost in the new steam graphics version of it. But even in old dwarf fortress SHIT MADE SENSE SO ITS NOTHING LIKE IT FUCK VIM ITS TERRIBLE
drashna@reddit
tbf, it's not a love of vim, it's stockholm syndrome.
NullReference000@reddit
I strongly prefer nano and use it exclusively on my Linux machine, but still recommend that you learn the basics for vim. Some images don’t come with nano, but they will always come with vim. If you’re doing sysadmin work it’s better to be prepared for that.
chron67@reddit
I have been using both for years but I still occasionally have to google VIM commands.
VIM is great for editing sensitive files where I want to be ultra sure not to commit any changes without reviewing them. Nano is better for pretty much everything else I do in /nix land.
r3rg54@reddit
What is nano better for?
chron67@reddit
From my perspective? Most things. I don't think either is objectively better. Nano suits my preferences.
I'm good either way so long as we can avoid emacs.
PM_ME_CALF_PICS@reddit
Not getting finger cramps c
r3rg54@reddit
Nano seems worse for this…
tejanaqkilica@reddit
I just need to uncomment a line. Nano will do the job just fine.
mnvoronin@reddit
That's until you stumble upon a terminal that randomly butchers escape sequences.
syneofeternity@reddit
Claude using PowerShell -> wsl -> scp adds them everyyyyyyyyyyyyyyyyy time. It's been driving me crazy
MeccIt@reddit
I refuse to use it, it's vi or nothing.
xdownsetx@reddit
I've got a lot of hostility toward vi because I've gotten trapped in it once trying to get my internet back up in OPNSense.
n3rv@reddit
Sorry the best I can do is Vi. What year is it? lol
tose123@reddit
Vim ... Nano... Just use ed(1)
Ludwig234@reddit
Come on just use echo
tose123@reddit
Some implementations of echo are not POSIX compliant. So i'd use printf instead
Fr0gm4n@reddit
vi is required by POSIX. You can be sure it will already be installed on most any system. Nano is not. And, depending on your environment you may not be allowed to install it. Just learn vi(m).
ihaxr@reddit
A cheat sheet for vi is helpful, just make sure you go through it and make sure you understand what each thing does so you're not panicking when your vi session doesn't recognize your arrow keys to move around the file and have to learn how to move with
hjklSupraCollider@reddit
…Text… editor? I just use printf, cat and sed to work with files 😏
RangerNS@reddit
C-x M-c M-butterflyLeadershipSweet8883@reddit
For OP... when people say software is easy to use, they typically mean easy to learn. For experts, a more functional program with lots of options is easier to use than one with a pared down feature set that is easy to learn.
Nano is easy to learn and not difficult to use.
Vi is difficult to learn and easy to use.
Pick your poison. If you are just going to be editing a few config files now and again just use Nano. Make sure you understand the very basics of vi in case you get stuck using it. If you are going to be doing a lot of work with text files, vi is seriously a really powerful text editor but it takes time to learn.
ThellraAK@reddit
Speaking of which, just because a folder appears empty doesn't mean it is, ls -a to see files and folders starting with a .
Cas_Rs@reddit
Not me always typing ‘ls -lah’ wherever I am on a server
reinkarnated@reddit
ls -lt
ThellraAK@reddit
For really common ones I like to add stupid simple scripts to my path.
Like I would do LS for ls -la
bartonski@reddit
Also note that the CLI is where Linux and Windows are the most different:
sed,grep,cutand other members of the GNU textutils suite are your friends. Spend a bit of time learning what they do.2>&1to merge STDERR into STDOUT, but the mechanism allows for far more flexibility).Coming from a Linux/Unix background to Windows, these are things that are rough edges for me when I use powershell, and they're features that I think windows users don't know to learn about because they're not the windows way. I think that there are options to make powershell do most of the things listed above, but they're certainly not core pieces of functionality the way they are in *nix.
Also, learning a few bash keyboard shortcuts (largely based on emacs or vi editing commands) can make your life a lot easier. Understanding how bash does tab completion alone will make life on the command line far less of a chore.
Cyhawk@reddit
Fix that for ya.
P10_WRC@reddit
I second nano.
calculatetech@reddit
Micro is infinitely better coming from Windows
mats_o42@reddit
Edit is now cross plattform
bentbrewer@reddit
This may be true but using vim will increase your quality of life dramatically. I use vim key bindings everywhere possible, it’s just so much faster than having to switch to the mouse all the time.
fearless-fossa@reddit
Imho it's better to just jump in and learn vim if you're going to administrate Linux servers professionally. It's just more present, and faster when you need to do meaningful edits.
fadingcross@reddit
What modern Linux servers doesn't have nano.
fearless-fossa@reddit
Alpine
fadingcross@reddit
If you're editing files that need nano or vim in a container you're doing a lot of wrong stuff, lack of nano is the least of your problems
fearless-fossa@reddit
I didn't say anything about containers.
But honestly, I'm more in favor of vi/vim/neovim because I haven't seen a single person using nano at a somewhat acceptable pace. Maybe it's somehow possible, but I feel like you hit the ceiling in terms of capability when you first launch the program.
fadingcross@reddit
If you're using vi/vim/neovim to edit text in a matter where speed is of the essence, you're doing a lot of wrong stuff. You should be using an IDE.
robisodd@reddit
Though a hypervisor and not a server, VMware's ESXi. Lots of trial-by-fire learning of vi.
j0mbie@reddit
While servers generally always have nano, a lot of Linux-under-the-hood devices only have vim, and don't let you install anything else.
I prefer nano for most of what I need to do, but it's often just not there.
ShadowSlayer1441@reddit
I've actually seen images that have nano and don't have vim.
Mei-Guang@reddit
Seems that the most bare and basic images always have vi. Depending on what you use for ssh the colors can be difficult to see with vim. I keep it simple with putty since I'm a Windows admin generally and opening wsl to ssh never became a habit for me.
jmbpiano@reddit
It sounds like you may not be aware of the magic that is
:set background=[light|dark]...Mei-Guang@reddit
I dunno I've been using it the way I have for 10 years. It's not a big deal really, but my original point is using vi/vim is good practice since I have never seen it not installed for a default.
j0mbie@reddit
I could swear I had a device before that only had nano, no vi or vim, but I didn't remember what it was.
billyalt@reddit
Not likely for OP to run into such a thing tho
sudonem@reddit
Most enterprise Linux distros (I.e. RHEL/Rocky/Alma/CentOS/SUSE) do not include Nano in the server installation config by default.
r3rg54@reddit
It’s much better in many ways. Nano can be used as a crutch at first, but please rip off the bandaid and start using vim asap.
Supermathie@reddit
… angry upvote for the pun cancels out the angry downvote for suggesting nano
scarlet__panda@reddit
I third thru eightieth nano
dreniarb@reddit
Dang, never any love for Nice Editor. As a Windows admin I prefer it over any other I've tried.
kiloglobin@reddit
Nano for life
Regis_DeVallis@reddit
lol you said copy and it reminded me that the difference between cp and mv are really important to know.
deafphate@reddit
Speaking of files, if your system claims a volume is full, but there's plenty of space available, check to see if there are any available inodes. I've encountered that a couple of times and it was so frustrating to figure out the first time 😂
AFlyingGideon@reddit
Know
vi. Useemacs.sgt-hug0-stiglitz@reddit
Nano is not installed in a recover environment. Learning vi/vim is beneficial, even if you start with nano as you get confident in the console.
pnutjam@reddit
Nano is great, but you should still learn vim basics. It's better once you're comfortable.
Also, everything was a file until systemd, but that's still a good starting point.
khobbits@reddit
Nano is easy.
However, vi/vim is more commonly installed by default everywhere, and more powerful.
My suggestion is:
If you just need a text editor to work, use nano for now.
If you're playing around, and want to learn, try vim.
It definitely has a larger learning curve, don't try it when you're stressed.
affilag1@reddit
What flavor of linux? Will they be redhat by any chance? They have a product called Redhat Satellite that helps with content/patch management, its basically the redhat version of MECM. If it's redhat ask about Satellite licensing
jt-atix@reddit
good point - and if it is not redhat or at least not only redhat, than there is orcharhino, which is based on the same openstream project as redhat satellite (Foreman/Katello) but with support for other distros as well (rocky, alma, oracle, suse, ubuntu, debian)
rebornSouljr@reddit
Im sorta in the same boat. Think about it this way. You are not learning from co.plete scratch. You have windows as a reference for the fundamentals and concepts. Google and AI is your friend. Pretty soon it will be second nature.
Valdaraak@reddit
Once you start poking around with Linux, you'll wonder why the hell you didn't start sooner. Some things are way easier and more logical than Windows. Not as much fighting the OS.
Some things are, obviously, more difficult though.
Potential_Copy27@reddit
Some things are harder, while other things are easier - but I wholly agree on your point about fighting the OS. Seems like half the time you're fixing something that Microsoft decided to break or re-enable.
IMHO Windows 7 (and its server companion) were the last proper reliable versions of Windows. After this, Windows stopped being just an OS and became more like a complete platform/environment - imho it went downhill from there.
A few months ago, I migrated most of my stuff at home to Linux. Yes, things took a bit more time to set up and get the things I wanted going - but maintaining things is almost like a vacation and a lot of it can be automated.
Coming from heavily Microsoft-centric environments where I had to resolve tons of stupid errors and going over to Linux was almost like having a big rock taken off my shoulders. A good part of the server stuff I have going on haven't been touched for months bar the occasional apt update and apt upgrade (safety first!) - everything has been running just fine.
canyonero7@reddit
SOME things. I like Linux a lot but Windows, Mac, Linux are all just slightly different flavors of the same bugs and issues. The more you're doing with them, the more complex the failure modes become. Everyone hates the one that's personally given them the most headaches.
Unique-Squirrel-464@reddit
When it comes to servers, almost ALL things are easier with a Linux server, not to mention you will have less issues and more stability. When it comes to a desktop, then Mac > Windows > Linux.
BemusedBengal@reddit
The Linux desktop is easily better than the Windows desktop. There's no built-in spyware or malware and no ads. Existing hardware also gets faster over time.
jasmeralia@reddit
Hard disagree, personally. I've used Unix/Linux all of my career, and mainframes even before that, and only begrudgingly started doing some minimal Windows Server admin stuff in the last decade at my current role, but I very much believe that in terms of UI/UX, traditional Unix DEs rank dead last. IMO, tthe previous commenter was dead on saying that MacOS > Windows > Linux in terms of UI/UX. I've used KDE, GNOME, Enlightenment, Blackbox, OpenWindows, CDE, XFCE, Window Maker, FVWM, After Step, Unity, and others, and I just do not want to use Linux as a workstation today. I was even involved in helping organize collaboration between the different X11 window managers towards the establishment of the extended window manager hints specifications that let KDE apps work with GNOME/Blackbox/Enlightenment/etc. docks and vice versa, things like that, and I still don't want to run a Linux workstation personally. I had high hopes at one point, but nothing ever really panned out in my book. Appliances like SteamOS for gaming can be fine, because they're custom fit for purpose (and Steam's Gaming Mode is a fairly decent UI FTMP, excluding their actual store integration, which is a weird browser abomination in terms of UI/UX), but I'd much rather SSH into the Steam Deck to do something rather than boot into Desktop Mode using KDE Plasma. Actually, I'd expand upon what the other commenter said and rank things as MacOS > Windows > Android > general purpose Linux. MacOS with Homebrew or Windows with WSL give me the power of Unix with a decent UI baseline, and that's something that I just have not been able to find in Linux, as much as I wish it were otherwise.
But if you disagree, more power to you. I just can't personally tolerate the same experiences as you.
flummox1234@reddit
truth 🤣
sequesteredhoneyfall@reddit
Great trolling.
canyonero7@reddit
In an Active Directory domain, kerberos auth from Linux can be an extra headache where it works out of the box in Windows. Macs are a headache because there's so much variance between versions (some work great & some are nightmares). If you're cloud/web first, obviously Linux is easier across the board.
I have a lot of love for Windows Server 2012 R2 (Win8.1). Windows is like MacOS; some versions are great and others are shit. Windows Server 2019 (Win10 1809) is also very stable. 2016 was trash. We're still running 2012 R2 lots of places but we've eliminated all 2016 servers.
What's your favorite Linux server version? Most of our Linux server VMs are prepackaged from vendors for specific applications so we have mostly CentOS and RHEL.
tankerkiller125real@reddit
Most of our servers where I work run Ubuntu Server, however we're starting to look at moving to Fedora Server given at least where I work, we don't need the Pro support stuff from Ubuntu, and we aren't happy with their "shove SNAP into everything" approach.
sequesteredhoneyfall@reddit
Like what?
sillycritersenjoyer@reddit
I found overthewire bandit to be a great way to introduce yourself to some linux basics. Check them out
scarlet__panda@reddit
Spin up proxmox at home and break some things. I learn the most by breaking it at home, and then fixing it.
A_SingleSpeeder@reddit (OP)
We've decommissioned a couple of servers this year and I have already told my boss I'm setting one up with Proxmox to test it out. I've been managing our VMWare environment for 10 years but with Broadcom sucking to the end of the world, I'd love to move away from it. I have a buddy who did late last year and likes Proxmox. This will be a fun summer.
scarlet__panda@reddit
I just deployed a proxmox stack at home and had a blast. Was running plex and some services on Windows Server and it just was not working out. I built it out of spare parts. Old matx case and mobo, found an i7 7700k, old 500w psu, my old rx6600 gpu and 64 gb ddr.
Ended up with 15 containers and a VM. Here are a few.
pppjurac@reddit
RRR! Hello matey, how's sailing the Carribean today?
pppjurac@reddit
Proxmox is fun too.
Check https://community-scripts.org/scripts for many, many scripts, lxc and such for proxmox . It is legit site and very helpful.
zimm3rmann@reddit
Yup. That’s how I originally got into it. My colleague and I are both in our early 30s and run a sizable Linux fleet. Both got started in our teens running game servers and just figuring stuff out as you break stuff.
phillymjs@reddit
This is how I’ve done my best learning for the last 25 years. Build it on your lab bench at home, tinker with it, accidentally blow it up, repeat. Eventually you’ll know it forwards, backwards, and sideways.
“Everything’s in the cloud” BS has taken that ability away for some things, but not Linux servers.
linuxpaul@reddit
HI there - definitely look at WolfStack https://wolfstack.org it's awesome.
zantehood@reddit
RHCSA is a good cert for this
Silver-Ability-3181@reddit
You've got the aptitude and experience, you're really just learning new syntax for concepts you already know. Get solid on
systemctl, file permissions, SSH, grep/awk/sed Build the test server, break things intentionally, fix them. That's the fastest path with your background.donith913@reddit
This is how I view it when I have to hop into Linux land for a bit. Okay, this thing runs as a service… how do those work in this distro? Whats the binary to read from a text file again? Ah dang it, where do they hide the static IP settings?
Obviously not everything is 1:1, but at the end of the day an OS is an OS, they aren’t (usually) doing anything too far out of left field. I’m not fast at it, and I definitely don’t know best practices or edge cases but I get by and just try to be cognizant of my limitations.
And then there’s SELinux…
BokehJunkie@reddit
> Ah dang it, where do they hide the static IP settings?
as someone who works basically only in linux, this is still so damn frustrating to me. I'm still bothered by the fact that we haven't really standardized this yet.
bentbrewer@reddit
https://xkcd.com/927/
BokehJunkie@reddit
This comic strip lives rent free in my head.
Just yesterday I got frustrated that we hadn't standardized how windshield wipers work in cars. My truck and my wife's car are completely different mechanisms on completely different sides of the car.
The one in life that gets me questioning my life decisions every time is that I swear every time I go to a hotel they've invented a new, dumber way to operate the shower.
Ferretau@reddit
Let me guess your wife's car is European.
BoltActionRifleman@reddit
Yes those showers drive me bonkers! Not to mention many of them no longer have any kind of labels like H C On Off etc.
skippergimp@reddit
And trying to navigate hotel showers without your glasses on is a nightmare
OPhasballz@reddit
This whole comment chain is why I love reddit. How did we go from linux to hotel showers?
archnemisis11@reddit
Because people using Linux and people with trouble using hotel bathrooms due to confusion both commonly wear glasses?
Viharabiliben@reddit
I thought because they smell funny?
archnemisis11@reddit
I don't know... one of them at least is trying to use the shower.
RevLoveJoy@reddit
One of us! One of us!
Dolapevich@reddit
It is easy you olny have:
Debian/Ubuntu and other derivatives use /etc/network/interfaces, /etc/network/interfaces.d/
Unless they use NetworkManager which live at
/etc/NetworkManager/NetworkManager.conf, /etc/NetworkManager/system-connections/
unless they are using netplan, which usually live at /etc/netplan/
but wait, netplan render yml for NetworkManager or systemd-networkd.
If you are on RedHat and other derivatives, the traditional
/etc/sysconfig/network-scripts/ifcfg-*
unless they are using netplan or NetworkManager or netplan
If you are on Suse, it might be using /etc/wicked/
But wait, there is more!
On Arch: /etc/systemd/network/ and networkctl
While on Gentoo, most likely /etc/conf.d/net, or directly /etc/init.d/net.* scripts
Or maybe someone decided to go old school and build their own scripts.
The good thing with linux is that it gives you so much rope, you can hang yourself with it 😄
justjanne@reddit
And that's why you just force systemd's networkd on all servers, and NetworkManager on all end user devices.
Then it's actually relatively simple. If you didn't support the half dozen of third party TCP/IP stacks for windows 95 back in the day, you shouldn't support all the options on linux today either.
uzlonewolf@reddit
You start switching to systemd-networkd, and then find out ProxMox only supports /etc/network/interfaces 🙃
spacelama@reddit
My ansible playbook has an exception for them sigh.
dagbrown@reddit
And then you discover that Red Hat removed systemd-networkd in RHEL 9 and you're stuck with Network~~FuckUpper~~Manager.
Dolapevich@reddit
Agreed, making a convention is the safest route; but you still need to know the diversity that there is out there.
I was a trumpet winsock man back in the day :-P
aes_gcm@reddit
DNS routing in Linux is still way more inconsistent than it needs to be.
syneofeternity@reddit
It's such a pain in the ass.... currently dealing with this now lol
Hydraulic_IT_Guy@reddit
Windows felt left out and has made things worse with recent versions of their new UI that is taking 10 years to roll out.
nikomo@reddit
We did, ls /etc/systemd/network/
OctoNezd@reddit
Careful, you are gonna summon openrc fanatics
xpxp2002@reddit
Ha I'll go there. systemd is an abomination and I'll die on that hill. Goes against every principle of simplicity that Linux/Unit and GNU is built upon.
I remember the first time using a distro that switched over to it and being nothing but frustrated at how complicated simple stuff like changing DNS resolvers and service scripts became. The biggest surprise to me was how many major distros switched to using it seemingly overnight with no meaningful challenge to whether it was the right thing to do.
dagbrown@reddit
You've had fifteen fucking years to learn how to use it. At this point, continuing to whine about it is just pure incompetence. You're not defending traditions, you're just backward.
I mean, sure, those shell scripts were hard to write and all, but they were never very good to begin with. And you didn't write any of them anyway, did you? Startup scripts were always given to the intern to write as a beginner project, and it shows.
Unit files provide a consistent startup method so that all of the processes on your system have the same startup code, and that startup code was written by a bona fide expert.
mnvoronin@reddit
OK, I'll bite.
I can write a program that runs in foreground and logs to stdout while doing whatever the service thing I want it to do. Once I'm happy with the debugging and reading the logs on the console, I can wrap it with a five-line systemd unit and it'll have:
journalctl -u <my-service>Or if it's a periodic job, add five more lines for a timer unit and it'll do the same but on schedule.
What alternative system is simpler than that?
drashna@reddit
because it's not actually about simplicity. It's about sunk cost, and e-peen measurements.
OctoNezd@reddit
I think DNS, in particular, is a major pain without systemd-resolved. Dhcpcd. writes to resolv.conf on some distros, networkmanager might start Dnsmasq or write to resolv.conf.
And network configs are even worse: some distros do ifupdown, some do networkmanager, and old rhels have separate config files which write networkmanager configs for some reason??? Canonical tried to fix that with netplan but no one takes netplan seriously, sadly. I prefer netplan configs compared to systemd-networkd.
Though I am biased and unexperienced, the only time I used non-systemd is when trying out alpine on extremely low spec VPS (which went great) and upstart on Nokia N9 (which is a terrifying experience) and my first distro was Ubuntu 16.something
PM_ME_CALF_PICS@reddit
You call? Systemd🤮
nikomo@reddit
I'd be afraid, but they haven't managed to convince anyone to rewrite enough unit files for their init system to actually boot a full system, get online, and start a browser enough to read what I wrote.
mpdscb@reddit
Well it was originally standardized for years (using the UNIX standard) but then they started changing the way they do it every several releases.
rav-age@reddit
quote "The nice thing about standards is that you have so many to choose from"
sdeptnoob1@reddit
It's fun when you have multiple managers installed and have to find the one actually in control.
Rentun@reddit
I mean, we kind of have. Systemd-networkd and iproute2 are the defacto standards.
Every major distro has iproute2 installed, and its well supported in documentation. There's not much of a reason to use any other tools for simple userspace network configuration.
RangerNS@reddit
Ubuntu, Debian, Mint, Fedora, RHEL (and clones) all use NetworkManager as the default network configuration tool. openSuSE/SLES may direct users through Yast, but uses NM for the heavy lifting, and NM can be used directly.
So there absolutely is a standard unless you want to make things difficult for yourself.
alucardunit1@reddit
Honestly at this point you should know enough about managing windows servers that some llm can translate what you know to Linux.
Sudden_Office8710@reddit
Get some micro ITX boxes and load it up at home. No one wants a noob learning on the job possibly deleting or wrecking things. It’s like skiing or snowboarding if you’ve never done it before you have to start on the green runs and work your way to the blues then the black diamond and double black diamond. If you’re on an expert run you’re liable to break something critical. No one likes someone learning on the job. At least I’ve never been anywhere that that has been the case. Luckily I know everything and am the best skier/snowboarder on the mountain 🤣 some inter subreddit humor there.
donith913@reddit
I know enough Linux to do my job. I used it as a desktop during the Vista dark ages, been tinkering since Kernel 2.4. I’ve administered small chunks of Linux servers most of my career and I have a homelab and Raspberry Pis. But I don’t claim to be an expert in it, whereas I’m (sadly) quite deep in Windows administration.
It’s important to know your limitations and acknowledge when you can or can’t do the job. Want me to deploy and manage Kubernetes on prem? Ehhh, let me lab that for a bit and take a class. Need me to spin up a LAMP stack like it’s 2008? Probably can handle that.
Current home lab project once a PSU arrives will be building Llama.cpp to run on an Intel GPU in Docker on Ubuntu after tinkering all week in WSL2 on my gaming box with it. I get by.
The idea no one learns on the job is patently stupid, by the way.
Sudden_Office8710@reddit
Wow, you got all butthurt by my post. I guess you never been on the jokes on the other subreddits. I guess that’s speaks more to your insecurities than my pithy comments. I get it you’re a hard core sysadmin and proud of it.
crypticsage@reddit
Question, for services in windows, I try to run them using GMSA. Not having to deal with a credential and be able to provide it the appropriate permissions to resources is amazing.
I don’t think I’ve ever seen something similar to it in the Linux world. Is there something like gmsa or will I be stuck using service accounts with a password that I need to document and protect somehow?
donith913@reddit
Truthfully, I don’t have a lot of expertise here. I know you can run a systemd service as a user account, but how you manage the credentialing isn’t something I have much experience with. I would imagine the most common thing is a password vault with a shell script that rotates the password regularly or similar. But maybe there’s a deeper integration I’m not familiar with - it wouldn’t surprise me.
hyperflare@reddit
Do you mean something like systemd-creds? https://wiki.archlinux.org/title/Systemd-creds
donith913@reddit
Sure looks like it fits the bill.
Also, the docs using “hunter2” as the password in an example really got me.
Nu-Hir@reddit
That sounds like a password some idiot would have on their luggage.
donith913@reddit
https://knowyourmeme.com/memes/hunter2
It’s from an old bash.org quote, from when IRC was still big. Now get off my lawn.
Nu-Hir@reddit
I know what it is. I was just merging memes.
IAmTheM4ilm4n@reddit
Don't cross the memes! Crossing the memes is BAD! It'll summon Zuul!
Nu-Hir@reddit
THERE ARE NO MEMES, ONLY ZUUL.
Ghost11793@reddit
Now get off his lawn.
axonxorz@reddit
Feels like this will pass into internet apocrypha before long
donith913@reddit
The open internet was much cooler than whatever we have now (this site included).
Loading_M_@reddit
Because of how system accounts work on Linux, they usually don't have passwords - in fact you can't even login to them. There are a set of tools (mostly sudo) to execute commands as another user, which also allows tracking of who executed the command as the system account.
fearless-fossa@reddit
Best approximation I know of are service principals and then using kerberos keytabs
crypticsage@reddit
gmsa can also use service principals assigned to them.
One way I’ve used them is to run the service say a sql server. The service runs with the gmsa. It also has the spn tied to the account directly. In a failover environment, because the spn is tied to the account not the system, the failover system uses the same account and therefore SPN record.
Fr0gm4n@reddit
It's really just advanced permissions, not terribly far from LGPO.
infinite012@reddit
Application installed and running
setenforce 1
Application installed and not running
Head -> desk
Centimane@reddit
While true, its documentation and tooling is complete ass.
If I want to define a brand new SElinux policy I'm compiling a small C-like binary (I don't think it's actually C).
https://docs.redhat.com/en/documentation/red_hat_enterprise_linux/8/html/using_selinux/writing-a-custom-selinux-policy_using-selinux
While I agree most of the time SElinux is pretty straightforward, when some software takes the lazy route and ignored SElinux (expecting you to turn it off), it is worse than it ought to be to resolve.
megoyatu@reddit
No, they won't be using aptititude, he said they're using RHEL.
Silver-Ability-3181@reddit
My bad
Dustinm16@reddit
Apt is short for Aptitude apt is a Debian based package manager for Linux. RHEL is Fedora or CentOS based. RHEL uses yum.
He was making a joke cause you said Aptitude, which is not on RHEL systems.
We like to have fun here.
bigibas123@reddit
I thought
aptitudewas a TUI package manager for dpkg and apt.And
aptcame from something like Advanced Package Tool or similar?lungbong@reddit
No TUI is a travel agent/airline.
mikey_yeah@reddit
Or a beer if you're from NZ
mirrax@reddit
Yeah,
aptis the package manager andaptitudeis the ncurses TUI but the original joke still works since you wouldn't haveaptitudeon adnf`yum`-based OS.r3rg54@reddit
Apt is not short for aptitude
project2501a@reddit
dnf5 from RHEL 9.5
Brandhor@reddit
it use dnf since 8.0
NoPossibility4178@reddit
dnf is a version of yum, so....
megoyatu@reddit
You could even say a dandified version...
megoyatu@reddit
but all of the RHEL documentation (last time I looked) still says "yum"... but that's just a symlink to dnf - so I consider both 'correct...ish'. 😄
Silver-Ability-3181@reddit
it went over my head...lol
goingslowfast@reddit
*whoosh*
Itchy_Journalist_175@reddit
I haven’t seen
aptitudementioned for a very long time!doughnut_cat@reddit
get-apt humor
JasonDJ@reddit
Ahem....
sudo dnf install humor-utilsfizzlefist@reddit
burnte@reddit
Nice.
pimflapvoratio@reddit
I’ll add in learn docker/podman and note powershell is available on Linux.
circling@reddit
Yuck
jasmeralia@reddit
Pwsh isn't horrible and the most important part in this case is that it will help bridge the gap until they get more familiar with other more native options like bash or python or such. I mean, given the choice of teaching someone new to the industry bash or powershell, if it were solely about the language syntax and ignoring considerations like install footprint and my decades of personal experience, I would definitely choose powershell. Bash is an ugly and very unintuitive language in comparison to, well, virtually everything else that's still regularly used. (OK, C ranks ahead of that, but mostly for more insidious footgun reasons like memory management, but it's also not a scripting language, so let's ignore that for this discussion.)
I find powershell to be a bit on the excessively verbose side of the equation compared to python/ruby, but that's actually a positive thing for less experienced coders. Bash is quick and dirty, and the short term benefits of quick are often outweighed by the long term detriments of dirty. It's also easier to install pwsh on Linux than bash on windows (ignoring WSL, which is a whole different beast).
That said, OP, you definitely should set up WSL on your local workstation and use that in addition to your Linux test servers and/or containers. You can have multiple different Linux distributions installed in WSL; for a while I had 3 on my work laptop; Ubuntu 22.04 LTS, Debian Bookworm (I think that's 12? I'm more familiar with the codename than number for Debian), and Ubuntu 24.04 LTS. I just nuked the 24.04 distribution recently because I needed to free up disk space, and I still maintain active 22.04 servers while I don't actually have any 24.04 servers. Basically the important thing to know about WSL is that it runs a shared Linux kernel inside Hyper-V and uses a dedicated Hyper-V switch for all the distros. Most changes to WSL instances you can just shut down the instance and relaunch it (through
wsl -t <distro>, simply logging out of the session does not necessarily shut it down), but if you're doing things that touch the kernel layer, you will likely need to usewsl --shudowninstead, which will affect all running WSL instances. Anyways, Docker is great for testing applications and such, but WSL is like dual booting between Windows and Linux... without actually having to dual boot. And with WSLg, you can even run Linux GUI apps, too, not just stuff that runs in a terminal. The main downside to WSL is that it's backed by VHDX files; those grow dynamically just fine, but they do not shrink. And do not try to configure them with sparse mode, that will quickly lead to data loss or worse. You can access your WSL files from windows via\\wsl$\<distro>\, but\\wsl$\can't be shared over SMB/CIFS. You can also access your Windows files from WSL via plan9 via/mnt/c/<blah>(adjustas needed for other drive letters, obviously), but plan9 isn't great at performance, particularly around lots of small files. Specifically avoid accessing git repos stored on Windows from within WSL, that's where you will see the bottleneck the most directly, you're better off checking out the repo locally within the WSL filesystem itself. But I routinely symlink say~/Downloads/to/mnt/c/<username>/Downloadsfor convenience. And if you're using WSL, VSCode supports it really, really well.Speaking of terminals, Windows Terminal is great; it natively adds sessions for your WSL distributions as you install them (although it doesn't autoremove them), and can run PS5.1/Pwsh 7.x, or you can set up sessions over SSH, AWS SSM, or other Azure stuff that I haven't played with, since we're not an Azure shop. Terminal uses a JSON config file and you can even customize the sessions to be organized into folders, although that (currently) requires editing the JSON directly, it's not yet configurable through the settings interface. But once you set it up initially, it's not too hard to maintain, and since it's JSON, you could always just script it. I'm sure there are probably tools out there specifically for that. Biggest downside is that you can't mix elevated PS tabs with non-elevated tabs (pretty reasonable, imo), and you cannot reorder tabs via the mouse in elevated mode, you have to specifically configure keyboard shortcuts to move tabs left/right one tab at a time (why?!). That part still makes no sense to me, apparently they can't do it for some obscure technical reason where the elevation would cause it to crash instead, but it's just absolutely bizarre to me. Not really a big deal, though, just something to be aware of.
walkalongtheriver@reddit
As a Linux admin, I don't want to follow someone using power shell when they could use the native tools.
Theyre going to have to learn them eventually so why not cut out the tech debt before you start? Bash isn't hard nor is python. Same way I wouldn't recommend someone installing python on every windows server just to run one or two scripts that could've been done simpler with existing tools. Or git bash for the same reason.
Just my two cents.
NightFire45@reddit
This, containerise everything. Also Portainer is a great GUI for this and the Business version comes with 2 free nodes.
drashna@reddit
personally, I find dockhand is better than portainer. And doesn't randomly lose all of my config every few months.
osmiumblue66@reddit
Excellent point by Silver-Ability. Most sysops and admins are naturally curious, so the above suggestion should help a lot.
Linux is easier to manage IMHO vs Windows Server Core. I earned my MCSE many years ago and had to learn Linux, much like you are now. Glad I did, it helped make me more confident with direct commands and scripting.
If your comfortable with using CMD line or PowerShell, you'll learn it pretty quickly. You likely already know some Linux if you run VMware or Nutanix in your environment. If you manage storage, there are several brands that are Linux based as well.
Having Linux management skills is also a great addition to your résumé.
You can do it. And hopefully you'll be glad you took on the challenge too.
Erok2112@reddit
The problem starts when you forget which OS you are managing in a terminal and start using Linux commands in a Powershell window or vise-versa. I've done it a handful of times and did my own head smack.
jasmeralia@reddit
The funny thing is that Powershell has built in aliases for a lot of common Linux commands, and they work... until you try using cli arguments that the Powershell equivalent just doesn't support, at all. So you can totally use
lsin pwsh (I believe it's an an alias toGet-ChildItemsor something like that; I know the native pwsh alias isgci), but doingls -ltotally fails. 😆psiphre@reddit
easy mistake to make when ex. ls works in powershell
TheGreatNico@reddit
Then you get used to it and you have an old server that's only got cmd and you have to remember the real commands
doubled112@reddit
You would think so, but I keep getting surrounded by people that don't seem to know what investigate and figure it out mean. Go looking? Read logs? Research? Logic? Woah, that's crazy talk!
osmiumblue66@reddit
Ugh. I know of which you speak and have led people like this. Had to finally institute a "rule" that if an engineer is coming to my desk with a problem, they need to have a good idea why it happened and have a couple ideas how to proceed with fixing it. Otherwise, I would just nod and say hey that's interesting, get back to me when you finish your investigation and have some potential solutions.
Valheru78@reddit
Don't forget the bash cli, that's one of the most elementary things in Linux to learn.
For the rest, totally right, I learned best by breaking and fixing, not reinstalling, fixing a broken system.
stoltzld@reddit
Don't forget to study SELinux a bit.
Joya021@reddit
Vrai question mais je suis admin linux j'en bouffe tout les jours et j'utilise jamais sed ou awk, je vois pas en quoi les admin l'utilise à part pour des script Bash
Prestigious-Past6268@reddit
This is the way
Brua_G@reddit
And of course it's partitions and directories rather than "drives"
hunter1BadPassword@reddit
Unless you don't have Ubuntu or Debian, then you'll not ave aptitude
Conercao@reddit
This! I started out as a windows admin before taking the plunge into UNIX/Linux.
Do some courses, make VMs and then break them. I still use this site for reference to this day. You can't know everything, so when you find something new to you, make copious notes. I've been on this side of the fence for over a decade and I'm still finding stuff I've never heard of.
asdlkf@reddit
Oh, and as the single most likely config thing you will fuck up:
every time you update the bind9 configuration file, you have to update/increment the serial number or it will not apply the changes.
AFlyingGideon@reddit
Are you referring to increments of the soa serial in zone files?
asdlkf@reddit
Yes
AFlyingGideon@reddit
Also... that's not the most common error I've seen in zone files. That would be forgetting the terminating period on record values where it's needed. Perhaps second most common would be creating a CNAME record with the same name as one or more other records.
Fr0gm4n@reddit
Or demanding a CNAME at the zone apex.
AFlyingGideon@reddit
Where there are NS records, but yes.
AFlyingGideon@reddit
Ah. That different than making changes to band's own configuration.
fried_green_baloney@reddit
A few other things that come to mind.
Learn Bash for shell scripts.
Learn Python (or even Perl) for more complex scripting, if you don't already know the language.
May or may not need: Learn crontab for scheduling actions on servers.
rookie_one@reddit
Also one important thing to keep in mind : in all unix-based/unix-like systems (including linux), everything is a file, unlike windows, these operating systems do not even have the concept of a registry.
So every configuration change for applications or the operating system itself is done through config file and either reloading the application or reboot the operating system.
AFlyingGideon@reddit
Assuming "reloading the application" means restarting it...
There are plenty of services which can be told to reread their configurations without restarting. In many cases this doesn't matter much, but some services are much quicker to reread their configuration than fully restart.
I added the caveat at the start of this message because many applications call rereading their configuration "reloading", so there's some ambiguity.
rookie_one@reddit
True, which is why I used the reloading term instead of restarting (it really depends on the application)
AFlyingGideon@reddit
Yes.
I could also point out, since others have mentioned
systemd, that a restart can trigger a cascade via dependencies. I coded a systemd configuration to set up the firewall/routing logic for a podman container recently and about half the time I'd "restart" instead of "reload" as i was building it ... which would cause the container to also be restarted.sgt-hug0-stiglitz@reddit
Use the man pages on console or at https://linux.die.net/man/
Explainshell.com is a real life saver for command flags as your learning commands.
If you are in an enterprise Linux environment (RHEL,Fedora,Rocky) Redhats docs are great.
Go register for a developer.redhat.com account and you can get 16 entitlements and hook into the official repository’s.
Silver-Ability-3181@reddit
Use the RHCSA exam objectives as your study roadmap even if you never take the exam, it covers exactly what a RHEL sysadmin needs to know.
ItsNotGoingToBeEasy@reddit
Join the OSS community it’s built upon. Tinker. Submit.
tamtamdanseren@reddit
ChatGPT, Claude and etc are really good at Linux and can be an immense help.
Also: Some programs have default configs that haven’t changed for decades, so they might be very conservative when it comes to how many threads and ram they allow themselves to use. So make sure you check the settings after having installed stuff.
SC_Athletics@reddit
Start with common basics:
How to create users
How to manage file permissions
How to start stop restart a daemon(service)
Where to check for logs and grep for errors
How to configure a service, start with ssh, nginx/apache
How to set a static ip and dns
Learn about iptables, selinux and run levels
Learn to use vi/vim/nano
Learn to find a service or process and stop and also kill it
This will get you moving in the right direction. It’s same concepts except no GUI
This is common stuff across any server management
cyberdriven@reddit
Linux > Windows
EmphasisElegant3601@reddit
Welcome to the darkside. We have cookies.
linux_n00by@reddit
the best way to familiarize with linux is to install it and use it daily.
of course theres a udemy videos too but its a supplement
Dizzybro@reddit
Do you know what OS? You could ask the higher ups for RHCSA training classes and certifications
pdp10@reddit
Variance between Linux distributions is mostly differences in package management, a few defaults and conventions here and there. Unless you're using a non-Systemd distribution, of which Alpine and OpenWrt are probably the only ones commonly used in enterprise.
H3rbert_K0rnfeld@reddit
Not just non-ststemd. They're non glibc.
wildcarde815@reddit
I struggle to imagine a group just starting out ever willingly going the route.
H3rbert_K0rnfeld@reddit
That's funny. Android is non glibc also yet it has the widest install base of all the distributions. No one thinks about support or insurance.
wildcarde815@reddit
ok? we're talking about a group just starting out in linux converting windows servers to linux. They're going to use a supported os like rhel, ubuntu or suse. They're not building phones.
H3rbert_K0rnfeld@reddit
The original comment was differences between Alpine / OpenWrt and RHEL / Ubuntu / Alma. The OP didn't mention the most important difference - glibc vs non-glibc.
I don't care about the groups skillset or Linux initiative. The company aligned itself a specific way. That way will likely cost them their business.
JoeyBonzo25@reddit
Nobody cares about that. They're just going to use RHEL or Ubuntu and never think about it.
Brilliant-Race8606@reddit
Just curious, what are their benefits in enterprise? I’ve never seen non-systems distros used before.
dustojnikhummer@reddit
For regular servers not many. In containers or embedded devices systemd can be bloat.
xXxLinuxUserxXx@reddit
Alpine is often used as base for containers because of it size (super slim). OpenWrt is basicly an os for routers / switches. The later is likely more a prosumer thing than enterprises.
Systemd kind of bloats a system because of it's many features and dependencies. That's why some distributions try to avoid it but for hosts / vms most people will just choose a distribution with systemd as it solves many common things (logging, log rotation, restart of crashing services, cron jobs etc.)
A_SingleSpeeder@reddit (OP)
Oh yea, forgot to mention that. My director is very big on support so we're a Red Hat shop.
pat_trick@reddit
Absolutely hop on the RHCSA certification train. Even the general skills learned from the classes are applicable to other distros. It's where I started learning some years ago, and the baseline skills have been useful ever since.
droog62@reddit
Have you compared the support costs of Ubuntu vs. RHEL? I prefer Debian based package systems over anything Red Hat to start, so I admit I'm biased, but the cost of RHEL is nuts compared to Ubuntu.
Supermathie@reddit
Ask your Red Hat rep if any training courses or discounts are included with your ongoing licensing costs.
Blog_Pope@reddit
Need to understand the goals; How many will you build (do you need to automate deployment), what apps will be running. The RH certs used to be tough, I expect thy still are. Managing 10 systems is a lot different than managing 1,000
A_SingleSpeeder@reddit (OP)
Somewhere in the realm of 10-20 max systems will be deployed. I won't have to manage them all myself as my director and manager have been doing it for a few years and they left all windows mgmt to me. So they will be my resource when I first start out.
Dizzybro@reddit
You could always just do the study guides online for RHCSA as a stepping stone.
Do you run VM's at home? spin up a headless one and fuck around with it
MSgtGunny@reddit
Installing powershell core into your OS base image might make the transition easier as you can use a familiar scripting language while learning everything else
_Aaronstotle@reddit
Yeah if you can admin windows you can for Linux and vice versa, tools are a little different. Can spin up some VMs in WSL2 on a windows machine for an easy experiment
cwk9@reddit
People who have spent their entire careers with windows sometimes get really worked up when they have to use a different OS. Don't! Your a sysadmin and an OS is just another peace of software. It's all just memory, compute storage and network. If your a kick ass admin with one OS you'll still be a kick ass admin with another.
seanhead@reddit
IMHO the biggest thing from the "modern" unix side that really splits from the windows side of the camp is "cattle not pets". Automation at any real sense of scale is the name of the game. I have fedramp high machines doing PII stuff with long uptimes measured in hours. Security problem? Delete it. Update from a vendor? delete it. Kernel patch? delete it.
That's not everyones life in various different ways, but if you can automate you're way there... it's not that bad.
jafo@reddit
I'm coming from the other direction, been a Unix and Linux SysAdmin for \~40 years, but our database servers are on Windows. Claude and Claude Code are amazing for helping to figure things out, diagnose things, write scripts. I'm always asking it to write/modify Powershell scripts, and that sort of thing, and while doing it it can help you learn as well. Warning though, one of my coworkers pasted something without knowing what it did, and I had to help her rescue her laptop. 😉
syneofeternity@reddit
It's been a pain in the fucking ass for me with just small clock in computers
varmintp@reddit
Since you are going RHEL. https://www.redhat.com/en/technologies/management/satellite
nhpcguy@reddit
You are lucky, linux is great. Recommend you get into the two major player in the corporate world Redhat and Ubuntu
dariansdad@reddit
That's a good start. You'll be so happy to exit the Windows-sphere.
SleepOnTheRoofDaily@reddit
Tactical dot
LeadingPokemon@reddit
You are cooked.
frankiea1004@reddit
Build yourself a lab. You can start with Mint and from there go to other distros.
MastodonMaliwan@reddit
If it's internet connected, piece of cake. If they're isolated/airgapped, may god have mercy on your soul.
RumRogerz@reddit
Welcome to the world of linux.
Ansible is going to be your new friend. I would put this on your list of things to learn once you get the Linux fundamentals down
Ubermidget2@reddit
+1. Far too many people running snowflakes/systems where a rebuild is a catastrophically difficult event.
Ansible lets you run a herd off Cattle, rather than a house of Pets.
snarkofagen@reddit
Seconded
n00lp00dle@reddit
spin up ubuntu server on a test machine and see if you can do the basics like setting up disks and configuring network.
youll be glad youve made the switch in a few months.
jfarre20@reddit
I had an LLM code up a little management dashboard / linux agent that I can access over a secured vlan, its great. Now I want roll out linux everywhere.
alexandreracine@reddit
Change one piece at a time, not on Fridays, not before vacations, and find an easy way to backup the machines..... Proxmox + Veeam, or Proxmox + PBS.
Have fun!
Kind-Character-8726@reddit
Best thing to do is switch your own desktop to Linux. Debian or Ubuntu will probably give you the easiest pathway.
Then just start using terminal where possible to do things like change your IP. Get to know the tools like nano, vim l, etc.
But to be 100% honest if you have been in IT for 30 years and haven't really done the dive into Linux I'm curious why, why haven't you been motivated enough to do this already?
gurilagarden@reddit
If you actually want to be proficient, and not look like an old in-the-way asshole to your peers in the office, it would behoove you to pick a raw distro to use as your daily driver at home. Arch, Slackware, something CLI heavy. If you know the business is going RHEL, then grab fedora or an actual redhat install, if Ubuntu, i'd suggest installing the server, and turning it into your desktop. ] Linux WILL force you to the command line, you will learn quickly. Use Vim and Nano, switch back and forth, you need to know both. Most of the advice I'm seeing in this comment section sucks. Reading books, taking classes, reading study guides isn't going to get you where you need to be. Using the operating system will get you where you need to be. It would be very helpful if you ran other windows computers at home, and gain a stronger understanding of samba and nfs, along with bind. Gemini/claude are great for getting good answers fast. I have found the frontier models to be fairly good with linux. Just specify your distro. Get curious. Know where the logs are. Understand what's in /etc. Learn fstab. Understand how to interact with systemd. Become an rsync master, and Cron. If you guys are moving to linux and there's like one guy in the building that actually knows what he's doing, you guys are gonna break shit, so you need to get up to speed. You will have some long nights. The best thing you can do for yourself, and your career, is get your curiosity back. Fuck around and find out.
dektol@reddit
Windows is complicated compared to Linux you just gotta stop clutching the GUI. The licensing alone.
indigo196@reddit
https://www.amazon.com/UNIX-Linux-System-Administration-Handbook/dp/0134277554
Try that book out. It helped me immensely.
el_seano@reddit
Was gonna share this if nobody else did. My favorite book about sysadmin'ing in general.
indigo196@reddit
I changed so many practices based on reading this book. Personally, reading this, processing this, and applying it to your environment will make you a sysadmin deity amongst mere mortals :-)
Heat_Numerous@reddit
Yes! This is a great book!
pat_trick@reddit
Seconding this; this handbook is a great resource for learning how Linux/Unix systems tick, and how to get a hold of the generalities.
Calm-Show-9606@reddit
Get a box, load the version of Linux your going to use and start playing with it. Load it several times to see the difference different configurations do.
duane11583@reddit
Hint yea they have powershell for Linux
Stay the fuck away from this
Buy the book the unix programming environment by Kerrigan and and pike
Old book and teaches basic shell and awk tools
binkbankb0nk@reddit
Just curious why. Often cost is the reason but then you mentioned Red Hat. Is it something else?
A_SingleSpeeder@reddit (OP)
One of the lead developers prefers Mongo to SQL Server so that's the big push. Of course, he said soon but he also talks out of his arse so who really knows 'when' it will happen.
Roland465@reddit
Mongo sucks. If you're going to go full Linux look at Postgres.
Ruben_NL@reddit
oh no...
I hate SQL Server because there are just better free alternatives, like Postgresql. But don't go for Mongo!
Mongo was explained to me once like this: "take a database, like SQL Server, and remove all foreign constraints/keys, and remove all datatypes."
Don't do it.
(I'm saying this as a dev who is dabbing his feet in sysadmin, who has used both systems as a dev and as a sysadmin)
sendme__@reddit
Mongo is good for huge amounts of data that is coming to you and you don't mind loosing a few records along the way. Yes it scales to infinity without braking stuff.
Best examples I received was: let's say you have the busiest highway in the world and 50 cameras that get plate numbers, car info, etc. mongo will keep all that info for you, from all the cameras, can play with data however you want, without braking a sweat. However if you have let's say an online store with lot's of static items, accounting, manage payments, etc sql is better.
Both can be good, depends on the situation.
A_SingleSpeeder@reddit (OP)
Trust me, I'm not thrilled. This fella is my arch nemesis at work too. We've had a blow up before. He has issues but is very good at talking over people, if you know what I mean.
Good info to pass along about what to look out for on Mongo though so thanks for that!
ccsrpsw@reddit
That makes me think they want to push you to Linux to side step any permissions/restrictions you place on them in a controlled windows environment.
So read up on Linux security (file system permissions, sudo control, how to sandbox things, etc.) and be ready for the "I need 'su' access for <insert trivial task that doesnt need elevated access really here".
Look into PAM. Also look into patch management. That one is often overlooked. You dont have an (OOB) Intune/SCCM world. You do have MDM and management options - its RHEL so I think they have their own but consider also things like SuSE's MLM product.
And if you need to reach any level of compliance, look into what Linux resources they have and what settings you need to enforce. And how to prove it.
Its not insurmountable, but devs do soo it as a way to try and end around the Windows GPO/policies/controls so be prepared to dig in on some of those.
4wheels6pack@reddit
Everything /u/ccsrpsw is spot on.
On the patching front: both NinjaOne and Action1 support Linux, and I use them on a small number of clients. Haven’t run into any show stopping issues
GeneMoody-Action1@reddit
Thank's for being an Action1 customer! Anyone wanting to test that can easily use our 200 free endpoints to either test or fully keep it and maintain the servers for free. We simply do not target sales in the 200 or less range. For those we offer a free patch management solution that is fully functional in the free version, same as if you had purchased 5000 of them. IF that covers you entire need, then it is our gift to you, let us know if you want to buy more or support.
If anyone would like to know anything more about it, I am always around here somewhere, you can message me direct or just mention Action1 and I tend to show up soon there after.
GeneMoody-Action1@reddit
This person admins!
Linux makes absolute sense in many ways when building purpose driven bare bones systems. You can get smaller footprints, less attack surface, and more resources on idle. One can argue preference here, but not pure efficiency.
Linux in the correct hands can be stripped down to suport a bare minimum of resources neded to run a laser targeted platform. Then much much granulalry firewalled, logged, etc...
IF your service stack supports changing half out to linux, its an excellent move in efficiency, security, and maintenance. At scale it can save significantly monetarily and cut admin burdens significantly as well.
RikiWardOG@reddit
100% agree with this take here.
fearless-fossa@reddit
If they're going to go for RHEL, setting up IdM and tightly controlling who can execute what with sudo is a nobrainer
AFlyingGideon@reddit
I'm a long-time UNIX user who manages Linux system and would never touch anything MSFT, but "prefers Mongo" is a red flag to me. There may be good reasons to avoid a relational database in your case but "prefers" doesn't seem like one of them.
vadavea@reddit
This would concern me more than the Windows->Linux bit. Devs love Mongo but for sysadmins it can be a "day 2" nightmare.
gangaskan@reddit
Probably something to do with kubernutes
I_Blame_DevOps@reddit
Former Windows Sysadmin turned dev here - so take what I say with a grain of salt.
I’ve loved being Linux only - assuming I’m administering it from a Unix based system - whether that be WSL or preferably a MacBook.
For context I’ve dabbled with Linux for probably 15+ years at this point. But it’s just so nice not being locked into the Microsoft way of doing things. My biggest “gripes” are that there’s an increasing number of ways to do things.
Used to everything was apt-get, but now there’s Snap, Flatpack, Packan, etc. Ultimately they all do the same thing though.
I’d be curious if your company is moving to “old school” Linux on bare metal or VMs or if they are moving to Docker, Kubernetes, or something cloud hosted like ECS/EKS or similar.
If you are going to move to a hosted public cloud option, that’s when things (in my opinion) get fun because you have access to a lot of APIs that allow for easier automation.
milennium2@reddit
Como sysadmin windows prefiero renunciar a venderme a linux.
Corndawg38@reddit
First step is learn the filesystem (/dev /etc /home /usr /var other...) and where files are in general so you arent stumbling around.
Second learn simple regex and how to use it with grep/sed/awk and programs like that.
Third, learn systemd and specifically how to stop, start, reset and create new services from scratch. Creating a new service seems intimidating but it's really not... usually it involves making a '.service' file in the /etc/systemd/systemd to start some command on startup repeatably going into the future.
Fourth learn vim, somewhat proficiently (no need to be an expert just memorize a few basic favored commands: quit, undo/redo, jump to a line or even a specific character on the current line). ThePrimagean on youtube has some great tutorials on how to use vim. Also keep in mind you don't HAVE to use 'hjkl' for moving around, you can still use the arrow keys if you want.
.
Those 4 skills arent going to make you an expert right away, but they will make you FAR more comfortable on just about ANY linux box, even one that you got from a vendor, didn't install yourself, and is just a blinking cursor where you're sitting there thinking... "ok crap no GUI or mouse control, what do I do now with this server?"
And as a sysadmin, you will find yourself on that "GUI-less" type of Linux a lot at work, not by choice, but necessity, trying to fix some server or vendor box by running a command or two.
immortalsteve@reddit
I dabbled for years, but MS's recent moves made me rip the bandaid and install it. Powershell 7 is on a lot of distros, no reason to stay on windows other than appearances.
_wojo@reddit
Outside of provisioning hosts (which I would say could probably come later, it sounds like you guys can kind of muddle through installs manually for a while.) I'd say becoming proficient in systemd has a lot of value. Journalctl is a great tool and learning the systemd units you'll be responsible for is a great start to determining service health.
Near future, it would probably benefit you to become acquainted (outside of cd, ls, cat) with bash (if statements, for loops, variables and return codes) and some of the GNU tools that are available (grep, sed, cut, find, echo) pipeline/string manipulation. These can be really powerful for collecting and reporting objective evidence about hosts.
Hopefully that gives you something to chew on!
thedanyes@reddit
So your company has a support contract for the new Linux based operating systems they’re expecting you to maintain?
RazerRadion@reddit
Switch your desktop pc to Linux tonight, and set up a home network using all Linux. Do it all, set up samba, proper permissions for your family, docker, all of it.
Get rid of anything windows and force yourself to do everything in Linux.
tanzWestyy@reddit
Ansible and Linux are like two peas in the pod for VM configuration. Get on some IAC. Throw in some Terraform too bro. Configure the VM without having to login boss! Will change your life!
MostlyHarmless97@reddit
I was made the default Linux/Unix guy at my org by merit of being new and having free time. I barely had any experience, except for some occasional personal dabbling. As long as you’re a curious individual who can read manuals, the sky’s the limit!
edgeit@reddit
sudo rm -rf /* = Bad!
Arildm@reddit
I was in the same boat as you are. I have only dabble with Linux and thought I would never need it.
So, I bought a Claude annual subscription and found an old desktop and installed Proxmox. Installed the Claude CLI and told Claude "learn me the basics, make some error I need to solve and teach me how to install software and monitor them.."
Claude gave me a 68 lessons course where he goes through everything that I should learn. It gives me good insights and also tells me where I am wrong (since it’s has CLI access) and when I fix things, it applauds! (Virtually of course).
I just installed, on my own, a 2FA solution on-prem yesterday and I am so eager to show this to my colleagues at work. (Yes Claude could probably done it in about 10 minutes, but then I wouldn’t learn it). It’s a small program but Claude has made me really work up my game here.
Should give it a try. You will be amazed.
freakflyer9999@reddit
I needed to learn AIX (IBM Unix) back in the day. My boss let me purchase a 1 year of unlimited training classes. I think that it was $10-15k back in the late 90's. After 3 or 4 weeks of classes (they really could have been combined into about 10 training days) I was fairly comfortable on my own to admin AIX.
Over the years I've also administered numerous Red Hat servers. Mostly learned on my own and used the available documentation.
I also was a Windows admin for many years.
With all of that said, I would recommend that you find a two week boot camp or similar. If your company is going with Red Hat, I know that they have training that can be purchased or even included with large contracts.
If they aren't going Red Hat, then research the large national training companies and find courses. I prefer hands-on training, classroom mixed with lab time. Apply what you learn immediately after you learn it.
Of course all of this depends on your company budget for this project. If they are serious they need to provide adequate training. If they don't then you can obviously find resources on your own, but honestly I'd start typing my resume.
honkies_for_donkeys@reddit
Shout out /r/linuxupskillchallenge/
cdoublejj@reddit
windows server is the odd man out, it's only a few percent of the server market share. surprised it didn't happen sooner.
qroter@reddit
Wipe your home machine and load what ever flavor the company is moving towards. Figure out how to do things, that will be the best way. 😁
ranjop@reddit
Just get your hands dirty. The real beauty with Linux is that lot of the system is based on plain text shell scripts and logs. Easy to figure out in detail what is happening. I don’t work as a professional admin, but I have been maintaining Linux servers for almost 30 years. Those are really reliable and things just work (once you have got them working). Take it as a learning challenge.
Logical_Sort_3742@reddit
If you have the funding, Red Hat classes are really good. With the exception of selinux, pretty much all you learn is generic and relevant to all Linux varieties, not just Red Hat. They will take you from complete beginner through to a very useful admin, and make sure you don't have big gaps in your knowledge.
Heck, even if you cannot afford the courses, get a good RHCSA book. It will give you a good start.
holylex87@reddit
Just take something your familiar with in windows, say IIS or exchange, and make a parallel in linux.
But don't stop at set up. Push it, tweak it, and abuse it.
Learn by breaking.
post4u@reddit
If you want to see real life "how to do things", set up a test server, create an MCP server to connect to it, and have Codex or your favorite AI tool make changes for you and then have it explain what it did. Start with the basics. File system management, permissions. Ask it "I know how to do xyz in Windows. Show me how to do this in Linux".
You'll need to know how to do all the AI stuff anyway. My crystal ball says that the days of us managing systems by hand is pretty much over. These big companies are changing over to AI driven configurations already. You need to know the fundamentals FOR NOW. At some point that probably won't even be necessary. Just tell it what you want and it will be done.
old_mate_44@reddit
your crystal ball is blurry...hows the metaverse going or blockchain lol
post4u@reddit
Just watch and see what happens over the next few years. There's a human layer now between the robots and the systems. At the moment, systems people still need to know the underlying systems. Developers still need to know the underlying systems. At some point, and I'm not saying it's going to happen right away, but at some point the middle layer will disappear altogether. Want to build a website or application? Right now you can write it by hand (the horror) or have AI help write it for you. But there's still human readable code that's running everything. How ineffecient. When the robots get so good where they no longer make mistakes and more and more underlying systems are built to work with the robots natively, there will no longer be code needed that humans can read. They'll just write super efficient instructions that the hardware can execute. No need for humans to deal with code at all.
Same thing with systems administration. Years from now people will go, "Grandpa, tell me the story of when you used to have to run commands to do xyz." Engineers will just describe what they want and it will be done.
Could I be wrong? Sure. Maybe the ball is blurry, but I do think that's where all this is going. Companies are doing everything they can to replace humans. This is the next evolution of that.
AFlyingGideon@reddit
https://www.hcamag.com/us/specialization/hr-technology/businesses-rush-to-rehire-staff-after-regretted-ai-driven-cuts/568292
post4u@reddit
Yep. Didn't say it was a good thing. But that's what's happening.
AFlyingGideon@reddit
The article i cited claims that, in at least some cases, this is being reverted.
areanod@reddit
I remember when I started to make my first steps into Linux (Debian) back in 2009. I wanted to have an instance of ifolder, which ran natively on Red hat/Suse and someone had told me, that Debian was better.
I managed to set the system up after many many tries and hoped for the best.
It was a complete different animal, coming from Windows Server 2008 and SBS machines.
Nowadays I prefer using Debian machines (dipped my toes a little bit into CentOS and Arch, too) as servers wherever I can.
When you mastered the basics, Linux is (most of the time) just easier when you want to provide an economic, HA service.
Mrhiddenlotus@reddit
You lucky sob. I'm so jealous. Linux administration is elegant and much more fun.
longlurcker@reddit
Vscode, co pilot, and remote ssh. You will thank me later, now you are a 20 year experienced Linux dev.
SN6006@reddit
Linux is much easier to patch than the constantly breaking windows updates, in my opinion, but has more components to update. Might be a good time to explore containers for specific workloads, if it makes s sense (dns caching, MySQL, etc).
Junior_Option1176@reddit
If u have total control of service config, try to learn containerization and ansible. It will make administration much easier.
phatbrasil@reddit
Take an in classroom cours! A couple of on classroom courses. Having a person to ask when shit goes wrong makes all the difference. And of you don't know the context, you can't tell if aí is hallucinating or not.
contreras_agust@reddit
Lookup Tutorial Linux on youtube for his playlist “The linux basics course”
Rich-Parfait-6439@reddit
I'm afraid when more companies do this. I'm guessing alot of it was because Microsoft is getting so damn greedy with license fees.
jlrueda@reddit
The ubuntu administration guide y a solid starting point ubuntu admin guide. If you are completely overwellmed about thhe amount of diferent commands you now need to use, I recommend to use just one: sos The sos comand will tell you the state of everything on any Linux server. I build sos-vault and it helps you analize sosreports easyly, fast and more importanty securely. Honestly it will help you a lot and by using it you will learn about diagnostic commands, linux configuration files and log files.
Xzenor@reddit
Play with it. That's the best way to learn. Set up a webserver with a database or something. Just to get the hang of how the basic stuff works. Google your error messages before you ask ai for help..
I hope it'll click soon and that you'll start to like it.
Btw, liking Linux does not mean that you have to hate windows. Contrary to popular belief you don't actually have to choose. They both have their strengths and weaknesses
Healthy_Business_69@reddit
The first to sentences gave me a flashback to puberty. 😳
Xzenor@reddit
Damn.. now I can't unsee it. I agree.
Jawshee_pdx@reddit
I recently learned about this: https://sadservers.com/
Real life Linux problems you solve in virtual environments.
Heat_Numerous@reddit
This site is awesome, thanks!
SadServers_com@reddit
:-)
MikeAtQuest@reddit
Reminds me of this anecdote from when I was a sysadmin for a 5-star hotel as my very first day on the job in 2007. I was told to go reset a server (I think IIS, not super sure).
I was moments away from straight up rebooting the whole server (because it didn't know iisreset was an option), when a senior caught me and told me to eff out of there
SilentRoman0870@reddit
How many servers are you switching?
A_SingleSpeeder@reddit (OP)
No more than 10-20 but I suspect closer to 10. We aren't a huge shop so I have that going for me. I'm not too worried. Once I learn the basics of how to navigate, what is what, etc. I think I'll pick it up fairly quickly.
alfamale73@reddit
Sure someone has probably said this already, but If you’re going RHEL, then CentOS is freely available for your dev box. It’s what Redgat is based on and is essentially the same. Just free.
rthonpm@reddit
Oracle Enterprise Linux, Alma, or Rocky would be a closer fit as CentOS is an upstream distribution.
carlwgeorge@reddit
CentOS is the major version branch of RHEL, maintained by RHEL engineers. Downstream imitations are not maintained by RHEL engineers. They're all very close to each other, but I think who you would be reporting bugs to matters quite a bit.
ITViking@reddit
What really made Linux click for be at the beginning was taking an online course in Bash shell scripting. It teach you most of the things mentioned here and it will be invaluable. I’d recommend that as a start, and depending on the size of your server farm, perhaps an ansible course after that.
I was a windows admin prior to this.
You’re in for a good ride - welcome
A_SingleSpeeder@reddit (OP)
Noted! Thanks, I'll be checking out a Bash scripting course. I've already completed some training videos and they touched on this but I definitely need a deep dive.
Liquidennis@reddit
I would become familiar with crontab for scheduled script automation. Grep and egrep will be your best friends while traversing logs and piping commands together for better filtration is everything. I would also become very familiar with vi/vim and their associated commands, like :set number to display line numbers in text. It’s not bad once you get the hang of things and you’ll realize the amount of overhead bloat that is Windows pretty quickly. One last tip - use rm -r with caution, it’s a recursive delete. There’s always that guy who thinks he’s hilarious asking you to run a sudo rm -r from the root directory which will destroy the os on you.
Cyhawk@reddit
I agree, however this method is becoming a bit dated. Ansible is the new hotness and should be learned/used for these types of tasks. Automate the correct way.
AFlyingGideon@reddit
Not if those volumes are mounted read-only, though it will do some damage.
fearless-fossa@reddit
A few minor nitpicks - systemd-timers are more powerful and better auditable than cron, and many applications already come with predefined timers that just need to be adjusted/activated.
You can also just shorten it to :set nu
DerZappes@reddit
Throw whatever router you have for your internet at home out and replace it with some Mini-PC with two network ports. Install Debian 13 and don't stop fiddling until you have a working router with a firewall, some VLANs for stuff like IoT and a little dashboard that displays network stats.
You'll still be a bloody beginner after that, but you'll know the fundamentals.
AFlyingGideon@reddit
Mix in policy based routing for an even deeper exploration.
conspicuousxcapybara@reddit
Backporting kernel patches is also fun.
flummox1234@reddit
The good news if done well it'll probably mean you can move your entire existing load onto the new servers, resource wise Windows tends to be a resource hog. So you'll probably end up managing half the servers.
I would say become familiar with the file structure and stand locations and what the convention dictates. Then move on to learning the linux-ism, e.g. pipelining, everything is a file, backgrounding an app, foregrounding an app, command line, bash.
As an admin learn to use tmux or screen and what they are, this will be invaluable for long running jobs.
Learn relevant short cuts like control + E (cursor to end of line), control + u (delete to beginning of line), control + a (cursor to beginning of line) etc. This will save you a ton of time over the years.
The nice thing is once you learn the basics in linux it's pretty consistent across distros.
unJust-Newspapers@reddit
Learning RHEL with Sander van Vugt is an awesome course
robisodd@reddit
This?
https://www.youtube.com/@Rhatcert/playlists
Any recommendations on where to start?
unJust-Newspapers@reddit
That’s the guy, but I have no idea how much is on Youtube
I bought the course on Pearson Vue some years ago
unJust-Newspapers@reddit
Starts you off with the basics and builds nicely upon it, giving you a great intro to RHEL
Impressive-Mine-1055@reddit
When you say basics... How basic are we talking?
If you had to give it a level of 1-10 how much of an expert would you be at the end? Or how comfortable would you be walking into a new job with this info/cert
unJust-Newspapers@reddit
I don’t know man. I have some amateur Linux experience, and Sander’s course was a great for me to learn more. I’m in no conceivable way a 10/10 expert. But I am equipped to do sysadmin stuff on Linux servers with the knowledge and understanding I got from the course.
But as with everything else, it depends how much effort you put into it. It’s self paced, so you can fast forward if you want, or you can digest it slowly like I did.
sudonem@reddit
If you’ve never touched Linux you don’t want to start with Sander’s course. Its goal is less teaching you Linux so much as it is about getting you to pass the exam.
It’s an excellent course but it’s pretty fast paced for total beginners.
SkywardSyntax@reddit
Even just studying for the RHCSA will be extremely beneficial - changed my life, but didn't have money for the exam.
Will probably go back this year and officially get it!
Xzenor@reddit
I loved the rhce exam. It's a hands-on exam. So cool and so useful compared to those theoretical exams where you only learn stuff but don't have to actually do it to prove you know it.
Heat_Numerous@reddit
Rule 0: Rebooting rarely fixes issues. In Linux, it's often a config issue and/or something environmental.
DaylightAdmin@reddit
To quote my assembler trainer: "They wanted me to make a Linux admin basics course, what do they mean? I hope they can use their preferred text editor."
Nearly all config for Linux services life in a text file, so also "learn" a terminal based text editor. It doesn't matter if it is nano, vi, vim, emacs, try everyone and feel which one fits you. But know for everyone how to exit without saving the file. (q!)
grep and less are also great to know.
For everything else, man pages are your friend. You can Google them, than you can simple click through without needing to know how to navigate inside of them.
Look at a config as code system, assembler, salt, puppy... it saves you so much trouble, but it is "hard" to set up. Jeff Girling is a great start for that. At least look at etc keeper, it puts all config files in a local git repo, so you can check if something did change.
techie1980@reddit
Most of the suggestions in this thread are great, but I think the most important thing is to be to allow yourself some grace.
Linux is a very different landscape from windows - even the more polished, commercial deployments of Linux. One of the key things is "everything is endlessly tunable". Combine it with "computer geeks are never happy with out-of-the-box settings" and you'll find yourself having a frustrating experience getting stuff deployed because forums and help guides will be absolutely filled with back and forth around tuning this or that.
Instead, I suggest adopt a "good enough" mindset. Absolutely use the CLI when possible, but if you're using GUI to do stuff then it's probably not the end of the world. Make good use of support forums, and don't be afraid to pick up the phone. And most of all, take your decades of experience and put them to use by making sure that you listen to those gut instincts. "This is not a good idea" and "we're missing something important here" are things that transcend barriers.
Ummgh23@reddit
As long as the good enough mindset doesn't apply to security, I agree
reader4567890@reddit
In several decades of working with Linux servers I don't think I've ever seen or useda gui.
I have on desktop flavours, but not servers. That would just seem wrong.
wezelboy@reddit
Learn ansible
Odd-Concept-6505@reddit
In a terminal window, learn stuff/files you can inspect with "cat" (like /etc/resolv.conf) and inspect longer files more intelligently: traditional command "more" is better done with "less -m" (or some other less arg/flags to less). Hint to bag out of less: just hit q.
man -k keyword (but because a command/exists, doesn't mean it's "in use" in your setup.
"man -k disk" is fun to see almost all (too many) disk related commands. BUT: does not show the two best disk space USAGE commands:
df (try df -h and df -m for best numeric display)
....cd to homedir or any dir/stash of interest then "df -h ." ..easy way (using "." as the last arg, focused on just the filesystem you are in) to show disk space+usage. FINAL other usage command: (preface with sudo outside of your home for)
du -ms .
du -ms * (but this overlooks dotfiles/dirs)
du -ms * | sort -n (or pipe to sort -nr)
When I grew into UNIX in the stone ages (1980s) I learned the most annoying text editor ever? "vi" now preserved/replaced as "vim". In the single non clustered UNIX world we even edited /etc/passwd with a dangerous "sudo vipw" which is probably the last thing you should think to do in a modern multi computer/domain environment with distributed user,group setups and SO many other ways to keep sane user accounts across multiple servers. So learn how YOUR work environment(s) are handling user accounts.
MaToP4er@reddit
RHCSA is a good one!
MeanTato@reddit
I’d take the LPIC training and certifications for basic Linux fundamentals. Then specific distro training and certs for the flavor of Linux you will implement. The differences between distros can be significant from an admin perspective.
AvonMustang@reddit
If you have single application servers on the Internet then check out chain guard Linux. We’ve moved most of ours to it…
Greedy_Manicou@reddit
Maybe do some homelab stuff as well. I setup basic and usable services like samba, Jellyfin, Immich etc on top of linux and docker after many years of being a Windows only sysadmin. I've still got a lot to learn but I'm not as lost as I once was.
iStumpedMyToeItHurt@reddit
Im showing my age here and there might be a better source but the Linux in a nutshell book had command summaries that were grouped by function. Super helpful. Also i started as a windows admin many years ago but learning linux made me a much better windows admin as i was able to understand better what was happening behind the scenes… if that makes sense. Good luck on your learning!
FourEyesAndThighs@reddit
Get a Mac. It'll make managing 'nix systems seem like second nature, since it's basically Unix underneath macOS' GUI.
VortechSCMarauder@reddit
Once you get over the learning curve you're going to find that in most cases Linux is easy mode. Being a 70% Linux sysadmin / 30% Windows sysadmin has both kept me employed and sane over the course of my 25+ year career.
1z1z2x2x3c3c4v4v@reddit
You can download Ubuntu or Mint today, no need to wait. Jump into it. Once you get started, you will see how FAST you come up to speed.
When Win11 forced my hand, I downloaded MINT for my fleet of 13-year-old Dell Latitude 6430 laptops... and realized they now ran as fast as they did back in the Win7 days, and are so easy to work with I wish I never even bothered with Win10.
el_seano@reddit
Tons of good suggestions here, adding a set of tutorials for Linux fundamentals and bash/awk/sed from Funtoo Linux:
Getting extremely comfortable at the CLI is what separates good sysadmins from great ones. Highly recommend polishing up on shell scripting, Vim, and emacs keybinds for navigating REPLs.
chkltcow@reddit
Step one to training is finding out which distro you're going to be migrating to. Things are done differently between Debian, Red Hat, Arch (You will NOT be using Arch, I can basically guarantee), etc. Study for the distro you'll be utilizing, learn the update commands, learn how the system services work, etc. And then when you have deeper questions you can probably learn more from the Arch documentation.
You'll be fine. Linux is easy compared to where it was 30 years ago. You've got this!
realmozzarella22@reddit
Will the new servers be command line only or will it also have a GUI interface?
Obviously learn the command line. SSH access.
Network settings. Possible firewall setup.
Know the security access of group, other and user.
There’s a lot more but start with that.
Snarky_Survivor@reddit
A lot of good resources in the comments. I'm learning as well.
Dolapevich@reddit
I am on the opposite boat, having been on linux since 95' I had to learn active directory and some other M$ tools. I had a very hard time to control me and stop asking "Why oh why are you doing this?" at every step.
The good part is that on linux you can go and check WHY in the source code and commits.
But accept in advance this is other world, a lot of experience can be reused and many ways to do things are different. Also, when in doubt why things are done this way, there are usually non obvious reasons, trust the distro and maintainers.
Do study and learn your package manager. Do study
man hier, do learnvimuntil you are proeficient and feel a bit at home.jlgt007@reddit
You’ll be fine. Once get used to terminal and how things work you’ll feel it’s cleaner and likely simpler. Find some courses on basics of Linux based on the servers you’ll use such as fedora or Debian. Then just take it easy and you’ll cruise through.
nighthawke75@reddit
Linux is not bad. You can set up shop at home with a raspberry PI and just about mirror what one of your servers do at the shop.
Almost.
Roland_Bodel_the_2nd@reddit
buy and read this book by Evi Nemeth https://www.amazon.com/UNIX-System-Administration-Handbook-3rd/dp/0130206016
crystalbruise@reddit
To be honest, your background will transfer more than you think. Start with basics like permissions, services, package managers, and logs. Build a small lab and break things on purpose. Get comfortable in the CLI and reading docs. Once you see the patterns, Linux admin starts to feel pretty natural.
Upstairs-Ad9102@reddit
Go to your local tech college and enroll in Linux admin courses. Replace your home PC’s OS with a desktop variant of whatever Linux distro your company plans to use (Ubuntu?) Force yourself to use only Linux to get everything done at home. Through the hands on exposure at home and help at school you will become proficient. If you get stuck ChatGPT is amazingly good at solving Linux issues via the CLI.
nighthawke75@reddit
Don't forget to speak with your super before enrolling. To see if they could reimburse the cost of education.
notanothergav@reddit
Everything's a file. That's probably the biggest difference.
Want to access an external hard drive? You mount /dev/sdX to an empty directory, and access is there.
Want to view an ISO image? You mount that in the same way.
Want to see the input from your mouse for some reason? Look at /dev/input/mouse0
musiquededemain@reddit
Find out what Linux distribution your company will be using. Build a home lab with that. Buying a book on it may also be helpful. As someone else stated you already know the concepts. Linux just does them differently. Yes it's going to be very different but you already have some experience with Linux so it won't be *entirely* foreign.
chalbersma@reddit
Pop on Ebay, buy an old laptop. Install Linux try to use it as a daily driver for a while. Even better if you can get your company to pay for it and endorse it as a work PC.
Write a couple of throwaway bash scripts (Gentoo Bash Dev Guide to Help). Then try to do the same scripts in the primary language that you're going to be working with (python, C, Javascript, ruby whatever).
Next depends on what your servers are doing. If these are old school, "pets" you'll probably want to learn a management layer like Puppet, Ansible, Salt or Chef. If this is going to be a virtualization or K8s farm you'll want to learn more K8s/Dockerized stuff like helm charts.
Mental_Beginning_698@reddit
Good ole "free licenses" that upstairs heard about. Idiots do realize licensing simply runs over the top on the app.
mitharas@reddit
Commit to one distro (e.g. Red Hat, Suse). They all got their own little quirks and you'll get whiplash when you try to jump.
Healthy_Business_69@reddit
I agree with this statement for the actual rollout.
However, you should try several distos in a lab environment. Run with a Window Server (download the 180 day trial) in the environment, if you have some older machines run various distros. I've been using Slackware since 94 95 time frame, so I'm biased and cheap 😉.
I guessing your your company is switching to save money on licensing. So you may want to stick with the free distros.
If you have some unused workstations, try dual booting. See if the company will spring for 3 or 6 USB hard drives, to set up a small raid array or 2 on different distros. This will allow you to get some feel for how things will or won't work for you.
Just my 2 cents, so does that now round to zero or a nickel? 🖖
enduser7575@reddit
You’ll be fine , Linux = simpler than Windows
themanonthemooo@reddit
Obligatory Linux Training Video: https://youtube.com/watch?v=urcL86UpqZc
LeiterHaus@reddit
"Emacs takes a lifetime to learn. So the sooner you start, the longer it will take"
Independent-While212@reddit
Get a good ChatGPT account
cwew@reddit
I haven't seen anyone say yet that I would highly recommend using AI to help answer questions you have by asking to draw parallels with what you already are familiar with. If you have an email question, phrase it like "I know these concepts, how does X distro do it" and usually it will do a very good job at explaining it to you. You can also be very transparent about what you know and don't know, and it will help fill in gaps in your knowledge a human cannot do as readily. AI is a fantastic learning tool for IT because it's pretty low stakes and has binary pass/fail conditions. It either works or it doesn't and no one is dying if you're doing it correctly.
A_SingleSpeeder@reddit (OP)
Work pays for a ChatGPT subscription for us. We've had it a yearor so, so it knows I'm a Windows Admin with strong PowerShell scripting. I do plan on using this and asking things like "Knowing how X is done in Windows, how can I accomplish this in RHEL?" I will have the freedom to build and break test VMs for a fair amount of time so I don't think it's going to be a terribly difficult transition.
Barrerayy@reddit
Dont take the exam but study the rhcsa content, thatll get you up to speed
bullium@reddit
https://training.linuxfoundation.org/training/introduction-to-linux/
Free and is a great ramp up for Linux. It will also assist you understand Linux’s history and how it’s used in practice as well as distributions and how they play into the mix.
Admin_Stuff@reddit
I just picked it up as I went along...learned by doing...so no specific suggestions for lessons/training. Don't be surprised if at some point you find yourself typing commands for the wrong OS. I frequently type "ls" instead of "dir" when I am on a Windows server. Most of the time I prefer working with my Linux servers.
1-800-I-Am-A-Pir8@reddit
Computers are computers. You're good.
Get really comfortable setting up different types of servers from the command line. Remote admin on linux is a dream because you can (and, in many cases, have to) do everything that way.
I would install your learning boxes without xwindows if your software doesn't require it. Might as well dive in and get comfy.
coffinspacexdragon@reddit
This blows my mind. In 30 years you were never curious about Linux enough beyond a test drive? You knew there was a whole thriving world beyond Microsoft and Cisco etcetera that you could freely explore and you're like "nope, that's not for me"?
That's like getting a driver's license, purchasing a vehicle to drive around in, but only driving within a few blocks of your home... for 30 years.
A_SingleSpeeder@reddit (OP)
Nopw, never had a need. Everywhere I have worked has been a Windows shop. When I sign off, I don't touch a computer. I've grown to hate them. I spend time in nature when not at work.
shepdog_220@reddit
The tech space is just a job for the vast majority of admins. Not everyone shows the same interest in things that are outside their space of relevance with what pertains to their job functions.
My team has almost 40 people in it, besides myself we have one other guy who daily drives a Linux and shows any interest in it, he has more interest in it. I'm more proficient in it. Just is how it is, our environment will likely never switch to anything Linux based, so why would the team show interest in it? Some of these guys have been with this company for almost 20 years.
BrokenPickle7@reddit
I've used Linux as my daily OS since 1995/96 and I'm surprised at how many sys admins don't know the first thing about Linux.
Horsemeatburger@reddit
I'm not. After all, the inefficiencies of the Microsoft ecosystem keep a lot more people in their jobs than what would be required on other platforms.
So, naturally, a lot of sysadmins never see anything other than Microsoft environments.
AFlyingGideon@reddit
This is funny as I just had a conversation with a financial planner who argued that the equity market was too efficient to "game" for profit but that the greater inefficiencies in the fixed income market made for better opportunities.
I'm not used to thinking of efficiency as something to be avoided.
Horsemeatburger@reddit
I guess it's all just a matter of viewpoint. After all, someone's loss is just another one's gain.
For example, while the inefficiencies in the Microsoft ecosystem certainly suck for customers, from Microsoft's perspective it could hardly be much better. MS knows full well that they have their customers over the barrel, afraid to leave the "market leader", and that the same customers are clearly happy to pay ever increasing fees for the current mess of bug-ridden software and unreliable services. Even worse, literally every time Microsoft messes up bigly, the only consequences were even more contracts their way.
Not unlike the scenario the financial advisor was talking about, MS has no incentive to reduce those inefficiencies. They don't have to waste any real resources on making improvements on their platform as customers won't leave anyways, and in fact they could probably further reduce their already minuscule efforts in the quality department without much (or any) impact on their sales figures.
So for Microsoft, efficiencies are something to be avoided.
AnotherUnknownNobody@reddit
You will have the advantage to know what you need to do even in Windows terms. You will just need to google the linux equivalent. Be patient, be aware there are a lot of gatekeepers in the linux community sadly. I will say, while linux has a steep learning curve, as a server OS it just never stops. Once you get it configured and stood up they are very low maintenance generally speaking which is excellent in production environments. Good luck!
ITGuy402@reddit
You never go back to user interface again.
frankentriple@reddit
Learn vi/vim controls early and learn how to grep. 99% of Linux is files and learning how to search and edit them is key. The rest will cross over pretty easily once you master these.
Do_TheEvolution@reddit
Start selfhosting stuff at home or at a VPS.
Using docker makes things easy and it gets you engaged. Heres a speedrun.
Generally you want to feel comfortable with the basic of whats done on linux - connect to a server and go somewhere to edit some file.
but yeah get basic moving around and tryt to start selfhosting shit, buy a domain, get a public IP from your IPS, setup DNS, spin up caddy for a reverse proxy and start hosting some stuff.
Audience-Electrical@reddit
Get ready for everything to suck a little less, you'll be in terminal a lot more but in general there's also a lot less guesswork.
Some commands you should know: - nano/vim - systemctl - apt/dnf
Of course, much like Windows, different versions of Linux have different defaults.
Anyway you got this. It's just a computer, now it'll be one that you get to be a little bit more responsible for (cant blame Microsoft anymore!)
Cletus_Banjo@reddit
You need this book: https://amzn.eu/d/0eqjx0wr
Big_Statistician2566@reddit
The best way to learn linux is simply to get in there and start working with it.
Siritosan@reddit
Get this book. 😁
Burgergold@reddit
Learn ansible
Great tool even for Windows
mad_redhatter@reddit
If you're going to RHEL, you'll want to consider Satellite and Ansible Automation Platform at the minimum.
Deshke@reddit
start looking at saltstack, puppet, ansible
dRaidon@reddit
Ansible. Learn it. Love it.
chuckmilam@reddit
Once you start managing more than N+1 numbers of Linux systems, you should look into Ansible. The value of N is 0, by the way.
motimoj@reddit
Reddit and Stack Exchange will be your friends.
octahexxer@reddit
Start to daily a Linux laptop trust me you have to eat the dog food
rthonpm@reddit
Not if they're only changing servers.
bilingual-german@reddit
If you're into reading books, I can recommend "How Linux Works: What Every Superuser Should Know" by Brian Ward.
linknt01@reddit
Check out fawdy.com, it will make your life much easier.
b1urbro@reddit
It's far, far easier.
Thick-Marzipan6906@reddit
Sander van vugt guide on o'reilly will get you right. Fun ride incoming.
sanbaba@reddit
Better late than never!
Unusual_Compote4909@reddit
There are some tools available, try a free trial ofShell Samurai
RBeck@reddit
This is the perfect time because LLMs are really good at diagnosing Linux issues, writing scripts, or just general telling you the commands. This would have been a lot harder 3 years ago.
Major-Astronomer7529@reddit
Don't use CTRL+ALT+DEL on the console
Also, look into integrating your Linux with AD user and group management and SSO.
Sure-Squirrel8384@reddit
What distro? RedHat or its derivatives (Rocky, Oracle, Fedora, etc.) or Debian or its derivatives (Ubuntu, etc.). Tons of free training available from RedHat.
hadrabap@reddit
Exactly. OP, go through RedHat Enterprise Linux and Oracle Linux documentation. A few books are common, but RedHat has more additional material and Oracle the same.
digitaltransmutation@reddit
As a 'unfuck this server' variety of consultant I wanna say,
Learn different ways of launching programs as services. Systemd, init, docker, podman, whatever is relevant to your workplace. Errors with these are a lot of my work these days.
Many developers learn from bad tutorials and the result of this is they will insist the only way to launch flask is for someone to remote in and enter .myenv and hit a start.sh and leave the terminal open indefinitely.
Sometimes I will get an associate who 'knows linux' because he hosted a minecraft server once and it turns out his idea of running a service is just a
screendaemon.I swear getting services to start and stop reliably and automatically is 99% of the job.
AFlyingGideon@reddit
Those login sessions are a service to me, so ...
Laugh
teddyphreak@reddit
Install Linux on a device you own and use that as your personal daily driver.
Whenever you do something on it, learn how to do it through the command line and become biased to doing things that way
Learn Bash
Use Vagrant
Create local libvirt Vagrant environments inside your own machine and build your own local labs with whatever distribution you wish to learn
That should get you 80% of the way to proficiency in about 6 to 12 months
chris41g@reddit
sadserver.com
SadServers_com@reddit
:-)
rainer_d@reddit
https://www.admin.com/
khobbits@reddit
Worth noting:
You mention in another post, you're going RHEL for support. That does mean, you (personally) have some options.
Last time I checked, you can register for a free Redhat developer account that will let you get a few licenses for free.
Fedora is the 'free' upstream for RHEL though, so it's basically the same thing, just a bit more cutting edge, this is generally the choice if someone want's to install Redhat locally as a desktop.
On the server side, Rocky Linux is generally the option, when you want to get 99% RHEL but for free.
Horsemeatburger@reddit
The other alternatives are Alma Linux (like Rocky, just without the controversial company behind it), and Oracle Linux (with a very controverial company behind it).
khobbits@reddit
You'd recommend CentOS Stream as a desktop OS over Fedora? I feel like Fedora would be a lot easier for a newbie to use to get familiar with RHEL. But if you think otherwise, I'd be curious to know why.
Horsemeatburger@reddit
If the aim was get a great desktop Linux experience with the latest packages then yes, Fedora is a great choice, although it can still break at random times (like most cutting edge distros).
But for familiarizing oneself with a RHEL environment? CentOS is much closer to production RHEL than Fedora (as are Alma Linux and Oracle Linux with RHEL kernel).
Even for desktop, CentOS and Alma Linux do pretty great. The latter is what we use on our engineering workstations, and even privately run CentOS 10 and Alma Linux 10 as desktop systems (the latter even runs my Steam games). Not as current as Fedora, but notably more stable.
dathar@reddit
Pick a distro that you're moving to and learn that one. It'll have its own set of utilities, stuff it comes with, stuff it doesn't have, stuff that you have to install because it is optional, etc. Things like
Then you branch to your specific server needs.
Then your general automations like learning Ansible.
goobernawt@reddit
Starting with some fundamentals via coursework is a good starting point, IMO. That'll get you comfortable with the environment and how things operate.
To get further, I'd ask "what's something that I need to do today on Windows servers"? Start digging into what you need to do to accomplish the equivalent thing on Linux. As you encounter concepts / tasks you're not familiar with, start digging into them to get a better understanding. Lather, rinse, repeat until you're able to accomplish that task, or it's equivalent, on Linux. Pick another task you perform on Windows and repeat this process. There will likely be things in the completion of that task that you are now familiar with, but there will probably be new things to explore. Keep repeating this cycle until you feel comfortable doing the job of today on Linux boxes.
bclark72401@reddit
What helped me was a book Linux for Windows Administrators by Mark Minasi
South_Oakwood@reddit
As some have stated nano is your friend, but VIM is the friend of your wife/gf that is a smoking hot dude. If you learn to use VIM even on a lamer scale your Linux cred triples.
LiterallyPizzaSauce@reddit
Homelabbing
Conscious_Cut_6144@reddit
I can tell you how I learned… ChatGPT give me the command to () on Ubuntu 24.04
Do that enough times are you start to learn lol
TheBigBeardedGeek@reddit
A long time ago I used to say the best thing about Linux over Windows for real admins is the fact Linux has a more powerful scripting language. Then PowerShell came along.
Play with some shells. I've been out of the Linux world for a while, but bash is easy, sh is common and usually used for most scripts, and zsh is usually the poweruser default
Learn how to make scripts called shell scripts. A shell script is, like a PowerShell script, literally just a collection of commands that you would run in the shell.
grep/sed/awk will be your life at some point or another. But you will basically have to think less "how do I what I did in windows?" To more "how does this task happen in Linux?"
Enough_Pattern8875@reddit
It’s easy, you just need to learn the syntax.
All of the concepts are (mostly) the same.
DarkSky-8675@reddit
If you’ve navigated the complexities of Windows for thirty years Linux will be a piece of cake. Never been a better time have to make the pivot honestly. The resources are everywhere and most of the time you can just ask an LLM like Claude if you need to do something new, test whatever it suggests on a lab box and you’re good to go. Hell I even have two Ubuntu VMs running under HyperV for stuff like this.
Atillion@reddit
The same thing kind of happened to me, but in a far more stressful environment.. My kid put it on his machine 😫
butterflieskittycats@reddit
I've done both. Prefer Linux.
Mattiashem@reddit
Get a Claude subscription and your are good.
Bubby_Mang@reddit
Welcome to the winning team.
Nonaveragemonkey@reddit
Life just got easier for you. Linux is stupid easy to admin, and the experience pays better
rokiiss@reddit
Amplitude but came to reddit. Just roll with the punches. You'll be proficient in a few months.
brunogadaleta@reddit
You might like Vagrant or Virtual Box to test a few Linux machines. If you need some servers docker compose can help you setup test servers in a breeze.
timsstuff@reddit
Get a Raspberry Pi for home and do shit with it. I used to know the bare minimum about Linux, mostly from having to dive into the bowels of a fucked up VMware hypervisor and some work I did with my Linux guru in the late 90s/early 2000s for some medical clients on SCO Unix but I was barely getting by with Google-fu.
But once I started playing with the Pi, I figured out how to build a little slideshow on a tiny 7" monitor that pulls images from my Windows file share and updates regularly. Things like AutoFS, cron jobs, apt-get/apt-update, and managing completely from a remote SSH session really helped a lot. Also Pi-Hole is super fun.
Just recently I was able to spin up a whole WordPress server on AWS (Lightsail) for a client, saved them a ton of money on hosting, and I'm very comfortable managing the OS and everything thanks to my Raspberry Pi experience at home.
t40@reddit
Gonna second mastering systemd as a high priority for you. Unit files for services are great; automatic rebooting, scoped permissions for your services (eg only the user for myservice will run myservice), timers for doing something regularly, etc. I would highly recommend provisioning your servers using Ansible, as that lets you quickly rebuild your services in case a single node fails.
hops_on_hops@reddit
In addition to the specifics mentioned already... Work on shifting your mindset for managing servers. Linux is smaller, deploys fast, and is friendly to automation. Windows is bloated, slow to install, and does not handle automation well. You will probably want to consider more servers with a more narrow focus on each (vs fewer multi-purpose windows servers). You will also want to lower your threshold for deleting and re-deploying vs troubleshooting an existing server.
Sh3llSh0cker@reddit
nice your company actually knows what’s up, first post i’ve read that i approve of. Also 30 years in your so called IT and you never setup a Debian or Rocky Linux Server ? hmmm..i guess it would be centOS if we’re talking couple decades back but still a bit sus.
Anyways, proper permission, SSH, Cgroups, and all the other ones folks gave mentioned aleady. learn how to pipe in command like Grep and Awk which is really useful.
heubergen1@reddit
There's no GUI in Linux (Server), learn to love the terminal because you will everything in there.
Jimbondo88@reddit
I’ve been using Linux for a while now but thought I’d try studying for Linux+ cert.
Shawn Powers does a few video series on YouTube for Linux+ and Linux Essentials. There’s a lot of videos, but the first few should give you a good kick start in understanding it a little more.
Anycast@reddit
Next week? Install a type 2 hypervisor on your local machine today and install whatever distro you’ll be deploying. Take a snapshot after the install and go to town.
AnomalyNexus@reddit
Get a minipc or similar for home where you can screw around with linux in general with zero risk of breaking anything. Linux can run on a potato - a $50-100 bucks minipc off ebay is more than enough.
Part of the reasons to do a separate machine at home even if you have a test server at work is so that you can throw opencode on it. If used right it can be incredibly helpful for learning on "Look at the machine and explain to me why xyz isn't doing abc as I thought it would". AI is incredibly good at navigating linux. Be sure to use it to learn & explaining rather than as a crutch for doing ;)
Learn how to use tmux right off the bat. Linux is CLI driven, tmux lets you keep multiple sessions open concurrently - bit like a browser with tabs. It also persists so if your ssh connection dies it doesn't kill all the processes
octobod@reddit
You may find https://labex.io/linuxjourney a useful resource
Special_Rice9539@reddit
Oh many you’re in for a treat. Linux is so much easier to work with
OregonTechHead@reddit
Talk to your manager and ask them how they're going to support you in this transition.
If the company isn't going to train you, they're just setting you up to fail
So_average@reddit
Get a VM going on your windows PC using virtual box. For a free copy of RedHat you could use Alma Linux. Recommend installing a gui, not just server version, you'll still have terminal access.
Best of luck.
whatsforsupa@reddit
Pluralsight is awesome, but I would recommend spinning up a rocky 9 VM (Rocky is a “continuation of CentOS, which was a free version that RHEL built back in the day, long story).
Just spend some time in the VM, learn to navigate via the CLI, try to install and remove some packages, figure out how cron (task scheduler) works, how to network the device, how to use nano/vim to edit files, etc. It’s pretty easy but in my experience I learned 1000x this way vs e-learning.
rejectionhotlin3@reddit
File perms, ssh, nano, and a big one is going to be systemd. Other than that from an admin perspective I'd argue you're gonna have a better time.
dnz007@reddit
Ask AI how to do everything you need done in the format of a script, and tell it write the script to prompt you for variables
wildcarde815@reddit
Having used all of two windows servers in my life. Good.
Zolty@reddit
Learning a tool like Ansible will go a lot way to management at scale. Though deploying Linux these days is code for moving everything to k8s, k3s, or some other manner of container orchestration and that's a whole different track so it can be a lot.
I'd strongly suggest some manner of claude subscription which can help you get up to speed quickly, just give it a directive telling it you want to learn the stuff so it won't just do everything for you.
XlovepunchX@reddit
Welcome to the Dark side 😈
WorkLurkerThrowaway@reddit
Disclaimer: this is not a replacement for actually learning how to manage Linux systems, but a tool in the belt.
You can open a tmux session in a split pane with your shell on one half and Claude Code running on the other. On the shell side you can SSH into pretty much anything and Claude running on the other half can use tmux “send-keys” commands to the other half of the tmux session where the SSH session is to interact with that device. It’s basically Claude in a terminal that can act on anything you want it to.
This setup works for winrm too.
Space-Boy@reddit
Fake it till you make it brother. You know the general concepts everything else is just type-ops
vi-shift-zz@reddit
Do you have any visibility/input into why half your Windows servers are moving to Linux?
Your systems knowledge will translate, establish a standard distribution, I have mostly used Red Hat but have used different distributions for different purposes.
JerryRiceOfOhio2@reddit
i was a windows sysadmin, i switched to Linux for everything. best way is to install Linux on your home computer
zodiac200213@reddit
This is what worked for me.
This was back in 2006 with Ubuntu being in it infancy. After Windows XP, I said it I am going to switch OS', I will switch to linux. I set up a headless Linux server at home and forced myself to set it up from scratch. I told myself this would stay headless (noGUI). This was just a file share server mostly but back then, you had to configure everything by hand. Nowadays there are command line wizards during setup etc.
Anyway, along with this I forced myself on Linux on my laptop. I stayed like this for about 10 years running only linux at home. It wasnt until Windows 10 came out did I switch back.
In that time I learned a lot. You run in to issues that you have to research and figure out. I had an iPOD that I had to figure out how to manage without iTunes. I wanted to upgrade my network card in my server to gigabit and it took me a week or troubleshooting to figure out how to get the drivers working. Ended up having to recompile to kernel. Also learned about permissions etc.
Anyway. Learning my immersion always worked for me. Did they same thing with a stick shift car. I bought a brand new 2009 Toyota Corolla that was a standard and didn't know how to drive it off the lot. Took me about a month to get proficient and I had to drive an hour (2 hour round trip) to work every day.
pdp10@reddit
screen, easy to script. Just easy all around.vitext editor. Make/use a half-page cheat sheet if necessary.manpage first when you don't know something. If that's not working right away, then it's fine to seek other documentation after you've tried.writev(2), that means, section 2 of the manual (Syscalls), syscall namewritev, which is a vectored write. Microsoft calls that kind of I/O, scatter-gather.Lonely_Rip_131@reddit
Look at linux plus objectives and RHCSA objectives. Put the study guides and read - keep them close to your desk. Prepare for the exams if you can.
T_Thriller_T@reddit
If this a duplicate I am sorry, but I think it's relevant:
Apart from bash it will likely be helpful to get a hang off Python. Python is a go to scripting and automation tool with Linux - much less so with windows (where it is PowerShell, from what I see).
robreddity@reddit
Don't worry, they'll get the other half too. Just think positively.
jihiggs123@reddit
depending on how you learn your approach will be different. personally I learn best by watching videos.
https://www.youtube.com/watch?v=j-Ha0vl-0ME
https://www.youtube.com/@LearnLinuxTV
https://www.youtube.com/watch?v=C7p5Qc-S4GY&list=PLT98CRl2KxKHKd_tH3ssq0HPrThx2hESW
https://www.youtube.com/@tutoriaLinux
Eeudqmqb@reddit
Use the shell, even when there's a GUI (looking at you, openshift).
Learn some shell "tricks" (CTRL + R etc.).
Lean VI basics.
planeturban@reddit
I wrote this post 10 months ago, this is according to me the basics:
https://www.reddit.com/r/sysadmin/comments/1ls97ke/no_cs_degree_no_experience_can_i_still_become_a/n1gqf5i/
Hale-at-Sea@reddit
RHEL has its own little ecosystem of tools that can make life a lot easier if you let them, like Satellite (patching and licensing), Ansible (automation), and so on. SELinux is also sort of RHEL-specific to learn.
netnoober@reddit
You may end up finding that linux makes more sense. Everything is a file as opposed to the black magick that is the registry. But agreed; use the terminal as much as possible. Try not to depend on gui for anything. nano is easier for editing text, but play with vi/vim at least enough to know how to edit/save/exit (esc i = insert; esc :w = write file; esc :q = quit/exit; esc :q! quit/exit discarding changes <- rip cord).
RikiWardOG@reddit
What are these servers for? Like everyone says though, if you're comfortable doing CLI work, it's just different syntax essentially.
FortuneIIIPick@reddit
> Any tips on learning how to be a Sys Admin for Linux would be greatly appreciated.
One: r/linuxadmin/
Sore_Wa_Himitsu_Desu@reddit
Build some throwaway VMs for whatever Linux you will be using. Use them to play and test on. “Oh. That didn’t do what I expected”. Rolls back.
rootcurios@reddit
Install Fedora on a personal laptop for when you aren't at work.
It's essentially a non-enterprise, community version of RHEL and would be the closest distro for you to learn on if you don't have a dev RHEL environment yet.
gruntbuggly@reddit
Start doing as much of your Windows work as you can in powershell. Just get used to using a command line interface for managing servers. Sure, PSRemoting is not exactly the same thing as SSHing to a remote server, but it's close enough to get you used to the workflow patterns.
FWIW, I was a long time linux admin, who went the other way and got into Windows administration, and learned to absolutely love powershell. Powershell core works well on Linux, so you can keep that level of comfort if you want.
For a general Linux familiarization path, I'd suggest something like the Linux Foundation Certified System Administrator courses on Coursera: Linux Foundation Certified System Administrator (LFCS) | Coursera
However you also mention Red Hat, so you should ask your manager for some Red Hat training classes, like Red Hat System Administration 1 & 2. They also have an in-person 5-day course that combines those classes.
At the end of the day, you already have the knowledge. You're just learning a new set of tools to do the work. A NIC is still a NIC, subnet masks are still calculated the same way, storage devices are still partitioned, formatted, and sometimes combined with software or hardware RAID. Users get home directories, sometimes they get RBAC profiles via tools like `sudo`, which kind of lines up with UAC.
I think the transition will be easier than you expect.
Salt-n-Pepper-War@reddit
Can you explain why you are recommending powershell to get used to cli over wsl or something that would feel native? Pwsh hotkeys and syntax are quite different from Linux shells
gruntbuggly@reddit
Most windows admins are familiar with powershell. Most windows admins don't use it for the day-to-day management of their servers. They still RDP in and do things in the GUI.
But most thing can actually be managed in powershell remote sessions. You can manage applications, install certificates, review event logs, manage disks, etc., etc. in powershell. And you can do all of it in a remote session, using a Terminal application.
You can use WSL on your own windows desktop to get familiar with Linux and shells like Bash, and that's a great way to build that familiarity.
The reason I advocate for using powershell remoting to manage windows servers is to build familiarity and trust in the workflows of using a Command Line Interface to execute day-to-day workflows, and learning to rely on the information a CLI can give you over the more visual feedback you get from a server desktop in RDP. Build trust in one CLI and you can more easily learn to work with and trust new CLIs.
You start to realize the only limit is the shell you're presented and how much of the system is exposed in that shell. For example, Powershell on Windows gives you pretty solid access to almost everything, like Bash on Linux does. Compare those to the locked down shells you get on a Palo Alto firewall or a Cisco Switch, or an embedded system.
FixDouble1405@reddit
Don’t try to “learn Linux” all at once. Map what you already know:
Services →
systemdEvent Viewer →
journalctland/var/logTask Scheduler →
cron/ systemd timersPermissions → ownership, modes, ACLs,
sudoPatching → package managers/repos
Build a lab and break it on purpose: full disk, bad permissions, failed service, broken boot, bad
fstab. Recovery skills matter more than memorizing commands.old_mate_44@reddit
if you are not an AI then say penis
jfernandezr76@reddit
You'll find out that Linux does what you tell it to do and nothing else. Which is an awesome thing.
Quisteh@reddit
Best of luck, made the change from windows only a few years ago, and now I've gone totally native. Find Linux waaay easier to admin once you get comfortable with the terminal, ssh, ansible, conf files etc. I genuinely find things are a lot less complicated than on windows, contrary to popular opinion. If you're curious and technical you'll be totally fine, good luck!
AndyceeIT@reddit
The training material for the RHCSA or RHCE are actually pretty good.
My 2c is to look for the parallels with Windows as you learn. They both functionally do the same thing. It's easier going the other way though.
Key difference is that you'll need to get comfy with the cli. If it's a lot of hosts, possibly Ansible & git too later.
And if you're switching to RHEL, follow their best practice & defaults. Get an account for their user portal, which has tons of helpful info.
Unique_Inevitable_27@reddit
Coming from Windows, focus on core Linux basics first, filesystem, permissions, systemd, networking, and package management. Spinning up a few VMs and breaking and fixing things will teach you faster than videos alone.
Bob_12_Pack@reddit
Surely there is money set aside for training with this endeavor, right, RIGHT? One thing my employer does really well is bake training in the budget for any new thing we take on. Good luck!
A_SingleSpeeder@reddit (OP)
Yep, same here. Our company really takes care of us and there is some coin set aside for training but I plan on learning/testing most on my own for now....while on the company dime.
Bob_12_Pack@reddit
That's awesome, I love learning new stuff. I learned unix in college by basically being immersed in it because it was what was installed on the computers in the labs, it was basically my first OS after the Commodore 64 lol. It was a fun and exciting time. Have fun!
mehx9@reddit
Learn by doing. Setup a lab environment at work and check out red hat’s learning resources. Like https://www.redhat.com/en/interactive-labs.
Kreiger81@reddit
If you want to brush up, i've found that r/linuxupskillchallenge has been nice actually.
gangaskan@reddit
Build a test server and dive in my friend.
It's not difficult if you're used to command line
A_SingleSpeeder@reddit (OP)
I've gotten pretty good with PowerShell over the years so I don't think it's going to be too difficult for me to pick up. Yes, I know it's totally different but before I learned PS, I didn't like to do anything with commands. I'm a visual person to the GUI was just so natural and easy for me.
Klutzy_Scheme_9871@reddit
It’s not just commands. You have to know your way around this OS since it’s a headless environment. You need to learn services, permissions, configuration of services, tuning, memory, disk, encryption (SSL certs), it’s a beast but depends on how much you have to administer. I’m actually the opposite. I know more linux than windows.
Zeitcon@reddit
Ansible is going to be your best friend, so you should start learning that too.
Trust__Nobody@reddit
(1) fire up genAI of your choice
(2) “Create a structured learning roadmap for becoming a proficient Red Hat Enterprise Linux (RHEL) system administrator. Cover the core concepts, practical skills, commands, tools, troubleshooting methods, and real-world scenarios I need to master. Organise it from beginner to advanced level, and include examples of hands-on tasks I should be able to perform at each stage.”
(3) make some tea
QuantumRiff@reddit
a few tips.. Linux can run in very little resources, so its great to run a single VM per purpose. (ie, no more Directory plus DNS Plus DHCP plus time server plus file serving). Of course, Docker can be even better for this, but baby steps 😄
But that can quickly, quickly sprawl.
Your best friend is an automation tool like Ansible (or puppet, or salt, or chef, etc) that you can define roles and inventories, and quickly build (and rebuild) systems in an idempotent way (ie, you can run that same script over and over, without problems).
eggbeater98@reddit
There are several websites that show you how to set up different distros to work in enterprise environments so you can still hook in to AD, etc. GPOs work a little differently. One of the best is https://server-world.info/en/.
You can Google chest sheets on equivalent CLI commands for CMD/PS commands for administration and troubleshooting.
The best advice is dabble more :)
kungfu1@reddit
With how advanced things have become with AI now, there hasn’t been an easier time to have to do something like this.
huntinwabbits@reddit
Exactly,for example
"How to stop my company moving to Linux" ;)
DenseDepartment8317@reddit
Get comfortable with the terminal. I started as Linux admin and I'm actually much weaker as Windows admin. Feel free to ask me.
NuAngelDOTnet@reddit
I had to make the same transition 4 years ago. It's a learning curve, but it sounds like you'll have help. And even better, you're going with Red Hat, so it'll definitely help.
If you don't have immediate access to Red Hat, you'll probably want to install Fedora on your testbeds or even a home laptop to tinker with and learn on. Don't let it be intimidating. After 90 days you'll feel underwater, but after 180 days you'll already much more confident and start learning the flow of things.
Just remember why you got into computers when you did... it was the excitement of learning new things. You get to feel that all over again!
Tx_Drewdad@reddit
I think the RHCSA in-person class is only a week. You got this.
bossman1337@reddit
Careful, you might fall in love with Linux and realise why it was never done like that it in the first place.
haklor@reddit
I went from being a purely Windows admin to a purely Linux admin overnight due to a job change. The concepts you are familiar with still exists with just the actual execution changing. Most Linux admin work is through file and folder manipulation. The more that your scripting experience allows you to manipulate files and strings the better your experience will be. Focus on the primary distribution that you will be using and figure out how to manage updates and event logs from a central location. From there it will largely be workload dependent.
brispower@reddit
start using linux as your daily driver at home PC, consider a server as well and start playing with things.
Pauxto@reddit
Sadserver.com, practical learning method I'd say.
stephenmg1284@reddit
Look into orchestration, something like Ansible
Outside-After@reddit
For me, when I had to manage the monitoring under Nagios and Icinga, I had to get hands - on with Linux. Being on call too helps. I commend this route to the house.
sqnch@reddit
I found CompTIA Linux+ genuinely useful.
gumbrilla@reddit
So when you are doing this, are you going to change how you work? Now would be the perfect moment to get IaC running. Hand building linux servers is not really a thing I'd do. Personally I'd go with Ansible.
If you do then once in.. you basically need to learn how to deploy stuff (see ansible), how to get it to start automatically (see ansible), configure where it's data lives (see ansible), sort out the mount points (see ansible). Getting decent with logs, but you should set a up a collector (using ansible), and configure the log files to got to the collector (with ansible)
or use something else.. ansible like but not ansible. Basically, the less twiddling you do on it, the better it is. Just one thing I'd suggest over and above the usual.. real logs, start and stop services etc. is cgroups. If you want a quiet life apply cgroups (via ansible 😄)
keivmoc@reddit
What distribution are you using? They're all a little different.
You can try spinning up a vm and get a LEMP stack going. Get used to editing config files with vim or nano, how the network stack works, and how the firewall works. Again, it'll be specific to whatever distribution or fork you're using. Digital Ocean has a ton of really good documentation on how to do regular setup and admin tasks.
Other than that, your most useful tool will be following log files.
tail -f /var/log/messagesYou can use
grepto filter for specific service or item. Piping and re-directing are essential.tail -f /var/log/messages | grep nginxMost newer systemd distributions are using journalctl for logs
journalctl -fYou can pipe the output to
greplike above or show the logs for a specific service.journalctl -f -u nginx.serviceOr show recent exceptions
journalctl -xeHonestly though the best way to learn Linux is by watching a Linux admin work ...
screenis a great tool for sharing cli prompts. Good luck!AdeelAutomates@reddit
That's awesome. You can start with RHSCA or LFCS certs depending on if its Redhat or not. I find certs usually have good educational content ecosystem and are a decent starting point for new tech stacks.
And then just go with the flow. Learn on the job, sit a wall and try to research your way to breaking through, etc.