[SOLVED] Best resources/links/youTube/etc for gaining full/complete knowledge of Linux?
Linux - NewbieThis Linux forum is for members that are new to Linux.
Just starting out and have a question?
If it is not in the man pages or the how-to's this is the place!
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
The all mighty kernel. Lot's of ./doc/ or ./Documentation/ paths with text and/or html or even .md (markdown) files. The make menuconfig has options and related help for relatively brief descriptions.
Various tools like "man" or "info" to get the gist of common things. Other already there in your favorite distro things like the contents of /usr/share/doc/. The wonderful thing about computers is that everything that you need to know about it (software wise) is already on it (if you know how to read it). Fortunately there's more time efficient means to know things beyond reading source code or disassembling machine code.
$ man hier
I bought a couple books in the late 90s, and as far as the unix-isms still pretty applicable. How to use things like awk, sed, less, man, info, and other things. If you don't leave the command line we're still using software that is for the most part the same as it was 20+ years ago.
That's a very useful resource but also very broad. Would you be able to say which utilities you are currently focusing on? For example, nmap, tcpdump, scanssh, etc. Then it will be easier to point towards relevent material.
Some of the advice above includes awk, sed, less, and man.
I'd add to those tail, tee, stat, grep, xargs, tmux, ps/pgrep, kill/pkill, strace, at, rsync, tar, find, sudo (via /etc/sudoers), ssh (especially ~/.ssh/config), curl/wget, and once you get advanced even a bit of perl. All of those are lifesavers for system administration.
That's a very useful resource but also very broad. Would you be able to say which utilities you are currently focusing on? For example, nmap, tcpdump, scanssh, etc. Then it will be easier to point towards relevent material.
Some of the advice above includes awk, sed, less, and man.
I'd add to those tail, tee, stat, grep, xargs, tmux, ps/pgrep, kill/pkill, strace, at, rsync, tar, find, sudo (via /etc/sudoers), ssh (especially ~/.ssh/config), curl/wget, and once you get advanced even a bit of perl. All of those are lifesavers for system administration.
grep < sed < awk < perl
All of the above! Lol. But seriously, I'm using a little of everything. Wireshark, nmap, tcpdump, command-line tools as well as GUI. I have notes up the ying-yang, scrawled all over and even had to create a 'notes' script that just dumps all my note text files so I can grep for something I forgot. I was using Python for a portable scripting language, but really want to learn bash, even though it's pretty cryptic with it's vast amount of context-dependent operators, I see that if I had any hopes of being in the tech industry, I'd probably better learn it enough to at least make some functional scripts. Also learning more of the gcc. I've spent years working in visual studio and android/java, haven't spent enough time in the basement.
I have notes up the ying-yang, scrawled all over and even had to create a 'notes' script that just dumps all my note text files so I can grep for something I forgot
If you're into graphical interfaces then Zim might be an option for that. It's also searchable via grep in the shell since the data files are plain text.
About the shell itself, you might consider setting up your shell, be it bash, ksh, or zsh, so that the history gets saved even when you have multiple concurrent sessions. There are some privacy implications on multi-user systems if the history is readable otherwise it is very useful for compiling lists of frequently used utilities and options.
About the shell scripting in general, be sure you can also work with basic POSIX-compliant scripts when needed or, better, by default. Bashisms can be useful but reduce portability a little and speed quite a bit. Which tasks or activities are you interested in automating with shell scripts?
Which tasks or activities are you interested in automating with shell scripts?
Not even sure yet, to be honest... still just wrapping my head around the unimaginably vast sea of options. If I had to come up with a quick answer, it would be something along the lines of what I was doing with Python, which was scripting web sites, downloading data, sorting/formatting and displaying. When I get really into it, and learn wtf I'm doing, I'll probably be writing some c stuff to do things at a fairly low level, and using scripts to keep a constant eye on the system, processes, vital files, and creating/auditing backups just for my own sanity and for the experience of doing it. Organizing, auditing, and simplifying are my favorite tasks. I'm not a big fan of gigantic programs that take up way too much space to do a bunch of crap, so if I can find an alternative that's more efficient, I'll even settle for less functionality sometimes for decreased overhead. I'm a minimalist at heart. That's how I roll.
Since you mention the desire to learn 'bash' then I suggest some of the following;
Some of the above may seem dated but remember the material is still viable to learn basics.
Hope this helps.
Have fun & enjoy!
Right on, thank you! Right now, I think I have about 2 months worth of reading to do with all the resources listed thus far, but I will at least browse over each thing. Anything that can lessen the learning curve or offer a sane and reasonable explanation is very welcomed. Not that I don't love gory details, but I just feel that streams of hexadecimal characters processed by specialized hardware components isn't and shouldn't really be 'rocket science' nor should it be purposefully cryptic in order to obfuscate and confuse. I do sometimes make an exception in my coding, however, as I like to do as much with one line of code as humanly possible in order to preserve space and utilize tools which make it possible. Ternary, map and Lambda == good
Once you learn to use 'bash' you can augment by using 'cron'. Model your scripts to the desired effect then possibly move to high level language if the needs require it. Be sure to learn your system logs that can provide loads of conditional information. 'KISS' and do not try to over reach or extend something that will lead to being cumbersome thus worthless.
Quote:
“A tool is but the extension of a man's hand and a machine is but a complex tool. He that invents a machine augments the power of man and the well being of mankind.” - Henry Ward Beecher
Quote:
“One machine can do the work of fifty ordinary men. No machine can do the work of one extraordinary man.”- Elbert Hubbard
Plus a great one;
Quote:
"Knowledge is of two kinds. We Know a subject ourselves, or we know where we can find information upon it."- Samuel Johnson
Hope this helps.
Have fun & enjoy!
Last edited by onebuck; 09-18-2017 at 09:54 AM.
Reason: add link to define KISS for the world
Ok, I will tentatively call this thread officially [SOLVED!] as I think it's more than enough to get started and is definitely of the types of resources I was looking for, though I'll have more specific questions later perhaps. I suppose feel free to post more and perhaps direct new users to this thread with the understanding that if they are completely new, and looking to learn this OS, they may need to consider taking a few months of dedicated practice, reading, writing, and learning to get a ballpark figure of the absolute vastness contained within. I have an ATA in software application development, and it's taken a couple weeks of intense study to scratch the surface...
Learn some bash, compile some c, read the man pages, grep for help, create a help script, write notes, practice daily, consider having a "test" installation for testing and tinkering, and if your girlfriend hasn't left you because you're too busy at the computer, then you just aren't trying hard enough.
Distribution: Mint 18.3 Cinnamon, Gallium, Ubuntu Armbian (headless), Arch (learning)
Posts: 138
Rep:
@StevenSmithCIS
Hey there! I am finding myself in your same situation. I am getting back into Linux (for real this time, LOL!) because my back is finally trashed. Had surgery last year and now 1 year later, it's time for fuse and rods. I deeply loved carpentry and the Army but they have finally taken their toll.
I am not trying to get in trouble or hijack anything, but how hard was school? What is the job market like out there? I still have my GI Bill and I need to find something I can do that isn't too labor intensive. I feel ashamed to ask, I never thought I would be at this crossroads in my life. I am right behind you at 38. I know us old farts can still learn new tricks! LOL!
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.