|
View Weekly Course Schedule.
View Course Resources. | ||
|
View Project #1 requirements. View Project #2 requirements. View Project #3 requirements. View Project #4 requirements. View Project #5 requirements. View Project #6 requirements. |
View HW #1. View HW #2. View HW #3. View HW #4. View HW #5. View HW #6. View HW #7. |
| Time & Place: | Ref No. 92533: Monday & Wednesday, 5:30–6:45 PM, Dale Mabry Room DTEC–427 | ||||||||
|---|---|---|---|---|---|---|---|---|---|
| Instructor: |
Name: Wayne Pollock E-mail: Internet: Office & Phone: DTEC–404, 253–7213. DM Office Hours: Monday–Thursday, 3:55–5:25 & 8:15–8:30; On-line Office Hours: Wednesday–Friday, 12:00 PM (noon)–1:00 PM; or by appointment.
| ||||||||
| Text: | Hahn, Harley, Harley Hahn's Guide to Unix and Linux, ©2008 Harley Hahn, Pub. by McGraw-Hill. ISBN-13 # 978-0-07-313361-4. | ||||||||
| Description: | This course is designed to teach the Unix and Linux operating systems. Emphasis will be on using the command line utility commands, working with files and directories, using the shell and creating and reading simple shell scripts. Students will learn important Unix/Linux operating system concepts to prepare the student for follow-up administration, networking, and security courses. This hands-on course will be project oriented. Additional topics include email and using the X Window GUI. | ||||||||
| Objectives: | After completing this course students will be able to:
| ||||||||
| Prerequisite: | CGS 1000 or Permission of the Instructor. Students enrolled in a degree or college credit certificate program must complete all prerequisites. | ||||||||
| Facilities: | Assignments must be completed on
YborStudent.hccfl.edu (a Linux server), which can be
accessed from on or off campus using any ssh capable
terminal emulator such as PuTTY.
(Your user ID and password will be provided in
class, along with instructions on how to use this.)
From off-campus you can practice using any Unix/Linux system
available (or install Unix or Linux at home).
You will need your own floppy/flash disk, writing materials,
and three Scantron 882–E or 882–ES forms.
You can use HawkNet
(WebAdvisor) to obtain your final grade
for the course.
You can use
CampusCrusier
for email, college calendars, and course (and college related)
resources.
HCC DM Open Lab Computers are located in the computer science department open lab in DTEC–462. Lab hours are:
| ||||||||
| Grading: |
Grading scale:
A=90-100, B=80-89, C=70-79, D=65-69,
F=0-64 | ||||||||
| Policies: |
| ||||||||
| Projects: |
Projects will be assigned from the class web page
at various times.
You will have sufficient of time to complete the projects,
at least a week but usually two weeks.
Although there may be some in-class group exercises,
you must work individually on the projects,
typically outside of regular class hours.
Projects are graded on the following scale:
A = 95% (Excellent:
Good design with good comments, style, and extras) Minor extras worth +5 points, minor omissions or poor design worth -5. Projects are not graded when turned in. They are graded all at once, sometime after the project deadline has passed (usually the next weekend). Every effort will be make to grade projects within a week of the due date, or as soon thereafter as possible. Further details will be provided with your first project. (See also submitting assignments below.) | ||||||||
| Homework Assignments: |
Homework assignments (also known as take-home quizzes)
are assigned from the text at various times.
Some assignments may be based on on-line readings instead of the
text.
You may work together in small groups (two or three people) for the homework assignments, provided the names of all who worked together are listed. Each student must still submit their own copy.
Homework assignment questions are intended to focus your studying of
the readings and to stimulate class questions and discussion.
For this reason they are generally due before the class
where that material is covered.
It is not intended that students can answer all the
questions assigned, but you must show you have thought about the
questions and read the required material in order to earn an
| ||||||||
| Submitting Assignments: |
Homework assignments should be submitted by email to
.
Please use a subject such as Homework Assignment #1 Submissionso I can tell which emails are submitted work. Send only one assignment per email message. Email your homework assignments by copy-and-paste into your mail program. (Please do not send as attachments, except when noted in the assigment directions.) If possible use the textand not the HTMLmode of your email program.
Project submissions must be sent locally to
In the event a student submits more than once for the same assignment, I will ignore all but the last one received up to the deadline. Assignments submitted after the deadline will not count toward your grade except as allowed by the course late policy.
The HCC email server automatically accepts and
silently discards email with certain types of attachments.
If you must send email to my Internet (non-YborStudent) email
account please avoid using any attachments, but especially
To avoid having your submitted work rejected as If you have an email problem you may turn in a printout instead. Be sure your name is clearly written on the top of any pages turned in. Please staple multiple pages together (at the upper left). |
| Classes Begin: | Monday 8/24/09 (First class meeting: Monday 8/24/09) |
|---|---|
| Add-Drop Ends: | Friday 8/28/09 |
| Last Day to Withdraw: | Monday 11/2/09 |
| Classes End: | Monday 12/14/09 (Last regularly scheduled class: Monday 12/14/09) |
| Grades Available: | Thursday 12/17/09 (from FACTS.org or HawkNet) |
| HCC is closed on: |
Monday 9/7/09 (Labor Day), Friday 10/16/09 (All-college Day), Wednesday 11/11/09 (Veterans Day), Thursday–Saturday 11/26/09–11/28/09 (Thanksgiving Holiday) |
If, to participate in this course, you require an accommodation due to a physical disability or learning impairment, you must contact the Office of Services to Students with Disabilities, Dale Mabry campus: Student Services Building (DSTU) Room 204, voice phone: (813) 259–6035, TTD: (813) 253–7035, FAX: (813) 253–7336. Brandon campus: voice phone: (813) 253–7914.
HCC has a religious observance policy that accommodates the religious observance, practices, and beliefs of students. Should students need to miss class or postpone examinations and assignments due to religious observances, they must notify their instructor at least one week prior to a religious observance.
| Quotes: | Tell me and I'll listen. | — Lakota Indian saying | |
|---|---|---|---|
Learning is not a spectator sport! | — Chickering & Gamson |
| Dates Mon Wed |
Topics, Assigned Readings, and Assignment Due Dates |
|---|---|
| 8/24 |
Course introduction, Personal introduction, LAN use.
Assign User IDs for LAN and Unix systems,
discuss passwords.
Basic procedures: Telnet, SSH (PuTTY),
login/logout.
Open Lab procedures and hours, virus checking, Role of lab techs.
Overview of computer system hardware: CPU (SMP and multi-core), I/O, memory (RAM, ROM, cache), Storage (disks, files, and directories), clock, bus. The operating system ( OS, kernel, utilities, interfaces, device drivers). Text (TUI) and graphical (GUI) user interfaces. Readings: Chapter 1 |
| 8/26 |
History and overview of Unix.
Client – server computing.
Some differences between various
types of Unix and Linux (distributions, versions).
Features of Unix:
Utilities and pipelines,
multi-tasking (and time-slices), multi-user, powerful filesystems
(no drive letters), strong security.
Professional societies, certifications, and jobs.
Begin work on homework assignment #1. Readings: Chapters 2, 3 |
| 8/31 9/2 |
The shell and the terminal emulator
(vt100/ANSI, xterm, etc.), TERM,
prompt, starting up (login, MOTD, logout),
upper- and lower case, stty sane,
Security: passwd, Userids, Groupids, Superuser (root),
Password generators pwgen and agp,
xlock and vlock,
id, groups, whoami (and
who am i).
Correcting typing mistakes.
Typing commands (using arguments and options.)
A quick overview of some common commands to use:
command line options,
who, w, more (less), cal, date, dict,
set, finger, chfn, chsh, mkdir, ls (with
and options), uname, pwd, cd, echo, cat,
wc.
Also know the files /etc/passwd, /etc/group, and
the PATH environment setting.
Readings: Chapters 4, 7, 8, 10 Homework assignment #1 due 8/31 |
| 9/7 | Labor Day — HCC Closed |
|
9/9
9/14 9/16
|
Set finger data.
Transfer files with ftp, sftp, scp, winscp.
Converting file format: unix2dos.
Printing (lp, lpr).
The man, info commands (sections,
man page syntax, -f and -k options,
whatis and apropos).
Bash help, /usr/share/doc,
Web resources (www.tldp.org).
Email, using pine. biff.
Internet email addresses.
MTA, MUA, MDA,
MIME, POP, IMAP,
SMTP.
(Demo mailx -v.)
mailer-daemon errors.
Public key encryption and digital signatures
(PGP/GPG, Phil Zimmerman),
Privacy, legal, and ethical issues of email.
(Spam, mail-bombs, Internet email, return-receipts.)
Readings: Chapters 9, 13 (pages 286–287), On-line email tutorial and study guide Homework assignment #2 due 9/9 Project #1 due 9/9 (in-class) Homework assignment #3 due 9/16 |
| 9/21 |
Basic use of the vi editor: a, i, ESC, x, dd,
u (and ^r on vim), G, 1G, /, :w, :wq, :q!,
:set [no]autoindent, :set all).
Create .vimrc and other files.
(Additional vim commands: :help,
syntax off, set nohlsearch.)
Demo of pico (or nano) editor.
ispell and aspell check.
Readings: Chapter 22 (pages 559–589, 594–598, 603–606, 613–615, 619–623). |
| 9/23 |
Exam #1
Project #2 due 9/23 |
| 9/28 |
Working with files and directories: filenames, hidden
(or dot) files, directories, directory hierarchy, working directory, home directory, subdirectories, absolute (complete) and relative (partial) pathnames, rootdirectories, . and .. directory
entries.
Readings: Chapter 23 (pages 627–630), 24 (pages 659–666). |
|
9/30
10/5 10/7
|
FHS,
Special (device) files (/dev/null, /dev/tty,
/proc), standard directories.
Filters.
Commands to know:
ls (and -ladR options),
cp (and -iR options),
mv, rm, cd, and permissions required for these.
Also pwd, mkdir, rmdir, pr, nl, cat, tac, rev,
file, head, tail, diff, compression and archiving utilities
including gzip/gunzip, compress/uncompress, zip/unzip, 7za,
cabextract, and tar (with the
-ctxvzf options).
Other filter commands: sort, grep (and regular
expressions), wc, od, gpg.
General-purpose filters: awk, sed, perl.
Readings: Chapters 23 (pages 631–634, 637–641, 643–652), 24 (pages 666–697, 702–710), 25 (pages 717–729), 16–21 (pages 373–383, 388–392, 399–410, 421–427, 430, 436–445, 447–455, 459–462, 471, 480, 482–486, 488–491,497–500, 541–544, 551–556), The man pages for tar, gzip,
Filesystem Hierarchy Standard on-line resource
Project #3 due 10/5 |
|
10/12 10/14
10/19 10/21 |
Disk and Filesystem concepts:
Disk geometry, low and high level formatting, partitions
and slices, mounting, filesystem types
(ext3, FAT*, VFAT,
also NFS).
Inodes, directories.
Working with removable media (DOS floppies and flash
drives, CDs, etc.):
using mtools and auto-mounters.
Hard links and symbolic links.
Reporting disk space usage.
Searching for files.
(discard find error output by
adding: 2>/dev/null).
Commands to know:
ln, mount, df, du, quota, find, locate.
Readings: Chapters 23 (pages 642, 653–655), 24 (pages 691–697), 25 (pages 740–760), 15 (pages 360–361), a find command tutorial |
| 10/26 10/28 |
Changing file and directory permissions.
Commands to know:
chmod, chown, chgrp, touch, umask.
Readings: Chapter 25 (pages 715–717, 729–748), 21 (pages 544–550), An octal number chart on-line resources Homework assignment #4 due 10/26 |
| 11/2 | Exam #2 |
|
11/4
11/9
|
The shell and the environment:
bsh, csh, ksh, bash, and other shells.
Environment variables: HOME, TERM, PATH, PS1, TZ,
MANPATH, MAILCHECK,
LOGNAME (USER), PWD.
Parameter substitution (${var}),
env, echo, export, set, set -o, shopt.
Locales, locale command, LC_*, LANG.
Quoting, Command grouping.
Readings: Chapters 11, 12, 13 (pages 277–285, 287–296), 14, 19 (pages 466–471), 15 (pages 355 357) Project #4 due 11/4 |
| 11/11 | Veterans Day — HCC closed |
| 11/16 11/18 |
More on the environment:
I/O redirection (pipes, >, >>, 2>, <,
noclobber, /dev/tty, /dev/null),
login scripts, cmd-line processing: aliases,
Filename Generation and Completion (a.k.a. globbing,
pathname expansion, or wildcards),
tilde () expansion, brace ()
expansion, history and fc,
^r, auto-completion (<tab>).
Readings: Chapters 14, 15, 24 (pages 697–703), 13 (pages 302–311, 316–318). Homework assignment #5 due 11/18 |
|
11/23 11/25
11/30
|
Writing shell scripts:
concepts, basic scripts, running scripts in the current directory with
./cmd, sourcing scripts (. [see dot]
and source),
proper permissions for scripts.
Comments in scripts.
The she-bang line.
Command line arguments (positional parameters).
Command substitution (backquotes) and using with
set --.
The colon () command.
Arithmetic expansion, let, expr.
Using the exit status: exit, $?.
if, test.
Debugging shell scripts with set -x.
Readings: Pages 299–301, 336–337, on-line scripting tutorial and study guide, On-line doc for source (a.k.a. dot or
shell builtin) command.
Homework assignment #6 due 11/30 |
|
12/2
12/7
|
Processes: focus and foreground, background
(), fork and
exec, PID, PPID.
Threads.
ps (ATT and BSD options),
top, w, pgrep.
Special processes: init, xinetd, ...
Signals: kill, pkill, stty -a.
Shell job control: fg, bg, jobs, ^Z.
nohup.
Process priorities: nice, renice.
Exit status, orphans, and zombies.
Communications: mesg, write, wall, talk, ytalk,
irc, and xmessage.
Readings: Chapter 26 (pages 767–803, 806–814), nohup tutorial, man pages for communications commands Project #5 due 12/7 |
| 12/9 |
Job scheduling: at, atrm, atq, crontab, anacron,
allow and deny files.
Time Permitting: Understanding and using the X Window GUI (window managers, virtual desktops, cde, kde, gnome, XDM, startx, xterm,
-geometry, -display and
DISPLAY), remote X sessions via ssh.
Readings: Chapter 5, on-line at and crontab references Homework assignment #7 due 12/9 |
| 12/14 |
Final Exam
Project #6 due 12/14 |
Class name: CTS 1106 (Intro to Unix/Linux) Day: Monday and Wednesday Student Information Sheet Student Name: ________________________ Student ID: ___________________________ Phone (optional): ______________________ Email (optional): ______________________ Student Certification Statement I have read and understand all of the information contained in the syllabus, and agree to abide by the conditions of this course, especially the following areas (initial each area): _____ Test Policy _____ Honesty Policy _____ Attendance Policy _____ Grading Policy _____ Class Conduct _________________________________ Student Signature
| Resources | |||||
|---|---|---|---|---|---|
| www.chiark.greenend.org.uk/~sgtatham/putty | Download the PuTTY suite of SSH tools (SSH, scp, sFTP, and others) | sourceforge.net/projects/winscp/ | WinSCP GUI wrapper for the PuTTY scp and sFTP tools | ||
| Tampa-St. Pete Linux User's Group (SLUG) | Holds mothly meetings on campus, provides help and information and is open to all | Unix Poster | A PDF Unix milestones poster from the Open Group | ||
| Ken Thompson and Dennis Ritchie | The inventors of Unix in front of a PDP-11 (See also Ritchie's photo on his website and photo of Ken Thompson) | Photo of Linus Torvalds | The inventor of Linux | ||
| Unix History Timeline | A fairly complete timeline of all Unix versions | Unix Poster | A PDF Unix milestones poster from the Open Group | ||
| History of Unix | Many Unix history links and resources (including timeline above) | The real history of Unix | As told by its inventor, Dennis Ritchie | ||
| www.unix.org | OpenGroup's Unix site, include the Single Unix Specification | tldp.org | The Linux documentation project (How-To guides) | ||
| www.gnu.org | Most of the free Unix and Linux software is actually Gnu software | Free Software Foundation | The FSF Sponsors the Gnu project and protects open source software with the GPL license and by other means | ||
| sFTP reference | Guide for using the command line secure FTP program | distrowatch.com | Download free Unix and Linux distributions and Live CD images, and get distro rankings | ||
| Download Gnu Vim (gvim72.exe) | A Windows installer for Gnu Vim | VIM Quick Reference (PDF) | VIM documentation (and the most current version) can be found at www.vim.org | ||
| docs.sum.com | Solaris man pages and other documentation | on-line man pages | Manual for Unix and Linux | ||
| Email tutorial, study guide | A study / review guide on email | Public key encryption | A tutorial on encryption, digital signatures, Internet security, etc. | ||
| Filesystem Hierarchy Standard | A description of the standard directories on Linux
(for Unix systems, see also man filesystem) |
||||
| find command tutorial | A brief description of find with examples |
Octal Number Chart | Shows how to use octal numbers with chmod and
umask |
||
| Shell Scripting Overview | A brief introduction to some basic shell scripting | SSC's Bash shell reference card | Posted here by permission of SSC, Inc. | ||
| LDP: Bash scripting guide and reference | The best reference to all Bash shell scripting features, with examples | Bash shell scripting tutorials | As found by google.com search for Bash shell scripting tutorial | ||
nohup |
A brief nohup tutorial |
||||
| at command syntax | Some at samples of entering times and dates,
and other info |
crontab command syntax | Overview of crontab and file syntax |
||