DEV Community

Cover image for I need to learn Linux
Kevin
Kevin

Posted on

I need to learn Linux

Hello, I'm a junior web developer, I have seen that linux is very important, I know a little commands (mkdir, sudo, chmod...) but I don't know how it works or what types of permissions has this system (Linux) or the files system (etc, usr, bin...).
Can you recommend Books, courses or somethinig like that to be a hero in Linux.
Thanks.

Top comments (11)

Collapse
 
flrnd profile image
Florian Rand

I started using linux back then in 1998, what I am going to share with you is a relic, but it was my main (and only) reference to learn: The Linux Documentation Project.

It's really really old, but for historical reasons I think you should know about it.

I strongly encourage you to get familiar with man. Man pages are a command line help, as an example, just type man mkdir in a terminal:

MKDIR(1)                      User Commands                      MKDIR(1)

NAME
       mkdir - make directories

SYNOPSIS
       mkdir [OPTION]... DIRECTORY...

DESCRIPTION
       Create the DIRECTORY(ies), if they do not already exist.

       Mandatory  arguments  to  long options are mandatory for short opā€
       tions too.

       -m, --mode=MODE
              set file mode (as in chmod), not a=rwx - umask

       -p, --parents
              no error if existing, make parent directories as needed

       -v, --verbose
              print a message for each created directory

       -Z     set SELinux security context of each created  directory  to
              the default type

       --context[=CTX]
              like  -Z,  or  if  CTX is specified then set the SELinux or
              SMACK security context to CTX

       --help display this help and exit

       --version
              output version information and exit

AUTHOR
       Written by David MacKenzie.

REPORTING BUGS
       GNU  coreutils  online  help:  <https://www.gnu.org/software/coreā€
       utils/>
       Report   mkdir   translation   bugs   to  <https://translationproā€
       ject.org/team/>

COPYRIGHT
       Copyright Ā© 2018 Free Software Foundation, Inc.   License  GPLv3+:
       GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>.
       This is free software: you are free to change and redistribute it.
       There is NO WARRANTY, to the extent permitted by law.

SEE ALSO
       mkdir(2)

       Full   documentation    at:    <https://www.gnu.org/software/coreā€
       utils/mkdir>
       or available locally via: info '(coreutils) mkdir invocation'

GNU coreutils 8.30            February 2019                      MKDIR(1)
Enter fullscreen mode Exit fullscreen mode

You just learned the classic RTFM among sys-admins.

Welcome to the penguin way! and happy learnig! If you have any doubts I'll be more than happy to help šŸ¤“.

Collapse
 
kevinhch profile image
Kevin

Thank you so mutch! :D

Collapse
 
rixcy profile image
Rick Booth

I usually find myself going to this question on stack overflow when working with Linux, to find out the octal permissions. Makes a lot more sense seeing those numbers than -rw-r--r-- to me :D

Collapse
 
ashleemboyer profile image
Ashlee (she/her)

I was forced to just dive in and learn it in college. Eventually, I got really comfortable with it and now have been using Ubuntu for close to 4 years I think. There was a lot of Googling along the way. šŸ˜Š I'd recommend looking for a good virtual machine program and testing the waters that way.

It can be a little intimidating at first, but I promise it's not too bad once you're used to it. I have probably 5 main tools/commands I use in the terminal and once you have your system set up, there's not much you have to do outside of your normal workflow.

Collapse
 
kevinhch profile image
Kevin

I tried on my VM, then I want to install in my PC

Collapse
 
jesusgollonet profile image
jesĆŗs gollonet • Edited

I've never studied linux in depth and I'm mainly an OSX user but after a few years of curiosity and occasional server setup I consider myself quite comfortable with it. For me, the key concept that made it click was understanding the permission model. Before that I could follow tutorials but I would always stumble upon some wall that I either couldn't get through or eventually solved without knowing what I'd done. To that end this recent dev.to post about linux permissions seems like a great starting point (haven't read yet).

You also mention the file system. I recently bit the bullet and read the Filesystem Hierarchy Standard, and got a ton of useful info out of it. It explains what is supposed to go in each of the top level directories and how they're nested, etc. Before reading that I always had to google for the locations of config files, logs... and now I'd say 90% of the times I find them right away. It is not that long and I totally recommend it too (if that seems too daunting start with the wikipedia page).

In general I'd say when playing with things, whenever you stumble upon a hurdle that is out of your comfort zone, try to look for the general concept that it embodies (ask about it!) and dive into it. Also don't hesitate to memorize things! Especially if you don't use linux on a daily basis things that seem obvious right after you learned them will fade off quite quickly.

Good luck!

Collapse
 
kevinhch profile image
Kevin

thanks man! :D

Collapse
 
dhulipallas profile image
Sandeep

I found Linux essentials on Linux academy very useful. If you got six hours of time you will get a very good understanding of Linux basics.linuxacademy.com/linux/training/co...

Collapse
 
mannuelf profile image
Mannuel

I have been enjoying reading linuxize.com/

Collapse
 
jason_espin profile image
Jason Espin

You don't really NEED Linux for Web Development. I would stick with the OS that you know and instead focus on some development concepts.

Collapse
 
kevinhch profile image
Kevin

:O Thanks!