Linux System Fundamentals
Lesson 1: Installation & Basics
Sadia Bashir
Contents
 Setting up Ubuntu 16.04 LTS Server/Desktop in a virtual machine
 What is Kernel?
 What is CLI?
 What is root (superuser)?
 Understanding and using “sudo”
 Understanding and using basic commands
 What is Linux Home Directory?
 Using auto-complete feature
 What are man pages?
Setting up Ubuntu 16.04 LTS Server/Desktop in a virtual
machine
 Installing Oracle VirtualBox
 Setting up Ubuntu Server 16.04 LTS Server/Desktop in a virtual
machine
 Installing putty
 Log into a Linux server and run simple updates and upgradation
What is Kernel?
 It is the core of a computer operating system that provides basic
services for all other parts of the operating system.
What is command-line?
 Command-line interface - CLI : tool which is used to type
text commands to perform specific tasks
 Shell : The application or user interface that accepts user’s
typed responses and displays the data on the screen
What is root (superuser)?
 A special user account used for system administration - has control over the entire
Linux system
 the user with a user identifier (UID) of zero
 the only user account with permission to modify the root directory of a Unix system
 It is capable of doing what normal users can’t, such as, changing ownership of files,
adding or removing files from system directories, installing new packages and many
others.
 “/” or “root” directory is different from “root” user.
Understanding and using “sudo” (super user do)
 sudo is a program for Unix-like computer operating systems that allow users to
run programs with the security privileges of another user, by default the
superuser.
 It prompts for personal password and confirms given request to execute a
command by checking a file, called sudoers, which the system administrator
configures.
 Usage:
- sudo su
- su -
- sudo apt-get update
- sudo apt-get upgrade
- sudo apt-get update &sudo apt-get upgrade
Switch to “root” user
Use “sudo” to install packages
Understanding and using “sudo” (contd…)
Understanding and using basic commands
 What is Linux Home directory?
 Check present working directory - pwd
 Switch directories - cd
 View directory contents - ls
 View file contents - cat
 List logged-in users:
- users
- who
- whoami
- last
 Check ubuntu server version - lsb_release
 Search for files – locate
 Clear the terminal – clear
 Show command history - history
 Using auto-complete feature
 What are man pages?
What is Linux Home Directory?
 Linux is a multi-user operating system, which means that more than
one users can access the OS at the same time. Each user is assigned a
directory where he/she can store their personal files. This directory is
known as a user's home directory.
 Each user has complete control over his home directory as well as all
its sub-directories. He/She can freely perform operations like:
-create and delete files/directories
-install programs, and more, inside their home directory
 a user’s home directory has the same name as their login name.
 home directories are found under the home directory (/home).
Checking Present Working Directory (pwd)
 Whenever a user opens up a command line shell in Linux, it starts at
the user’s home directory by default. This is user’s present working
directory, which changes when he switches to some other directory.
 pwd command is used to check the complete path of user’s present
working directory at any point of time.
Switch directories (cd)
 command to navigate through the Linux filesystem
 this command requires either a directory name or its complete path
depending upon where the directory is present
 Usage:
-cd /path/to/ or
-cd directory_name
-cd ..
-cd -
-cd ~
-cd /
Switch immediately to home directory regardless of what present working directory is.
Switch back and forth between directories (toggling)
Switch to parent directory (single dot represents current directory)
Switch to root directory
View directory contents – ls
 lists the contents of a directory.
 the output of the ls command is color coded.
 different colors represent different types of files, making it easy to visually
identify them.
 Color codes:
- Blue (Directories),
- White (Text files),
- Red (Archives),
- Cyan (Links),
- Green (Executables),
- Pink (Images),
- Yellow (Device Files)
View directory contents – ls (contd…)
 Usage
-ls directoryName/directoryPath
-Options:
 -l : detailed listing
 -a : show hidden files
 -t : sort list based on timestamp
 -S : sort list by file size
 -r : reverse the sorting
 -d : list directories only, not their contents
 -h : print human readable sizes (e.g., 1K 234M 2G)
 use combination : -lShrt
View File Contents - cat
 Prints out file’s contents on standard output
 Command:
 cat FILE1.txt
 cat FILE1.txt FILE2.txt
 cat FILE1.txt - FILE2.txt : Output FILE1's contents, take input from user, and
then output FILE2's contents
 Options:
 -E : display $ at end of each line
 -n : number all output lines
List logged-in users
 Commands to check the complete list of logged in users either
current or all those attempts which have been made to connect user’s
machine by any user and the status of connection
 Users : prints user names of currently logged in users
 Last –a : displays a list of all users logged in (and out) since the OS is installed
 Who : shows currently logged in users with time details
 Whoami : prints the user name associated with the current effective user ID
Show command history – (history)
 history command shows a
list of all the recently used
commands
 up/down arrows are used
to loop through them
 The Ctrl+R shortcut key
will start a search mode
where the first few
characters of a command
are typed to search
through recent history
Using auto-complete feature
 tab key is used to auto complete long names and paths easily
 In case of similar initial names, shell displays all the names that it can
use for auto completion
What are man pages?
 To learn more about
Linux commands, users
can head over to the
respective man (or
Manual) pages that
come preinstalled with
Linux.
 To open a man page,
man command
followed by the
command name is run.

Lesson 1 Linux System Fundamentals

  • 1.
    Linux System Fundamentals Lesson1: Installation & Basics Sadia Bashir
  • 2.
    Contents  Setting upUbuntu 16.04 LTS Server/Desktop in a virtual machine  What is Kernel?  What is CLI?  What is root (superuser)?  Understanding and using “sudo”  Understanding and using basic commands  What is Linux Home Directory?  Using auto-complete feature  What are man pages?
  • 3.
    Setting up Ubuntu16.04 LTS Server/Desktop in a virtual machine  Installing Oracle VirtualBox  Setting up Ubuntu Server 16.04 LTS Server/Desktop in a virtual machine  Installing putty  Log into a Linux server and run simple updates and upgradation
  • 4.
    What is Kernel? It is the core of a computer operating system that provides basic services for all other parts of the operating system. What is command-line?  Command-line interface - CLI : tool which is used to type text commands to perform specific tasks  Shell : The application or user interface that accepts user’s typed responses and displays the data on the screen
  • 5.
    What is root(superuser)?  A special user account used for system administration - has control over the entire Linux system  the user with a user identifier (UID) of zero  the only user account with permission to modify the root directory of a Unix system  It is capable of doing what normal users can’t, such as, changing ownership of files, adding or removing files from system directories, installing new packages and many others.  “/” or “root” directory is different from “root” user.
  • 6.
    Understanding and using“sudo” (super user do)  sudo is a program for Unix-like computer operating systems that allow users to run programs with the security privileges of another user, by default the superuser.  It prompts for personal password and confirms given request to execute a command by checking a file, called sudoers, which the system administrator configures.  Usage: - sudo su - su - - sudo apt-get update - sudo apt-get upgrade - sudo apt-get update &sudo apt-get upgrade Switch to “root” user Use “sudo” to install packages
  • 7.
    Understanding and using“sudo” (contd…)
  • 8.
    Understanding and usingbasic commands  What is Linux Home directory?  Check present working directory - pwd  Switch directories - cd  View directory contents - ls  View file contents - cat  List logged-in users: - users - who - whoami - last  Check ubuntu server version - lsb_release  Search for files – locate  Clear the terminal – clear  Show command history - history  Using auto-complete feature  What are man pages?
  • 9.
    What is LinuxHome Directory?  Linux is a multi-user operating system, which means that more than one users can access the OS at the same time. Each user is assigned a directory where he/she can store their personal files. This directory is known as a user's home directory.  Each user has complete control over his home directory as well as all its sub-directories. He/She can freely perform operations like: -create and delete files/directories -install programs, and more, inside their home directory  a user’s home directory has the same name as their login name.  home directories are found under the home directory (/home).
  • 10.
    Checking Present WorkingDirectory (pwd)  Whenever a user opens up a command line shell in Linux, it starts at the user’s home directory by default. This is user’s present working directory, which changes when he switches to some other directory.  pwd command is used to check the complete path of user’s present working directory at any point of time.
  • 11.
    Switch directories (cd) command to navigate through the Linux filesystem  this command requires either a directory name or its complete path depending upon where the directory is present  Usage: -cd /path/to/ or -cd directory_name -cd .. -cd - -cd ~ -cd / Switch immediately to home directory regardless of what present working directory is. Switch back and forth between directories (toggling) Switch to parent directory (single dot represents current directory) Switch to root directory
  • 12.
    View directory contents– ls  lists the contents of a directory.  the output of the ls command is color coded.  different colors represent different types of files, making it easy to visually identify them.  Color codes: - Blue (Directories), - White (Text files), - Red (Archives), - Cyan (Links), - Green (Executables), - Pink (Images), - Yellow (Device Files)
  • 13.
    View directory contents– ls (contd…)  Usage -ls directoryName/directoryPath -Options:  -l : detailed listing  -a : show hidden files  -t : sort list based on timestamp  -S : sort list by file size  -r : reverse the sorting  -d : list directories only, not their contents  -h : print human readable sizes (e.g., 1K 234M 2G)  use combination : -lShrt
  • 14.
    View File Contents- cat  Prints out file’s contents on standard output  Command:  cat FILE1.txt  cat FILE1.txt FILE2.txt  cat FILE1.txt - FILE2.txt : Output FILE1's contents, take input from user, and then output FILE2's contents  Options:  -E : display $ at end of each line  -n : number all output lines
  • 15.
    List logged-in users Commands to check the complete list of logged in users either current or all those attempts which have been made to connect user’s machine by any user and the status of connection  Users : prints user names of currently logged in users  Last –a : displays a list of all users logged in (and out) since the OS is installed  Who : shows currently logged in users with time details  Whoami : prints the user name associated with the current effective user ID
  • 16.
    Show command history– (history)  history command shows a list of all the recently used commands  up/down arrows are used to loop through them  The Ctrl+R shortcut key will start a search mode where the first few characters of a command are typed to search through recent history
  • 17.
    Using auto-complete feature tab key is used to auto complete long names and paths easily  In case of similar initial names, shell displays all the names that it can use for auto completion
  • 18.
    What are manpages?  To learn more about Linux commands, users can head over to the respective man (or Manual) pages that come preinstalled with Linux.  To open a man page, man command followed by the command name is run.