% CST8207 Week 09 Notes -- umask, octal, chmod, compression with gzip, bzip, tar, diff, Midterm Test #2 % Ian! D. Allen -- -- [www.idallen.com] % Fall 2017 - September to December 2017 - Updated 2018-01-06 01:49 EST - [Course Home Page] - [Course Outline] - [All Weeks] - [Plain Text] Readings, Assignments, Labs, Tests, and ToDo ============================================ Read (at least) these things (All The Words) -------------------------------------------- 1. [Week 09 Notes HTML] -- this file -- **Read All The Words** 2. [Permissions masking with umask, chmod, 777 octal permissions] 3. [Useful programs: gzip - compression, tar - file archiving, diff - comparison] 4. Next week: [Unix/Linux system logging, log files, kernel messages] 5. Next week: [Unix/Linux Processes, Jobs, background, foreground, kill, killall] 6. Next week: [Delayed and Repeated Scheduled Execution - at, cron, and crontab] 7. [List of Commands You Should Know] 8. [Video Tutorials on Lynda.com] -- tagged by week number 9. [Linux and Sysadmin News in the World] - Create your [lynda.com] account and watch these sections of [Unix for Mac OS X Users] - these videos are for *all* Unix/Linux students, not just Mac OSX users - **4. Ownership and Permissions 34m 58s** - Who am I? 4m 3s - `whoami` - Unix groups 1m 52s - `groups` - File and directory ownership 6m 41s - `ls -la` - you do not have permission to use `chown`, `sudo`, or `su` on the CLS - File and directory permissions 4m 27s - `rwx` notation - Setting permissions using alpha notation 6m 49s - `chmod ugo+rwx` ... etc. - Setting permissions using octal notation 3m 49s - ``` chmod 644 ``[names...] ``` - **5. Commands and Programs** - The PATH variable 4m 13s - Disk information commands 6m 8s - df, du, - **7. Configuring Your Working Environment 41m 28s** - Setting the PATH variable 6m 10s - using double quotes instead of single quotes Assignments and lab work 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. - Review last week. Did you do everything assigned last week? - [Assignment #08 HTML] is about disk usage, hard links, and symbolic links - This coming assignment requires material not yet fully covered in lectures: [Hard Links], [Disk Usage], [Symbolic Links] - Do [Worksheet #08 HTML] to prepare for [Assignment #09 HTML] -- setting permissions, mode, `umask` - OPTIONAL: Do Bonus [Assignment #06 HTML] about Midterm #1 - There is a checking program available to check your file format for this bonus assignment, but only people who Read All These Words will know about it. Wrong file format means no marks. *Do not redirect the output of this checking program!* - OPTIONAL: Read [The VI (VIM) Text Editor] and optionally do the bonus [Assignment #04 HTML]. - **Reminder:** You must actually use the VIM editor during the term to get full marks for this bonus assignment. Read All The Words. 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 the web notes. (Please: **Read All The Words**) 2. Do the relevant Worksheet(s). 3. Do the relevant Assignment(s). Make notes from the worksheets on how each command works. What do the options used in the worksheets mean, for each command? (See the weekly [Command List][List of Commands You Should Know].) 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]. - [Worksheet #04 ODT] -- shell GLOB patterns and Aliases - [Worksheet #04 PDF] - [Worksheet #04 HTML] - shell GLOB patterns (wildcards), Aliases: `alias, sum, unalias` - [Worksheet #05 ODT] -- shell I/O redirection (including pipes) - [Worksheet #05 PDF] - [Worksheet #05 HTML] - shell I/O redirection, `date, head, nl, tail, tr, wc` - [Worksheet #06 HTML] -- *Optional* Bonus VIM Text Editor Practice - This is an *optional* worksheet for a BONUS assignment using `vim` - Optional command-line VIM tutorial: the `vimtutor` program on the CLS. - Bonus (optional) [Assignment #04 HTML] -- the VIM text editor - Read [The VI (VIM) Text Editor] - [Worksheet #08 ODT] -- Linux file system permissions (modes) - This Worksheet is a prerequisite for [Assignment #09 HTML] - [Worksheet #08 PDF] -- PDF version - [Worksheet #08 HTML] -- HTML version - `chmod, ls -lid, umask` Worksheets prepare you for the upcoming assignments. Upcoming tests and exams ------------------------ This course has two midterm tests (10%, 15%) and one final exam (40%). ![Bring your favourite marker to your test] > Note that your upcoming Midterm Test #2 is worth approximately five > assignments put together. Don't spend all your time doing an assignment at > the expense of studying the [Practice Tests and Answers] for the Midterm > Test. - Put these dates below into your phone! - Read the [Test Instructions] (all the words) before your tests and exam. - Use the [Algonquin Registered Name Game] link in the [Test Instructions] to confirm the spelling of your name before the test. - I don't answer questions about the instructions during the test. Ask me in a lab period before the test. - You must write the test in the lecture class in which you are registered. ### Midterm Test #2 -- December 7 or 8 -- 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! You must write the test in the lecture class in which you are registered. - Time: in your one-hour lecture class on Thursday or Friday in Week 9 (December 7 or 8). - General seating; sit anywhere. - 45 minutes for 45 multiple-choice questions - Do *both* the practice tests before the Midterm test! - Midterm #2 takes place on Thursday (Section 020) or Friday (Sections 010 and 030), December 7 or 8 (Week 9), in your scheduled one-hour lecture class (not in your lab period). - The tests and exams are all closed-book, no aids, just like your job interview. You will be given some scrap paper to write on. - For full marks, you must read the [Test Instructions] before the test for important directions on how to enter your name, student number, answers, your lab (not lecture) section number, and the test version code on the question sheet and the mark-sense forms. - There may be more questions on the test than you can answer in the time allowed; answer the ones you know, first. - A set of practice questions and answers for the second midterm test is posted in [Practice Tests and Answers]. - The tests use the semicolon `;` to separate multiple commands on the same line, to save space and paper, e.g. three separate commands can be written on one line like this: `date ; echo "hi" ; ls` - **Do not use semicolons as an interactive human user!** Type each command on its own line with the \[Enter\] key. ### Midterm #2 Topics - The Weekly Notes 1 through 8 inclusive, including the readings. - Weekly web pages (in the notes) up to and including [Symbolic Links]. - Worksheets 2, 3, 4, and 5. - Assignments 2, 3, 5, 7, and 8. - The questions in the first *two* practice tests in [Practice Tests and Answers]. - Does *not* include anything about editors `vim` or `nano`. - Does *not* include anything about the [Course Introduction]. For full marks, you must read and understand the [Test Instructions]. ### Blackboard Quiz #2 - Blackboard has some quizzes taken randomly from the second practice test in [Practice Tests and Answers]. Do both the first and second practice tests and quizzes to prepare for Midterm #2. - The practice test itself is *not* part of your course grade, but these quizzes *are* part of your course grade. - See the **Blackboard Quizzes** section located in [Practice Tests and Answers][1]. ### The Final Exam -- January 8 or 9 2018 -- 40% The Final Exam is 110 minutes long and contains approximately 110 multiple-choice questions similar to those found in the three preceding [Practice Tests and Answers]. Do *all three* practice tests before the Final Exam! - Time: in your scheduled two-hour lecture class (not in your lab period) on Monday (Sections 010 and 030) or Tuesday (Section 020) in Week 13 (January 8 or 9 2018). - 110 minutes (less than two hours) for 110 questions - Do *all three* practice tests before the Final Exam! - General seating; sit anywhere. - Almost Two Hours! Take a bathroom break before you start the 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. Midterm Test #2 Analysis ======================== > I spent many hours correcting your errors and omissions on your mark-sense > forms. Many of you lost marks for that. Before your final exam, carefully > re-read the posted [Test Instructions]. Penalties go up for making the same > errors on subsequent tests. Here are some statistics for the second midterm test: - 150 students are currently registered in the course. (We started the term with 240 students in early September.) - Of the 150, 10 did not write the test, leaving 140 who did. - Of the 140, 19 did not enter a valid test version code on the Scantron form. (I had to enter all those test version codes for you, so that you could get some marks.) - Of the 140, 13 did not enter their own name to match the name on file with the Algonquin Registrar office. (These students didn't check their names using the Name Game before the test.) - Of the 140, 7 did not enter their own student number correctly. - Of the 140, 3 did not enter their own name or their own student number correctly, so the test couldn't be marked. (I had to fix those names for you so that you could get some marks.) - Of the 140, 4 did not put their full name on their question sheet. (2 left the name field blank. I had to fix those for you, so that you could get your question sheet back for the bonus assignment.) - Of the 140, 58 answered question #45 even though the **Test Instructions** printed at the start of the test told you to leave the question blank (no answer). - **Read All The Words** ! The 140 class scores: 97 95.5 95.5 94.8 94.5 93.2 90.9 89.1 89.1 88.6 88.6 88.6 86.9 86.4 86.4 86.4 84.1 84.1 84.1 81.8 81.8 81.8 81.6 79.5 79.5 79.4 78 77.8 77.3 77.3 75.7 75.7 75 75 75 72.7 72.7 72 71.3 71.3 71.3 70.5 70.5 69.1 69 68.4 68.2 68.2 68.2 67 65.9 65.9 65.5 64.6 63.9 63.9 63.6 63.6 63.6 63 63 62.4 61.4 60.3 60.1 60.1 60.1 60.1 59.1 59.1 59.1 59.1 58.3 58.3 57.9 57.3 57.3 56.8 56.8 56.8 55.7 55.7 55.7 54.5 54.5 53.5 52.3 51.9 51.8 51.2 51.2 50.7 50 49.5 49 48.5 47.7 46.8 45.5 44.9 44.5 43.2 43.2 43.2 42.3 42.3 41.9 41.9 41 40.9 40.1 39.7 38.6 38.5 36.8 36.7 35.3 35.3 33.8 33.4 31.8 31.8 29.5 29.5 29.5 29.5 29.5 28.7 26.7 26.7 25 24.6 24.5 23.8 22.7 22.7 22.3 20.5 20.5 15.6 One student got 100% on the test, but lost marks for failing to write their name on the question sheet. - You can see the class errors in [Midterm Test #2 PDF]. Notes from the Classroom ======================== - **Take notes in class!** Keep a pad open on your desk. - Regarding [Assignment #09 HTML]: - Material in this assignment is **NOT** on the upcoming second midterm test. - Do not spend time doing this assignment (3%) at the expense of studying for your upcoming second midterm test (15%)! Commands Used ------------- - Keep a notebook with a [List of Commands][List of Commands You Should Know] in it. - You need to write down yourself what each command *does*. - Check the updated list of commands each week. - I will check for this list in your lab periods. - Bring your notes to class! Stop wasting time looking up commands. - Are you making notes from the worksheets on how each command works? - What do the options used in the worksheets mean, for each command? - Don't copy and use options that you don't understand! - Know (for the assignment) the three commands that are [directory operations][Hard Links] that manipulate file names; they don't touch the file data and don't need any permissions on the file data. - The `diff` command compares two files: `diff file1 file2` - - - See Also: `vimdiff` and `gvimdiff` - For systems running an X Windows GUI, see also `meld` Your own web page ================= This is part of the upcoming [Assignment #09 HTML]. You can do it now. - [Create your own web page!] - You will need to use `chmod 755` on your `public_html` directory. - Your web page will be visible on the Internet using a web browser to access URL `http://cst8207.idallen.ca/~``abcd0001` where *abcd0001* is replaced with your CLS userid. (There is a tilde character in that URL.) - Example: - View [all the Winter 17W class images] - View [all the Fall 17F class images] Who is using the VIM editor? ============================ This page may take a minute or two to load; be patient: [Who is using the VIM editor?] 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]. Attacks on the CLS ================== You are not paranoid if they really are out to get you! See the [Week 03 Notes HTML] for command pipelines to count the SSH attacks on the CLS. ![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 [www.idallen.com]: http://www.idallen.com/ [Course Home Page]: .. [Course Outline]: course_outline.pdf [All Weeks]: indexcgi.cgi [Plain Text]: week09notes.txt [Week 09 Notes HTML]: week09notes.html [Permissions masking with umask, chmod, 777 octal permissions]: 510_umask.html [Useful programs: gzip - compression, tar - file archiving, diff - comparison]: 525_tar_gzip_diff.html [Unix/Linux system logging, log files, kernel messages]: 580_system_log_files.html [Unix/Linux Processes, Jobs, background, foreground, kill, killall]: 600_processes_and_jobs.html [Delayed and Repeated Scheduled Execution - at, cron, and crontab]: 630_crontab_at_job_scheduler.html [List of Commands You Should Know]: 900_unix_command_list.html [Video Tutorials on Lynda.com]: 910_lynda_index.html [Linux and Sysadmin News in the World]: 950_linux_world.html [lynda.com]: http://algonquincollege.com/onlineresources/mobileStudent/lynda.htm [Unix for Mac OS X Users]: http://www.lynda.com/Mac-OS-X-10-6-tutorials/Unix-for-Mac-OS-X-Users/78546-2.html [Assignment #08 HTML]: assignment08.html [Hard Links]: 455_links_and_inodes.html [Disk Usage]: 457_disk_usage.html [Symbolic Links]: 460_symbolic_links.html [Worksheet #08 HTML]: worksheet08.html [Assignment #09 HTML]: assignment09.html [Assignment #06 HTML]: assignment06.html [The VI (VIM) Text Editor]: 300_vi_text_editor.html [Assignment #04 HTML]: assignment04.html [download Libre Office here]: 050_course_introduction.html#install-libreoffice-or-openoffice-into-windows [Worksheet #04 ODT]: worksheet04.odt [Worksheet #04 PDF]: worksheet04.pdf [Worksheet #04 HTML]: worksheet04.html [Worksheet #05 ODT]: worksheet05.odt [Worksheet #05 PDF]: worksheet05.pdf [Worksheet #05 HTML]: worksheet05.html [Worksheet #06 HTML]: worksheet06.html [Worksheet #08 ODT]: worksheet08.odt [Worksheet #08 PDF]: worksheet08.pdf [Bring your favourite marker to your test]: data/sniff_markers.jpg "Bring your favourite marker to your test" [Practice Tests and Answers]: PRACTICE_TEST_README.html [Test Instructions]: 000_test_instructions.html [Algonquin Registered Name Game]: http://cst8207.idallen.ca/~idallen/namegame.cgi [Course Introduction]: 050_course_introduction.html [1]: PRACTICE_TEST_README.html#blackboard-quizzes [Midterm Test #2 PDF]: midterm2_17f.pdf [Create your own web page!]: 000_student_web_site.html [all the Winter 17W class images]: http://cst8207.idallen.ca/montage17w.cgi [all the Fall 17F class images]: http://cst8207.idallen.ca/montage17f.cgi [Who is using the VIM editor?]: http://cst8207.idallen.ca/vim17f.cgi [Week 03 Notes HTML]: week03notes.html [Take Notes in Class]: data/remember.jpg "Take Notes in Class" [Pandoc Markdown]: http://johnmacfarlane.net/pandoc/