If you had to learn Linux from scratch all over again, how would you do it, with the knowledge you have now? What are some important concepts that youâve learned on your journey and what are resources that helped you the most?
I have pretty extensive knowledge of MS systems and general system administration of windows environments and am currently looking to expanding my knowledge. I also decided to ditch Windows completely, the more you know about it the less you like it.
Ultimately, Iâd like to be able to contribute to the open source community (still not sure how, have to see what I like doing) but it seems a bit overwhelming. How did you start your journey?
I started my journey with Linux with Red Hat 5.1 or 5.2 - long enough ago that I built my own kernels in order to ensure my hardware was supported.
A lot has changed since those days.
My advice is to install Linux it and start using it. There are lots of different ways to contribute to the open source community, so where you go with it depends on what your skills are, what skills youâre interested in learning, and what you like (as you indicated, still things you may need to figure out).
Probably the most important thing to learn coming from Windows is that Linux isnât Windows. It sounds obvious, but youâll have ways of doing things that are ingrained from repetition and muscle memory. Those things will need to be relearned as you start working with a Linux system.
Another important thing to learn is that open source is about choice. Asking âwhatâs bestâ is best answered with âit depends on what you likeâ. Try things and see what you like, and what works for you (and what doesnât).
If there are things you want to try that might be destructive, have a virtual environment (or a system that can be reinstalled whenever necessary) available to experiment on. Recovery is often possible, but itâs better to have a safe system to play on.
Learn about containerization (Docker/Podman) for hosting services. This technology is great for creating an environment thatâs âisolated enoughâ that apps arenât going to step on each other with differing dependency requirements, and is a gateway to using a tool like distrobox to effectively run apps with different distribution requirements (for example, if you are running openSUSE and you have something that is only available on Debian or Ubuntu, you can set up a distrobox environment for that application - itâs lighter weight than a full-blown VM).
Hi, welcome.
One of the things I keep on saying is that distro hopping doesnât teach you a lot of thorough knowledge. Better learn to work wih one or two. Same goes for desktop environments.
I ditched Windows in ~2001 and never went back. Became active in forums / IRC etc and never regretted
I agree with you that the more you use it the more you get it, I am feeling that in real time. A lot of time when doing stuff I find myself in the same folders so I memorized some of them.
I was kinda looking into everything youâve suggested so itâs great to get a confirmation that Iâm on the right track I wanted to backup my dotfiles config and then pull it when needed for testing from VM. Still have to look into that. Any suggestions? How do you go about finding the right tools for you. Iâve found this site but itâs kinda hard to pick when you donât yet know what youâre doing and this seems like an important decision to make: General-purpose dotfiles utilities - dotfiles.github.io
For virtualization I was thinking of looking into Proxmox. I know how to work with vmware but I donât like them (greedy, from today, April 1st they require a minimum 72 core license subscription for VMware vSphere Standard, and theyâve removed one year contracts)
a tool like distrobox to effectively run apps with different distribution requirements (for example, if you are running openSUSE and you have something that is only available on Debian or Ubuntu, you can set up a distrobox environment for that application - itâs lighter weight than a full-blown VM).
This sounds awesome. Definitely something Iâll look into. Thanks for the advice!
I hear Proxmox is good, but I use VMware Workstation Pro (itâs available free for all uses now, in case you didnât know - though I do understand the changes theyâve made in the paid products and also wouldnât be happy with them if they affected me). Iâve also used VirtualBox in the past, and itâs a reasonably good solution.
If you want to get into virtualization thatâs Linux-kernel-based, take a look at KVM. There are tools with libvirt that are pretty good (so I hear - I havenât played with it myself directly, though I have worked with configuration in virtualized systems that run under KVM).
For backup of user configuration files, I probably would look to use either rsync or a backup tool like Borg (which I use the Vorta frontend with).
When I am looking for a tool to accomplish a specific task, I usually use Google or look for community recommendations. More often than not, my needs arenât met by a specific tool, so Iâll knock out a script (either in bash or python - python is a good language to learn for that kind of thing, especially if using REST endpoints for various things).
My decision of picking openSUSE Tumbleweed is also a bit political. Iâm not really interested in distro hopping, I am fully determined to stay on openSUSE. Iâm mostly interested in learning openSUSE for myself and rest of distributions as much as itâs needed for my job. Weâll see how it goes, I feel inspired and optimistic, letâs see how long it will take for it to crush me So far everything Iâve seen, I really like
You mentioned desktop environments. What makes it so different? Is it because apps are written differently? Iâve tried GNOME and Plasma and decided to stick with Plasma because GNOME gave me some weird issues with my peripherals. I like both, though, maybe KDE a bit more
Ultimately, itâs all about what you choose. Just because you run Plasma doesnât mean you canât run GNOME apps (or vice versa). They may not be as well integrated into the desktop environment, but as long as the necessary libraries are present, youâll still be able to run them.
On gnome versus KDE: To be clear you can still run âKDE applicationsâ on gnome and vice-versa.
For most people KDE versus gnome is I think just esthetics and that is fine, what is for me a point is that KDE is more tunable/configurable.
You indicate itâs needed for your job, can you tell us what your role will be?
Probable good to understand the difference and the similarities between Leap and SLE Desktop.
While I do consider myself a noob when it comes to administrating and/or maintaining a Linux system, my journey began 20 years ago with a very simple task: I just wanted to have an IRC client running 24/7.
Back then there were multiple small companies and non-profit organizations providing cheap shell accounts for file hosting, email and IRC.
In addition to the IRC client itself (irssi), I had to learn some command line basics like cd, mv, cp, rm, ls, mkdir, ssh, scp, screen⊠I even used Pine to read and send email because I thought it was cool.
Since the server was not my own I had no responsibilities beyond the service providerâs terms of use.
But I still had to learn how to troubleshoot. Like when I accidentally sent a pause command to my screen instance. Or when I wanted to make my public_html index view inaccessible.
And of course, being a long-time Mac user, macOS is another place where I have been utiziling the command line in vary basic ways.
So, when I decided to get into Linux as a hobby, host my own server, run Tumbleweed on my desktop, etc. I already had some basic knowledge and it has certainly made things easier. But now I also have responsibility which means that I have had to learn a ton of new things.
Whatâs completely new to me is interacting with the GNU/Linux community.
A thorough understanding what it means that Unix/Linux is multi-user and multi-session.
The one and only directory tree on mass-storage (and thus the concept of mounting file systems to build that tree).
How file ownership by user and group and the permissions that go with it function.
These are the main concepts that come to my mind about which many people lack understanding and that thus lead to many of the âproblemsâ asked about in the forums.
Well itâs not needed per se, I work as a sys admin, most of devices we have are windows servers and when we canât do it in Windows we do it in Linux and usually deploy Ubuntu. They are, however, open to implementing new technologies, I just gotta learn and put in effort before suggesting anything. We have a couple of things that run on Linux, mostly specialized apps or services. Like Duo Authentication Proxy, for example Authentication Proxy Reference - Duo | Duo Security
@Xolik Then you could look at using the likes of Leap Micro and run in an Ubuntu distrobox⊠Then you also have the likes of kubernetes and using helm charts if availableâŠ
When working as an sys admin I would start with a small âhome labâ and do some experiments with networking, virtualization. monitoring and security. Try things without to much care, fix things, lose some things and learn to recover stuff.
Well, I wouldnât know exactly how to contribute in this thread. But, perhaps, saying something from my own experience could be valuable. I learned because I needed at that moment in time, so I went on facing what I had to face during each particular situation. That is not completely an inconvenient manner to do it, just jump into it and solve each issue at its own moment. But perhaps you could also build a better program more suitable to your own needs. This is, learn something about linux, something about a chosen distribution, and then about its own features. Forget about windows!
Learning Linux is easier now than before. I would definitely just start using Linux whenever you can. If you are not able to use a dedicated hardware, you can use a virtual machine instead. WSL2 in Windows is an option if you want to focus on the terminal and not worry about desktop experience / windows managers.
Also, now you can consult many of the GenAI / LLM services, many offering free or no-login required experiences. Just keep in mind the training cutoff date â for example the popular ChatGPT-4/o series model goes up to October 2023. I find the model is very good as explaining complex terminal command line options and it really helps supplement the documentation in the man pages.
Also remember to take anything any LLM tells you with a grain of salt - while theyâve improved, they still do have a tendency to hallucinate answers, and if youâre learning something new, itâs really hard sometimes to distinguish between whatâs real and whatâs a hallucination.
Never take an AIâs answer 100% at face value - treat it as a starting point, but never an authoritative answer.
As you said, itâs a supplement to the documentation, not a replacement.
@Xolik Iâd recommend finding a project you interested in for example I setup a Raspberry Pi 3 to be a local time server with GPS along with RTC. Another was Aircraft Tracking with ADS-B, setting up systemd services and nologin users to run the services. Always fun to get your hands dirty on a subject that interest you.
I actually start my Unix/Linux journey on Solaris (circa 2002), I was involved in a project to send out snmp traps where none existed on the equipment only log entries⊠I had to learn Perl for that and came across a utility that fitted the bill called simple event correlator https://simple-evcorr.github.io/ which I contribute to as the openSUSE (and SLE) packager/maintainer since 2010