CSC414 “Introduction to UNIX/ Linux” Lecture 5. Schedule 1. Introduction to Unix/ Linux 2. Kernel Structure and Device Drivers. 3. System and Storage.

Slides:



Advertisements
Similar presentations
Learning Unix/Linux Bioinformatics Orientation 2008 Eric Bishop.
Advertisements

1 Introduction to UNIX Ke Liu
NETW-240 Shells Last Update Copyright Kenneth M. Chipps Ph.D. 1.
ATS Programming Short Course I INTRODUCTORY CONCEPTS Tuesday, Jan. 27 th, 2009 Essential Unix Commands.
Introducing the Command Line CMSC 121 Introduction to UNIX Much of the material in these slides was taken from Dan Hood’s CMSC 121 Lecture Notes.
Lesson 22 – Introduction to Linux Systems Administration.
Linux+ Guide to Linux Certification, Second Edition
Linux+ Guide to Linux Certification, Second Edition
Linux Linux File System.
Guide To UNIX Using Linux Third Edition
T UTORIAL OF U NIX C OMMAND & SHELL SCRIPT S 5027 Professor: Dr. Shu-Ching Chen TA: Samira Pouyanfar Spring 2015.
Guide To UNIX Using Linux Third Edition
Lecture 01CS311 – Operating Systems 1 1 CS311 – Lecture 01 Outline Course introduction Setting up your system Logging onto the servers at OSU with ssh.
Introduction to Linux/UNIX. History UNIX beginnings in 1969 (Linus Torvalds is born!) AT & T Bell Laboratories (Ken Thompson & Dennis Richie) Working.
7/17/2009 rwjBROOKDALE COMMUNITY COLLEGE1 Unix Comp-145 C HAPTER 2.
Linux Commands LINUX COMMANDS.
CS 141 Labs are mandatory. Attendance will be taken in each lab. Make account on moodle. Projects will be submitted via moodle.
Using Macs and Unix Nancy Griffeth January 6, 2014 Funding for this workshop was provided by the program “Computational Modeling and Analysis of Complex.
Unix Primer. Unix Shell The shell is a command programming language that provides an interface to the UNIX operating system. The shell is a “regular”
Chapter 9 Part II Linux Command Line Access to Linux Authenticated login using a Linux account is required to access a Linux system. The Linux prompt will.
Introduction to Shell Script Programming
Guide To UNIX Using Linux Fourth Edition
Unix Basics Chapter 4.
Linux+ Guide to Linux Certification, Second Edition
Introduction to Unix – CS 21 Lecture 9. Lecture Overview Shell description Shell choices History Aliases Topic review.
Information Systems Security Linux Introduction Supplemental Notes.
CS 6560 Operating System Design Lecture 3:Tour of GNU/Linux.
System Administration Introduction to Unix Session 2 – Fri 02 Nov 2007 Reference:  chapter 1, The Unix Programming Environment, Kernighan & Pike, ISBN.
Session 2 Wharton Summer Tech Camp Basic Unix. Agenda Cover basic UNIX commands and useful functions.
INTRODUCTION TO LINUX Jacob Chan. GNU/Linux Consists of Linux kernel, GNU utilities, and open source and commercial applications Works like Unix –Multi-user.
Week 3 Exploring Linux Filesystems. Objectives  Understand and navigate the Linux directory structure using relative and absolute pathnames  Describe.
UNIX Commands. Why UNIX Commands Are Noninteractive Command may take input from the output of another command (filters). May be scheduled to run at specific.
1 Operating Systems Lecture 2 UNIX and Shell Scripts.
Unix/Linux cs3353. The Shell The shell is a program that acts as the interface between the user and the kernel. –The shell is fully programmable and will.
L&T Infotech1 UNIX – Getting Started - Aneesh Ramani.
Linux+ Guide to Linux Certification, Third Edition
Linux+ Guide to Linux Certification, Third Edition
Introduction to Programming Using C An Introduction to Operating Systems.
Lesson 3-Touring Utilities and System Features. Overview Employing fundamental utilities. Linux terminal sessions. Managing input and output. Using special.
CSE 374 Programming Concepts & Tools Hal Perkins Fall 2015 Lecture 2a – A Unix Command Sampler (Courtesy of David Notkin, CSE 303)
Linux Commands C151 Multi-User Operating Systems.
2 Manual & Filestore Mauro Jaskelioff. Introduction Using the manual The UNIX filestore File permissions.
Lecture 02 File and File system. Topics Describe the layout of a Linux file system Display and set paths Describe the most important files, including.
Linux A practical introduction. 1)Background and Getting Started Linux is an operating system with multiple providers Red Hat/CentOS (our version) Ubuntu.
A Brief Overview of Unix Brandon Bohrer. Topics What is Unix? – Quick introduction Documentation – Where to get it, how to use it Text Editors – Know.
1 CS3695 – Network Vulnerability Assessment & Risk Mitigation – Introduction to Unix & Linux.
Lecture 1: Introduction, Basic UNIX Advanced Programming Techniques.
Linux Tutorial Lesson Two *Getting Help in Linux *Data movement and manipulation *Relative and Absolute path *Processes Note: see chapter 1,2,3 from Linux.
Learning Unix/Linux Based on slides from: Eric Bishop.
INTRODUCTION TO SHELL SCRIPTING By Byamukama Frank
Tutorial of Unix Command & shell scriptS 5027
Quality Thought Technologies
Prepared by: Eng. Maryam Adel Abdel-Hady
System Programming and administration CS 308
Some Linux Commands.
C151 Multi-User Operating Systems
The Linux Operating System
CSE 374 Programming Concepts & Tools
INTRODUCTION TO UNIX: The Shell Command Interface
Tutorial of Unix Command & shell scriptS 5027
Basic UNIX OLC Training.
Introduction to UNIX.
Tutorial of Unix Command & shell scriptS 5027
Tutorial of Unix Command & shell scriptS 5027
Introduction to Linux/UNIX
Linux Shell Script Programming
Linux Commands LINUX COMMANDS.
January 26th, 2004 Class Meeting 2
Presentation transcript:

CSC414 “Introduction to UNIX/ Linux” Lecture 5

Schedule 1. Introduction to Unix/ Linux 2. Kernel Structure and Device Drivers. 3. System and Storage Structure. 4. Processes and Inter- Process Communication. 5. Shell Programming. 6. User Management and Disk Quota. 7. System Management. 8. Network Management. 9. Security. 10. Advanced System Administration. 2015Qassim University, College of Computer, 9th level 2

Contents: Definitions. Shell types. Shell Programming. Uses of Unix Commands File Management and Viewing Commands. 2015Qassim University, College of Computer, 9th level 3

UNIX Commands  A command is a program which interacts with the kernel to provide the environment and perform the functions called for by the user.  A command can be: a built-in shell command; an executable shell file, known as a shell script; or a source compiled, object code file.  The shell is a command line interpreter. The user interacts with the kernel through the shell. You can write ASCII (text) scripts to be acted upon by a shell.

UNIX Shell  The shell sits between you and the operating system, acting as a command interpreter.  It reads your terminal input and translates the commands into actions taken by the system. The shell is analogous to command.com in DOS.  When you log into the system you are given a default shell.  When the shell starts up it reads its startup files and may set environment variables, command search paths, and command aliases, and executes any commands specified in these files.

UNIX Shell The original shell was the Bourne shell, sh. Every Unix platform will either have the Bourne shell, or a Bourne compatible shell available. The default prompt for the Bourne shell is $ (or #, for the root user). Another popular shell is C Shell. The default prompt for the C shell is %.

UNIX Shell bash or Bourne Again SHell: On Linux, bash is the standard shell for common users. This shell is a so- called superset of the Bourne shell, a set of add-ons and plug-ins. This means that the Bourne Again SHell is compatible with the Bourne shell: commands that work in sh, also work in bash. However, the reverse is not always the case. All examples and exercises in this book use bash.

UNIX Shell csh or C Shell: The syntax of this shell resembles that of the C programming language. Sometimes asked for by programmers. tcsh or Turbo C Shell: a superset of the common C Shell, enhancing user-friendliness and speed. ksh or the Korn shell: sometimes appreciated by people with a UNIX background. A superset of the Bourne shell; with standard configuration a nightmare for beginning users.

Shell Programming You can write shell programs by creating scripts containing a series of shell commands. The first line of the script should start with #! which indicates to the kernel that the script is directly executable. You immediately follow this with the name of the shell, or program (spaces are allowed), to execute, using the full path name. So to set up a Bourne shell script the first line would be: #! /bin/sh

Shell Programming The first line is followed by commands Within the scripts # indicates a comment from that point until the end of the line, with #! being a special case if found as the first characters of the file. #!/bin/bash cd /tmp mkdir t You also need to specify that the script is executable by setting the proper bits on the file with chmod, e.g.: $ chmod +x shell_script

Shell Programming Three main types of variables are present in Linux/ Unix: Local Variables. Environment Variables Shell Variables. To know the value of environmental variables use the command printenv or env. To set or modify environmental variables use the command export. export PATH=$PATH:/usr/ local /bin export EDITOR=/usr/bin/vim

LINUX COMMANDS File Management and Viewing Filesystem Mangement Help, Job and Process Management Network Management System Management User Management Printing and Programming Document Preparation Miscellaneous

Command Structure Command Multiple commands separated by ; can be executed one after the other

Help Facilities for Commands  To understand the working of the command and possible options use (man command)  Using the GNU Info System (info, info command)  Listing a Description of a Program (whatis command)  Many tools have a long−style option, `−−help', that outputs usage information about the tool, including the options and arguments the tool takes. Ex: whoami --help

A Practical Guide to Linux® Commands, Editors, and Shell Programming, Third Edition, © 2013 Mark G. Sobell, Prentice Hall,

Pipes An important early development in Unix was the invention of "pipes," a way to pass the output of one tool to the input of another. eg. $ who | wc −l By combining these two tools, giving the wc command the output of who, you can build a new command to list the number of users currently on the system

Linux File Management and Viewing File and Directory management cd Change the current directory. With no arguments "cd" changes to the users home directory. (cd ) chmod Change the file permissions. Ex: chmod 751 myfile : change the file permissions to rwx for owner, rx for group and x for others Ex: chmod go=+r myfile : Add read permission for the group and others (character meanings u-user, g-group, o- other, + add permission,-remove,r-read,w-write,x-exe) Ex: chmod +s myfile - Setuid bit on the file which allows the program to run with user or group privileges of the file.

Linux File Management and Viewing There are three such special permissions within Linux. They are: setuid — used only for applications, this permission indicates that the application is to run as the owner of the file and not as the user executing the application. It is indicated by the character s in place of the x in the owner category. If the owner of the file does not have execute permissions, the S is capitalized to reflect this fact. setgid — used primarily for applications, this permission indicates that the application is to run as the group owning the file and not as the group of the user executing the application. The setgid permission is indicated by the character s in place of the x in the group category. If the group owner of the file or directory does not have execute permissions, the S is capitalized to reflect this fact. sticky bit — used primarily on directories, this bit dictates that a file created in the directory can be removed only by the user that created the file. It is indicated by the character t in place of the x in the everyone category. If the everyone category does not have execute permissions, the T is capitalized to reflect this fact.

Linux File Management and Viewing chown Change owner. Ex: chown : Change ownership of a file to owner1. chgrp Change group. Ex: chgrp : Change group of a file to group1. cp Copy a file from one location to another. Ex: cp file1 file2 : Copy file1 to file2 Ex: cp –R dir1 dir2 : Copy dir1 to dir2 md5sum Prints the MD5 Checksum

Linux File Management and Viewing ls List contents of a directory. Ex: ls, ls –l, ls –al, ls –ld, ls –R (-rwxrwxr-x 1 juan juan 0 Sep 26 12:25 foo ) |more will list page wise mkdir Make a directory. Ex: mkdir : Makes a directory Ex mkdir –p /www/chache/var/log will create all the directories starting from www. mv Move or rename a file or directory. Ex: mv

Linux File Management and Viewing find Find files (find -name -print) Ex: find /home –name readme -print (Search for readme starting at home and output full path.) “/home" = Search starting at the home directory and proceed through all its subdirectories "-name readme" = Search for a file named readme "-print" = Output the full path to that file locate File locating program that uses the slocate database. Ex: locate –u to create the database, locate to find file/directory

Linux File Management and Viewing pwd Print or list the present working directory with full path. rm Delete files (Remove files). (rm –rf ) rmdir Remove a directory. The directory must be empty. (rmdir ) touch Change file timestamps to the current time. Make the file if it doesn't exist. (touch ) whereis Locate the binary and man page files for a command. (whereis ) which Show full path of commands where given commands reside. (which )

Linux File Management and Viewing File viewing and editing emacs Full screen editor. pico Simple text editor. vi Editor with a command mode and text mode. Starts in command mode. gedit GUI Text Editor cat View a file Ex: cat filename

A Practical Guide to Linux® Commands, Editors, and Shell Programming, Third Edition, © 2013 Mark G. Sobell, Prentice Hall,

Linux File Management and Viewing File compression, backing up and restoring compress Compress data. uncompress Expand data. gzip - zip a file to a gz file. gunzip - unzip a gz file. tar Archives files and directories. Can store files and directories on tapes. Ex: tar -zcvf - Archive copy groups of files. tar –zxvf to uncompress zip – Compresses a file to a.zip file. unzip – Uncompresses a file with.zip extension.

Linux File Management and Viewing cmp Compare two files. cut Remove sections from each line of files. diff Show the differences between files. Ex: diff file1 file2 : Find differences between file1 & file2. echo Display a line of text. tail Look at the last 10 lines of a file. Ex: tail –f, Ex: tail -100 head Look at the first 10 lines of a file. (head )

Linux File Management and Viewing grep List all files with the specified expression. (grep pattern ) Ex: ls –l |grep sidbi : List all lines with a sidbi in them. Ex: grep " R " : Search for R with a space on each side sleep Delay for a specified amount of time. sort Sort a file alphabetically. uniq Remove duplicate lines from a sorted file. wc Count lines, words, characters in a file. (wc –c/w/l ).

A Practical Guide to Linux® Commands, Editors, and Shell Programming, Third Edition, © 2013 Mark G. Sobell, Prentice Hall,