CIS290 – Linux/Unix Administration
Study Guide 1
Chapter 1 – Introduction to the Linux Operating System
Overview of Operating System Functions Software Licensing Agreements
- opensource
- closed source
- freeware
- shareware
- there are many other types
Activity 1-1: Reviewing Licensing Agreements (90 minutes) (p3)
Functions of an Operating System
- User Interface
- File Systems
- Device Drivers
- System services
History of UNIX, Linux, etc…
- UNIX
- MINIX
- Linux
- Modern distributions
- RedHat, Ubuntu, Debian, SUSE
- FreeBSD & OpenBSD
- Mac OS X
- Android
- Overview of SUSE
Linux Architecture
- Kernel
- Daemon
- Processes
- Random Access Memory
- demand paging
Linux Desktop Environments
KDE
GNOME
Linux File Structure
- In Linux/UNIX almost everything is a file
- /
- regular files, directories, and “device files”
Features of Linux
- Multiuser
- Multiasking
- Networking connectivity
- Security
Command Shells Available in Linux
- What is a shell
- Bourne (sh)
- C (csh)
- Korn (ksh)
- Bourne Again (bash)
Chapter 2 – Installing OpenSUSE
Checking Your System Configuration
- Requirements for Installing Linux
- Minimum
- 512M RAM
- 3 GB disk
- 800x600 display
The Unified Installation Method with Virtual Machines
- Terms
- Virtual machine
- Host system
- Guest system
- Benefits
- Allows running multiple Oss on one machine
- Opportunity to test applications before actual install
- Reduce costs by decreasing physical hardware
- An environment to experiment with untested programs safely
- Various virtualization software
- See list on table 2-1 on p18
- Overview of VMware Player
- Activity 2-1: Downloading VMware Player (15 minutes) (p19)
- Installing VMware Player on a Windows Host
- Activity 2-2: Installing VMware Player 3.1.5 on a Windows Host (10 minutes) (p20)
Installing OpenSUSE
- ISO images
- Activity 2-3: Creating a Virtual Machine (15 minutes) (p21)
- The book says to create two images – one for GNOME and one for KDE
- OpenSUSE Boot Options
- See table 2-2 for list of options
- Boot from Hard Disk, Installation, Repair…, etc.
The Preperation Phase
- Installation Mode
- Clock and Time Zone
- Desktop Selection
- Suggested Partitioning
- partitions
- Logical Volume Management (LVM)
- multiboot
- Create New User
The Installation Phase
- Partitioning
- Booting
- Software
- Locale Settings
- Time Zone
- User Settings
- Default Runlevel
- runlevel
- A list of OpenSUSE runlevels is on table2-3 on p28
- Performing the Installation
- The Configuration Phase
- Hostname and Domain Name
- hostname
- domain name
- Dynamic Host Configuration Protocol (DHCP)
- Network Configuration
- Test Internet Connection
- Online Update
Activity 2-4: Installing OpenSUSE as a Guest OS (30 minutes) (p30)
- The GNOME Desktop Environment
- Features of GNOME
- Web Browser
- File Manager
- Word Processing
- E-Mail
- Junk mail control
- Search folders
- Security
- Desktop integration
- Calendars
- Multiple e-mail accounts
Activity 2-5: Working with the GNOME Desktop Environment (20 minutes) (p34)
- The KDE Desktop Environment
- Features of KDE
- Desktop Folder
- Firefox
- My Computer
- Office
- Online Help
- openSUSE
- Quick Launch Area
- KDE Panel
- System Tray
Activity 2-6: Working with KDE (20 minutes) (p36)
Chapter 3 – Managing Files and Directories
- An Overview of the Linux Directory Structure
- Terms
- file system
- “Filesystem Hierarchy Standard” (FHS)
- Most Linux systems have files in the same place
- Shareable vs. Unsharable
- In terms of multiple computers, not multiple users
- Variable vs. Static files
- Variable = programs will write to them automatically
- Static = files that only a user (or a system update) will likely change
- See list of directories on table3-1 on p44
- /bin
- /boot
- /dev
- /etc
- /home
- /lib
- /media
- /mnt
- /opt
- /root
- /sbin
- /srv
- /tmp
- /usr
- /var
- Navigating the Linux Directory Structure
- Opening a terminal window in KDE or GNOME
- Terms
- Command line interface
- Command prompt
- Changing Directories
- Pathnames in Linux
- absolute paths
- relative paths
- The BASH Command Completion Feature
- command completion / TAB completion
- Activity 3-1: Using the pwd and cd Commands (10 minutes) (p47)
- Viewing Files and Directories
- ls
- ls ..
- options
- ls –l
- ls –a
- ls –la
- See list of (a few) options on table 3-2 on p49
- Examining the ls –l command
- File type
- File permissions
- Hard links
- Owner
- Group
- File size
- Modification time
- Filename
- Activity 3-2: Using the ls Command (10 minutes) (p50)
- Getting Help
- man
- man ls
- Man page sections
- See list on table 3-3 on p52
- Navigating Man pages
- See list on table 3-4 on p53 for keystrokes for “more”
- Activity 3-3: Working with Man pages (10 minutes) (p53)
- Using Wildcards
- *
- ?
- [abcdef]
- [a-f]
- [!a-f]
- ls fi*
- ls *2
- cd new*
- ls file?
- Activity 3-4: Using Wildcards (10 minutes) (p55)
- Managing Files and Directories
- Creating and Deleting Directories and Files
- Creating Directories
- Creating Files
- Deleting Directories and Files
- Activity 3-5: Creating and Deleting Directories and Files (15 minutes) (p58)
- Moving, Renaming, and Copying Files
- mv oldname newname
- mv oldname newdir/newname
- mv oldname newdir
- cp currname newname
- Activity 3-6: Renaming, Moving, and Copying Files (15 minutes) (p59)
- Creating Links
- Inodes
- inode table
- ls –i
- stat filename
- Hard Links
- Hard links are used less often now
- ln currfile newlocation
- ls -li
- Symbolic (Soft) Links
- ln –s urrfile newlocation
- ls –li
- Activity 3-7: Working with Links (20 minutes) (p62)
- Switching Users and Becoming Root
-
- su newuser
- exit (or logout)
- Activity 3-8: Switching Users (10 minutes) (p64)
Chapter 4 – Creating and Editing Files with Text Editors
- Text Editors in Linux
- Terms
- buffer
- shell script
- syntax highlighting
- text editor
- GUI Text Editors in Linux
- KWrite: A GUI Text Editor for KDE
- Activity 4-1: Exploring the KWrite Text Editor (20 minutes) (p73)
- Gedit: A GUI Text Editor for GNOME
- Activity 4-2: Exploring the Gedit Text Editor
- Getting Started with the Vim Editor
- command mode
- insert mode
- extended mode
- Starting Vim
- Command Mode
- A list of navigational keystrokes for vim is on table4-1 on p 77-78
- Activity 4-3: Using Vim in Command Mode (15 minutes) (p78)
- Insert Mode
- A list of insertion commands on table 4-2 on p79
- Modifying Text
- Activity 4-4: Using Vim in Inseer Mode (25 minutes) (p80)
- Deleting Text
- A list of deletion keystrokes are on table 4-4 on p81
- Cut, Yank, and Paste
- See commands on table 4-5 on p82
- Undo Commands
- Activity 4-5: Modifying Text in Vim (15 minutes) on p82
- Extended Mode
- Begin with :
- See list of some extended commands on table 4-7 on p84
- Activity 4-6: Using Vim in Extended Mode (15 minutes) (p85)
Chapter 5 – Creating Shell Scripts and Displaying File Contents
- An Overview of Linux File Permissions
- See figure 5-1 (p90) and table 5-1 (p91) for more information
- User, group, other
- Read, Write, Execute
- There are other special permissions, covered later
- Permission Commands
- chmod
- chmod 755 file
- chod u+x file
- See symbolic notation on table 5-2 on p92 and numeric notation 5-3
- Creating Shell Scripts
- programming language
- machine code
- compiled program
- interpreted program
- Note: this chapter uses BASH as the scripting lang
- Comments
- Activity 5-1: Creating a Shell Script (10 minutes) (p94)
- Variables
- environment variables
- e.g. $HOST, $USER, $PATH, $HOME
- shell variables
- are not kept around after the script exits
- direct assignment
- Activity 5-2: Using the Direct Assignment Method (10 minutes) (p96)
- The find command
- Options for the find command on table 5-5 on p97
- Variables (cont.)
- The Prompt Method
- aka prompting the user for input
- read
- Activity 5-3: Using the Prompt Method (10 minutes) (p98)
- Positional Parameters
- Activity 5-4: Using Positional Parameters (10 minutes) (p100)
- Exit Status Codes
- $?
- 0 = good, all others = warning, or error
- Mostly true, with some notable exceptions (e.g. diff)
- Conditions
- if / “then” / else /fi
- Using [ and ] for tests
- man [ or man test
- if [ -e /tmp/foo ]
- Activity 5-5: Using Condition Statements (10 minutes) (p102)
- Table of file attributes (for test) on table 5-7 on p103
- Activity 5-6: Creating a Menu Script (10 minutes) (p104)
- The case Statement
- case $VAR in
- val1) code ;;
- val2) code ;;
- esac
- Activity 5-7: Using case Statements in a Menu Script (10 minutes) (p106)
- Looping
- Five different statements used to create them
- while, until, for, do, done
- while Loop
- Activity 5-8: Creating a while Loop (10 minutes) (p108)
- until Loop
- e.g.
-
- Activity 5-9: Creating an until Loop in a Menu Script (20 minutes) (p111)
- for Loop
- e.g.
- for var in list of values
- do
- done
- Useful for doing something to multiple files
- for file in *.c
- do
- cp $file $file.bak
- done
- Activity 5-10: Creating a for Loop (10 minutes) (p112)
- Displaying the Contents of a Text File
- Cat
- tac
- Display the contents backwards
- head
- tail
- more
- less
See table 5-8 on p114 for keystrokes in more