Best computer network administration books according to redditors

We found 604 Reddit comments discussing the best computer network administration books. We ranked the 98 resulting products by number of redditors who mentioned them. Here are the top 20.

Next page


Network disaster & recovery books
Email administration books
Linux & UNIX administration books
Data storage & retrieval books
Windows administration books

Top Reddit comments about Computer Network Administration:

u/samort7 · 257 pointsr/learnprogramming

Here's my list of the classics:

General Computing

u/sold_myfortune · 37 pointsr/cybersecurity


You should be aiming to eventually get a position as a Security Operations Center (SOC) analyst.

A SOC analyst position gives you some insight into a whole range of different information security problems and practices. You'll see incoming recon and attacks, your org's defenses and responses, and the attacker's counter responses. You'll get experience using a SIEM. You'll become familiar with all of the tools in place and start to figure out what works and what doesn't. You'll learn the workflow of a security team and what the more senior engineers do to protect the enterprise. After a couple of years, you'll probably have a much better idea about your own interests and the path you want to pursue in your career.

Here's how you get there:

Step 0: Make a habit of using spellcheck, then proofreading what you've written.

Step 1: Get the Network+ certification (Skip the A+, it's a waste of time for your purposes). You MUST understand IPv4 networking inside and out, I can't stress that enough. A used Net+ study guide on Amazon should be less than $10. Professor Messer videos are great and free:

Mike Meyers has about the best all in one Network + book out right now, you can get that from Amazon. You can also check out Mike Meyers' channel on Youtube, he has a lot of Network+ videos:\_qc-eOU

Step 2: Start learning some basic Linux. The majority of business computing is done on a unix type platform, this will not change anytime soon.

For Linux, I'd highly recommend "Unix and Linux System Administration Handbook" by Evi Nemeth, et al. The information is presented in a way that is comprehensible to regular people. You can get a used copy of the fourth edition for about $15.00. The second edition got me through my first three jobs back in the day :)

Step 3: Get a techie job, probably in entry level tech support or helpdesk. You have to do a year or two here to get some practical experience.

Step 4: Get the Security+ certification.

Step 5: While in your tech support job try to do every security related task you can.

Step 6: Attend Bsides conferences (very cheap), there is almost certainly one within a couple hours of you.

Step 7: Join a local hackers group similar to NoVA Hackers or Dallas Hackers.

Step 8: Network with everyone you can at security conferences and in your hackers group.

Step 9: After you get those certs and some technical work experience, apply for every SOC position you can.

Step 10: Take the free online Splunk class while you're waiting.

Step 11: Keep going until you get that SOC analyst job.

Guess what, you're an infosec professional!

That SOC analyst job should pay between $50K and $60K. You'll stay there for a year to eighteen months and get a couple more certifications, then leave for a new job making $75K to $85K. After five years in the tech/cybersecurity industry you should be at $100K+.

u/Letmefixthatforyouyo · 36 pointsr/sysadmin

Okay. It was /u/iconrad. Here is the thread:

Also, I highly, highly recommend buying "The linux command line". Its a book aimed at beginners that will teach you the why, what and how of linux like no other. Its also free on the authors site in true libre fashion.

u/moted · 34 pointsr/programming

Seth published an O'Reilly book and they also work with ICE. Wonder if he's going to yank his book too?

u/robertito42 · 34 pointsr/sysadmin

I'm not sure I'd consider Powershell devops than a core Windows administration tool. Devops to me would be like Chef, Puppet, Ansible, Salt, etc. (Puppet I think would be good for a Windows person to learn.)

You can do Powershell in a month of lunches:

You can do the Microsoft Virtual Academy as well:

Powershell is very object oriented and pipelined, it's not a bunch of "++1, !, +3," style of true programming. It's more of a "get-aduser doej"

A lot of the commands are the same syntax prefixes, like "get" and "export".

Don't be discouraged, envision yourself knowing this inside and out in a year, and your mind will work you toward this goal.

What, specifically, do you work with that you think can benefit from scripting?

u/astro_za · 32 pointsr/PowerShell

Powershell in a month of lunches is apparently quite good, that will cover Powershell from the basics to relatively advanced concepts, although I don't recall it covers AD.

Once you have a grasp of PowerShell, the AD modules are not much trouble to learn at all, MCSA should at least cover some of that.

Also - Take a look under the "resources" tab on the right of this sub.

u/two-gun · 29 pointsr/linux4noobs

Sorry for getting all dramatic, but for me you're asking a red pill/blue pill question. I applaud your curiosity and can only recommend you follow your gut and take the red pill. The truth is by asking the question you already know what to do next. Just keep going. However I'll give you a few ideas because you got me excited.

  1. Get in touch with your osx terminal
  2. Get linux ASAP
  3. Learn the command line

    OSX Terminal

    Underneath the shiny GUI surface of your mac you have an incredible unix style OS just waiting to be played with and mastered. A few tips to get you going.

    Download iTerm 2. Press cmd-return, cmd-d and command-shift-d.

    Congrats. you now have a hollywood hacker style computer

    Copy and paste this line into your terminal and say yes to xcode.

    ruby -e "$(curl -fsSL"

    Awesome you now have homebrew. A linux style package manager.

    May as well get cask too.

    brew install caskroom/cask/brew-cask

    Now you can install programs by typing a couple of words.


    brew cask install virtualbox

    Get Linux ASAP

    Linux is relatively easy to get up and running and awesome fun. try any of these options

  • Download virtual box and install a 'virtual machine' to run linux on your mac (see above).
  • Buy a Raspberry Pi.
  • Create a bootable usb and install refind on your mac.
  • Take a friends old laptop and install linux on it from your live usb distro.

    If any of the above seems slightly daunting don't sweat it. Be confident and you may just surprise yourself at how much you can learn in such a short amount of time.

    Learn the command line

    The command line opens up the wonderfully powerful and creative world of unix. Push on.

  • Get the basics down with codecademy
  • Play with some books (this or this for eg)
  • Watch some youtube videos (this guy's good for webdev)
  • Learn a text editor (Try Vim. You already have it. Type 'vimtutor' in your terminal to get started)

    Play, Play, Play

    Do what gets you excited.

    I got a big kick out of learning ssh and then pranking my friends with commands like

    say hello friend, i am your computer. i think your friend two-gun is very handsome. Is he single?


    open -a "Google Chrome"

    Do what you find fun. Oh and check out Richard Stallman. He's a good egg.



    forgot iTerm link


    Wow! Gold! Ha! Thank you. This is so unexpected! I'd like to thank the academy, my agent, my mom...

u/KrogerKing · 23 pointsr/homemadexxx

Learn how to access all service guides and manuals.... Learn unix/linux basics. Maybe build a small home lab, you can buy cheap servers and networking equipment online. Never say "I don't know" say "I will have to do some research". Nobody knows everything... Google is your friend.... When you are at work do not browse this sub.. Start reading up on that things they want you to work on now.......I am not an admin but work in data centers every day fixing servers. Been in the industry for 13 years.... still get worried about people finding out I have no idea what I am doing lol

Great Guide
UNIX and Linux System Administration Handbook

u/xxdcmast · 21 pointsr/sysadmin

I like a nice ham sandwich for a lunch point.

As far as getting into PS. This is the usual recommendation.

Enjoy your book and sandwich.

u/Glomgore · 21 pointsr/sysadmin
u/DucBlangis · 20 pointsr/netsecstudents

Here is a "curriculum" of sorts I would suggest, as it's fairly close to how I learned:

  1. Programming. Definitely learn "C" first as all of the Exploitation and Assembly courses below assume you know C: The bible is pretty much Dennis Richie and Kernighan's "The C Programming Language", and here is the .pdf (this book is from 1988, I don't think anyone would mind). I actually prefer Kochan's book "Programming in C" which is very beginner freindly and was written in 2004 rather than 1988 making the language a little more "up to date" and accessible. There are plenty of "C Programming" tutorials on YouTube that you can use in conjunction with either of the aforementioned books as well. After learning C than you can try out some other languages. I personally suggest Python as it is very beginner friendly and is well documented. Ruby isn't a bad choice either.

  2. Architecture and Computer basics:
    Generally you'll probably want to look into IA-32 and the best starting point is the Intel Architecture manual itself, the .pdf can be found here (pdf link).
    Because of the depth of that .pdf I would suggest using it mainly as a reference guide while studying "Computer Systems: A Programmers Perspective" and "Secrets of Reverse Engineering".

  3. Operating Systems: Choose which you want to dig into: Linux or Windows, and put the effort into one of them, you can come back to the other later. I would probably suggest Linux unless you are planning on specializing in Malware Analysis, in which case I would suggest Windows. Linux: No Starch's "How Linux Works" is a great beginner resource as is their "Linux Command Line" book. I would also check out "Understanding the Linux Kernel" (that's a .pdf link). For Windows you can follow the Windows Programming wiki here or you can buy the book "Windows System Programming". The Windows Internals books are generally highly regarded, I didn't learn from them I use them more as a reference so I an't really speak to how well they would teach a "beginner".

  4. Assembly: You can't do much better than OpenSecurityTraining's "Introductory Intel x86: Architecture, Assembly, Applications, & Alliteration" class lectures from Xeno Kovah, found here. The book "Secrets of Reverse Engineering" has a very beginner friendly introduction to Assembly as does "Hacking: The Art of Exploitation".

  5. Exploitation: OpenSecurityTraining also has a great video series for Introduction to Exploits. "Hacking: The Art of Exploitation" is a really, really good book that is completely self-contained and will walk you through the basics of assembly. The author does introduce you to C and some basic principles of Linux but I would definitely suggest learning the basics of C and Linux command line first as his teaching style is pretty "hard and fast".

  6. Specialized fields such as Cryptology and Malware Analysis.

    Of course if you just want to do "pentesting/vuln assessment" in which you rely more on toolsets (for example, Nmap>Nessus>Metasploit) structured around a methodology/framework than you may want to look into one of the PACKT books on Kali or backtrack, get familiar with the tools you will use such as Nmap and Wireshark, and learn basic Networking (a simple CompTIA Networking+ book will be a good enough start). I personally did not go this route nor would I recommend it as it generally shys away from the foundations and seems to me to be settling for becoming comfortable with tools that abstract you from the real "meat" of exploitation and all the things that make NetSec great, fun and challenging in the first place. But everyone is different and it's really more of a personal choice. (By the way, I'm not suggesting this is "lame" or anything, it was just not for me.)

    *edited a name out

u/archover · 20 pointsr/archlinux

> had any tips for solidifying the foundations.

I strongly recommend the book How Linux Works by Brian Ward, at No Starch Press. 392 pages.

Update: Here's a sample chapter Disks and Filesystems

While published in 2015, most of it is still very relevant. Page for page, it's the best Linux book I've encountered. Topics range from simple to complex, and intuitively organized as well. I found it applicable, of course, to most of Arch.

Good luck.

u/fuzzyfuzz · 18 pointsr/linuxadmin

I have the UNIX and LINUX System Administration Handbook It's awesome and has a pirate boat on the front, so you know it's good. It's great for best practices type stuff, and there's a little bit of sysadmin humor mixed in.

I also have the Linux Command Line and Shell Scripting Bible which is good for CLI reference.

Other than that, you can find a ton of stuff on the web. Is there anything in particular you are looking for?

u/phillipjacobs · 12 pointsr/ITCareerQuestions

Pick up Powershell in a month of lunches and grab a free month trial of pluralsight. Two great resources for learning the basics.

For your lab, check on your local craigslist; someone is always getting rid of some gear there. If not there try EBay, can’t swing a dead cat without hitting a CCNA lab kit like these: Cisco Lab Kit

Once you have lab equipment, get some windows servers spun up as that will make learning powershell both applicable and rewarding to you.

u/veruus · 12 pointsr/linuxadmin

The Practice of System and Network Administration, Second Edition

UNIX and Linux System Administration Handbook - 4th Edition

[TCP/IP Illustrated, Volume 1: The Protocols - 2nd Edition] (

These should be part of every ops department's library, if not already in your own personal one.

u/OgreMagoo · 11 pointsr/sysadmin
u/replicaJunction · 11 pointsr/PowerShell

Learn PowerShell in a Month of Lunches is one of the most widely-recommended books on starting PowerShell. I'd recommend following along and physically typing commands in to see what happens - don't just read it.

Alternatively, if you've got the time, one of the most comprehensive introductions is the Microsoft Virtual Academy course on PowerShell 3.0. Don't worry - even though PowerShell 5.0 has been released, this is still very relevant information. It's long - almost 8 hours of videos - but these guys know what they're talking about and they explain it quite well.

Beyond that, check out the resources in the sidebar of this sub. There are a couple other intro books and guides, as well as a lot of script resources to look at.

Finally, once you have a feel for what the language is, the best way to discover what the language can do is to find something you already do a lot, and figure out a way that PowerShell can automate that process. It sounds like your senior engineers have some examples of this already, but don't be afraid to expriment. I have to produce a lot of Excel reports, so the PSExcel module for PowerShell lets me automatically create those reports.

Hope that helps!

u/moofishies · 11 pointsr/sysadmin

For anyone who reads this and goes "Wow! What else can powershell do that I haven't heard about??"

u/Himekat · 10 pointsr/cscareerquestions

I don't really have many good resources for you. I don't read a lot of technical books or websites/blogs outside of my day-to-day job. I've heard some pretty amazing things about Site Reliability Engineering and Effective DevOps, but I have yet to read either of them.

Overall, as you move forward in your career, I would encourage you to learn as much as you can about the ecosystem your code lives in. A lot of people who go into DevOps have really broad and comprehensible knowledge about the entire stack, all the way from networking and servers, to writing code, to building/deploying/hosting that code, to performance tuning that code, to logging and monitoring issues within the code, etc. Some developers really get stuck on "well, I've written the application, so I'm done, right?" but really there's a lot more to it and that's what DevOps people know and do.

u/achthonictonic · 9 pointsr/sysadmin

cc him on code reviews for your day to day scripts and proactively go over the small ones with him, line by line, a few times a week.

I have a list of exercises(pm me if you are intested) from: -- I assign 4 of these exercises weekly and go over it in 1:1s. Buy him a few books, and explain that you can't send him to a conference because of budget issues this year, but you want to invest in his career development -- it will go along way to building the mentor-mentee relationship.

The thing I like about this book, its age does give a good historical perspective, but the questions at the end of the chapters are easily adapted into good questions to fit a particular environment.

I've used this approach to bring up 3 jr linux sysadmins so far.

u/systemd-plus-Linux · 9 pointsr/linux4noobs

”How Linux Works” is one of the better in depth explanations of Linux I've read.

It's written in a way that anyone can read and understand it, but it gets pretty deep into Linux under the hood.

u/bulletproofvest · 9 pointsr/sysadmin

Yep, if you're a Windows admin you need to learn powershell.

This is a great book to get started.

u/StarSlayerX · 8 pointsr/sysadmin

My buddy used this. He highly recommended it to me.

u/sandwichboy41 · 8 pointsr/sysadmin

Don't use batch. It's outdated and should only be used for compatibility with very old versions of Windows.

PowerShell is the right way to to do this. I'm assuming when you say "create 20 users in Windows Server 2012" you are referring to Active Directory (AD) users, and not local users. You'll want to use the New-ADUser cmdlet to create the AD users. For importing from a csv file, you will need to use the Import-Csv cmdlet.

I won't tell you how to write the script, you should learn that on your own. The two cmdlets I mentioned should point you in the right direction. If you know nothing about PowerShell and need to learn the basics then get the book Learn PowerShell in a Month of Lunches. The book will teach you everything you need to know to get started with PowerShell.

u/perfecthashbrowns · 8 pointsr/linux

This has been one of my favorite books:

And I read through this entire book:

They are both great!

Edit: I can't type much because my internet is going out regularly at the moment, otherwise I'd love to elaborate further.

u/theevilsharpie · 8 pointsr/sysadmin

> windows server/services?

Microsoft's TechNet and MSDN are Microsoft's main reference portals for operations and development, respectively.

For structured learning, Microsoft offers their MCSE Program. Each exam covers a specific topic, and there are learning objectives and links to reference material available. Microsoft Press will usually have a self-study guide available for each exam.

There's also the Microsoft Virtual Academy, but I've never used it and can't vouch for its quality. Of course, it's free, so....

> linux server/common services? (Could be distro specific)

For professional use, the most commonly used Linux distributions are RHEL/CentOS and Ubuntu. (Debian is also popular, but it's close enough to Ubuntu that you can lump the two together.)

Both RHEL and CentOS have documentation available:
RHEL Documentation Page
Ubuntu Server Guide

RHEL's documentation is far more thorough and complete. However, Ubuntu has community support in the form of the Ubuntu Forums and Ask Ubuntu, and I've personally found it easier and faster to find specific information and solutions for Ubuntu.

For structured learning, Red Hat has a certification track available (which is obviously focused on Red Hat technologies), and LPI has a certification track that is more vendor-neutral. There are self-study books available for Red Hat's certifications, but they are all outdated for the current exams, and I don't recommend buying them until they're revised for RHEL 7.

For self-study, the closest thing to a Linux system administration bible that currently exists is the UNIX and Linux System Administration Handbook. However, it's a bit dated in certain respects.

Linux support and documentation, like its development, is spread out over the Internet. If you're looking for how to do something, usually the best place to start is Google. Searching for "[stuff] Ubuntu" or "[things] CentOS" will usually send you to the right place. Stack Exchange is also a pretty good resource:

  • Stack Overflow, for scripting and coding questions
  • Server Fault, for questions regarding system and network administration
  • UNIX and Linux, for questions about Linux in general

    > Networking

    Networking education is split into two worlds: theoretical/academic computer networking, and practical, vendor-specific networking.

    For theoretical networking, your best bet is to pick up a textbook. We recently had a thread discussing recommendations.

    For practical, vendor-specific networking, the big player is Cisco. Cisco has a certification track available with course objective and reference materials. For self-study, anything written by Wendell Odom is gold; however, bear in mind that you really need a lab for self-study to be effective.

    Other companies, like Juniper or HP, also have networking certifications available, but I only recommend them as a supplement.

    Lastly, while I describe Cisco's training as "practical," that doesn't mean that the theoretical aspect of networking is unimportant for a professional. There is an industry-wide push toward software-defined networking, and if your SO wants to get in on that, she'll need to have a firm understanding of computer networking theory.

    > NetSec

    Hardcore NetSec isn't really my field, but /r/netsec has a Getting Started Guide with some resources available.
u/dontgetborn · 8 pointsr/linuxquestions

I've heard that this is the best handbook for UNIX/Linux administration:

u/beepbupe · 8 pointsr/linux4noobs

2nd this.

The Linux Command Line. Author offers free PDF for download or you can support and buy from amazon.

u/TheLightingGuy · 7 pointsr/sysadmin

If you want him to get a firm grasp on it, There's this book as well:

A friend of mine works for one of the guys who wrote it and my understanding is that it's teaches you more than you thought you knew about linux.

u/mickbayne · 7 pointsr/linuxadmin

I suggest getting a copy of the UNIX and Linux System Administration Handbook.

u/istarian · 7 pointsr/linuxmint

You just have to jump in and do stuff. Using it as your primary OS or always for a particular task (e.g. always use it for internet browsing) is a good way to become familiar with a linux desktop environment.

As for the command, whenever you want to:

u/vogonj · 7 pointsr/windows

the operating system will sometimes page out parts of applications which are probably not going to be doing a lot of work -- a lot of background services and system applications will just sit idle for very long periods at a time -- and free up the RAM they'd otherwise be occupying to do other things. (if you want to see the pager at work, go download Process Explorer and look at the columns "Private Bytes" and "WS Private". "Private Bytes" is the amount of memory each application needs for its own private use; "WS Private" is the amount that the memory manager thinks it's entitled to, given its activity patterns and the system's current memory pressure. you can also pull up Performance Monitor, and look at the paging file usage counter under "Paging File > % Usage > Total", to see how much of your paging file is in use at any given time.)

as for what that RAM can be used for, off the top of my head:

  • there's a piece of Windows called [the prefetcher]( which monitors your usual use cases and speculatively loads files off the disk to help you get stuff done faster by having the files you need to do it pre-cached in RAM. the less RAM it has to play with, the less it can improve your performance.
  • file reads and writes are backed by the cache manager's cached copies of files; if the cache manager is running low on space to play with -- i.e., if you've got all sorts of idle data sitting around in RAM -- it has less space to cache files, and has to write things back to disk more often. (if you're doing heavily I/O-bound tasks, you might even end up with more disk accesses than if you'd left the paging file on!)

    there's a lot more about the design and implementation of Windows in Windows Internals by Russinovich, Solomon, and Ionescu, which I heartily recommend. (there's a sixth edition which is half-released right now and covers Windows 7, but the rest won't be out for a few more months.)
u/doss_ · 7 pointsr/linux4noobs

the easiest way is to strictly identify which part is really the variable:


cp $foofile testdir/. # cp: missing destination file operand after 'testdir/.' ($foofile doesn't exist and expanded to null, not enough required params for cp)

cp "$foofile" testdir/. # cp: cannot stat '': No such file or directory ($foofile still doesn't exist, but expanded to '' due to double quotes usage - good practice)

cp ${foo}file testdir/. # will compy 'testfile' if exists

Also it is usefull to access command line params from inside the script if there are more than 9 params, to access 10th param use ${10}

and here is some list i noticed for myself of how to use this braces, while reading this book - would recommend:

Sorry for formating issues, reddit treats spaces and new lines in special way..

variable substitution:

Bash supports various variables substitutions:

$a - will be substituted with 'a' value

${a} - same as $a but could be concatenated w/ string w/o spaces:

${a}.txt - will be expanded in a_value.txt

${11} - 11th positional parameter given to script from shell

${var:-word} - if 'variable' is set, the result will be its value

if 'variable' is unset - the result will be 'word'

$(var:=word} - if variable is set results in its value substituted

if variable is unset, it will be assigned to 'word'

such assignment will not work for positinal params(see 'shift')

and other special variables

${var:?word} - if variable is unset error with reason 'word' will be

generated, exit code of such construct will be 1

${var:+word} - if 'variable' is set, the result will be 'word',

(but variable's value will not be changed)

otherwise result will be EMPTY string


$ echo ${variable:-ls} - variable unset - ls used

> ls

$ export variable=1

$ echo ${variable:-ls} - variable is set- its value used

> 1

$ echo ${variable:+ls} - variable is set - ls used

> ls

$ echo ${variable1:+ls} - variable unset - empty line used


${!prefix} or ${[email protected]} - returns NAMES of existing variables

that starts from 'prefix.


$ echo ${!BASH


string variables substitution:

${#var} - returns length of string in variable's value


$ var=123456789 #this could be interpreted as a string too now

> 9 #string length is 9

${#} or $# or ${#@} or ${#} - returns number of positional parameters

of the script being executed

${var:number} - return string from number to the end, spaces trimmed

variable is unchanged.


$ var="This string is to long."

$ echo ${var:5} #returns string from 5th symbol

> string is to long.

Example: spaces are trimmed:

$ echo ${var:5} | wc -c #count chars

$ 19

$ echo ${var:4} | wc -c #return starts from space

$ 19 #space is trimmed so same number of chars

${var: -number} - return string from end to number, spaces trimmed

NOTE - space between ':' and '-' signs


$ echo ${var: -5}

> long.

${var:number:length} - return string from number till end of lenth


$ echo ${var:5:6}

> string

${var: -number: -length} - return string number between number(from the

end) and length (also from the end)

NOTE: number must be > than length


$ echo ${var: -18: -2} #var is This string is to long.

> string is to lon

${@} - return all values of positional params

leaving spaces inside strings (like "[email protected]" ) - bcs it know how

many arguments script has

} is the same form, it seems

${@:num} - displays values of positional params but from num

$(@:1) - works same as ${@}

${@: -2} works , but starts from the end

${@:num:length} - same as with strings but with positional params

${@: -num: -length} - same as with strings but with positional params

${param#pattern} - finds shortest match and deletes it (lazy match)





${param##pattern} - finds longest match and deletes it (greedy match)




${param%pattern} - same as # but deletes from the end of the file



${foo%.} - note . instead of . in # example


${param%%pattern} - same as ##



Search and replace:

${param/pattern/string} - replaces first occurance of pattern with string

${param//pattern/string} - replaces all occurances of pattern with string

${param/#pattern/string} - replaces only if at the beginning of the line

${param/%pattern/string} - replacesonly if at the end of the line

u/bofha · 7 pointsr/linuxadmin

Tanenbaum's textbook is par for the course THE best low-level exploration of the fundamental concepts of operating systems. It is, however, HIGHLY theoretical, and requires a solid base of knowledge prior to even starting it. It also is not useful for learning specifics about every day tasks.

This is a phenomenal introduction to the concepts and some of the practice of Linux:
And here is a practical-first exploration of how to use Linux:

I would highly recommended reading these two books, then picking up a copy of Tanenbaum's, and finally this:

If you actually study and practice implementing the topics discussed in these four books then you will have a far better understanding than 90% of the Linux users I've interacted with.

u/orispy · 7 pointsr/linux4noobs

This is the best book. Sets a firm foundation that you get nowhere else.

How Linux Works, 2nd Edition: What Every Superuser Should Know

u/ClydeMachine · 7 pointsr/sysadmin

Link for those curious. Thanks for the tip!

Also, there's a CBT Nuggets video series on Powershell for those who dig CBT Nuggets kind of learning.

u/Dreieck · 6 pointsr/HowToHack
  1. Don't start with Kali Linux.

  2. Especially do NOT replace your main OS with with Kali Linux. I'm assuming you are not familiar with Linux, so you will most likely damage your computer if you make a mistake.

    -get a VM and install Ubuntu to mess around and get used to the environment. The VM will keep you from damaging anything and acts as a failsafe.

    -I also suggest reading about how to use BASH. This will help you familiarize yourself with Linux. This book is amazing.

u/salamanderoil · 6 pointsr/AskComputerScience

It depends on what you already know.


Do you have any prior programming experience? If not, start there. My no. 1 recommendation here would be Allen B. Downey's free Think Python book. Others might come along and recommend something like SICP, which is a good book, but perhaps a bit hard for an absolute beginner. Downey also has a version of his book that uses Java, so if you know for a fact that this is the language your introductory programming class will be using, then that could be a better option (Python is a simpler language, which makes it easier for you to focus on the actual concepts rather than the language itself, but if you know that you'll be using Java, you might as well kill two birds with one stone).


If you do have prior programming experience, you have all sorts of options:

  • You could learn a functional language, like a Lisp (Clojure, Racket, Scheme, LFE, ...) or something in the (extended) ML family (Standard ML, OCaml, F#, Haskell, Elm, ...).
  • Or, you could go the other way and learn something low-level, like C. You could even learn about C and Lisp at the same time by building your own.
  • Or learn a logic programming language, like Prolog.
  • Or, if you really want to understand object-oriented programming (and how languages like Java managed to stuff it up), you could learn Smalltalk.
  • If you don't know what a unit test is or how to write one, you should learn.
  • Learn about data structures and algorithms. As a CS student, you'll be learning about them at some stage anyway, so there's no harm in starting early. Some people might recommended CLRS for this, but for someone just starting out, I'd recommend something a bit friendlier, such as this series of videos from Princeton (presented by Robert Sedgewick, author of one of the most popular books on the subject). If you'd prefer a book, this free one from Allen B. Downey (who also wrote the introductory programming text I recommended earleir) looks quite good.
  • Work your way through NAND2Tetris. It will take way longer than a month, but it will definitely set you apart from the rest of the class. Even if you don't do this now, you should definitely plan to do it at some point.
  • Learn about databases. Again, you'll have to study them eventually, so why not start early? You could start by trying to build something that uses a database, like a simple todo utility.


    Regardless of whether or not you have programmed before, I would also recommend doing the following:

  • Learn some basic Unix skills. It doesn't have to be too much – just enough to be able to sit down at the command line and have a vague idea of what you're doing is fine for now. You'll learn more as you use it more. That said, if you really want to dive in and learn how everything works, then something like How Linux Works could be a good read.
  • Learn some discrete mathematics. As a CS student, you'll be required to learn it at some stage – it's the mathematical backbone of CS, much like calculus is to physics – so you might as well start early. This free, book-length set of notes from MIT is very well-regarded (but don't expect to get through it all in a month!). There is also a set of video lectures if you prefer. If you're keen on learning functional programming, another option could be to integrate that with your discrete maths studies by reading Thomas VanDrunen's Discrete Mathematics and Functional Programming (if the physical book is a bit expensive for you, there's also a cheaper ebook version available).
  • For bonus points: learn to use either Vim or Emacs. There probably isn't a massive practical advantage to using these this early in your career (although they could certainly come in handy later), but if other students see you writing code in one of them, you'll look like an absolute badass. Your teachers will probably be quietly impressed, too.


    if you have any questions about my above suggestions, let me know, and I'll see if I can point you in the right direction.


    Good luck!
u/fromagi · 6 pointsr/linux4noobs

How Linux Works was suggested on another thread. I picked it up, and while I am only on chapter 2, it seems like a good primer.

u/teknewb · 6 pointsr/learnprogramming

I'd start here. You're in a college CS class so I'm sure you're at least at this level.

Just read the preface in the preview and you'll see the goal of the author is basically what you're describing.

There are similar, slightly more advanced books you can follow up with afterward.

The few bad reviews are only for the paperback quality (falling apart) which there is no need for, just use the ebook.

u/xDind · 6 pointsr/PowerShell

I taught a powershell class at work a few years ago. We went chapter by chapter through "Lean powershell in a month of lunches"

u/ardwin · 6 pointsr/sysadmin

Anything by Don Jones.

Even look up "Don Jones Powershell" on YouTube will bring up a lot of his powershell stuff. He is entertaining and very informative.

Or pick up his book:

u/inaddrarpa · 6 pointsr/sysadmin
u/reallybigabe · 6 pointsr/PowerShell

This is probably the most recommended book:

Books aren't really my learning style - to me, it's just solve a problem, then solve it gooder

Maybe I should read more....

u/Ghostalker474 · 6 pointsr/sysadmin

That's what I used, came highly recommended by folks in this subreddit, and I see why. Starts off slow and simple, assumes you have no prior experience in programming. By chapter 4 you're making scripts that show just how awesome PS is.

u/tdk2fe · 6 pointsr/linux4noobs

Get the Unix and Linux Administration Handbook, 4th Edition, by Evi Nemeth, Garth Snyder, Trent Hein and Ben Whaley.

This book covers both Ubuntu and other Linux flavors, along with traditional Unix. It is my defacto go-to when I need to look up a topic, and goes into incredible detail about not only how to do things, but also some of the theory behind them. A good example is that it explains how to set up a DNS server, but also details how DNS actually works.

For something cheaper - just google the Rute Manual. This also details a wide array of OS concepts and how they are embodied in Linux.

And while your learning - i'd like to throw this tidbit that I absolutely love from the Rute guide:

>Any system reference will require you to read it at least three times before you get a reasonable picture of what to do. If you need to read it more than three times, then there is probably some other information that you really should be reading first. If you are reading a document only once, then you are being too impatient with yourself.

>It is important to identify the exact terms that you fail to understand in a document. Always try to backtrack to the precise word before you continue.

>Its also probably not a good idea to learn new things according to deadlines. Your UNIX knowledge should evolve by grace and fascination, rather than pressure

u/BitpatternDesignator · 6 pointsr/sysadmin

A must read is UNIX and Linux System Administration Handbook (4th Edition):

u/Alives · 6 pointsr/sysadmin

See also:

Read this book:
UNIX and Linux System Administration Handbook (4th Edition) [Paperback] Evi Nemeth (Author), Garth Snyder (Author), Trent R. Hein (Author), Ben Whaley (Author)

u/[deleted] · 6 pointsr/networking

Honestly, this book is absolutely excellent in explaining the working world to you. It's Unix/Linux centric, however gives you awesome tools to tackle your day to day job.

u/joker_toker · 5 pointsr/linuxadmin

I'd like to humbly suggest the UNIX and Linux System Administration Handbook for your new admin. It's starting to show its age a bit (published 2010), but still communicates many of the core responsibilities of administrators in a clear manner with historical context.

Also, take a look at the Linux System Administration and Linux Web Operations LiveLessons, which are more current and may be helpful if the new guy learns from video tutorials.

Disclaimer: I am the author.

u/chadillac83 · 5 pointsr/linux

Read this, found it amazingly useful and packed full of knowledge, I recommend this book even to Linux noobs that are trying to get a better feel of the system for desktop use... once they have the basics down that is.

u/HedonicLife · 5 pointsr/explainlikeimfive

ATLien325's comment explains that terminology in a pinch, but it's not really going to get you very far on your way to learning how to hack. Your best bet would be to pick up books like this, this, and this. Then you'll have an idea of how programs, file systems, and networking work behind the scenes and you are much better situated to begin to learn how to hack them.

You're also going to need to learn how to effectively use a search engine.

u/bradym80 · 5 pointsr/learnprogramming

There is a good explaination about the history of Unix and Linux at the beginning of this book.

You could also watch revolution OS. Or just use youtube.

u/SwimDeep · 5 pointsr/sysadmin

I found the first version of the sys admin book by Evi Nemeth et al helpful years ago. I know a couple people who have found newer versions helpful too. Here is a link to the latest..

u/NoOneLikesFruitcake · 5 pointsr/sysadmin

I found this book in a thread and I've gone through the first four chapters so far. I only got it a little while ago but I really do like how it reads, and the amount it covers is nice. Check out the table of contents on amazon and you'll see what I mean about the coverage.

Other than that we're looking at the same kind of stuff. Let me know if you get any good leads :P

u/NinjaYoda · 5 pointsr/answers

>As we explore the details of the internal structure and operation of Windows, you’ll see how these original design goals and market requirements were woven successfully into the construction of the system.

Its actually from book called Windows® Internals: Including Windows Server 2008 and Windows Vista, Fifth Edition written by THE Mark Russinovich and David Solomon.

u/darrk666 · 5 pointsr/PowerShell

I started by reading a book which you can see by Clicking Here

After this I started changing my day to day admin process to use PowerShell instead. Learning other languages might help for looking into loops and things.

u/GobTotem · 5 pointsr/linux4noobs

I am a beginner too and just finished this book TLCL.Another one i would recommend is shell scripting bible.For most part use google to learn about commands and man page is your friend. I am more of a book kind of guy so never used video resources. Most important you should know where to look for help when stuck.

u/Hynjia · 5 pointsr/linux4noobs

>What are the biggest differences between these two ?

Yeah, that's gonna be a lot. It's easier to ask where they differ specifically. But generally, for me, Linux Mint feels more open and under my control than Windows ever did. Also, it's hella faster.


>How long will I have to use Linux Mint to "get the feel of it"

Impossible question to answer. I've been using Mint for about a year now, and I still don't have the "feel of it", per se. I'm comfortable using it and know where most things I need to know are...but I'm by no means no expert any in any meaningful sense.


>Where can I learn more about Linux Mint and how to use it ?

r/linuxmint exists and is really helpful. Resources on linux in general of often helpful in my experience, too. I bought "The Linux Command Line" and it helps me a lot.


>Do I need an Anti Virus ? How is Linux Mint different from Windows in terms of privacy ?

I mean...I don't use one...and, as far as I know, I don't have any problems (at least that aren't caused by me). Frankly, I'm not even sure which anti viruses exist for linux.

One word of warning: watch out for the desktop environments. Unlike Windows, you have options when it comes to your desktop environment. And those options comes with a billion more options to customize it how ever you want!

u/apertur · 5 pointsr/sysadmin

Not to mention that a lot of VMware functions use PowerCLI.

I also vote Powershell.
Edit: Might I also suggest Powershell in a Month of Lunches?

u/DaNPrS · 5 pointsr/sysadmin

Fuck that. You want to learn the newest shit, not some old antiquated OSs that your company just happens to use atm. Yes I'm being very blunt, you will have a better career if you do so.

  1. Yes. Powershell in a month of lunches and /r/Powershell . If you're gonna do Windows you need this.

  2. No. If you're gonna learn Windows, learn 2012R2. I'm running the 2016 version at home already in test. MCSA atm is for 2012R2, so stick with that. No reason to focus on 2008. The menus are very similar, functions are identical only 2012R2 has some added capabilities and some different ways of implementation. Learn the new way and you'll have better career opportunities. Including where you work now - what happens when they want to update to 2012R2 and you already know that OS?! Don't think of the present, think of the future.

  3. Not familiar with it.

  4. I run it at home for personal use. It's ok, wish I could join it to the domain and it'd stick/be stable at it. For storage is alright. I would not feel comfortable implementing it for a large business though. Small sized, maybe. Great to learn iSCSI and shares and BSD I suppose.

  5. Sure. Edgerouter Lite or even PFSense are great home routers. A coleague runs PFSense as a VM btw. /r/Ubiquiti /r/PFSENSE

  6. Not familiar with it.

  7. Get VMWare 6.0 (Look to the future)

    Also note that Hyper-V is free if you'd like to play with that. You can get that and other Windows Evaluation OSs here.

    I run a Hyper-V cluster with two Lenovo M93 systems, a VMWare 5.5 hypervisor on a TS140, and FreeNAS on a custom machine. My network is all Ubiquiti, ERL, ES Lite, 2x UAP-AC.

u/djpaec · 5 pointsr/sysadmin

Powershell is a very handy tool to have, but you don't need to 'dedicate' yourself. Go through this book and you'll be a step above a majority of IT professionals easily.

u/hosalabad · 5 pointsr/sysadmin

I think it is always safe to look at all of the material in the 70-640 curriculum. Most of it easily applies to 2012+ and you may still see a lot of 2008 systems.

Combine the reading with the lab work and you can learn a lot.

Also /r/powershell and Powershell in a Month of Lunches. New version addresses Powershell 3

u/NastiN8 · 5 pointsr/sysadmin

Rule 1: You better start learning how to teach yourself cause classes are probably not gonna happen. I got this book and taught myself the fundamentals of powershell. You'll need to do something similar. For the application, I'm sure the developer provides an entire site full of documentation for you to use to help develop your skills. It may seem intimidating now, but you'll get used to it.

Note: The powershell book is very easy to find for free if you know where to look.

u/ZeroHex · 5 pointsr/comics

>However, at least at this office, you can have days like today where things slow way down and you can derp around on Reddit until you get more calls or a user gets back to you.

System/Network Administrators (especially at smaller companies) either work well or they work often. I'm getting towards the "well" side of things more and more as I get better, which leaves more time for other activities, like reddit or going through Powershell in a Month of Lunches.

u/Zenkin · 5 pointsr/sysadmin

If you're looking at Powershell, the Learn Windows Powershell in a Month of Lunches is pretty well reviewed.

u/Nice2Cats · 5 pointsr/homelab

For a first overview of ZFS, I still recommend by Aaron Toponce, though it is badly in need of an update. If you know you are going to be doing a lot with the system, you might want to check out FreeBSD Mastery: ZFS by Michael W. Lucas (for example at Though a lot of parts are specific to FreeBSD, it discusses lots of things in depth.

There are three problems you're going to run into when learning about ZFS especially: One, the system has been around so long that there is lots of outdated information about old versions still floating around. Two, there are minor differences under the hood on how (say) FreeBSD and Linux do stuff, and sooner or later you'll read something that doesn't apply to your case and be confused. Second, stuff is changing fast, especially on Linux now that Canonical is pushing it on Ubuntu (see

The last part is about to get worse, because we're expecting the release of ZFS 0.8 any day now with lots of new features like native encryption, device removal, and TRIM support (

u/Nezteb · 4 pointsr/linux4noobs

Some info on distro differences:

u/zubie_wanders · 4 pointsr/raspberry_pi

Already good responses in here. If you're interested in a good book to learn a bit more, the concise Linux Pocket Guide is very handy. A longer book is The Linux Command Line: A Complete Introduction.

u/temporaryMan1233 · 4 pointsr/Ubuntu

It will take too long to explain how Linux handles such a thing differently. Read this book.

Every one should read it. I'm not a sponsor, dude!

u/remimms · 4 pointsr/linux4noobs

I found the book The Linux Command Line to be very useful. Good luck on your CEH!

u/phabeon · 4 pointsr/linux4noobs

Just get these 2 books(all you'll need, peep the reviews for proof) and thank me later

Linux Command Line

How Linux Works

u/chillysurfer · 4 pointsr/linux4noobs

For that purpose I can highly recommend the book How Linux Works. I thoroughly enjoyed it and it'll give you plenty of info.

Just to stack hands and echo what was said before, reading about will keep it in your brain for a day. Doing it keeps it there forever though.

u/uilfut · 4 pointsr/linux

I enjoyed this book (from local library)

The Linux Command Line, 2nd Edition: A Complete Introduction

u/NoyzMaker · 4 pointsr/ITCareerQuestions
u/Noobmode · 4 pointsr/sysadmin

Some tips.

r/homelab is a great place if you want to look and ask quiestions

r/SysAdminBlogs is a great place to find other information from other sysadmins

r/PowerShell is great for powershell stuff

If you want to get started on powershell the book "Powershell in a month of lunches" is a great read if you have time!

u/affieuk · 4 pointsr/PowerShell

I would take a look at Don Jones, PowerShell in a month of Lunches

Not sure if the book is the latest, so have google first.

If you see yourself repeating a task 2 /3 times or more, then look into scripting it, start small and simple and go from there. Once you start seeing the time put into scripting paying off, it'll get easier.

u/twigie4 · 4 pointsr/sysadmin
u/stamas · 4 pointsr/programming
u/djsupersoak · 4 pointsr/sysadmin

I would highly recommend you check out the UNIX and Linux System Administration Handbook.

It not only goes over a baseline of technical sysadmin (especially linux) concepts, but really shows you how to be a good admin. There is more to it than technical know-how. I'd recommend picking this one up.

u/sysopsbkms · 4 pointsr/sysadmin

First get yourself a copy of the Unix and Linux System Administration Handbook by Evi Nemeth (who is still missing at sea).

u/ihatefarts · 4 pointsr/linuxadmin

This book has saved my ass countless times. It has a bunch of great knowledge and gives you a chance to catch up on things you might have forgotten. I highly recommend you purchase this and keep beside your desk/cube, at least until you become familiar with the job duties.

u/off_z_grid · 4 pointsr/linux

First off, what are you doing now?

Here is some advice from a 20-year sysadmin who does devops and hobbyist development stuff:

Buy this book. You won't get better advice from anyone anywhere. It's expensive, but BUY THE FREAKIN BOOK:

Install some VM system like VitualBox and start playing with either Debian OR Ubuntu, AND CentOS. Install both numerous times and give yourself some extra partitions to format and play with. Read about some feature or thing and then go mess with it.

Eventually go after RHCSA/RHCE.

Learn the bash shell. Learn how to write real scripts with while/until loops and if/thens, arrays, and other stuff. That'll take time, but put some focus on it.

Don't get overwhelmed. Just start learning one thing, then the next, and go from there. The rabbit hole goes deep.

u/foofusdotcom · 4 pointsr/sysadmin

I'm surprised no one has mentioned the System Administrator's Handbook. I've got editions 1, 2 and 3 on my bookshelf.

u/delias_ · 4 pointsr/linuxadmin

Fundamentals is what you need to know to get through some first round interviews. Explain the boot process in detail from pressing the power button to getting a login prompt -- how does init work, how do run levels work, how does systemd differ? What is getty? pam?

DNS is so much more than just what that rap covers, so if you put it on your resume you better damn well know it. Tell me about the concept of glue records, what is a root hints file, know how to use dig at the very least, how do you switch the order in which the resolver library checks it sources? What is the truncated bit in a DNS packet for?

Know debugging and tracing beyond the usual "top" or "sar" to get real detailed data on what a process is doing. Strace, ltrace, tcpdump, gdb (how to take a stack trace and dump a core), sysdig, perf events, dtrace4linux, vmstat, slabtop, pmap, etc

DHCP is another one like DNS that people like to say they know, but you should know about DHCP relay/ip helper, pxeboot, the actual protocol order of events. Check it out in wireshark.

How do processes and threads differ, really? Lots to talk about here even down to shared memory space, system calls, etc

What is swap, really? What are page faults? How does kswapd behavior change when you don't run with swap?

Know Netstat/ss. Know that tcp is a state machine. What does a bunch of SYN_SENT in netstat imply? Difference between tcp's RST and FIN?

Stateful vs stateless is more than just a tcp/udp difference, it's a fundamental concept to so many aspects of technology.

Basically know what's in this book:

u/nick_storm · 4 pointsr/openbsd

> There are loads of books dealing with Unix and POSIX APIs.

There are many good C books. I've found Linux Systems Programming to be a good book that mostly caters to Linux, but delves into BSD occasionally.

u/null_operator · 4 pointsr/hacking

Going through a linux book, like this one, will get you over your linux hump. But otherwise, just doing stuff in Linux will get you going, like:

  • How do I make this linux box host a website?
  • How do I configure SSH accounts?
  • How do I change the swap settings?
  • How do I use xterm from another machine?
  • How can I samba share a resource?
  • How can I map a windows drive at home from SSH from outside my network like at Starbucks?
  • Can I add a route/port-fwd/limit-allowed-IP's through it?
  • Configure IPtables
  • Run a cron job or bash script that scrapes your favorite reddit for new comments about some topic and saves it as a web page on a server, so that you can read it from anywhere (like creating your own RSS feed), have the script monitor the file, and when the file changes (compare the hash), the script will tweet/SMS you that there is stuff to read.

    Once you get going, you're limited by your own imagination!
u/SneakyPhil · 3 pointsr/sysadmin

This is a very good book. Debian-isms you can learn as you go, but system administration concepts are useful throughout many distributions.

Other than that you have to set goals for yourself. Have you tried starting up 2 virtual machines and had them communicate with each other?

u/ryanklee · 3 pointsr/linux
  • Read books. Like this.
  • Try other *NIXs.
  • Compile your kernel.
  • Build (and maybe maintain) a package for your distro.
  • Learn some shell scripting in bash.
  • File detailed bug reports.
u/peppajiggapuff · 3 pointsr/linux

I find reading books is the best way to expand ones horizon on a certain topic. UNIX and Linux System Administration Handbook should be an excellent read for you.

u/guffenberg · 3 pointsr/linux

I second this one

It could be a good idea to check which books some well regarded universities are using.

u/matthewdtwo · 3 pointsr/sysadmin

I found this to be helpful when I started out. The details are a bit outdated at this point, but it's still got many relevant points.

u/wombatsquad · 3 pointsr/ITCareerQuestions

Step 1: Buy and read this

u/canoe_lennox · 3 pointsr/CentOS

If you are looking for a dead tree, this book here has been recommended by a number of people I know.

u/sCaRaMaNgA · 3 pointsr/programming

My driver was for Windows. If that's something you want to explore, I'd highly recommend Programming the Windows Driver Model and Windows Internals. I used the 2nd and 4th editions respectively at the time I wrote it. I think the 6th edition of Internals is coming out soon though.

u/ivanmm · 3 pointsr/ReverseEngineering

I have some knowledge on assembly and RE (Win32), but I never really got that much deep into it. I learned things as I needed in order to do my stuff.
I think the important thing here is to have a solid understanding of the architecture you're working on (for example x86/x86_64), the OS internals, and C. Without this you are going to have a very unpleasant and even painful experience.
If you don't have it yet, take the time and learn it, and then go back to RE. It will be worth it and save you a lot of effort. If you already have it, then things shall come easier to you.
If you are using Windows, I highly recommend David A. Solomon's and Mark Russinovich's Windows Internals book. It's an unmatched resource about Windows and will help you greatly.

u/zert_y5332 · 3 pointsr/CEH

In your situation I would take charge if I were you. If you don't at least make that attempt it's your own fault.

If there's no security department, make one. Use what you learned in the Sec+ and then maybe -->

Identify what is weak at your company, put together a project plan, etc... sounds like the perfect opportunity for you to learn the hard way and then when you do win you can say, "I took initiative, stood up a small infosec department and hardened the company and it's data"

know what i mean jellybean?

u/NlightNFotis · 3 pointsr/debian

When I was beginning to learn Linux back in the day, I used The Linux Command Line and have only good things to say about it. It must be one of the simple best books to introduce yourself to the command line and to how to use a modern Unix like system.

u/Kaladis · 3 pointsr/sysadmin

Obviously, you will want to read the documentation on the distro you decide to install. For a book, I would recommend The Linux Command Line.

u/drpinkcream · 3 pointsr/bash

I recommend How Linux Works and The Linux Command Line. Those will take a total beginner and take you through the basics up to shell scripting.

The Linux Command Line is a work book where you type what it says and follow along. How Linux Works is more of an explanation with less hands-on. I went through both at the same time as the chapters align very well, particularly at the beginning.

u/I_Generally_Lurk · 3 pointsr/raspberry_pi

First of all I should say that I'm no expert in these things, but I'm sure other people will be able to make other suggestions.

>I plan on installing Linux as my OS (technically my first time)

If you're more used to Windows then the UI will be fairly easy to get used to, but the biggest change will be the command line. This is a really powerful but complex tool and I think the best way to get used to it is really just to dive in and use it as often as possible. MagPi have a book for it (Conquer the Command Line) to get you started, but if you wanted something more comprehensive I've spent some time reading The Linux Command Line and found it really helpful.

For Python I think I started out with Code Academy, but mostly picked it up as I went along. I'm currently reading Python Crash Course and I think it is pretty decent, although most people seem to recommend Learn Python the Hard Way (note the tiny link near the bottom of the page to read the book for free).

At the end of the day the most important thing is to take baby steps and take them often: when you've kept at it regularly for a few weeks it becomes a lot more easy.

u/kramer314 · 3 pointsr/linux is super high quality (and free! although if you have the money I think it's well worth donating and / or purchasing a hard copy)

I also like and

u/mindful_island · 3 pointsr/WGU

That is prepping for the Linux+ right?

I haven't done this course or the exam, but I've been using Linux for a decade. I think for Linux in general - if you are coming into it from scratch then you really need to practice setting up a system, configuring services, compiling software, use a variety of package managers, writing some basic bash scripts and so on. Then you'll have a framework for a lot of the arbitrary stuff they want you to memorize - all the various flags, switches and options. At that point you probably want to do heavy flash-carding for the real arbitrary stuff.

Basically I'm not sure there is a way around simply using it - unless you are great at memorizing stuff without relating it.

I don't know if this book covers the objectives better than the course material, but I found it excellent back when I first got into Linux (I used the 1st edition).

It was the kind of book that you could simply read through, play with what you learned in each section and it made a lot of sense. A real learning guide rather than a dictionary/reference.

Oh and if you want to learn a lot of really useful command line tips and tricks, this memrise was super helpful:

If you master that memrise it'll make you super productive when working in a linux environment.

u/ultrabowser · 3 pointsr/linuxmasterrace

This book will answer a lot of your questions.

u/root-node · 3 pointsr/PowerShell

The best way I found to learn something is to find a project that relies on it.

For example, I never knew any powershell a few years ago, but I was given a project to write some QA scripts for work. That turned into a 8000+ line modularised script that anyone can use and create plugins for.

I am currently working on building servers and applications using PowerShell (installing and configuring AD, SQL, MSCS, RDP, ...)

If you haven't already, buy the book "Learn PowerShell In A Month Of Lunches" ( It's the top rated book by everyone.

u/evetsleep · 3 pointsr/PowerShell

Hey /u/Dude_with_the_pants! So this is a wall off text now that I've written it..sorry about that but honestly when I start talking PowerShell I can go on forever (as my peers at work can attest). So I hope this is kind of useful for you.

So you're looking for some real-world here goes from where I sit. I've been using PowerShell since it was in a long time. Prior to PowerShell I was a point-n-click guy. No scripting experience (beyond embarrassingly bad batch files). I'd open VB scripts and kind of zone out. PowerShell really opened a door for me. For the past 20 years I've been working for some really large companies (5,000 - 160,000) as an Exchange\AD guy with my current stint...about the last 13 years or so, I've worked for the same company. This has been an evolution of sorts, but ever since PowerShell v1.0 dropped in my lap during the Exchange 2007 beta I was hooked and started to automate and built tools.

This was a long time ago now, so my skills and uses have matured quite a bit (at least I'd like to think so). Looking through this thread you've already gotten a lot of really good responses. In terms of using PowerShell and where to start I like what others have said. When you reach for the mouse and start clicking on stuff to complete a task, note somewhere what that task was and then when you have down time, look up how to do it with PowerShell. Odds are really good, especially now, that there is a way to do it with PowerShell. If I may be so bold, but I'd recommend taking a look at Learn Windows PowerShell in a Month of Lunches. I recently did a manuscript review of it for the publisher which required me to slowly read through every single page. It's a good staring point and I highly recommend it.

That all said, daily PowerShell usage.. So I've spent the last decade automating and tool-making which my employer has really taking a liking to (not sure why, but I enjoy myself). Here are some examples of what I've done with PowerShell:

  • Designed a centrally managed PowerShell console that is extended by custom functions that various IT teams manage. When I user logs in to my custom PowerShell console it looks over what groups they're a member of and customizes they're PowerShell environment based off that. This includes loading custom modules, establishing remoting connections to Exchange\Skype, and so on. Currently used by ~100 or so IT folks. I built this, in my free time, about 6 years ago after I was tired of seeing everyone doing things differently (and inefficiently) and pointy-clicky on things when I knew I could make it faster for them.
  • When ever a user changes their password I have an hourly script which detects that change and notifies them via email as well as SMS that their password was changed and gives them some steps on what to do (such as change their password on their mobile devices and such).
  • Designed a PowerShell, PHP (for PowerShell backed web services), & PSSQLite architecture (thanks /u/ramblingcookiemonste!) which I've used to link together separate Active Directory forests and track various acquisitions. Basically this system tracks groups (and their memberships), users, and computers as they are migrated from one forest into the other. We do a lot of ..ahem.. acquisitions so this is a HUGE time saver. For example, when the project manager for an acquisition needs an update on what percentage of an office has migrated to our forest instead of hounding me (or the tech lead who is running an acquisition) they can just view a few web pages to get the info they need. No more bugging me so I can get back to my code! Did this in my spare time so the PM's would leave me alone...and it much so they asked for an official framework which I'm working on still.
  • I have a suite of tools that I wrote which query Splunk's REST API to pull data out for various tasks. For example, not long ago I was asked to provide a detailed report on the exact last logon time for approximately 300 people...who were no longer in our AD. My Splunk module made quick work of that. Took me about 10 minutes to get that info for the auditors. In the old days this kind of request would make me cry.
  • A long time ago we used to have real pains over unused accounts (both users and computers). I wrote an automation process which completely automates the detection of stale\unused accounts and send them through a workflow that I designed so that they are first identified, their contacts notified (manager..if they're a user, or admin contact if they're a machine), then they are disabled, and then eventually deleted after further notifications. All automated so I (or my peers) need to worry about it.
  • We don't use Active Directory for DNS, and so I had to write a tool which interrogates our DNS system to pull out subnet info (new subnets, changes, and deletes) and then pass that into Active Directory. This also heavily uses PSSQLite...I might be a little obsessed with this little database technology. With this I don't need to worry about what subnets are (or are not) in AD and if they're associated with the right AD site. Quite a few teams are quite happy with my tool, in particular the software distribution team as they're tools can now properly work with clients and find them in the right AD site.
  • By far my more heavily used tool is a directory searching tool. See where I work we don't have just AD (~140 DC's I might add), but other LDAP based directories and we needed a tool that could search any of them. Instead of having 15 ways of getting at that data I have 1. A single module where I can pass in a few basic parameters and get my LDAP query back.

    For day-to-day stuff, not long ago I needed to query the Windows time configuration status of all our domain controllers. Using remoting this was trivial. If you had 2 DC's then I guess it isn't a big deal, but for us fanning out through remoting to audit this data is absolutely necessary. I find remoting is a quality of life kind of thing. Yes I could RDP into something, but 9/10 times it is way faster to just run

    Invoke-Command -ComputerName machineName -ScriptBlock {do something}

    So day-to-day, for what I do, I'm honestly writing tools or working in automation projects 90% of the time. I only get into the shell to do something if something is really broken and none of my automation tools have already handled it. Not everyone has that luxury (and it is btw). If I was you I'd look for every opportunity to learn how to do stuff with PowerShell. I think you'll find that in most cases it will free you up to do other things. It'll be awkward at first as you fumble around, but you'll soon find ways to speed things up.

    I wouldn't be too obsessed with just looking at remoting stuff. It's true that this does expose some of the power of ..well.. PowerShell, but there is sooo much more to it. Look for ways to improve your daily life. Jot down the stuff you do a lot (and repeatedly). Those are your prime targets. It could even be something as simple as processing your mail in the morning. If there are certain patterns you follow and do a lot can absolutely hook in PowerShell into that too if writing Outlook rules won't do what you need (I've done this too).

    Good luck and happy shelling!
u/binarycow · 3 pointsr/networking
u/loveandbs · 3 pointsr/PowerShell

As a beginner (still am), I have found the easiest way to learn is to just dive in using Powershell for any tasks that you do during your normal day (especially the repetitive ones).

With that said, I have found it highly beneficial to use a couple resources:

  • Subscribe to this Reddit /r/PowerShell
  • Subscribe to "Hey, Scirpting Guy!" blog
  • Buy the book Powershell in a Month of Lunches - A Youtube Channel also exists
  • Search for Powershell related courses on Microsoft Virtual Academy
  • Head on over to and go exploring
  • Visit the TechNet Script Gallery. Study and understand any available, high-rated scripts.

    To be honest, the most important tip in my opinion to learn how to use PS is the get-help command. This will teach you how to use just about every command out there minimizing most questions that you are looking to ask. A second tip: Learn what it means to "Pass by value" and "Pass by Property Name." This will help you immensely when combining commands using the pipeline.

    Quick warning: Powershell will quickly get addictive. Also, it is a community where people enjoy sharing and giving back.

    Last note, I swear. Learn shortcuts. It will save you a HUGE amount of time ( hitting esc on your keyboard to clear the line.)
u/Silent331 · 3 pointsr/sysadmin

You can find a pdf of it somewhere on google as well. This book is possibly one of the most valuable things for a sysadmin for windows to have. Seriously.

u/eramnes · 3 pointsr/sysadmin

/r/powershell is a nice place to begin and there are a number of links on the sidebar that can help get you started. When I was getting started I used the book Windows PowerShell Unleashed which I really liked. I have heard good things about Learn Windows PowerShell In A Month Of Lunches but I haven't had the chance to look in to it myself.

For free online resources I like ss64 and I also referenced when getting started.

u/almostdvs · 3 pointsr/sysadmin

First, read our Wiki. It is very thorough and answers a lot of these common questions such as

day to day? The Practice of System and Network Administration
And the topical reference books listed below.

Books to help in shaping a sysadmin? The above &:
The Phoenix Project
Time Management for System Administrators

Topical Books I see mentioned often and have been very helpful to me:
Powershell in a month of lunches
Learn Python the hard way
Unix and Linux System Administration Handbook
Windows Server 2016: Inside Out

Group Policy
FreeBSD mastery:ZFS
Pro Puppet
SSH Mastery

On my docket:
FreeBSD Mastery: Advanced ZFS

Michael W. Lucas and Thomas Limoncelli are very good sysadmin writers, you can't go wrong with a topic they have chosen to write about.

Most of the *nix stuff assumes a baseline knowledge of how to use a unix-based system. I learned as I went but did pick up an old copy of Unix Visual Quickstart Guide not too long ago at a used books sale, which seems like a good starting place for someone overwhelmed with sitting at a terminal and being productive.
I notice I don't have any Virtualization books, perhaps someone else can fill in good books. Most of my knowledge regarding virtualization and network storage has been a mix of official docs, video training, and poking at it. Seems innate but it isn't.

u/devopsia · 3 pointsr/devops

This is a really good one for monitoring from a conceptual standpoint:

The Art of Monitoring

u/gnullify · 2 pointsr/AskNetsec

I have 3 semesters left so my plan has been to seek an internship next summer closer to graduating. Do you think it's unwise to wait that long? My independent study could be better but I've become proficient with Linux using Arch as my daily driver and reading through The Linux Command Line. I'm also going through The Basics of Hacking and Pentesting which had me set up a "lab". Just finished the recon chapter. Also proficient in Python/Java/C++ ("proficient" might be a bold claim, rust considered).

u/plaid_avenger · 2 pointsr/sysadmin

I'm reading "The Linux Command Line" book by William E. Shotts, Jr. A good primer for when you want to get into Linux. It reads well and it doesn't dump a ton of information on you at once.


Huh. It's a "Best Seller" now, lol.

u/super_tight_xyz · 2 pointsr/linuxquestions

How Linux Works 2nd ed. is a great book for learning the overall concepts. It also goes into enough depth so that it’s a great read for those who already have a good bit of Linux experience but want insight into what’s going on underneath the hood.

u/PlumpFish · 2 pointsr/FindMeADistro

I can relate to your attitude and desire to learn Linux, I've felt the same.

I highly recommend this book:

I read about a chapter or two a day with some coffee. It's fun and interesting. I think it's right up your alley.

For me, there's two types of Linux learning. Things I learn for fun, and things I learn because I have to or my stuff doesn't work. I started with a lot more things I learn for fun, but now most things I learn because I have to.

I do web development on a Manjaro machine using KDE. I love the distro, but I didn't try any others. I don't need to. It's fine. I use Debian on a lot of the webservers, that's fine too.

My feeling is, all these distros you're looking at have much more in common than not. If you set up a Desktop Environment, a popular one like GNOME or KDE on ANY distro, it's gonna be pretty similar. If you just want to use the shell on any distro, well, you can install whatever shell you want, use of that shell on any distro will be pretty similar.

IMO, you should focus MUCH more on deciding what DE/WM and shell you'll be using. This is going to play a much bigger role in your daily use than what distro you use. I think you should look up youtube videos and online tutorials of different people using different shells, scripts, WMs, VIM, etc, and see what excites you.

You can install Arch, step by step, using the wiki, and it's not that hard. It feels scary and weird at first, but you're just cooking, you're following a recipe, and if you mess up a step, a bunch of people have messed that step up too, google it.

Don't think too much. Just jump in.

u/Herdo · 2 pointsr/linux

I just bought "How Linux Works" published by no starch press.

Excellent so far, and while I was familiar with all the topics in the book to begin with, I still learn something new every chapter. It's listed as an "Intermediate" level book, but there is a wide range of topics from absolute beginner to some more advanced stuff, all with easy to understand explanations. The topics build on themselves nicely, so you aren't just dropped into a chapter having no idea what the author is talking about.

Supposedly most of the no starch press books are great. /u/C0rn3j mentioned "The Linux Command Line" as well.

u/Lanfranc_di_Cambria · 2 pointsr/cscareerquestions

"How Linux Works." It gives a really solid explanation of what an operating system fundamentals.

We just kind of think of them as managing things in the background, but this book really goes into what that means.

It totally changed the way I view programs.

u/Pannuba · 2 pointsr/ItalyInformatica

Come utilizzo base non c'è nulla da imparare, soprattutto se usi una distribuzione user-friendly come Ubuntu, Elementary o Mint. Se vuoi diventare più produttivo e/o veloce puoi imparare a usare il terminale.

Come introduzione consiglio Linux Journey, mentre se vuoi un manuale che spiega come fare praticamente tutto dalla linea di comando c'è The Linux Command Line.

Secondo me le cose più importanti da imparare per avere una buona esperienza (o meglio, per sentirsi padroni del proprio computer), sono i comandi base tipo cp, mv, cd, sudo ed il gestore di pacchetti (apt, pacman, rpm) per poter installare, aggiornare e rimuovere programmi. Poi quando ti senti di andare oltre puoi imparare a usare (in ordine di difficoltà) cat, grep, find, SSH, chmod/chown, come funzionano i servizi di systemd, compilare programmi dalla sorgente e creare script in Bash.

Più che stare a studiare, però, dovresti cercare su Google come fare quello che stai cercando di fare, qualunque cosa sia. Solo in questo modo impari a usare effettivamente il terminale, e non ti rimane tutto nella testa come accadrebbe leggendo un libro e basta. Se non trovi quello che cerchi puoi chiedere su /r/linux4noobs.

u/Kravego · 2 pointsr/linuxadmin

Start here, and then pick up more in-depth module-specific tutorials online. There are great AD-administration tutorials out there.

u/LOLBaltSS · 2 pointsr/sysadmin

PowerShell isn't really that bad once you get the hang of it.

u/lazytiger21 · 2 pointsr/sysadmin

I would suggest that you look at this book: Learn Windows Powershell in a month of lunches

It really helped me when I was starting out. As for what you are trying to do, I prefer the output using Quest AD tools for Powershell. They have a lot of really nice AD cmdlets. This would do it for you:

Get-QADGroup | export-csv C:\location\filename.csv

edit for typo

u/ambrace911 · 2 pointsr/PowerShell

If you are looking for an actual book, check out "Learn Windows PowerShell in a Month of Lunches"

That's come up more times in various IT forums. The link I posted had the video version by the same author. I am going to get started on this myself. I know enough to get by, but think it will be good to go through the entire thing.

u/TunedDownGuitar · 2 pointsr/sysadmin

Glad to hear! If you want to learn more PowerShell, grab this book. It's becoming a standard read for new hires at my office.

u/Swarfega · 2 pointsr/PowerShell

There's a menu to the right of this subreddit with various links and book recommendations. You'll need to be on desktop version of the reddit website to see these though.

Personally I really like the Getting started with PowerShell 3.0 Jump Start.

Most will recommend the Learn Windows PowerShell in a Month of Lunches book.

u/cluberti · 2 pointsr/sysadmin

Also, it would be wise to grab the "Learn Windows PowerShell 3 in a month of lunches" at some point in the near future if you're going to go down the PowerShell path. Doing so is of course recommended, as most everything Microsoft has been releasing over the last few years has had management based on PowerShell to be as close to, or at parity with, the UI management tools.

u/CaffinatedSquirrel · 2 pointsr/sysadmin

These two are my favorite.. decently priced and great knowledge. Written by same author Don Jones.

u/jed_PK · 2 pointsr/PowerShell

The Powershell class i'm taking right now uses this book:
It does a good job explaining the how things work.

u/ihaxr · 2 pointsr/PowerShell

It took me a while to get good at PowerShell and I had a pretty extensive programming background prior to trying to learn it.

The Exchange cmdlets are also less than ideal when trying to learn... but it was also my first experience with PowerShell. They're usually pretty slow to run and aren't great from a syntax standpoint. The AD and file system cmdlets (Get-ChildItem / Get-Item) are more consistent, faster, and generally easier to work with.

Trial and error, as well as looking at code examples on /r/PowerShell is the way I ended up learning. You'll notice on /r/PowerShell people usually post very different ways of solving a problem and one isn't necessarily better than the other, but just use different features or logic.

PowerShell in a month of lunches is usually the recommended book / guide.

u/reginaldaugustus · 2 pointsr/PowerShell

My advice would be to get this book.

u/admlshake · 2 pointsr/sysadmin

Powershell and HyperV were pretty much the main focus when I took it. This book is usually recommended for learning powershell. It's something you should really learn anyway, as thats the way that MS is moving with most of their server stuff.

u/kusumuk · 2 pointsr/sysadmin

hmmm...I grew out of that position this past year. It was similar in scope to yours. In your position I highly recommend going desktop infrastructure. Studying for it will allow you to at the very least have a clear understanding of the latest technology available to you for architecting desktop solutions. However, it's not enough to know just that. Here's some advice:

  • If you don't have a whiteboard by your desk, get one.

  • learn scrum or some kind of other project management methodology and at first apply it to yourself, then apply it to everyone else within your domain. Hold your bosses to the same standards.

  • learn ITIL and start using the terminology. You don't have to adhere to all the standards, either. Furthermore, it helps you understand your role in IT as part of the enterprise as a whole, and it helps you understand how to architect your IT shop using best practices.

  • If you don't have a testing environment, make sure your department has one. Microsoft MSDN subscriptions allow for as rich a testing environment as you need for as little as 700 bucks a year. Most subscriptions also come with free courses as well. Furthermore, you can buy an r900 hexacore quad socket server with 128gb of ram for under a grand. Plenty of hardware for a competent testing environment.

  • Learn powershell. Don Jones has written books and made training videos showing you how to learn powershell. It's a powerful tool. Learn the .net classes that it can use. If you look up the MSDN writeups for the C# versions of the classes, they are pretty darn close to the powershell version of it.

  • Everything you learn in your studies, test it out. Learn it. Nurture your test environment. Get intimate with the checkpoint feature in virtualization. Get cozy with it.

  • As soon as you possibly can, but only after you've gotten the above fundamentals down, learn system center. It's complex, but wonderful. It'll put you on a whole other level. That will guarantee you a job.
u/MrSysamin · 2 pointsr/sysadmin

check out this book

Learn Windows PowerShell 3 in a Month of Lunches

u/hueylewisNthenews · 2 pointsr/sysadmin
u/IphtashuFitz · 2 pointsr/docker

Small world. I'm just starting to get involved with Docker myself, and I use a Mac for all my work. I just grabbed a copy of this book yesterday, and am reading it now. I'm at the point where it goes into detail in installing Docker, and it provides detailed instructions for getting up and running on RHEL/Centos linux, Ubuntu/Debian linux, OS/X, and Windows. The OS/X instructions basically boil down to:

  1. $wget

  2. Install it

    I'm on a 2014 Mackbook with 16GB RAM, so you shouldn't have any issues with it.
u/metamet · 2 pointsr/docker

I also really like The Docker Book:

Paper or Kindle. Worth the $8 for a succinct carrythrough.

u/EntropyWinsAgain · 2 pointsr/sysadmin

I would suggest grabbing his books on MDT. Yes you can find everything you need to know googling, but I always keep his book at my desk as a reference.

u/z27 · 2 pointsr/freebsd

I believe it is possible on Amazon:

u/therealjoshuad · 2 pointsr/sysadmin

I recently picked this one up, it's been pretty good so far, but I'm not too far in yet.

The Art of Monitoring

u/jpedlow · 2 pointsr/PowerShell
if($Canadian.WestCoast){<br />
$luck = $true<br />
write-output &quot;;<br />
write-output &quot;;<br />
write-output &quot;I got you fam.&quot;<br />
}<br />

u/Havilland · 2 pointsr/linux_mentor

The Unix and Linux systems administration handbook is also worth it’s money.

If you are doing more with virtualization and automation have a look at vagrant, it will help you get an environment up and running quicker.

As soon as possible also try out other virtualization stacks as kvm, xen and lxc. These are some of the most used and free ones. VMware is the paid contender in most places.

u/cstoner · 2 pointsr/linuxadmin

Last time I remember leafing though this guy it was still very relevant.

It's a lot of basic UNIX/Linux nuts and bolts stuff.

u/Lunarblu · 2 pointsr/linux

I recommend this book to everyone I taught Linux to. As some people have already commended on learn to program first. Linux knowledge will come.

u/xgunterx · 2 pointsr/linux
u/robscomputer · 2 pointsr/linuxadmin

A few of my favorite books I reference and recommend. Just a note, many of these are older and can be purchased used for much less. Also if you can afford it, get a Safari subscription. I use my work Safari subscription but this alone has saved me from my book buying habit. Now I only buy "must have" books. :)

Official Ubuntu Server book - I really like this book as the writing style helped me "get it" with Linux. Kyle Rankin has a very good method of showing you the technology and then a quick run down to get the server working, followed by some admin tips. It's a just scratching the surface type of book but it's enough to get you started. I rarely use Ubuntu now, but this book helped me understand DNS and other topics that were IMHO harder to grasp from other books.

As a bonus, this book also has an entire chapter dedicated to troubleshooting. While this sounds obvious, it's a great read as it talks about dividing the problem, how to approach the facts, etc. Stuff a seasoned admin would know but might be hard to explain to a new admin.

The Linux Command Line: A Complete Introduction - You can read this book for free on the site, but having a paper copy is nice. As mentioned, you should have a very solid understanding of the command line. In my experience, I have seen co-workers struggle with basic shell scripting and even understanding how to make a single line for loop. This book covers the basics, moving to shell scripting and I think it's a good solid reference guide as well.

DevOps Troubleshooting: Linux Server Best Practices - This book is referenced a few times here but I'll throw another comment for it. Another book from Kyle Rankin and has the same straight to the point writing style. It's very quick reference and simple enough that you could give this to a new sysadmin and he or she could get started with some of the basic tools. While the book covers a good selection of basic services and tools, it's easy to get deeper into a chapter and find it's only discussing a handful of troubleshooting steps. The idea with this book is it's a quick reference guide, and if you want to get deeper into troubleshooting or performance, take a look at other books on the market. Either way, this is a great book I keep on my desk or reference through Safari.

UNIX and Linux System Administration Handbook (4th Edition) - Another popular book based on the comments here. This is a pretty big book, thin pages, but it's like a small brick of UNIX/Linux knowledge. While it's starting to get dated, it does give a great reference to many topics in the system administration world. The chapters can dive deep into the subject and offer more than enough information to get started but also understand the technology. The e-mail chapter I thought was great as well as the DNS. I think of this book as a overall guide and if I want to know more, I would read a book just on the subject, that's if I need more information. One thing to point out is this book makes use of different OS's so it's filled with references to Solaris, different UNIX versions, etc. Not a problem but just keep in mind the author may be talking about something outside the scope of vanilla Linux.

Shell Scripting: Expert Recipes for Linux, Bash and more - I found this book to be a good extenstion of the Linux Command Line book, but there are many many other Bash/Shell scripting books out there. The author has many of the topics discussed on his site but the book is a good reference for scripting. I can't stress enough how important shell scripting is. While it's good to know a more formal language like Python/Perl/etc, you are almost certain bash will be on the machine you are working on.

Systems Performance: Enterprise and the Cloud - I can't comment on this book beyond the first chapter, I'm still reading it now but it's reading similar to Brendan Gregg's site, and that's a great thing. If you don't know who this guy is, he's one of the top performance guys in the Solaris and now Linux world. He has some great infographics on his site, which I use for reference.

Use method for Linux

Linux Performance

Example of Linux performance monitoring tools

Hope this helps!

u/Medicalizawhat · 2 pointsr/linuxadmin

I recently got a job as a junior admin and found Unix and Linux System Administration to be really good. There is also a nice CBT Nuggets series on Linux which is a great overview, especially when watched while reading LPI Linux Certification in a Nutshell as the book complements the videos.

If he already knows another programming language Dive Into Pythion is great for getting up to speed quickly.

u/feaks · 2 pointsr/sysadmin

I think you meant this book.

&gt;Information in this book generally applies to all of our example systems unless a
specific attribution is given. Details particular to one system are marked with the
vendor’s logo:

&gt;Ubuntu® 9.10 “Karmic Koala”
&gt;openSUSE® 11.2
&gt;Red Hat® Enterprise Linux® 5.5
&gt;Solaris™ 11 and OpenSolaris™ 2009.06
&gt;HP-UX® 11i v3
&gt;AIX® 6.1

u/coniferhugger · 2 pointsr/linuxadmin

Instead of buying tons of books, you might want to look at Safari Books. I have the 10-book bookshelf subscription, and it is seriously plenty. Pros, you have instant access to a massive library of tech books. Cons, you are stuck reading on your computer/tablet/phone (I did try reading a few chapters on my Kindle, but the didn't care for the experience).

Books I would suggest:

  • UNIX and Linux System Administration Handbook - this is seriously a great book, that will make any admin better.
  • Time Management for Systems Administrators - has a lot of good tips for time management, but some things are a little dated.
  • The Practice of System and Network Administration, Second Edition - This is a great read on how to be a better system administrator.

    I'm not a huge fan of training videos, but generally watch recordings from conferences. Although, I do really enjoy the format of vimcasts though.

    As for general advise, I did see someone recommend looking for an MSP. If you are looking to be a Linux SysAdmin, I wouldn't recommend this route as you are going to be supporting MS installations. Personally, I started doing help desk for a web company and moved up from there. Also, I worked hard to create my opportunities within each position. You'll have to put yourself out there and be patient, It took me 4 years to earn the official title of Systems Administrator (in a small-ish town). The key to this is finding a good Sr. SysAdmins who are willing to mentor you, and some environments/people aren't conducive to this.


    BTW, I have a B.A. in Political Science, so don't be ashamed to rock that Philosophy degree. You will see a lot of posting that are looking for a B.S. in Computer Science/Computer Engineering/Rocket Surgery, but seriously don't even worry about that. Most job postings are a list of nice to haves, and most places really only care that you have a degree.

    I've been recruited by and interviewed with some very respectable tech companies. I just usually have to explain how I got into tech with a political science degree. In an interview, having the right attitude and knowing your stuff should say more than your major in college. But, you will also run into elitist douche bags who knock your degree/doubt your abilities because you don't have a B.S. in CS/CE. If you work with these people, your work should speak for itself. Don't try and get caught up into a pissing match with them. If it is an interview (as in someone you might work for), practice interviewing never hurts.
u/issmkc · 2 pointsr/pcmasterrace

&gt;nice error message

Oh yeah, reminds me of those gems:

ERROR: Root device mounted successfully, but /sbin/init does not exist.
Bailing out, you are on your own now. Good luck.

Uhhuh. NMI received for unknown reason 20.
Dazed and confused, but trying to continue

Linux is good and informative when something screws up and you can usually debug and fix most issues using a combination of google/documentation/logic/common sense barring incompatible/broken hardware, but the general public doesn't want to study ULAH to be able to use their computer, thus the downvotes.

u/nomeansnook · 2 pointsr/linuxclass

If you're talking about this book, it's one of my favorites. It's the book I've recommended as a supplement to everyone I've taught thus far.

u/trabant00 · 2 pointsr/linux

Find an intern job at a small company that does linux based IT consulting, there are plenty of those. The pay will be shit, the hours will be long but what you'll really looking for is a good tutor. Read

u/poply · 2 pointsr/linux4noobs

I hear this is great UNIX and Linux System Administration Handbook

Although I can't personally vouch for it.

u/stanwell_ · 2 pointsr/linux

I would recommend this one

u/BlkCrowe · 2 pointsr/PowerShell
u/CSMastermind · 2 pointsr/AskComputerScience

Senior Level Software Engineer Reading List

Read This First

  1. Mastery: The Keys to Success and Long-Term Fulfillment


  2. Patterns of Enterprise Application Architecture
  3. Enterprise Integration Patterns: Designing, Building, and Deploying Messaging Solutions
  4. Enterprise Patterns and MDA: Building Better Software with Archetype Patterns and UML
  5. Systemantics: How Systems Work and Especially How They Fail
  6. Rework
  7. Writing Secure Code
  8. Framework Design Guidelines: Conventions, Idioms, and Patterns for Reusable .NET Libraries

    Development Theory

  9. Growing Object-Oriented Software, Guided by Tests
  10. Object-Oriented Analysis and Design with Applications
  11. Introduction to Functional Programming
  12. Design Concepts in Programming Languages
  13. Code Reading: The Open Source Perspective
  14. Modern Operating Systems
  15. Extreme Programming Explained: Embrace Change
  16. The Elements of Computing Systems: Building a Modern Computer from First Principles
  17. Code: The Hidden Language of Computer Hardware and Software

    Philosophy of Programming

  18. Making Software: What Really Works, and Why We Believe It
  19. Beautiful Code: Leading Programmers Explain How They Think
  20. The Elements of Programming Style
  21. A Discipline of Programming
  22. The Practice of Programming
  23. Computer Systems: A Programmer's Perspective
  24. Object Thinking
  25. How to Solve It by Computer
  26. 97 Things Every Programmer Should Know: Collective Wisdom from the Experts


  27. Hackers and Painters: Big Ideas from the Computer Age
  28. The Intentional Stance
  29. Things That Make Us Smart: Defending Human Attributes In The Age Of The Machine
  30. The Back of the Napkin: Solving Problems and Selling Ideas with Pictures
  31. The Timeless Way of Building
  32. The Soul Of A New Machine
  34. YOUTH
  35. Understanding Comics: The Invisible Art

    Software Engineering Skill Sets

  36. Software Tools
  37. UML Distilled: A Brief Guide to the Standard Object Modeling Language
  38. Applying UML and Patterns: An Introduction to Object-Oriented Analysis and Design and Iterative Development
  39. Practical Parallel Programming
  40. Past, Present, Parallel: A Survey of Available Parallel Computer Systems
  41. Mastering Regular Expressions
  42. Compilers: Principles, Techniques, and Tools
  43. Computer Graphics: Principles and Practice in C
  44. Michael Abrash's Graphics Programming Black Book
  45. The Art of Deception: Controlling the Human Element of Security
  46. SOA in Practice: The Art of Distributed System Design
  47. Data Mining: Practical Machine Learning Tools and Techniques
  48. Data Crunching: Solve Everyday Problems Using Java, Python, and more.


  49. The Psychology Of Everyday Things
  50. About Face 3: The Essentials of Interaction Design
  51. Design for Hackers: Reverse Engineering Beauty
  52. The Non-Designer's Design Book


  53. Micro-ISV: From Vision to Reality
  54. Death March
  55. Showstopper! the Breakneck Race to Create Windows NT and the Next Generation at Microsoft
  56. The PayPal Wars: Battles with eBay, the Media, the Mafia, and the Rest of Planet Earth
  57. The Business of Software: What Every Manager, Programmer, and Entrepreneur Must Know to Thrive and Survive in Good Times and Bad
  58. In the Beginning...was the Command Line

    Specialist Skills

  59. The Art of UNIX Programming
  60. Advanced Programming in the UNIX Environment
  61. Programming Windows
  62. Cocoa Programming for Mac OS X
  63. Starting Forth: An Introduction to the Forth Language and Operating System for Beginners and Professionals
  64. lex &amp; yacc
  65. The TCP/IP Guide: A Comprehensive, Illustrated Internet Protocols Reference
  66. C Programming Language
  67. No Bugs!: Delivering Error Free Code in C and C++
  68. Modern C++ Design: Generic Programming and Design Patterns Applied
  69. Agile Principles, Patterns, and Practices in C#
  70. Pragmatic Unit Testing in C# with NUnit

    DevOps Reading List

  71. Time Management for System Administrators: Stop Working Late and Start Working Smart
  72. The Practice of Cloud System Administration: DevOps and SRE Practices for Web Services
  73. The Practice of System and Network Administration: DevOps and other Best Practices for Enterprise IT
  74. Effective DevOps: Building a Culture of Collaboration, Affinity, and Tooling at Scale
  75. DevOps: A Software Architect's Perspective
  76. The DevOps Handbook: How to Create World-Class Agility, Reliability, and Security in Technology Organizations
  77. Site Reliability Engineering: How Google Runs Production Systems
  78. Cloud Native Java: Designing Resilient Systems with Spring Boot, Spring Cloud, and Cloud Foundry
  79. Continuous Delivery: Reliable Software Releases through Build, Test, and Deployment Automation
  80. Migrating Large-Scale Services to the Cloud
u/gigo6000 · 2 pointsr/learnprogramming
u/Lhopital_rules · 2 pointsr/IWantToLearn

Only about half of the programming industry has a degree directly related to IT or programming. Most have college degrees in something, but in the end the most valuable thing to someone hiring in IT is skills. Once you have the skills, you just need to get noticed.

I would recommend you learn Linux administration and web development. (Or you could learn Windows too - I don't know Windows well so I can't comment on it. Linux and Mac OS X are somewhat more popular in the programming world, but if you're looking to get into IT, not programming, then Windows administration might be more common.)

A good book to learn Linux is "The Linux Command Line".

For learning web development, you could read "
Learning PHP, MySQL &amp; JavaScript: With jQuery, CSS &amp; HTML5"

Codecademy would also really help you in here:

If you have any questions, feel free to PM me and I'll do my best to respond.

u/virtualmilkshake · 2 pointsr/ITCareerQuestions

"IT skills" is pretty broad. What is your IT degree- MIS, Cyber Security, Information Sciences, etc? The answer will really depend on what your degree is in and what your interests are. For example, I could tell you to study programming, but if your degree and interests align more with Cyber Security policy implementation, that might not be the best recommendation for you.

As somebody who has been on a few hiring committees, I'd say to work on your soft skills. In many cases, these are more important than technical capabilities. Specific soft skills I look for in new hires: organization, attention to detail, solid time management, communication, and self-sufficiency yet a team player. For us, we will take the candidate who doesn't know everything but has a good attitude and willingness to learn over the person who thinks they know everything and has a horrible attitude.

General technical skills you should toy around with: know your way around Active Directory in Windows, learn how to view event logs on a system (for Windows, hit your Start key and type in Computer Management), NIST Risk Management Framework, learn the parts of a computer and how to set them up and tear them apart. Learning Linux is also good- what I did to understand Linux better was purchase a Raspberry Pi and set it up to run Raspbian OS and RetroPie (to turn the Pi into a retro gaming machine). I also purchased The Linux Command Line and practice the commands from the book in the Raspbian terminal.

Also, before graduation, try to get some kind of internship, even if your major doesn't require one for graduation. It's a great opportunity for you to build hands-on experience and work in an IT environment doing real work. Oftentimes, you will learn something new in your internship that is not taught in school, and the experience might broaden your interests a bit (not to mention you may get a job offer or at least great references because of your internship!). If you need assistance in trying to figure out how to land a good internship, just let me know.

u/BRAF-V600E · 2 pointsr/bioinformatics

For Linux: The Linux Command Line: A Complete Introduction

For Python: Automate the Boring Stuff with Python: Practical Programming for Total Beginners

For R: The Book of R: A First Course in Programming and Statistics

These are all from No Starch Press, and I really like how they all function as complete introductions to their subjects. I've tried a number of programming books, but these have remained my go-to books for recommendations due to how well they build up basic principals for each concept or language. That said, I feel as though The Book of R is the weakest of the three, and maybe look into other recommendations for R if you get more replies.


Just realized that you asked for courses, not sources, my bad. Either way, I do encourage you to consider the above as alternatives to learning these concepts from online courses, as I've found them to be just as good if not better than some online courses I've seen.

u/serious_face · 2 pointsr/AskNetsec

I bought and read this book as a before taking OSCP, and it's been one of the most useful books I've read.

u/RoosterTooth · 1 pointr/linuxadmin

Good information! I also have a wonderful 1200 page book I just bought to start reading too!

u/got-trunks · 1 pointr/sysadmin

One book that helped me get the meta was the unix and linux system administration bible seriously . Very good overview of the relevant technology and a lot on how the admin should approach things and think about things. From the software, to the hardware, to politics and policies

u/rickjuice · 1 pointr/pics

&gt;There is quite literally 0 things my Mac can do competently that my Windows computer cannot, but there are things that my Windows computer can do that my mac absolutely cannot.

Also OSX is unix based not linux based.

u/asthealexflies · 1 pointr/linuxadmin

Agree with the comments posted by others. I would suggest the book bellow, which will give you a really nice all round grounding into all thinks *nix.

Gets the fundamentals and you can tackle any system from a good level of base knowledge. Also a great bible for the shelf.;amp;ie=UTF8&amp;amp;qid=1314652961&amp;amp;sr=1-1

u/Batolemaeus · 1 pointr/de

Es gibt ein Buch, dass man sich mal besorgen kann:

Unix and Linux System Administration Handbook

Das ist praktisch ein Standardwerk. Teilweise etwas veraltet, aber in praktisch allen Grundsätzen korrekt. Das Buch findet man häufig in den Regalen von alten Graubarten.

Wenn du ein wenig suchst, findest du bestimmt irgendwo ein pdf oder epub. ist die offizielle Seite zum Buch, aber sie scheint down zu sein.

Abgesehen davon: Lerne Google. Stackexchange. Lerne durch machen. Mach kaputt, am besten in einer VM mit lecker Snapshots.

u/timlepes · 1 pointr/linuxadmin

I few years ago my youngest brother got his first IT job, and he fell right into an admin role. He too is very sharp. I bought him the following books as a gift to get him started...

The Practice of System and Network Administration, SecondEdition - a few years old but has lots of fundamentals in there, still well worth reading. Hoping for a third edition someday.

Tom Limoncelli's Time Management for System Administrators

I see others have recommended this great book, and I wholehartedly agree: UNIX and Linux System Adminstration, 4th Edition. I was sad when Evi's ship was lost at sea last year. :-( You could tell she loved sailing old wooden ships... just look at the cover. A great loss; she did so much for our community.

Additionally, I will second or third anyone recommending works by Brendan Gregg. I got the Kindle version of Brendan's Systems Performance: Enterprise and the Cloud. I really like this book. It was written to be a good foundational book for the next several years. I am planning to get a hard copy version too. While you're at it, check out these links...

Brendan Gregg:

Tom Limoncelli:

Introduce him not only to books, but online resources and communities like /r/linuxadmin :-)


u/joshlove · 1 pointr/devops

The Linux Administration handbook. It's simply fantastic.

u/systemadamant · 1 pointr/sysadmin
u/misplaced_my_pants · 1 pointr/IWantToLearn

Any opinions on this book?

u/e1618978 · 1 pointr/MrRobot

Here is a start. It is a big book and has been sitting on my shelf unread since I bought it, but it gets good reviews.

u/up_o · 1 pointr/CompTIA

If you have a good sized library, they may have this book.

In totality it of course isn't about the n10-006. But the networking chapters took me that extra mile to pass the exam. It walks you through how to read a routing table, provides enough history (though not too much) to remember features of networking technologies via developmental necessity through time.

While it is still very much overview, the way it was written truly offered something more than all the usual exam prep.

Also, I found messer's study group videos invaluable. Many of them you can listen to on drives, as I did. Though some do require you to look at an image, he is kind enough to read off questions and the possible answers before diving into the solution. Also, subnetting in your head is good for you.

Best of luck.

u/r00g · 1 pointr/hacking

The Linux Bible looks good. I would highly recommend the Linux System Administration Handbook as a wonderful resource as well.

u/niqdanger · 1 pointr/linuxquestions;amp;qid=1422411384&amp;amp;sr=8-2&amp;amp;keywords=Linux+Administration Yes, its older but the theories and practices are the same, even if the details have changed some. Plus tools like vmstat, iostat, top and du are still the same years later.

u/ghostrider176 · 1 pointr/linux

&gt;Any good books you would recommend?

I never really read any technical books on Linux. Most of my training on Linux has come from working for various vendors and institutions as well as a fair bit of hands on experience (both on the job and off in my lab at home).

I've seen the UNIX and Linux System Administration Handbook mentioned in this subreddit a few times so I assume it's gotta be decent. I remember reading the sample of it somewhere and confirming that what was inside was exactly what I would expect from such a book.

If you're looking for online help then I can help you a bit more with that. First off, the Linux From Scratch project is really time consuming, tedious, and probably over your head (it's still over mine, don't get discouraged). I went through the project once and didn't even come close to finishing it. Towards the end of my attempt I was really just skipping large sections of text and going through the motions of compiling things. However, I still learned some good points about the inner workings of a GNU/Linux system and recommend the project to all people who want an advanced understanding of it; Even if you abandon your lab of it or fail it miserably, I'd wager you'd still walk away with something of value.

The Arch Linux Wiki, or "ArchWiki" as it's referred to on their website, is a surprisingly informative community information repository. It has its faults: You won't find everything you're looking for, some tutorials are little more than hastily pasted step by step guides with absolutely no explanation, and as expected it's written for the Arch Linux distribution. However the utilities and programs Arch uses are the same that every other Linux distribution uses and, much like the Linux From Scratch project, visiting and poking around a bit my steer you on the way to a stronger understanding.

Finally, The Linux Documentation Project is a good bookmark to have (though I don't go there much any more).

u/jezzmo · 1 pointr/sysadmin

First :
How Linux Works: What Every Superuser Should Know

UNIX and Linux System Administration Handbook

u/Calmwinds · 1 pointr/sysadmin

I was recommended this book, and in my opinion it's quite good. I could link you to a torrent full of every book you could possibly need for stuff like this, but PM me though. &lt;-- Great!

u/arusso23 · 1 pointr/sysadmin

Might be good to keep this book on hand.

u/pat_trick · 1 pointr/sysadmin
u/DustyGeek · 1 pointr/sysadmin

If you're looking for more of a learning book I'd go for the Unix and Linux System Administration Handbook 4th Edition. Covers most of the basic to advanced stuff and crosses distro's quite nicely.

u/there1sn0sp00n · 1 pointr/linux4noobs

Thanks for your comments. For now, I will go with this: UNIX and Linux System Administration Handbook, 4th Edition.

u/ashayh · 1 pointr/linux

No one has mentioned this (and it's predecessors) so far???
Unix and Linux administration handbook.

u/dx4st · 1 pointr/sysadmin

~]$ uptime
12:03:29 up 441 days, 20:31, 2 users, load average: 0.52, 0.37, 0.30

This is a huge advantage in terms of SLA's.

Cost of ownership and operation

Web servers, databases, vpn solutions, proxy servers, analytics, sftp servers, esxi whiteboxes, so on and so forth.

There are many sites out there that can provide information.
I still use this on occasion: Linux SysAdmin Google to find the pdf.

Many HowTo websites out there too. Pick something and just build it out.

As rdkerns stated, linux admins do make more $$$

u/hanshagbard · 1 pointr/linux

Best thing there is to do is learn the basics of the operating system and how everything works first, that is if you really want to know how everything works and have a chance of doing something in linux.

Check out

I used it when i got to really learn linux and it really helped me understand exactly what everything was.

u/everycloud · 1 pointr/vmware

I can do all that now I think...In fact I'm going to build some useful functions using some of those requirements as those building blocks will be useful for many scripts

I found a good book too

u/SMartEmployee · 1 pointr/powercli

You should put those in the sidebar.

Here are some useful books:

VMware vSphere PowerCLI Reference: Automating vSphere Administration

Managing VMware Infrastructure with Windows PowerShell TFM

Useful examples for using PowerCLI with vCloud Director:
Geek after five

u/usernamenottakenwooh · 1 pointr/IWantToLearn

Can you program? If not, learn it! Start out with an easy to learn programming language like Pascal or Java and move on to the more complex C++ and eventually Assembler. Once you've understood the basics of programming (variables, loops, functions etc.) it is a matter of 2 weeks to learn the syntax of a new language.
Get familiar with Linux/UNIX. Learn how user rights work, how the run levels and shell scripts work. Read a lot of code and man pages. The definition of a hack is making a system do something it is not supposed to do. So you have to find a weak point by reverse engineering. Sometimes programmers make mistakes in their code, like a wrong variable type you can then exploit. Learn how a buffer overflow works Also I'd recommend these books:;amp;ie=UTF8&amp;amp;qid=1345626761&amp;amp;sr=1-1&amp;amp;keywords=o%27reilly+linux;amp;ie=UTF8&amp;amp;qid=1345626801&amp;amp;sr=1-1&amp;amp;keywords=learn+programming Have fun and good luck!

u/AlSweigart · 1 pointr/learnprogramming

If I had known about the existence of these two books (or rather, their earlier editions) a decade ago, I would have been well on my way to being a better Windows programmer. These two are MUST READS for win32 programming (if you don't want to use .NET framework or other abstraction layers.)

Windows Internals, by Russinovich and Solomon

Windows via C/C++, by Richter and Nasarre

Again, if you want to do non-.NET Windows programming, these books are pure gold. (The older books by Charles Petzold are kind of getting out of date, but were good too.) Also, check out Raymond Chen's blog The Old New Thing for tons of cool bits of Windows dev history

EDIT: Also a must read: Advanced Windows Debugging this is a must if you want to learn how to properly debug "unmanaged" (i.e. non-.NET) applications. Also a pretty good intro to reverse engineering or cracking apps on Windows.

u/-Divide_by_cucumber- · 1 pointr/PowerShell

Such a good book. Also I've gotten good mileage out of Windows Powershell 3.0 Step by Step (was handed out at a workshop I attended)


u/Liamdev · 1 pointr/Puppet

Make them read this. Just got finished, next time I need to sell the idea of good devops i'm going to be getting management to read this book rather then trying to explain it myself.

u/actualsysadmin · 1 pointr/sysadmin

Effective DevOps

I like all the O'reilly books really.

Edit: Someone just posted that is the current Humble Bundle for ebooks get it for $1

u/netzdamon · 1 pointr/devops

I've read all the books for chef that are currently out, and I think Chef Infrastructure Automation Cookbook is the best all around book right now.

I would also keep an eye out for Learning Chef: A Configuration Management and Automation Framework as well. It's not out yet, but I suspect it would be a good one.

If you haven't seen it yet, also check out Learn Chef as a good free resource.

u/labmansteve · 1 pointr/sysadmin

I'm mostly interested in large upticks of spam volume so I can take early action to mitigate any collateral damage we might incur like blacklisting. Additionally, if there is a sudden surge of emails with our domain aimed at us I can assume someone is trying to start a campaign against our organization. I'm basically developing another play for the playbook. Which, BTW Crafting the InfoSec Playbook is one of the better things I've read in a while. Definitely some review (especially for a fellow CISSP) but defiantly some interesting topics and I generally like their approach. You may want to check it out.

u/IndianAlien · 1 pointr/ABCDesis

A lot of CCNA folks I know are having a tougher time on the job market. The general direction of IT infrastructure is towards the Linux end of things, especially with cloud data. I used this book to understand Linux.

u/michaeln05 · 1 pointr/Ubuntu

Here's one of the best books that I've used. Immersing yourself in it and using it daily will go a very long way though.

u/Yalloow · 1 pointr/sysadmin
This is an excellent read if you are brand new to the command line.

u/zayn1000 · 1 pointr/linuxquestions

This book is freakin awesome, i've used it and it's an amazing start and teaches you all sorts of stuff. I don't know how much information you actually know about the command line but this has helped me a lot. This book I have heard was pretty good but I unfortunatly haven't made my way to reading it. besides those two and actually installing and forcing yourself to use it everday there isn't much else you can do.

u/sonnytron · 1 pointr/learnprogramming

When I first worked my first full time job, I couldn't understand for the life of me why anyone would use Terminal when SourceTree can get it all done, visually, with a modern GUI that's easy to understand.

Unfortunately, there was a time where SourceTree wasn't accessing my SSH tokens or something properly and I couldn't push. My senior told me, "Just use terminal" and I froze.

Terminal was terrifying. He drove and 3 minutes later we were back in business. He gave me this book:
The Linux Command Line: A Complete Introduction and told me to finish a chapter at least every week.
Later I learned about BashIt and themes and now I live in Terminal. You can do anything from Terminal. You can open up a Python interpreter, throw in some list values and decide where you're going to eat lunch and who's going to drive using a shuffle and random. You can scrape your entire developer directory for files that have the word Debug in them, even limited to file extensions like .swift or .py, using GREP.

You can quickly edit a file on command using Vim, you can cat your without having to switch tabs to your Github tab on your browser or even inside of the Finder folder.

There's so much you can do with Terminal.

u/thegamereli · 1 pointr/linux

I would recommend getting a few "Linux" for dummies books. They provide a really good base of knowledge.

This is one I've read before, highly recommend:

u/GreatDant0n · 1 pointr/webdev

&gt; I really would love to hear if anyone has any thoughts on whether spending the time learning VIM is a good idea in this context.

When you ssh into a server and try to edit a small script, what will you do? Install a desktop environment to open up beloved VsCode or fire up trusty old Vim which is installed by default? Knowing basic Vim commands for text editing is a must have for any serious developer (you don't have to be expert, you just have to know enough to be comfortable with using it for small editing, for anything else use your main editor - as mentioned in the comments VsCode + Vim plugin is pretty awesome).

For learning bash I would recommend you The Linux Command Line

u/OrangeOctoberLibra · 1 pointr/linux4noobs

Read Books: I recommend this, this and this.

u/jbod-e · 1 pointr/linux

Load it onto an old computer and play with it.

Checkout this book: How Linux Works: What Every Superuser Should Know

Checkout this book: The Linux Command Line: A Complete Introduction

u/IT_dude_101010 · 1 pointr/sysadmin




[The Linux Command Line: A Complete Introduction]
Also William E. Shotts Jr.'s book is good too.

Hey, Scripting Guy! A Powershell genius, Ed Wilson. I will always be greatful of his wonderful Powershell examples.

edit: fixed links.

u/BallsDeepinLogic · 1 pointr/pcmasterrace

Fair point, but it's not the window manager that keeps me away from arch, I just don't want to have to constantly be using the command line with a touchscreen keyboard, and my experience with Arch is that it's very command-line dependent and I'm just going to keep installing stuff that'll bring it closer to mint than it would be arch.

Plus, in between my calc, physics, and engineering classes, I don't really have the time to be learning a brand new operating system. But I did buy this book and when I have a little time I'll sit down for a few days and give Arch a good try.

u/Darkwraith5426 · 1 pointr/linux4noobs
u/shinigamiyuk · 1 pointr/cscareerquestions

I would try CLI the hard way first. Pretty good intro to command line. Then I would read The Linux Command Line or study for Linux+.

If you want to get into sys admin, or a linux job never hurts to go Linux all the way. I would say Linux+, Network+, RHCSA, and CCNA can help you go a long way. If you like Linux getting RHCE will open more doors. You don't necessarily need to get all of these certs but it helps your knowledge and what people will quiz you on the phone. At one point I was doing about 2-3 phone interviews a week that would just ask about 20-30 random Network, Linux, Windows, and basic trouble shooting questions.

u/MerionTransplant · 1 pointr/programming

Any opinions on this book. I actually have it but have not had time for it

u/HyperKiwi · 1 pointr/linux4noobs

OP Linux Command Line book, is an excellent place to start.

u/Randy_Watson · 1 pointr/osx
u/salzgablah · 1 pointr/raspberry_pi

I was always pretty competent when it comes to windows, however I was a complete newb with Linux. So I read this book, The Linux Command Line and it answered the basics for me. It gave me enough knowledge to navigate with SSH and set up my SFTP server. Also helped understand what i was doing, instead of just reading mini tutorials here and there...Try it out.

u/piymis · 1 pointr/learnprogramming

The Linux Command Line Its available for free (pdf on that site or here directly).
Also see the amazon reviews of it.

u/greengobblin911 · 1 pointr/linuxquestions

Many people may disagree with me, but as a Linux user on the younger side of the spectrum, I have to say there was one thing that really worked for me to finally switch for good- books.

There's tons of wikis and forums and of course Reddit to ask questions, but it is hard to get good answers. You may end up paying for books (unless you look on the internet for books) but it doesn't beat having a hard copy in front of you. It boils down to a time vs money trade off. The only wiki I would follow is one directly from the developers that act as documentation, not a community wiki. Also worth nothing certain wikis are more tied to linux and the kernel than others, meaning some are comparable/interchangable with the distro you may be using. Still, a novice would not easily put this together.

Forums are also useless unless you have the configuration mentioned in the post or that forum curates tutorials from a specific build they showcase and you as a user decided to build your system to their specifications. There's way too many variables trying to follow online guides, some of which may be out of date.

This i've realized is very true with things like Iommu grouping and PCI Passthrough for kernel based virtual machines. At that point you start modifying in your root directory, things like your kernel booting parameters and what drivers or hardware you're gonna bind or unbind from your system. While that does boil down to having the right hardware, you have to know what you're digging into your kernel for if you dont follow a guide with the same exact parts that are being passthrough or the cpus or chipsets are different.

Books are especially handy when you have a borked system, like you're in a bash prompt or an initramfs prompt or grub and need to get into a bootable part of the system. Linux takes practice. Sometimes its easier to page through a book than to search through forums.

Another thing about being an intermediate or expert Linux user is that you don't care much about distros or what other users or communities do. It wont matter as under the hood it's all the same, spare the desktop and the package managers. Once you're out of that mentality you just care about getting whatever you want done. I'm not one of those guys that's super gung-ho FOSS and open source. I just use what gets the job done. Also from a security perspective, yes Linux is in theory MORE secure but anything can be hardened or left vulnerable. It's more configuration tied than many uses and forums or threads lead it on to be.

My workload involves talking to servers and quite a bit of programming and scripting, in a variety of capacities. That's what led me to linux over the competitors, but I'm not so prudent to never ever want to use the competitor again or have a computer with it. With understanding Linux more, I use it more as a tool than to be part of the philosophy or community, though that enthusiasm pushes for new developments in the kernel.

I'm assuming you're a novice but comfortable enough in linux to get through certain things:

In any computer related thing, always TEST a deployment or feature first- From your linux system, use KVM or Virtualbox/vmware to spin up a few linux VMs, could even be a copy of your current image. This way any tweaks or things you want to test or try out is in an environment you can start over in.

The quickest way to "intermediate-expert" Linux IMO is learning system administration.

My go to book for this is "The Unix and Linux System Administration Handbook 5th edition";qid=1564448656&amp;s=books&amp;sr=1-1

This edition is updated recently to cover newer kernel features such as could environments and virtualization. This book also helps when learning BSD based stuff such as MacOS or FreeBSD.

Another good read for a "quick and dirty" understanding of Linux is "Linux Basics for Hackers" It does focus on a very niche distro and talks about tools that are not on all Linux systems BUT it does a good concise overview of intermediate things related to Linux (despite being called a beginners book).;keywords=linux+basics+for+hackers&amp;qid=1564448845&amp;s=books&amp;sprefix=linux+bas%2Cstripbooks%2C119&amp;sr=1-3

There's also "How Linux works" but I cannot vouch for this book from personal use, I see it posted across various threads often. Never read this particular one myself.;pd_rd_i=1593275676&amp;pd_rd_r=feffef24-d3c3-400d-a807-24d8fa39cd1e&amp;pd_rd_w=8GX0o&amp;pd_rd_wg=3AMRB&amp;pf_rd_p=a2006322-0bc0-4db9-a08e-d168c18ce6f0&amp;pf_rd_r=WBQKPADCVSABMCMSRRA1&amp;psc=1&amp;refRID=WBQKPADCVSABMCMSRRA1


If you want a more programming oriented approach, if you're confortable with the C language, then you can always look at these books:

The Linux Programming Interface;psc=1&amp;refRID=5YN3316W22YQ4TSMM967

Unix Network Programming VOL 1.;qid=1564448362&amp;s=books&amp;sr=1-1

Advanced Programming in the Unix Environment;psc=1&amp;refRID=5YN3316W22YQ4TSMM967

These books would take you to understanding the kernel level processes and make your own and modify your own system.

As many have mentioned, you can go into these things with "Linux from scratch" but it's also feasible to do Linux from scratch by copy/pasting commands. Unless you tinker and fail at certain things (hence do it on a vm before doing it to the main system) you won't learn properly. I think the sysadmin approach is "safer" of the two options but to each their own.

u/pope4president · 1 pointr/AskComputerScience

If you'd like further reading on this topic, I enjoyed reading How Linux Works: What Every Superuser Should Know. I didn't really understand what a kernel is until I read that.

u/jjanel · 1 pointr/linux4noobs

TL;dr sorry. +1 chillysurfer: "How Linux Works" 2nd ed. (yes, ok for a HiIQ_n00b)

Please @JAU, let me know what you think of it (via Amazon 'Look Inside' or AllITeBooks etc)

u/MattTheFlash · 1 pointr/HowToHack

why are you showing me this?

You have a shell on a minimal installation of linux. congratulations. do you even know how to use the bash shell?

u/Piestrio · 1 pointr/linuxquestions

How Linux Works, 2nd Edition: What Every Superuser Should Know

u/hzer0 · 1 pointr/hacking

You learn linux by using it, and trial and error. No joke. Just dive in when it comes to Linux. Get a book like;amp;ie=UTF8&amp;amp;qid=1418113534&amp;amp;sr=1-4

Use it as a reference at first, or even start reading if you like. Then whenver you have the opportunity, take the hard road and try to accomplish your task using command line tools.

As far as networking, check out securitytube as someone mentioned, maybe go for network+ to get the basics.

You may want to read the more in-depth answer I gave a similar question here:

Good luck!

u/_a9o_ · 1 pointr/cscareerquestions

I like this book as a starting point.

How Linux Works, 2nd Edition: What Every Superuser Should Know

u/jkurthoconnor · 1 pointr/linuxadmin

Very much not a recipe book, but I think a good fit for deeper understanding: How Linux Works

u/medzernik · 1 pointr/linux4noobs
u/derrickcrash · 1 pointr/linuxquestions

And in case you stumble on the logic from the command line, using pipes, grep, that sort of stuff. I was always recommended: this paid book but you can find some used much cheaper

u/mskelling · 1 pointr/sysadmin

Thank you very much everyone for all your answers!
I really appreciate!

I begin with


Thank you

u/pbeagle1851 · 1 pointr/sysadmin

I found this book to be a quick introduction into Powershell. Its a great resource as well. Others have posted materials for using python in windows effectively, but what I have found is that the simplicity messing with windows using powershell will always trump other languages.;amp;ie=UTF8&amp;amp;qid=1410367014&amp;amp;sr=1-1&amp;amp;keywords=learn+powershell+in+a+month+of+lunches

u/thesunisjustanadmin · 1 pointr/ITCareerQuestions

A lot has come from on the job experience, but it also comes from setting goals for myself.

In December I knew nothing about Windows PowerShell, so I started researching. I bought Learn Windows PowerShell 3 in a Month of Lunches. I used that to start making some automated AD reports.

My other goals for this year are Security+ by June 31st. Then read Learn Windows PowerShell Toolmaking in a Month of Lunches in July. And finally get Linux+ by December 31st.

This is my most aggressive year, mainly because I am starting to feel stagnant in my current job.

u/michaeltlombardi · 1 pointr/PowerShell

STLPSUG: May 19, 2016

Presentation: PowerShell Functions

Micah Battin, PowerShell Functions
A link to Micah's Demo notes/scripts will be put up ASAP

u/jheinikel · 1 pointr/sysadmin
u/r3coil · 1 pointr/sysadmin
u/litemage · 1 pointr/sysadmin

/r/powershell is a good place to start.

This book is also commonly recommended as a good starting point as well if you prefer books.

u/syskerbal · 1 pointr/sysadmin

Powershell in a month of lunches

Do a quick search here, been asked several times before. So there should be a lot of recommendations.

u/thinktankted · 1 pointr/SCCM

For anyone who feels they don't have enough time to learn powershell: I only made it half-way through, and still got what I needed to. (I'm not harping on you to learn powershell, just providing the info for anyone interested)

u/H8Blood · 1 pointr/sysadmin

There's a bunch of good resources out there. My favorite book is probably PowerShell 3 in a Month of Lunches by Don Jones. Other than that there's the Hey, Scripting Guy! blog which got tons of useful bits and pieces. Last but not least, CBT Nuggets.

u/mappie41 · 1 pointr/sysadmin

If you are in a lower cost-of-living area then that is probably ok. What you describe seems like mostly level1/2 stuff. My jr sysadmin makes more than that but I think the help desk people make less, but those are the level1 hd people. I don't know how much our level 2 people make (I'm not their manager).

As for my own experience, I made about that much 20 years ago as a level 2 help desk/jr sysadmin at a large company in contract role. I worked a lot on learning everything I could that would help. The more valuable you make yourself to your company the more you'll make, over time and if they have a good management team. This is why switching jobs every few years can be so fruitful, big jumps in pay or smaller jumps with a bigger title and then growth at the new company.


Read about time management (, script everything you can (, and document everything you can (a wiki or runbook or such).

u/Sumbrada · 1 pointr/exchangeserver

Learning Powershell (at the very least) is twofold: on one hand, a person needs to understand how scripts are structured and designed. On the other, a person need the vocabulary and knowledge of commands. Neither of these is really something anyone new is gonna just absorb over lunch. But I would say that you can help yourself with this- although it's definitely not going to help you right away with this issue, it makes things easier in the long run:

u/jordanontour · 1 pointr/sysadmin

I don't think anyone is going to do this work for you but this is the best thing for you; today you are going to learn powershell and it is going to own your soul.

How are your powershell skills? If you haven't yet read anything about Powershell, here are your starting points:

u/Agarwa3n · 1 pointr/sysadmin

The author's are Don Jones and Jeffery Hicks. Don Jones is an absolute Wizard, and very active on My recommendation is Jones' ultimate course on cbtnuggets. It's expensive, but holy shit is it some powershe I mean powerful content

u/IANALAMA · 1 pointr/sysadmin

If you're involved in windows admin work at all, it's in your best interest to learn powershell. It is so much more robust and...well, powerful than any GUI you use, especially for queries and reporting. I have this book, i'd recommend it highly, about halfway done so far

u/BattleChicken · 1 pointr/sysadmin

Excellent book on the topic if you want to learn:

Also, the hey scripting guy blog:

u/melp · 1 pointr/zfs

I'd really recommend these two books for high-level administration of ZFS:

And the other one I linked has one chapter that gets into the low-level workings of ZFS:

u/jtrower · 1 pointr/k12sysadmin

This is the book I used to get started with MDT. It's very helpful and easy to follow.

u/thisisfor_fun · 0 pointsr/cscareerquestions

Probably not what you are looking for but if you need to catch up on PowerShell 3 at some point, Learn Windows PowerShell 3 in a Month of Lunches is a quick,easy read. Free ebook with purchase of the paperback, and the review labs can be answered fairly easily without a pc.

u/fish1232 · 0 pointsr/learnprogramming

Chapter 2 is about scripting and the shell. Focusing on bash/perl/python.

u/0x4c47 · 0 pointsr/linuxquestions

First: Calm down. They also want you to work for them. It's not like they just have an endless pool of job candidates.

Technical skills are obviously important but other personal traits are much more important. Are you willing to learn? Do you like working in teams? Stuff like that. Technical skills can often be obtained more easily than personal traits. Be confident. If they ask you many technical questions and you can't answer many of them: Don't despair. Be honest about what you know and don't know. Be prepared to present in what particular technical things you have some experience.

If you want to read on Linux and Unix system administration, I recommend this book:

(DM me for tips on how to get it)

u/takegaki · 0 pointsr/linux

This is a wonderful beginner's linux book. I loved it.

u/JR_Ray · -1 pointsr/linux

Sounds like your the Dev side of DevOps. I'm going to save you having to go buy a mac or run Linux as your base OS.

First go download Virtual Box

Next grab the latest version of Vagrant

Install both and sign up for a free account on Vagrant Cloud

Grab yourself cygwin/mysysgit or similar. You are going to need git eventually and you need an openssh client. Install one of those.

Start &gt; Run &gt; cmd

cd %userprofile% #This should drop you into your home directory.

mkdir $dirName

This can be anything you want. I call mine vProj.

vagrant init hashicorp/precise64

This is going to create a file called Vagrantfile in the directory you are in when you call the command. This file is what Vagrant is going to use to build a box.

vagrant up

Vagrant is now going to go out to the internet and download an Ubuntu 12.04 LTS 64 bit vagrant box and use vBox to provision it.

vagrant ssh

You are now in your very own Ubuntu 12.04 Virtual Box. :) You don't like it? vagrant destroy will get rid of it. vagrant up again will rebuild it. vagrant halt stops it. Their are plenty of base boxes on the vagrant cloud. Companies like puppet even put their own boxes online for devs to use. The beauty is that you didn't have to open vBox one time. You didn't have to play with the network settings or setup some weird bridge. Vagrant does it all for you. You can, of course, open vBox and run it as normal but really you don't need to.

As for books.

Linux in a Nutshell

Vagrant Up and Running