كتاب تعلم لينكس للمبتدئين PDF
كتاب تعلم لينكس للمبتدئين PDF
كتاب تعلم لينكس للمبتدئين PDF
The Complete Tutorial Guide for Beginners and Pro to Master the Linux
Operating System and Command Line Basics
Curtis
Campbell
Copyright © 2021 Curtis Campbell
It is not legal to reproduce, duplicate, or transmit any part of this document by either electronic means
or in printed format. Recording of this publication is strictly prohibited
Disclaimer
The information in this book is based on personal experience and anecdotal evidence. Although the
author has made every attempt to achieve an accuracy of the information gathered in this book, they
make no representation or warranties concerning the accuracy or completeness of the contents of this
book. Your circumstances may not be suited to some illustrations in this book.
The author disclaims any liability arising directly or indirectly from the use of this book. Readers are
encouraged to seek Medical. Accounting, legal, or professional help when required.
This guide is for informational purposes only, and the author does not accept any responsibilities for
any liabilities resulting from the use of this information. While every attempt has been made to verify
the information provided here, the author cannot assume any responsibility for errors, inaccuracies or
omission.
Contents
INTRODUCTION
CHAPTER ONE
Meaning of Linux
How is Linux working OS utilized?
What is an Operating system?
Definition of UNIX
Difference between Linux and UNIX
CHAPTER TWO
Benefits of Linux
How to Choose Linux Distribution
Ubuntu and Linux Mint
SuSE Linux
Red Hat/CentOS/Fedora
Debian
Slackware and Arch Linux
CHAPTER THREE
Basic Linux Commands
CHAPTER THREE
Installing Linux
What type of PC is needed?
CPU
RAM
Video Card
How to Install a Linux Distribution
Steps to take to install Linux with USB Stick or CD-ROM
Installing Linux using Virtual Box VMWARE
CHAPTER FOUR
How to copy an ISO file to CD or DVD
About Sort Command
CHAPTER FIVE
How to sort files
Open and Edit Files
CHAPTER SIX
How to Create a Collection of Files
How to Create a File Using the Touch Command
How to Create A File Using The Redirection Operator
How to Create a File Using the Cat Command
How to Create a File Using the Echo Command
How to Create a File Using Heredoc
How to Create a Large File
Creating a large file with the dd command
How to use the fallocate command
How to Compress Files to Save Space
CHAPTER SEVEN
Alternatives to Microsoft Office
Alternatives to Internet Explorer
Alternatives to Photoshop
CHAPTER EIGHT
Alternatives to Adobe Acrobat Reader
What is Shell Scripting?
Types/Kinds of Shell
How to Write a Shell Script
Shell Variables
CHAPTER NINE
Why you should use Linux
How to Partition disk
Features of Ubuntu 20.04 LTS
CHAPTER TEN
Linux security Tips
Linux Network Administration
How to know a file’s type
CHAPTER ELEVEN
How to know the file type of several files
How to view the mine file type
How to delete, copy, move, and rename files
How to use the Linux copy command to copy files
Moving and Renaming Files in Linux
Deleting files in Linux
CHAPTER TWELVE
Environmental variables
Shell Variables and Environment Variables
List of commands and set environment variables in Linux
Common Environment Variables
Files and Directory Permissions
CHAPTER THIRTEEN
Adding a User Group
What does User Group in Linux mean?
Adding User to Group
Adding a User to Several Groups Simultaneously
Adding a User and Add to Group
CHAPTER FOURTEEN
How to Delete a Created Group
Listing Groups in Linux
Archives and Compressed File Commands
Archiving files on Linux using tar
Extracting files using tar on Linux
How to Compress Files Using gzip on Linux
CONCLUSION
INTRODUCTION
Linux is an open-source and free Operating System that depends on the
UNIX programming language. The beauty of the Linux system it is free and
easy to use. Furthermore, in comparison with other Operating Systems, Linux
has a very large user base.
The OS was built on the Intel x86 model and it allows users to customize it to
any form, based on what they like. Additionally, the Linux-based system is
capable of supporting multiple directories and libraries.
Before using the Linux Operating System, you need to have basic knowledge
about reading, writing, and editing shell script. In recent times, the Linux OS
was not known by an average PC user, but it has grown massively to be used
in Android, smart watches, video games, washing machines, and so much
more technologies.
For the records, Linux users have grown since March 14, 194, when its first
version (Linux Kernel 1.0) was established. A large number of Linux
distributions allow users to easily operate the Operating System without
stress. While a few Linux distributions are sold to the public, others can be
obtained for free.
As a newbie in the world of Linux, you are urged to continue reading to learn
more about the OS and possibly integrate it into your PC.
CHAPTER ONE
Meaning of Linux
Definition of UNIX
UNIX is a multitasking, multiuser, time-sharing, and portable OS initially
created in 1969 by a gathering of people at AT&T. UNIX was first
customized in low-level computing idea yet was reinvented in C in 1973.
UNIX has been ported to more machine families than some other OS.
Accordingly, it has come to be related to the idea of open systems. Unix
Operating Systems are broadly utilized in PCs, workers, and cell phones. The
UNIX climate was additionally a fundamental component in the advancement
of networking and the internet.
UNIX was created based on the way of thinking that the system power comes
from the connections among programs, instead of on the actual projects.
UNIX programs are composed to do a particular thing great, and projects are
composed with the goal that they cooperate. AS a result, UNIX engineers
uphold effortlessness, movability, and clearness in the plan.
Benefits of Linux
Linux is an OS similar to Mac OS and Window that also has several
distributions and variations due to its modular design. The Operating System
can schedule apps, manage basic devices, and control file system services.
As a matter of fact, Linux has several benefits as compared with other
operating systems, and no wonder why it is mostly utilized in nearly all fields
in the current world, including supercomputers, home appliances,
smartphones, cars, and others.
1. Open Source
One of the essential advantages of Linux is that it is an Open Source
Operating System. For instance, its source code is easily available for
everyone. Anyone fit for coding can contribute, change, overhaul and circle
the code to anyone and under any circumstance.
2. Security
Linux is more secure interestingly unlike other OS like Windows.
Furthermore, Linux isn’t absolutely secure as there are some and it is less
vulnerable than others. Each program in Linux whether an application needs
authorization from the administrator (NB: The authorization usually comes
in form of a password).
4. Customization
This is one characteristic that offers a massive benefit over other OS. In
Linux, you are free to customize any feature, include and remove any feature
depending on your needs as long as it is an open source OS.
Asides from this, several beautiful icon themes and wallpaper can be added to
provide a stunning design to your system.
5. Software Updates
You will experience a great number of software updated when using Linux.
The software updates are very fast than other updates in some OS. Finally,
updates carried out in Linux can be easily achieved without encountering any
critical issue.
6. Several Distributions
There are numerous distributions made available and they can also be
referred to as Linux distros. It gives several options to users. Users can pick
any bistros depending on their preferences. A few bistros of Linux are
Ubuntu, Debian, Linus Mint, Fedora, Arch Linux, and so much more.
As a newbie, you can utilize Linux Mint or Ubuntu. Meanwhile, if you have
some years of experience as a programmer, you can utilize Fedora or Debian.
7. No payment to be made
Linux is free to use on the internet (NB: You only need to download and
begin using it). With Linux, you are not mandated to purchase the license
because a great deal of the software has GNU General Public License.
In fact, the free-to-use advantage was regarded as one of the major benefits of
Linux over Windows and other OS. In the case of Windows and other OS,
you will have to spend a huge amount of money to obtain the license.
9. Privacy
Linux makes sure the privacy of user’s information because it won’t request
or collect personal information from the user when it’s software or
distribution is in use.
10. Stability
Linux provides enough stability, and there is no need for it to reboot after a
short time. Going further, the Linux system hardly ever freezes or becomes
slow. Unlike in Windows, where you need to reboot your system once you
install or delete an app, the Linux system does not have this issue.
Developers of Linux have also made it clear that the system can work without
any interference.
11. Performance
Linux gives a high and stable performance on several workstations and
networks. Also, it permits a high number of users to work at the same time
and it handles them professionally
14. Compatibility
Linux performs all available file formats, and it also permits a huge number
of file formats.
17. Multitasking
As we have mentioned earlier, Linux is a multitasking OS because it can
carry out several operations at the same time without any reduction in speed
like downloading a huge file (NB: This is a very important benefit because
other low-end systems and PCs might not be able to multitask effectively,
and even if they do, the download speed will be drastically reduced).
3. Software Repositories
A software repository is another factor you need to consider when choosing a
Linux distribution. In this case, you should be bothered about how much and
the kind of software seen in the repositories. In a case whereby a distribution
is without an application you require, it may be a worry for you. For instance,
Fedora and Ubuntu have high software repositories and large third-party
support. If you want to use your desktop for everyday operation and
multimedia, you should consider getting Ubuntu.
A few Linux distributions such as Debian do not ship alongside non-free
software and places it in a different repository and this is something you need
to take into consideration.
4. Hardware Resources
The main reason Linux has continued to sell is that it can cut down and
utilize little resources that are made available. In fact, Linux can also utilize
outdated computers and make them functional once more with little resource-
intensive systems.
There are several amazing distributions that seek to be as light as possible,
including Linux.
5. Desktop Environments
Since your eyes will mostly be focused on your desktop environment
consistently, it means you need to choose a Linux distribution that is actually
worth it. Also, you need to choose a Linux distribution with a comfortable
and good desktop environment that will not give you any issue while using it.
Perhaps, if you have not utilized Linux in the past, you should get a Linux
distribution with an attractive desktop environment such as GNOME. Also,
other desktop options can be found in the same Linux distribution. For
example, Ubuntu has something referred to as flavors that also have different
desktop environments.
Meanwhile, other advanced Linux distributions such as Gentoo and Arch
Linux do not have a default desktop environment and they do not ship
alongside a desktop environment. Instead, you are expected to install and set
it up by yourself. From a positive angle, you are free to select from any
desktop environment as you wish.
To emphasize desktop environments, they are important because they dictate
with tools that are present when you install them.
6. Update Cycles
It would not be a welcome development if you have a desktop computer that
is unwilling to update to new applications with amazing features due to one
reason or the other. This is the reason you need to search for how frequently
your choice of Linux distribution releases a new version and the software it is
allowed to update in its repositories.
This point is the tricky and confusing aspect because there is no
straightforward and particular Linux distribution you can choose that can
update software for you. On the other hand, running or using the latest and
new software always can lead to things breaking. For example, Linux
distributions such as Arch Linux is known to always lead to breaking when
its software is updated.
Other Linux distributions such as Gentoo, OpenSUSE Tumbleweed, and
SolusOS do not have a particular version (NB: Distributions without
updated software will always update once their respective software is being
released). It also means that you will never find a hard obstruction to
obtaining new software.
A few distributions that stay in the center ground between old and bleeding
edge are Linux Mint, Debian, ElementaryOS, Ubuntu, SolusOS, and
OpenSUSE.
7. Community
It is important not to forget a distribution community. In this instance, the
community includes people you will ask for solutions from when something
does not go as planned. (NB: Don’t be deceived into believing that
everything will go smoothly because you will surely experience one issue or
the other as you journey along).
For reference purposes, the Ubuntu community is large and it is saddled with
the responsibility of helping Linux beginners. Ubuntu community cannot be
compared with the Arch Linux community because the latter expects that you
to have achieved some level of professional skills.
The Linux community will also be called when it is time to pack software
away from the default distribution repositories. Once more, Ubuntu’s large
number of community members is a huge asset and whenever a person
certifies or supports Linux, they will package the software for Ubuntu. More
communities are identified for packing new software and Arch Linux’s AUR
repository is packed with software in which the community arranges and
maintains for Arch Linux users.
SuSE Linux
As you have with Ubuntu and Linux Mint, the SuSE Linux is also suitable for
beginners and advanced users. Formally, it was a free German Linux
distribution, which, after some period, was bought by Novell, and who
further went ahead to sell it to VMWare. SuSE Linux is an amazing all-
rounder Linux which is prepared for the Enterprise.
Red Hat/CentOS/Fedora
The Red Hat/CentOS/Fedora was formally a common Linux installer, but it
has slowly faded away in terms of popularity. The good thing about this
Linux installer is that it is easy to use, although it has a little frustrating twist,
it is still a software package that is guilty of dependency issues, added with
the YUM system.
The software is not a free Enterprise version, and it has full phone-based
support supported by tough experiments. On the other hand, CentOS is
regarded as the free version which is gotten from RHEL but it cannot be
compared to the former.
Lastly, Fedora is regarded as the bleeding-edge fork of Red Hat which
includes all its recent whistles and bells and it is capable of suffering from
low stability than the other enterprise list.
Debian
Perfect for intermediate and advanced users. It is well built for Linux
distribution and it also includes a joint effort with an apt-get system to correct
the issue of the RPM software packaging in SuSe, Mandriva, and Redhat.
Popular known for having an edge over other Linux distributions, it is
regarded as the solid distribution for modern users because it is easy to
distribute like Linux Mint and Ubuntu.
Slackware and Arch Linux
It is good for advanced and server users. Slackware was identified as the first
and original Linux distribution. It is also focused on geeks who prefer to
change their settings. A drawback regarding Slackware is that it is difficult to
install and use. In fact, Slackware uses .tar.gz packages and not the common
.deb or .rpm systems.
If you are an advanced user but you do not like to use the Slackware
distribution, you may opt instead for Arch because it offers nearly the same
level of customization as you have with Slackware.
CHAPTER THREE
Basic Linux Commands
Check below for a list of the basic Linux commands:
2. Ls: Utilize the “is” command to be sure what files are present in
the directory (NB: You can view the entire hidden files by
utilizing the command identified as “is-a”.
CPU
Linux was initially made available on the Intel 386 around the early ’90s, but
it is not a perfect representation or meaning that the Linux will perform better
on a PC other than a Macintosh PC. In the modern world, Linux desktop is
common on AMD, Intel, and PPC processors, hence, a majority of the used
software is made on the platforms.
If you own a different platform like Atari, Amiga, ARM-based processor, and
Sparc, Linux will be surely different because most software titles may not be
present for a particular platform.
RAM
RAM or Memory is another crucial requirement when planning to install a
Linux distribution. Without a doubt, a majority of the used Linux
distributions at this time need at least 1GB to use.
Meanwhile, if you are planning to utilize Linux for non-graphical reasons,
like firewall, or web page hosting, you are free to run a basic installation of
Linux. A few of the basic Linux installations will usually run on 8MB. On
the other hand, if you want to have a mainstay about using Linux and you
want the best performance, then you should consider using a higher RAM.
The point is that the higher RAM you use, the better for your PC and Linux
because it will run without any issues. But if you decide to only the Linux at
home, you must get a minimum of 1GB RAM because that is the least
storage capacity that can withstand any operation.
With more tough and challenging operations and functions such as editing
artwork, audio, editing movies and so much more, you need to get at least
2GB RAM and even more. Additionally, server users who will like to hold or
host several websites must get at least 4GB or 8GB RAM, but small server
users will not mind using only about 1GB of RAM.
Video Card
The required video card or graphics adaptor needed for Linux is just a bog-
standard one. Also, it is preferable to get an SVGA adaptor in your computer
system that has sufficient RAM to support resolutions of a minimum of 1024
x 768.
Furthermore, Graphics Accelerator cards of numerous kinds are supported by
modern distribution and present for even quicker graphics. More so, if you
need a good graphics performance in Linux, the NVidia range is a good
choice, this is because they are supported under Linux.
In addition, ATI cards are also a common option, but their driver support for
Linux does not seem to be an excellent option as compared with NVidia. As a
potential user, if you are confused about the kind of card you need, it is best
to simply visit your device manager in Mac OS or Windows. Also, integrated
graphics chipsets like Cirrus Logic and intel I Series are not bad either.
There are numerous other options to follow if you choose to install Linux.
Installing Linux using Virtual Box VMWARE
Requirements to install Linux using Virtual Box VMWARE:
1. First of all, download the Virtual Box from the original Oracle
Virtual Box site.
2. Proceed to install Linux using Virtual Box: Once you have
downloaded the Virtual Box, you are now free to install Linux.
Simply utilize the .iso file you downloaded from the web and
begin the Virtual Box. (NB: At this stage, we have to assign or
give RAM to Virtual Operating System. Also, the least RAM
should be 2GB).
3. Go on to select an option below the one which reads “Create a
virtual disk”.
4. Select the kind of storage you will like on your hard disk before
proceeding to select the disk with the least size of 12GB.
5. Select the option which reads Create option and proceed to select
the START button to commence the Virtual Box and browse
through while navigating to the location of the .iso file.
6. At this point, Linux Operating System will begin, so choose to
Install.
7. Choose the drive for completing the Operating System
installation. Choose “Erase Disk and install Ubuntu” if you no
longer need the former Operating System. However, if you still
need the previous Operating System, simply click “Something
else: and select Install Now.
8. Choose Continue and select a valid username and password.
9. Wait for a while, probably around 15 minutes for the Linux
installation to come to an end.
10. After the installation process is completed, it is
always best that you restart or reboot your system (NB: If you
encounter any issue while waiting for the installation process
to complete, you are expected to close and reopen the Virtual
Box for the installation process to commence once more).
CHAPTER FOUR
How to copy an ISO file to CD or DVD
Copying an ISO image to a CD is not similar to dragging and dropping the
file from the download section and copying it once more to an empty USB
stick or DVD (NB: Hence, you will have to burn the disk image on the
media before doing any other thing).
There are a plethora of methods to place an ISO image on a USB stick, and it
is a very easy step to take. Windows users can easily achieve this feat by
operating a free tool identified as Rufus.
Check below for the steps needed to copy an ISO file to CD or DVD:
1. Select your USB stick (NB: This option can be found from the
drop-down menu referred to as “Device”).
2. Look towards the right side of your screen and you will find a
CD icon alongside a small box below it. Ensure you select it a
wait for a dialog box to be displayed. Once it has successfully
been displayed, take the time to find the ISO file you earlier
downloaded and launch it.
3. Select Start.
4. The next screen will prompt you to verify if it is Ok to download
the SYSLINUX software. You are expected to select the Yes
option.
5. After completing the above step, you will find a dialogue box
concerning an ISO Hybrid image. Choose OK.
6. Also, verify that you clicked your USB stick. (NB: Be sure you
did not select another one and be sure to know that any data
you stored on your USB will be removed).
7. Once all is done, proceed to restart your PC.
About Sort Command
The sort command assists you in either order or sort lines in text files. Users
can sort the information in a text file and show the output on the screen (NB:
Otherwise, users can also redirect the output to a file).
Depending on your needs or requirement, the sort command gives you
numerous command-line options for sorting information in a text file.
Also, the below contains the outcome of the result when sort command is
carried out on the file without performing any other option (NB: What it does
is to simply sort lines in test file and shows the sorted result).
CHAPTER FIVE
The below sort command sort lines in test files on numeric value in the initial
word of line and shows sorted result.
2. Sort Human Readable Numbers with –h option
If you choose to sort on human-readable numbers like 1G, you should ensure
you utilize the h or –human numeric sort option.
You can form the below test file for the below instance:
The available or below sort command will sort human-readable numbers like
1K which equals 1 Thousand in the test file and shows the sorted result.
3. You can Sort Months of any Year with –M option
If you decide to sort in the order of months in a year, you can utilize the –M
or –month sort option.
Simply form the below test file for this instance:
The below sort command will sort lines in the test file based on the months
(NB: Be aware that lines in the file should have a minimum of 3 character
names of the month name at the beginning of the line. This means if we
provide ja meaning January, it means sort command will not look at it only
based on month name).
The below sort command will view if text file data is already sorted or yet to
be sorted. In case the data is not already sorted, it will display the first
occurrence with line numbers and values that are not arranged.
The below sort command sorts lines in a test file in reverse mode and show
the sorted result:
Also, the below sort command sorts lines in test file in reverse order and
deletes multiple lines from the sorted result:
6. Carefully sort the content, modify delimiter, and write the
result to a file with –k, -t, and –o options
If you will like to sort the word position or column in lines of text file, you
should use the –k option. Meanwhile, if each word in every line is made
different by delimiter asides from space, you can easily specify delimiter with
–t option.
Furthermore, you can get sorted results in any given output file with the –o
option and not showing output on standard output.
Form the below test file for this instance:
The below sort command sorts lines in the test file on the third word of every
line and shows the sorted output:
In this case, multiple options are utilized at the same time. In the case of the
text file, words in each line are parted away by delimiter I.
Open and Edit Files
Linux file system permits you to run several operations on file such as edit,
create, multiple Linux editors such as nano, Gvim, Vim, Emacs, Gedit, and
others.
cat command:
All the commands listed above let you enter the content of the file, enter the
content of the file on the terminal, and hit CTRL + D to save the file.
The overhead command will launch the Demo.txt file with a nano editor.
Meanwhile, if you choose to edit the file, simply move the cursor and enter
your preferred text, and hit CTRL + O to save the file.
The top command will ask you to input your admin password, so you are
expected to enter the password and hit ENTER.
CHAPTER SIX
In a case whereby the file file1.txt does not come up, then it will be created
(NB: But if it formally existed, only the timestamps will be changed). To
create several files at the same time, simply specify the name of the files but
ensure you space them like the below example:
The main part of the Here Document usually includes special characters,
commands, and variables.
1. Tar
The tar command is not precisely a compression command. It is majorly
utilized to get some files in intone file for easy conveyance to another system.
Tar also gives compression feature which is exceptionally a good choice.
After compression is included in a tar command alongside the z option, it
utilizes a gzip to complete the compressing process. Tar can also be used to
compress one file as a group, although it does not present a benefit over
utilizing gzip.
In order to use tar for this operation, simply specify the file like you would
have done as a group of files using the tar “cfz newtarfile filename”
command. If you like, users can utilize the tar.gz extension which is likely to
make the file character seeable, but a majority of Linux users will most likely
see tgz to mean the same thing (NB: Users will have both the compressed
and first file whenever the compression is done).
To retrieve several files and compress the result in a single command, simply
utilize the same basic syntax, but ensure you specify the files to be added as a
group and not the single file.
2. Zip
The zip command forms a compressed file and does not touch the original
file. Also, the syntax is easy but need to remember that your first file should
be the final argument on the command line.
3. Gzip
The gzip command is very easy to utilize. You simply have to enter gzip after
the name of the file you will like to compress. In contrast with the other
commands, gzip will encrypt the files in their right location (NB: This means
the original file will be replaced by the encrypted file).
Here is an example:
4. Bzip2
In similarity with gzip command, bzip2 will compress or reduce the file you
have selected, and not the original file.
Here is an example:
5. XZ
This is a new compression tool and you only need to give the file name to the
command. Once more, the original file will be compressed in the right
location. Check below for an example:
Coming to large files, you will see that xz will require more time to run than
other compression commands, but the compression outcome is brilliant.
CHAPTER SEVEN
Alternatives to Microsoft Office
1. Google Workspace
The leading Microsoft Office option for businesses is Google Workspace
which was previously known as G Suite. The joint effort of Google Docs,
Google Sheets, Google Forms, Gmail, and so much more to deliver quality to
users.
One amazing thing about Google Workspace is that it works amazingly well
on Linux, Max, Windows, and other PCs that run on the latest web browser.
Users can easily combine their effort and share any content without having to
download it. Asides from that particular feature, users can also add features
that can’t be found by using plugin integrations.
Meanwhile, the leading drawback to using Google Workspace is offline
usage. Although Google presents offline versions thanks to plugins on the
Google Chrome browser, they cannot be relied upon. Business users using
Google Workspace are mandated to pay the $6 for every month while non-
business users can carry out different functions while using a free Google
account.
3. WPS Office
WPS Office is software that allows Android, Windows, iOS, and Linux users
can use. Although it is free, but in order to remove the adverts, you will have
to pay $30 annually. WPS Office emanates from Kingsoft (NB: Kingsoft is a
Chinese developer committed to delivering quality).
Apps under WPS Office may include WPS Presentation, WPS Writers, and
WPS Spreadsheet. This suite has a customizable interface, which means you
can choose the menu style you prefer. Additionally, it further supports tabbed
document editing, similar to what you have with a web browser.
Finally, WPS Office has an integrated cloud with 1GB storage and it is also
lightweight and quick to use.
4. Dropbox
Dropbox is particularly known for file sharing and it also presents a
competitive app majorly concentrated on word processing. In addition,
Dropbox Paper is closely and firmly integrated into Dropbox (NB: Because
of this, it is relatively easy to share files).
Furthermore, Dropbox Paper permits several simultaneous coworkers and lets
you export files in the common pdf and docs file formats. With Dropbox, you
will have a simple user interface and you can easily get a free Dropbox
account (NB: For users who wants to open a free Dropbox account, they
must have at least 2 GB of storage while intending business users should
ensure they have a larger space and cash because they will be paying
$19.99 every month).
5. FreeOffice
The FreeOffice is another alternative to Microsoft Office, and it looks so
much like it. From the name, it is easy to depict that this suite option is free to
use. Excitingly, it works on Linux, Mac, and Windows PCs and it is
developed by SoftMaker.
Popular applications made available in FreeOffice include Presentations,
PlanMaker, and TextMaker. FreeOffice also allows users to select the modern
ribbon view or the classic Windows-style menu.
They include:
1. Brave Browser
This browser was formed to block every other thing asides from website
trackers and user-allowed advertisements. Brave Browser is packed with
numerous benefits including maximum security, now web trackers,
Chromium extension support, speed, and bug tracking.
Although it is a fantastic browser to use its only downside is that the opt-in
micro payment system that supports or permits content creators has an
uncertain way to send your payments to a likely receiver.
2. Google Chrome
Without a doubt, Google Chrome is the most used internet browser around
the world. Although the first version of Google Chrome was slow, bad, and
un-inspiring, over the years, its developers have sought to raise the bars, and
this includes making the browser top-notch at all fronts.
One good thing about Google Chrome is that it includes a large list of
important built-in features simple to use and it has a fast speed. The
drawback to using Google Chrome on your Linux PC is that the browser
includes a proprietary code and it uses heavy memory.
3. Mozilla Firefox
Mozilla Firefox is the web browser that initiated open-source web browsing.
Unlike other low-class web browsers, Firefox is committed to providing
adequate security to web browsers, and it also includes several extensions
which users can explore any day and any time they want.
Asides from the above benefits, Firefox also has an equal user experience
across several systems. As you have with Google Chrome, Firefox’s
disadvantage is that it uses heavy memory and it has an HTML5
compatibility problem.
4. Konqueror
This web browser is not a common one but it delivers exciting features which
include web browsing to users and intending users. The web browser is
managed and controlled by the international KDE free software community
and Linux users can easily get hold of it.
The advantages of using Konqueror are that:
It is fast and reliable
It is pre-installed on several Linux PCs
It has customizable URL shortcuts
It has a pop-up blocker and ad-blocker
It serves as a file manager and other functions
Meanwhile, the downside of using Konqueror includes:
5. Lynx
Lynx is a special browser and it is all based on text. More so, it is an ancient
web browser that is still in full use by users. The advantages of Lynx are
numerous and they are outlined below:
Alternatives to Photoshop
As we all know, Photoshop is a very common photo editing software, which
also serves different and multiple functions for users worldwide. However, if
you are not convinced about the features offered by Photoshop or if you
decide to have a glance at other photo editing options, then you can try your
luck with the amazing alternatives listed below:
1. Pixlr
This Photoshop alternative is an online free and closed source image editing
software that provides users with the choice of creating exciting and
manipulative photos while using several editing tools and numerous free
effects. Although Linux users won’t be able to access this photo editing
software through an application, it is still available to be used via browsers
for free.
2. Photopea
Photopea is another free improved photo editor for creating and customizing
raster graphics online. This photo editor runs in a browser and it also efficient
locally (NB: This simply means you are free to use the photo editor when
you are offline).
Furthermore, this photo editing software is made to look like Photoshop
because its numerous features still include working with masks, layers,
filters, key binding, vectors, smart objects and so much more. Also, Photopea
supports users that work with well-known graphics formats like the sketch,
XCF, XD, RAW, and PSD.
In Photopea, there are usually adverts that are displayed but if you are not
bothered about the displayed ads, then it may be the right option for you to
use.
3. GIMP
GIMP, an acronym for GNU Image Manipulation Program is an open-source
image editing program and a free one that was formed with highly refined
tools for photography, illustrations, and graphic designs. In fact, GIMP nearly
offers similar Photoshop features including filters, color correction, layers,
magic wand, artboards, and so much more.
Users can customize GIMP to set up their likely key bindings and also apply
a skin to allow GIMP similar to Photoshop and also copy its keyboard
shortcuts. Lastly, it is important to know that GIMP can be found in the
official package repository of your Linux distribution.
4. Krita
This is a cross-platform, open-source, and free painting app to offer cheap art
tools to allow everyone to create professional and beautiful digital paintings.
If you are a lover of creating illustrations, comics, and concept art, then Krita
is your number one stop and it also offers interesting features including
brushes, pen tool, layer masks, color palette, HDR support, brushes,
artboards, undo and redo, and so much more.
5. Darktable
Darktabe is a cross-platform, open-source, and free image editing app
designed by photographers for the same photographers to use as well. The
image editing app allows users to work on digital files including RAW and
negatives images.
Like you have with other photo editing software, Darktable also offers
mindblowing features like custom filters and so much more. The excellent
thing about Darktable I that it can perform different functions including
supporting numerous image formats, zero-latency, manage colors, GPU
accelerated image processing, and so much more.
The image editing app can be found in the official package repository of your
Linux distribution.
CHAPTER EIGHT
1. Foxit Reader
This reader app is a top-notch freemium PDF reader that has numerous users
due to its amazing features and performances. Foxit Reader also has a free
and paid version, which challenges the effort made by the developers of
Adobe Acrobat Reader.
One amazing feature offered by Foxit Reader is that it can annotate PDF
documents, which permits for more understanding of reading text and assists
you in summarizing texts. With Foxit Reader, users can rotate their screens,
check out several background themes, and perform a whole lot more
functions.
Additionally, Foxit Reader offers a navigation panel that includes multiple
sections of your PDF like comments, bookmarks, and so much more.
2. Evince
This is another important PDF reader in which Linux users can use and
enjoy. It is also an open-source and free document reader designed by FOSS
and it can be accessed not just by Linux users but also by Windows and Mac
users.
It is interesting to discover that Evince is the default document viewer for
GNOME-based desktop environments (NB: Although the list is endless, but
the noticeable ones include Debian, Ubuntu, and Fedora). A remarkable
and striking feature about Evince is that it can show 2 pages at the same time
and it also supports displaying files in slide shows and on the entire screens.
Furthermore, Evince also lets users switch the page view either to the left or
right-hand side. In this document reader, you will find an integrated search
system that highpoints a particular side and shows the page number where
you highlighted and you can add notes.
3. Okular
This is a cross-platform and lightweight document reader designed by
workers in KDE. It does not only support reading through PDF but also
additional file-formats including XPS, Epubs, ODF, and others. It is user-
friendly and easy to use as everything including the features is well arranged
for users.
Users can easily alter or modify the layout and remove or add a few elements.
The leading benefit of using Okular is that it offers numerous tools that have
special functions. For instance, you can utilize the text selection tool to copy
a few texts and apply other functions to them. This document reader includes
an annotation tool that includes highlighting, drawing polygons, adding
notes, and others.
4. Master PDF
As the name implies, Master PDF is a PDF reader that offers users numerous
exciting benefits, including being able to create, edit, join files, add
comments, offer signatures, and also encrypt PDF files. Additionally, Master
PDF includes several annotation tools whereby users can explore it to
highlight text, add shapes, add notes, and more into their PDF files.
Excitingly, Master PDF includes an editing window where users can edit
their annotations. As a matter of fact, the edits are different and they may
include modifying colors, adding statuses or types.
5. MuPDF
This is an open-source and free PDF reader which is popular for its
lightweight and fast response. The notable difference between MuPDF and
other document readers is the command line tools, which permit users to
create PDFs from text files, change the direction of the pages, and also
change the height and width of the screen.
All the listed document readers are alternatives to Adobe readers, and users
can explore and take advantage of them for their Linux systems and other
PCs depending on what they deem fit.
Types/Kinds of Shell
The two major types of shell in Linux include:
1. C Shell: The noticeable factor in this shell is% and its other
categories include
2. Bourne Shell: The noticeable factor in this shell is S and its sub
categories include:
1. Make a file with a vi editor (NB: A file can also be crated with
an optional or alternative editor). Proceed to give the script file
a name using extension .sh.
2. Begin the script with #! /bin/sh.
3. Write or pen down a few codes.
4. Ensure you save the script file using filename.sh.
5. To execute the script, enter bash filename.sh.
For basic information, # is an operator also known as shebang which guides
the script to the interpreter location (NB: This simply means if you utilize #
/bin/sh, the script will be sent to the bourne-shell).
The below is a little script:
Check below for the steps to create Shell Script Programs in Unix or Linux:
Add shell commands
Commenting is very vital in any program you want to run. When it comes to
Shell programming, the syntax to include or add a comment is made available
below:
Shell Variables
Variables keep data in numbers and characters format. In the same vein, Shell
variables are utilized to keep data (NB: One thing about Shell variables is
that they can only be utilized by the shell).
For instance, the below creates a shell variable and print it:
The following is a little script that can be utilized as a variable:
CHAPTER NINE
The reasons why people should use Linux are outlined below:
3. Free to use
Another reason why Linux should be used by everyone is that it is free to use
and users need not purchase anything before using it. Notwithstanding its free
usage, users can still access the entire basic software and as well as numerous
educational software.
4. Open Source
This is, unarguably, the most essential part of Linux because its source code
can be accessed in the Free and Open Source Software category. What’s
more, the developer community profits from the open-source because users
and members are free to view and change the source code, which cannot be
done with proprietary software.
The open-source feature will also help more countries develop their own
Linux.
5. Easy to use
Linux is an ideal OS that offers a user-friendly and graphical user interface.
With Linux, you can access all the functions present in Windows.
Also, the Graphical User Interface has been improved because you can carry
out more commands, even without having any idea of anything.
6. Customization
Users have remarkable flexibility in modifying the system depending on their
requirements. There are several options for desktop icons, panels, and
wallpapers. Also, there are several desktop environments to select from
including KDE, GNOME, and so much more.
7. Stability
The Linux system has high stability and it is not likely to crash easily. Also,
the Linux Operating System runs very quickly as it was when it is initially
installed. Unlike what you have in Windows, you don’t have to reboot a
Linux server after every patch or update. Because of this, Linux has a very
high number of servers running on the web.
How to Partition disk
Making and erasing partitions in Linux is standard practice since storage
devices, (for example, hard drives and USB drives) should be organized here
and there before they can be utilized. Much of the time, large storage devices
are separated into different parts referred to as partitions. Partitioning
additionally permits you to separate your hard drive into detached segments,
where each segment carries on as its own hard drive. Also, partitioning is
majorly helpful if you run a different OS.
There are bunches of powerful and exciting tools for making, eliminating,
and in any case, controlling disk partitions in Linux and they include:
With the present bigger disks and the requirement for greater adaptability in
working with them, utilizing parted to work with disk partitions is the right
choice to go with. More often than not, disk partition tables are made as a
component of the working OS installation procedure. Direct utilization of the
parted command is most helpful while adding a storage device to a current
Operating System.
The accompanying list clarifies the way toward partitioning a storage device
with the parted command:
1. List the partitions: Utilize partee - l to distinguish the storage
device you need to parcel. Commonly, the main hard disk
(/dev/sda or/dev/vda) will include the Operating System, so
search for another disk to track down the one you need
(examples include, /dev/sdb).
3. Set the partition table: Set the partition table sort to GPT, at
that point, type “Yes” to acknowledge it.
The mklabel and mktable commands are utilized for a similar reason (NB:
Which is creating a partition table on a storage device). Also, the allowed
partition tables are aix, amiga, bsd, dvh, gpt, macintosh, ms-dos, pc98, sun,
and circle. Recall mklabel will not create a partition, instead, it will create a
partition table.
4. Fractional scaling
The new release of Ubuntu 20.04 introduces fractional scaling. If you have
been seeing that icons that are usually at 100% looked little and the ones at
200% looked big, this is the time when you can utilize fractional scaling to
the core.
If you activate the fractional scaling option, you can easily set the scaling
option to 150, 125, 175, and 200 (NB: While using this option, always recall
that it won’t work for several monitor setups).
5. Disable dock
In this new release, you are now at liberty to disable the dock. Asides from
disabling the dock, there is a new app, known as Extensions, which allows
you to manage and gain control of extensions, and through this, you can
easily disable or deactivate the dock feature.
6. Faster boot and install process
Because of the new compression algorithms, users can now install and boot
their Ubuntu 20.04 by using lesser time.
In order to configure the firewall and confirm blocks, you can launch the
firewall by moving to System > Admin > Firewall from the type of panel at a
shell prompt:
4. Third-Party Software
Third-party ought to be installed below the directory / opt. The third-party
software reduces your attack surface by removing unnecessary programs that
commence automatically.
The below command will list the entire running services. If you can spot the
services you are not using, simply decide to uninstall the apps that related to
that particular service:
The command helps see what processes are taking up a majority of the
system resources, but you should install and use “htop” by entering the
below command:
8. BIOS Security
Type in your BIOS configuration and deactivate booting from USB,
CD/DVD, floppy, and external drives. Then activate the BIOS password and
settle on a strong password you can always remember.
Although the above could be confirmed by the file command as seen below:
CHAPTER ELEVEN
The above Linux copy file command is simply copying the Source to Dest.
Linux Copy File and Directory Options
Additionally, the copy command in Linux provides for the addition of an
option when carrying out the command. The Linux copy file command is
easy and powerful.
The top command will easily move sample_data.txt to the data directory. If
the data directory is not there, the Linux system will form one and move the
sample_daata.txt.
Furthermore, if the sample_data.txt is already present in the data, it will
simply be overwritten.
Here are some notable things to know about the above format:
You won’t find any space in and around the equals = symbol;
Whenever you give several values to the variable, you must
separate them by color :
The names of the variables are usually case-sensitive: This
means that the beginning of the values should have an upper
case.
So what are Environment variables: These types of variables are accessible
system-wide and are congenital by the entire spawned child shells and
processes.
Shell variables on the other hand apply to the present shell instance. This
means that each shell-like bash and zsh has its unique set of internal shell
variables.
In the above example, it is clear that there are a few parameters for every
shown file using the ls command. The initial one is the file type and if you
look closely at the example, you will find out that the – sign, which
represents a regular file.
Additionally, the character d represents that it is simply a directory.
Subsequently, you will find up to 9 characters that can assume different
values including read, write, execute, no permission, and so much more.
Going further, the 9 characters can be divided into 3 sets of characters each.
The first part of the 3 characters describes the file permissions for the file
owner, while the other 3 parts are meant for the group member, and the final
3 parts are for the rest of the members.
The chmod command works in two ways, one of which is to change the
permissions for the group members, owner, and the rest of the members.
1. Symbolic method
To fully comprehend the syntax for the symbolic method for describing the
chmod command, it is important to first of all, know the who, which, and
what (NB: This also means that the command needs to be specific to whom
we are ascribing the permissions to).
While the character g means group, the character u means user, and the
character a means all (NB: As a matter of fact, this particular list answers
the who question). To remove the permissions, you need to utilize the – sign.
In contrast, adding permissions requires you to utilize the + sign, and setting
permissions, utilize the = sign.
In the above example, the aim is to set the permissions while utilizing the
equal (=) sign. (NB: Also take note that doing so will, first of all, remove all
former permissions and give new permissions). In the same example, you
will also have to assign the three permissions to the owner, and only carry out
permission to other members and the group members.
Finally, another point to note is that the permissions are assigned in the right
order and not in a bad manner.
2. Numeric Method
The other method is referred to as the numeric method. In this case, you need
to describe the permissions as a three decimal number. Additionally, the
conversion rules are simply symbols, meaning you are mandated to have a
basic knowledge of binary numbers and how to convert them into decimal
values.
Some of the rules include:
From the above, it is clear that both the owner and the group members have
already been changed.
CHAPTER THIRTEEN
Alternatively, users can also utilize the usermod command to add a user to a
group:
The usermod command utilizes the –group and –append functions to attach
the user to a specific group (NB: If you fail to use the –append command,
the user will not be added to other groups).
To show the groups that a user is among, enter the following group
command:
The above command will instantly shut down and restart your system (NB:
This particular command is mostly used in work).
Alternatively, the above command will shut down your Linux system after 1
minute.
Halt #
The above command will instantly bring your Linux system to a stop,
needing you to manually power off your system.
Poweroff #
The listed command will instantly stop your Linux system and also turn off
the system.
-v: This means verbose. This command shows the files added
to the archive when carrying out the function.
-c: This means to create an archive: This command is used
anytime you want to create a new archive designed from the
files chosen.
-f: This stands for file. This command is used to specify the
filename of the archive you want to create.
The above options are very vital for archiving files on Linux. Additionally,
when running the tar command alongside the “-f” flag, a new archive will be
formed in your present working directory.
The above option simply describes that the size of the archive is larger than
the sum of the files inside it. To compress files when archiving, you will have
to provide more options to the tar command.
Extracting files using tar on Linux
After creating an archive file, you might have to extract the files situated in
your archive. In order to extract files using the tar command simply attach the
“-x” option and not the first “-c” option.
Be aware that extracting your files will not mean that the archive will be
removed from your present working directory.
Running the gzip command will form a tar.gz file in the present working
directory. Very crucially, the first tar file will be upgraded to a tar/gz so you
will not have the first archive.
From the above, the file size was reduced from 10 KB to 184 bytes, meaning
the file size was reduced by 98% and thereabout.
CONCLUSION
While Linux has been in existence for a very long time, it has been
overlooked by thousands of PC-based users for one reason or the other.
Meanwhile, over the past years, Linux operating system has come under
immense notice as it is currently competing with the likes of macOS and
Windows.
Installing a Linux operating system or distribution is not a challenging task
and it can be completed in a short period. The performances offered by Linux
systems are excellent and you need not worry about experiencing a slow and
frustrating line of operations.
Getting a Linux operating system is free and you do not have to break the
bank to begin enjoying its features. Although attempting to install a Linux OS
demands that you have one or two things in place like sufficient memory,
CPU and so much more, its requirements are not so demanding as the one
you will experience when installing either macOS or Windows on your PC.
Overall, we hope that this book has successfully answered all your questions
and inquiries about what Linux and UNIX are all about. If you are still unsure
about something regarding Linux, this guide is ever ready to refresh your
memory and bring you into the limelight about Linux, its features, and other
functions.