- 25 Free Books To Learn Linux For Free
- How to learn Linux?
- 1. Free materials to learn Linux for absolute beginners
- Introduction to Linux by Linux Foundation [Video Course]
- Linux Journey [Online Portal]
- Learn Linux in 5 Days [eBook]
- The Ultimate Linux Newbie Guide [eBook]
- 2. Free Linux eBooks for Beginners to Advanced
- Introduction to Linux [eBook]
- Linux Fundamentals [eBook]
- Advanced Linux Programming [eBook]
- Linux From Scratch [eBook]
- 3. Free eBooks to learn Linux command line and Shell scripting
- The Linux Command Line [eBook]
- GNU/Linux Command−Line Tools Summary [eBook]
- Bash Reference Manual from GNU [eBook]
- Bash Guide for Beginners [eBook]
- Advanced Bash-Scripting Guide [eBook]
- Linux 101 Hacks [eBook]
- The AWK Programming Language [eBook]
- 4. Free eBooks for SysAdmin
- The Debian Administration’s Handbook [eBook]
- Advanced Linux System Administration [eBook]
- Linux System Administration [eBook]
- Linux Servers [eBook]
- Linux Networking [eBook]
- Linux Storage [eBook]
- Linux Security [eBook]
- Your favorite Linux learning material?
- Книга “Linux на примерах” (2017) Скачать PDF
- Описание:
- Manual do linux pdf
- How to Get Access?
- Logging-In
- Change Password
- Why GNU/Linux?
- GNU/Linux Distributions
- Basics
- Command-Line Syntax for this Manual
- Orientation
- Files and directories
- Copy and paste
- Handy shortcuts
- Unix Help
- Finding Things
- Finding files, directories and applications
- Finding things in files
- Permissions and Ownership
- Useful Unix Commands
- Process Management
- Text Viewing
- Text Editors
- Vim Manual
- Basics
- Moving Around in Files
- Line Wrapping and Line Numbers
- Working with Many Files & Splitting Windows
- Spell Checking & Dictionary
- Enabling Syntax Highlighting
- Undo and Redo
- Deleting Things
- Copy & Paste
- Search in Files
- Replacements with Regular Expression Support
- Useful Utilities in Vim
- Modify Vim Settings
- The Unix Shell
- STDIN, STDOUT, STDERR, Redirections, and Wildcards
- Useful shell commands
- Screen
- Starting a New Screen Session
- Attaching to Screen Sessions
- Destroying Screen Sessions
- Tabs and a Reasonably Large History Buffer
- Simple One-Liner Shell Scripts
- Simple One-Liner Perl Scripts
- Remote Copy: wget, scp, ncftp
- wget: File Download from the Web
- scp: Secure Copy Between Machines
- Nice FTP
- Archiving and Compressing
- Creating Archives
- Viewing Archives
- Extracting Archives
- Simple Installs
- Devices
- Environment Variables
- Exercises
25 Free Books To Learn Linux For Free
Last updated February 6, 2020 By Abhishek Prakash 111 Comments
Brief: In this article, I’ll share with you the best resource to learn Linux for free. This is a collection of websites, online video courses and free eBooks.
How to learn Linux?
This is perhaps the most commonly asked question in our Facebook group for Linux users.
The answer to this simple looking question ‘how to learn Linux’ is not at all simple.
Problem is that different people have different meanings of learning Linux.
- If someone has never used Linux, be it command line or desktop version, that person might be just wondering to know more about it.
- If someone uses Windows as the desktop but have to use Linux command line at work, that person might be interested in learning Linux commands.
- If someone has been using Linux for sometimes and is aware of the basics but he/she might want to go to the next level.
- If someone is just interested in getting your way around a specific Linux distribution.
- If someone is trying to improve or learn Bash scripting which is almost synonymous with Linux command line.
- If someone is willing to make a career as a Linux SysAdmin or trying to improve his/her sysadmin skills.
You see, the answer to “how do I learn Linux” depends on what kind of Linux knowledge you are seeking. And for this purpose, I have collected a bunch of free Linux resources that you could use for learning Linux.
These free resources include eBooks, video courses, websites etc. And these are divided into sub-categories so that you can easily find what you are looking for when you seek to learn Linux.
If you are looking to build a career as a Linux SysAdmin, I recommend getting professional certification from The Linux Foundation, the organization that employs Linux creator Linus Torvalds. You can also check some inexpensive Linux courses on Udemy.
Again, there is no best way to learn Linux. It totally up to you how you go about learning Linux, by online web portals, downloaded eBooks, video courses or something else.
Disclaimer: All the books listed here are legal to download. The sources mentioned here are the official sources, as per my knowledge. However, if you find it otherwise, please let me know so that I can take appropriate action.
1. Free materials to learn Linux for absolute beginners
So perhaps you have just heard of Linux from your friends or from a discussion online. You are intrigued about the hype around Linux and you are overwhelmed by the vast information available on the internet but just cannot figure out exactly where to look for to know more about Linux.
Worry not. Most of us, if not all, have been to your stage.
Introduction to Linux by Linux Foundation [Video Course]
If you have no idea about what is Linux and you want to get started with it, I suggest you to go ahead with the free video course provided by the Linux Foundation on edX. Consider it an official course by the organization that ‘maintains’ Linux. And yes, it is endorsed by Linus Torvalds, the father of Linux himself.
Linux Journey [Online Portal]
Not official and perhaps not very popular. But this little website is the perfect place for a no non-sense Linux learning for beginners.
The website is designed beautifully and is well organized based on the topics. It also has interactive quizzes that you can take after reading a section or chapter. My advice, bookmark this website:
Learn Linux in 5 Days [eBook]
This brilliant eBook is available for free exclusively to It’s FOSS readers all thanks to Linux Training Academy.
Written for absolute beginners in mind, this free Linux eBook gives you a quick overview of Linux, common Linux commands and other things that you need to learn to get started with Linux.
The Ultimate Linux Newbie Guide [eBook]
This is a free to download eBook for Linux beginners. The eBook starts with explaining what is Linux and then go on to provide more practical usage of Linux as a desktop.
You can download the latest version of this eBook from the link below:
2. Free Linux eBooks for Beginners to Advanced
This section lists out those Linux eBooks that are ‘complete’ in nature.
What I mean is that these are like academic textbooks that focus on each and every aspects of Linux, well most of it. You can read those as an absolute beginner or you can read those for deeper understanding as an intermediate Linux user. You can also use them for reference even if you are at expert level.
Introduction to Linux [eBook]
Introduction to Linux is a free eBook from The Linux Documentation Project and it is one of the most popular free Linux books out there. Though I think some parts of this book needs to be updated, it is still a very good book to teach you about Linux, its file system, command line, networking and other related stuff.
Linux Fundamentals [eBook]
This free eBook by Paul Cobbaut teaches you about Linux history, installation and focuses on the basic Linux commands you should know.
You can get the book from the link below:
Advanced Linux Programming [eBook]
As the name suggests, this is for advanced users who are or want to develop software for Linux. It deals with sophisticated features such as multiprocessing, multi-threading, interprocess communication, and interaction with hardware devices.
Following the book will help you develop a faster, reliable and secure program that uses the full capability of a GNU/Linux system.
Linux From Scratch [eBook]
If you think you know enough about Linux and you are a pro, then why not create your own Linux distribution? Linux From Scratch (LFS) is a project that provides you with step-by-step instructions for building your own custom Linux system, entirely from source code.
Call it DIY Linux but this is a great way to put your Linux expertise to the next level.
There are various sub-parts of this project, you can check it out on its website and download the books from there.
3. Free eBooks to learn Linux command line and Shell scripting
The real power of Linux lies in the command line and if you want to conquer Linux, you must learn Linux command line and Shell scripting.
In fact, if you have to work on Linux terminal on your job, having a good knowledge of Linux command line will actually help you in your tasks and perhaps help you in advancing your career as well (as you’ll be more efficient).
In this section, we’ll see various Linux commands free eBooks.
The Linux Command Line [eBook]
This 500+ pages of free eBook by William Shotts is the MUST HAVE for anyone who is serious about learning Linux command line.
Even if you think you know things about Linux, you’ll be amazed at how much this book still teaches you.
It covers things from beginners to advanced level. I bet that you’ll be a hell lot of better Linux user after reading this book. Download it and keep it with you always.
GNU/Linux Command−Line Tools Summary [eBook]
This eBook from The Linux Documentation Project is a good place to begin with Linux command line and get acquainted with Shell scripting.
Bash Reference Manual from GNU [eBook]
This is a free eBook to download from GNU. As the name suggests, it deals with Bash Shell (if I can call that). This book has over 175 pages and it covers a number of topics around Linux command line in Bash.
Bash Guide for Beginners [eBook]
If you just want to get started with Bash scripting, this could be a good companion for you. The Linux Documentation Project is behind this eBook again and it’s the same author who wrote Introduction to Linux eBook (discussed earlier in this article).
Advanced Bash-Scripting Guide [eBook]
If you think you already know basics of Bash scripting and you want to take your skills to the next level, this is what you need. This book has over 900+ pages of various advanced commands and their examples.
Linux 101 Hacks [eBook]
This 270 pages eBook from The Geek Stuff teaches you the essentials of Linux command lines with easy to follow practical examples.
The AWK Programming Language [eBook]
Not the prettiest book here but if you really need to go deeper with your scripts, this old-yet-gold book could be helpful.
4. Free eBooks for SysAdmin
This section is dedicated to the SysAdmins, the superheroes for developers. I have listed a few free eBooks here for SysAdmin which will surely help anyone who is already a SysAdmin or aspirs to be one. I must add that you should also focus on essential Linux command lines as it will make your job easier.
The Debian Administration’s Handbook [eBook]
If you use Debian Linux for your servers, this is your bible. The Debian Administration’s Handbook starts with Debian history, installation, package management etc and then moves on to cover topics like LAMP, virtual machines, storage management and other core sysadmin stuff.
Advanced Linux System Administration [eBook]
This is an ideal book if you are preparing for LPI certification. The book deals straightway to the topics essential for sysadmins. So knowledge of Linux command line is a prerequisite in this case.
Linux System Administration [eBook]
Another free eBook by Paul Cobbaut. The 370 pages long eBook covers networking, disk management, user management, kernel management, library management etc.
Linux Servers [eBook]
One more eBook from Paul Cobbaut of linux-training.be. This book covers web servers, mysql, DHCP, DNS, Samba and other file servers.
Linux Networking [eBook]
Networking is the bread and butter of a SysAdmin, and this book by Paul Cobbaut (again) is a good reference material.
Linux Storage [eBook]
This book by Paul Cobbaut (yes, him again) explains disk management on Linux in detail and introduces a lot of other storage-related technologies.
Linux Security [eBook]
This is the last eBook by Paul Cobbaut in our list here. Security is one of the most important part of a sysadmin’s job. This book focuses on file permissions, acls, SELinux, users and passwords etc.
Your favorite Linux learning material?
So you now have plenty of reading materials. If you want to practice, you can use one of the online Linux terminals that allow you to run Linux and Bash commands.
I know that this is a good collection of free Linux eBooks. But this could always be made better. If you have some other resources that could be helpful in learning Linux, do share with us. Please note to share only the legal downloads so that I can update this article with your suggestion(s) without any problem.
I hope you find this article helpful in learning Linux. Your feedback is welcome 🙂
Like what you read? Please share it with others.
Источник
Книга “Linux на примерах” (2017) Скачать PDF
Автор: Донцов В.П., Сафин И.В.
Название: Linux на примерах
Год выпуска: 2017
Категория: Linux, UNIX
Издательство: “НиТ” Наука и Техника (СПб)
Язык: Русский
Просмтреть/Скачать PDF: Google Диск
Описание:
Данная книга является отличным практическим руководством по работе в операционной системе Linux и ее администрированию. На большом количестве практических примеров показано выполнение огромного количества действий и задач, которые могут понадобиться пользователю Linux.
Книга может использоваться как практический справочник и как самоучитель для начинающих. Изложение ведется с учетом самых разных дистрибутивов Linux. Лучший выбор для эффективного изучения и использования Linux.
Источник
Manual do linux pdf
This manual provides a brief introduction how to get started using powerful Linux command-line utilities.
How to Get Access?
- Install your preferred GNU/Linux distribution on your local machine (not required. )
- Users at UC Riverside can apply for an account on our Linux clusters by sending an account request to Rakesh Kaundal (rkaundal@ucr.edu).
Logging-In
- To log-in into the remote Linux shell, open terminal and type:
host name is the remote server’s domain name (e.g. biocluster.ucr.edu)
You will be asked to enter the password, simply type it and press enter.
- To copy files To the server run the following on your workstation or laptop:
- To copy files From the server run the following on your workstation or laptop:
Open Putty and select ssh. Download PuTTY if you do not have it.
Nothing will show-up,
simply type the password and press enter.
Setup for graphics emulation. Download and install Xming if you do not have it.
Use WinSCP or FileZilla for file exchange. Download and install WinSCP or FileZilla if you do not have it.
Change Password
Why GNU/Linux?
- Software costs $0
- Advanced Multitasking
- Remote tasking («real networking»)
- Multiuser
- Easy access to programming languages, databases, open-source projects
- Software freedoms
0. Free to use for any purpose
1. Free to study and modify the source code
2. Free to share
3. Free to share modified versions - No dependence on vendors
- Better performance
- More up-to-date
- Many more reasons .
GNU/Linux Distributions
Basics
Command-Line Syntax for this Manual
- Remember the UNIX/LINUX command line is case sensitive!
- All commands in this manual are printed in gray code boxes.
- Commands given in red are considered more important for beginners than commands given in black .
- The hash (pound) sign «#» indicates end of a command and the start of a comment.
- The notation refers to variables and file names that need to be specified by the user. The symbols need to be excluded.
Orientation
Viewing and changing the present working directory:
pwd # Get full path of the present working direc tory (same as «echo $HOME»)
ls # Content of pwd
ls -l # Similar as ls, but provides additional info on files and directories
ls -a # Includes hidden files (.name) as well
ls -R # Lists subdirectories recursively
ls -t # Lists files in chronological order
cd # Switches into specified directory .
cd # Brings you to the highest level of your home directory.
cd .. # Moves one directory up
cd ../../ # Moves two directories up (and so on)
cd — # Go back to you were previously (before the last directory change)
) gets interpreted as the path to your home directory. This will happen anywhere on the command line:
# View the full (complete) path of your home
find
# List all your files (including everything in sub-directories)
ls
# List the top level files of your home directory
du -sch
/* # Calculate the file sizes in your home
Viewing file info, user, and host:
stat # Last modification time stamps, permissions, and size of a file
whoami # Shows your user name (same as «echo $USER»)
hostname # Shows on which machine you are (same as «echo $HOSTNAME»)
Files and directories
# Copy file/directory as specified in path (-r to include content in directories)
mv # Renames directories or files
mv
# Moves file/directory as specified in path
Copy and paste
The methods differ depending where you are.
- Cut last word with keyboard only
- Press multiple times to cut more than one word
Paste with keyboard only
- In a non-command line desktop environment:
- Copy with mouse only Simply select the text with the mouse Paste with mouse only Click the middle mouse button or both left/right buttons simultaneously
Handy shortcuts
- up(down)_key — scrolls through command history
Taking control over the cursor (the pointer on the command line):
- «.» (dot) — refers to the present working directory
- «
/» — refers to user’s home directory
Unix Help
man # general help (press the ‘q’ key to exit)
man wc # manual on program ‘word count’ wc
wc —help # short help on wc
soap -h # for less standard programs
Online help: Google
Universally available Linux commands, with detailed examples and explanations: http://www.linuxconfig.org/linux-commands
Finding Things
Finding files, directories and applications
- additional useful arguments: -user , -group , -ctime
-type f -mtime -2 # finds all files you have modified in the last two days
locate
Finding things in files
grep pattern file # provides lines in ‘file’ where pattern ‘appears’,
# if pattern is shell function use single-quotes: ‘>’
grep -H pattern # -H prints out file name in front of pattern
grep ‘pattern’ file | wc # pipes lines with pattern into word count wc (see chapter 8)
# wc arguments: -c: show only bytes, -w: show only words,
# -l: show only lines; help on regular expressions:
# $ man 7 regex or man perlre
find /home/my_dir -name ‘*.txt’ | xargs grep -c ^.* # counts line numbers on many
# files and records each count along with individual file
# name; find and xargs are used to circumvent the Linux
# wildcard limit to apply this function on thousands of files.
Permissions and Ownership
List directories and files
Assign write and execute permissions to user and group
To remove all permissions from all three user groups
Useful Unix Commands
Process Management
# Shows how long a particular process was running.
# (E.g. 6-04:30:50 means 6 days 4 hours . )
Ctrl z # Suspend (put to sleep) a process
fg # Resume (wake up) a suspended process and brings it into foreground
bg # Resume (wake up) a suspended process but keeps it running
# in the background .
Ctrl c # Kills the process that is currently running in the foreground
kill
# Kills a specific process
kill -9
# NOTICE: «kill -9» is a very violent approach.
# It does not give the process any time to perform cleanup procedures .
kill -l # List all of the signals that can be sent to a proccess
kill -s SIGSTOP
# Suspend (put to sleep) a specific process
kill -s SIGCONT
# Resume (wake up) a specific process
renice -n
# Changes the priority value, which range from 1-19,
# the higher the value the lower the priority, default is 10 .
More on Terminating Processes
Text Viewing
Text Editors
Non-graphical (terminal-based) editor. Vi is guaranteed to be available on any system. Vim is the improved version of vi.
Non-graphical or window-based editor. You still need to know keystroke commands to use it. Installed on all Linux distributions and on most other Unix systems.
Simple terminal-based editor available on most versions of Unix. Uses keystroke commands, but they are listed in logical fashion at bottom of screen.
Vim Manual
Basics
- i # INSERT MODE
- ESC # NORMAL (NON-EDITING) MODE
- : # commands start with ‘:’
- :w # save command; if you are in editing mode you have to hit ESC first!!
- :q # quit file, don’t save
- :q! # exits WITHOUT saving any changes you have made
- :wq # save and quit
- R # replace MODE
- r # replace only one character under cursor
- q: # history of commands (from NORMAL MODE!), to reexecute one of them, select and hit enter!
- :w new_filename # saves into new file
- :#,#w new_filename # saves specific lines (#,#) to new file
- :# go to specified line number
Find help on the web. Google will find answers to most questions on vi and vim (try searching for both terms).
Help from Command Line
Moving Around in Files
- $ # moves cursor to end of line
- A # same as $, but switches to insert mode
- 0 (zero) # moves cursor to beginning of line
- CTRL-g # shows at status line filename and the line you are on
- SHIFT-G # brings you to bottom of file, type line number (isn’t displayed) then SHIFT-G # brings you to specified line#
Line Wrapping and Line Numbers
- :set nowrap # no word wrapping, :set wrap # back to wrapping
- :set number # shows line numbers, :set nonumber # back to no-number mode
Working with Many Files & Splitting Windows
Spell Checking & Dictionary
- :set spell # turns on spell checking
- :set nospell # turns spell checking off
- :! dict # meaning of word
- :! wn ‘word’ -over # synonyms of word
Enabling Syntax Highlighting
- :set filetype=perl # Turns on syntax coloring for a chosen programming language.
- :set syntax on # Turns syntax highlighting on
- :set syntax off # Turns syntax highlighting off
Undo and Redo
- u # undo last command
- U # undo all changes on current line
- CTRL-R # redo one change which was undone
Deleting Things
- x # deletes what is under cursor
- dw # deletes from curser to end of word including the space
- de # deletes from curser to end of word NOT including the space
- cw # deletes rest of word and lets you then insert, hit ESC to continue with NORMAL mode
- c$ # deletes rest of line and lets you then insert, hit ESC to continue with with NORMAL mode
- d$ # deletes from cursor to the end of the line
- dd # deletes entire line
- 2dd # deletes next two lines, continues: 3dd, 4dd and so on.
Copy & Paste
- yy # copies line, for copying several lines do 2yy, 3yy and so on
- p # pastes clipboard behind cursor
Search in Files
- /my_pattern # searches for my_pattern downwards, type n for next match
- ?my_pattern # seraches for my_pattern upwards, type n for next match
- :set ic # switches to ignore case search (case insensitive)
- :set hls # switches to highlight search (highlights search hits)
Replacements with Regular Expression Support
Useful Utilities in Vim
Modify Vim Settings
The Unix Shell
When you log into UNIX/LINUX system, then is starts a program called the Shell. It provides you with a working environment and interface to the operating system. Usually there are several different shell programs installed. The shell program bash is one of the most common ones.
STDIN, STDOUT, STDERR, Redirections, and Wildcards
By default, UNIX commands read from standard input (STDIN) and send their output to standard out (STDOUT).
You can redirect them by using the following commands:
Useful shell commands
# merges lines of files and separates them by tabs (useful for tables)
cmp # tells you whether two files are identical
diff # finds differences between two files
head — # prints first lines of a file
tail — # prints last lines of a file
split -l # splits lines of file into many smaller ones
csplit -f out fasta_batch «%^>%» «/^>/» «<*>» # splits fasta batch file into many files
# at ‘>’
sort # sorts single file, many files and can merge (-m)
# them, -b ignores leading white space, .
sort -k 2,2 -k 3,3n input_file > output_file # sorts in table column 2 alphabetically and
# column 3 numerically, ‘-k’ for column, ‘-n’ for
# numeric
sort input_file | uniq > output_file # uniq command removes duplicates and creates file/table
# with unique lines/fields
join -1 1 -2 1
# (-1 file1, 1: col1; -2: file2, col2). It assumes
# that join fields are sorted. If that is not the case,
# use the next command:
sort table1 > table1a; sort table2 > table2a; join -a 1 -t «`echo -e ‘\t’`» table1a table2a > table3 # ‘-a