Updated: 2017-06-27 15:06 EDT

1 Readings, Assignments, Labs, Tests, and ToDo

1.1 Read (at least) these things (All The Words)

  1. Week 06 Notes HTML – this file – Read All The Words
  2. Search PATH – how the shell finds commands
  3. Quoting – hiding characters from the shell
  4. Unix/Linux File System – directories, inodes, hard links
  5. List of Commands You Should Know
  6. Video Tutorials on Lynda.com – tagged by week number

1.2 Assignments this week

Check the due date for each assignment and put a reminder in your agenda, calendar, and digital assistant. Just like in the Real World, not all due dates are on the same days or at the same times.

1.3 Lab work this week

1.4 Worksheets

Worksheets are preparation for your assignments. You can’t do the assignments without having done the worksheets first, and you can’t do the worksheets without having first read the Course Notes: 1. Read. 2. Worksheets. 3. Assignment.

Form a small study group to do the worksheets. Each person tries the example given, and you make sure you all get the same answers. Worksheets are not for hand-in; they are not worth marks; the assignments test your knowledge of the lectures and worksheets.

The worksheets are available in four formats: Open Office (ODT), PDF, HTML, and Text. Only the Open Office format allows you “fill in the blanks” in the worksheet. The PDF format looks good but doesn’t allow you to type into the blanks in the worksheet. The HTML format is crude but useful for quick for viewing online.

Do NOT open the Worksheet ODT files using any Microsoft products; they will mangle the format and mis-number the questions. Use the free Libre Office or Open Office programs to open these ODT documents. On campus, you can download Libre Office here.

Worksheets prepare you for the upcoming assignments.

1.5 Upcoming tests and exams

This course has two midterm tests and one final exam.

1.5.1 Second Midterm test – 3pm July 14 – 15%

Your Second Midterm test is 45 minutes long and contains approximately 45 multiple-choice questions similar to those found in the two preceding Practice Tests and Answers. Do both practice tests before the Second Midterm test!

  • Time: 15h00-15h45 (3pm to 3:45pm) Friday July 14th (Week 9)
  • Location: T327 (the usual lecture classroom)
  • General seating; sit anywhere.
  • 45 minutes for 45 questions
  • Do both the practice tests before the Midterm test!

Midterm tests take place at 3pm in your 50-minute lecture class, not in your lab period.

The Final Exam is three hours long and contains approximately 180 multiple-choice questions similar to those found in the three preceding Practice Tests and Answers. Do all three practice tests before the Final Exam!

All three practice tests will be posted under Practice Tests and Answers. The Final Exam is comprehensive of the whole course; you need to do all three practice tests for the Final Exam.

2 Notes from the Classroom

2.1 Commands Used

2.2 Copying from other students

Here is a note from an International Student who was charged with plagiarism (academic fraud) in a previous year:

After everything, I would just like to thank you for not giving us
any harsher consequences. I really appreciate it, it's probably the
best Christmas gift after this stressful weekend I could get. And
what might be weird for you, I'd like to thank you for that you
found this plagiarism out because I have a lesson in my mind I will
never forget. I'm still very embarrassed [...] but these are the
consequences I have to face right now. Thank you once again and I
wish you Merry Christmas and Happy New Year.

One other student involved in the above case failed the course. Review the class notes on Plagiarism if you copy the work of other students or if you let your work be copied by other students. I know who you are and we’re going to have a chat about your behaviour soon.

3 Marking Scheme for Assignment #06

Bonus (optional) Assignment #06 HTML may be done after you get your marks email and question sheet back for Midterm #1. You can use this bonus work to optionally improve your mark on the first midterm test. See the assignment for details.

4 Learning and using VIM via Web Browser

A user found a keyboard-driven web browser (Vimperator) that led him to using VIM, the editor it was based on:


“I become quickly fond of Vimperator – it complemented my current workflow with the mouse very well. I could use my other hand to close tabs with ‘d’ etc. Over time my surfing got really efficient and that made me curious – if Vimperator can make surfing the web this good, then perhaps that weird Vim editor isn’t that bad after all? So, I read about Vim and started using it. It took me literally hours before I was hooked with Vim. I was mind blown!

And it was after that moment I truly understood how powerful and efficient a keyboard driven workflow can be. The terminal is not just some niche thing nerds use to look cool."

Learn that editor!

5 HTTP attacks on Course Linux Server

In addition to the SSH attacks, the Course Linux Server receives attacks using bogus HTTP requests. These unsuccessful attacks below attempt to use a chain of parent directories to fetch a file out of the file system:

# zfgrep '../..' /var/log/apache2/error.log*
/var/log/apache2/error.log:[Wed Oct 19 20:49:33 2016] [error] [client] Invalid URI in request GET /../../../../../../../mnt/mtd/qt HTTP/1.0
/var/log/apache2/error.log.1:[Sat Oct 15 06:49:57 2016] [error] [client] Invalid URI in request GET /../../../../../../../mnt/mtd/qt HTTP/1.0
/var/log/apache2/error.log.14.gz:[Mon Jun 27 17:54:40 2016] [error] [client] Invalid URI in request GET /../../../../../../../mnt/mtd/3qS9 HTTP/1.1
/var/log/apache2/error.log.2.gz:[Fri Oct 07 09:34:11 2016] [error] [client] Invalid URI in request GET /../../../../../../../mnt/mtd/ahMk HTTP/1.1
/var/log/apache2/error.log.22.gz:[Mon May 02 12:21:45 2016] [error] [client] Invalid URI in request GET /../../../../../../../mnt/mtd/IJSj HTTP/1.1
/var/log/apache2/error.log.23.gz:[Tue Apr 26 17:09:59 2016] [error] [client] Invalid URI in request GET /../../../../../../../mnt/mtd/yqcP HTTP/1.1
/var/log/apache2/error.log.42.gz:[Sun Dec 13 13:50:57 2015] [error] [client] Invalid URI in request GET /../../ratings.html HTTP/1.1
/var/log/apache2/error.log.42.gz:[Sun Dec 13 13:51:01 2015] [error] [client] Invalid URI in request GET /../../index.html HTTP/1.1

6 Tutoring

Many students find that hiring a personal tutor helps them get through the first term. Financial assistance is available. See the Tutoring heading in the Course Introduction.

Take Notes in Class

Take Notes in Class

| Ian! D. Allen, BA, MMath  -  idallen@idallen.ca  -  Ottawa, Ontario, Canada
| Home Page: http://idallen.com/   Contact Improv: http://contactimprov.ca/
| College professor (Free/Libre GNU+Linux) at: http://teaching.idallen.com/
| Defend digital freedom:  http://eff.org/  and have fun:  http://fools.ca/

Plain Text - plain text version of this page in Pandoc Markdown format

Campaign for non-browser-specific HTML   Valid XHTML 1.0 Transitional   Valid CSS!   Creative Commons by nc sa 3.0   Hacker Ideals Emblem   Author Ian! D. Allen