I understand the usefulness of the terminal and how universal it is for troubleshooting across distros. But can’t there be a way to make a nice graphical tool for the various admin level tasks that need to be performed?
Edit: Thank you to the outpouring of feedback on this. It has greatly opened my eyes to how much I don’t know about. I did see a couple suggestions though, so I’ll be sure to check them out.
Well put. I do need to learn much of the basic workings of CLI. Any recommendations on how to approach learning?
I think my best advice would be to make a philosophy out of it. Learn how to solve every problem you come across with the CLI. Only use Google or ChatGPT when you hit a wall, and utilize the man pages to understand why the answer works.
Make a habit of automating common tasks using shell scripts. Over time you’ll accumulate a library of cookbook code for doing common things that you can always refer to. Write comments in them to save time when you come back and refer to them. It also saves time to automate common things.
Long ago I followed the Linux From Scratch guide and it was very enlightening. It walks you through installing a working Linux system from scratch, starting from within another installation. So you could e.g. install Debian to a VM, add a second virtual hard disk, and follow the guide to iteratively install each bit of the system on the second hard disk until you can boot it and use it. This is an intense (or at least time-consuming) process but it’s worth it.
Although it’s terribly outdated now, I got a lot out of the book The Unix Programming Environment. It lays out the history of the system really well. In general, anything written by either of those two authors (Kernighan in particular) is just gold, they’re both excellent teachers. It helped me intuitively understand concepts like pipes, “everything is a file”, shell programming, awk, etc.
https://www.linuxcommand.org/tlcl.php
Another good resource IMO: Linux Journey