% CST8207 Week 03 Notes -- absolute and relative paths, ROOT and HOME, finding files, file GLOB patterns, VIM % Ian! D. Allen -- -- [www.idallen.com] % Fall 2015 - September to December 2015 - Updated 2015-10-14 16:47 EDT - [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 03 Notes HTML] -- this file -- **Read All The Words** 2. [Unix/Linux File System and Pathnames (ROOT, absolute, relative, dot, dot dot] 3. [Directories: ROOT, /root, HOME, /home, and current] 4. [Searching for and finding files by name, size, use, modify time, etc.] 5. [Shell GLOB patterns (wildcard pathname matching)] 6. [The VI (VIM) Text Editor] 7. [List of Commands You Should Know] 8. [Linux and Sysadmin News in the World] - Create your [lynda.com] account and watch these sections of [Unix for Mac OS X Users] - **3. Working with Files and Directories** - Naming files 5m 41s - Unix is case-sensitive, OSX is case-insensitive! - avoid special characters or blanks in Unix pathnames - Creating files 2m 19s - `touch` - Unix text editors 6m 39s - `vi/vim, nano` - `head, tail` - Reading files 5m 35s - `cat, more, less` - Reading portions of files 3m 27s - `head, tail` - Creating directories 2m 40s - `mkdir` - Moving and renaming files and directories 8m 32s - `mv` (including using `..`) - Copying files and directories 3m 7s - `cp` - Deleting files and directories 3m 38s - `rm, rmdir` - Searching for files and directories 6m 32s - `find` using "wildcard" (GLOB) patterns - same as shell GLOB - **5. Commands and Programs** - Command basics 4m 4s - commands are usually small programs; ways to exit from programs - Using the command history 8m 16s - shell command history is saved your `.bash_history` file Assignments this week --------------------- Check the due date for each assignment and put a reminder in your agenda, calendar, and digital assistant. - Read All The Words, Do, and then Submit via Blackboard: - [Assignment #02 HTML] -- Course Linux Server simple commands - [Assignment #03 HTML] -- working with files: PS1, find, mkdir, mv, cp - Bonus (optional) [Assignment #04 HTML] -- the VIM text editor - Really do **Read All The Words**. You don't get a second chance to get it right. ### Worksheets 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 teach you how commands work. Worksheets are not for hand-in; they are not worth marks. > 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 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 #02 ODT] -- Using standard Linux commands I - [Worksheet #02 PDF] - [Worksheet #02 HTML] - `PS1, cd, find, less, ls, man, mkdir, passwd, pwd, rmdir` - [Worksheet #03 ODT] -- Using standard Linux commands II - [Worksheet #03 PDF] - [Worksheet #03 HTML] - `cat, clear, cp, find, grep, history, less, man, mv, rm, sleep, touch` - [Worksheet #04 ODT] -- shell GLOB patterns and Aliases - [Worksheet #04 PDF] - [Worksheet #04 HTML] - shell GLOB patterns (wildcards), Aliases: `alias, sum, unalias` - [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] Lab work this week ------------------ - Continue to work on [Worksheet #02 PDF] and [Worksheet #03 PDF] so you can do [Assignment #03 HTML]. - Read [The VI (VIM) Text Editor] and optionally do the bonus [Assignment #04 HTML]. - For Assignment 5 do [Worksheet #04 PDF] -- shell GLOB patterns and Aliases Upcoming tests -------------- Read the [Test Instructions] (all the words) before your midterm tests. 1. First Midterm test: 45 minutes; in lecture class Friday in Week 5 (Oct 9) 2. Second Midterm test: 45 minutes; in lecture class Friday in Week 9 (Nov 6) Tests take place in class in your one-hour lecture hour, not in your lab period. ### Midterm Test #1 -- October 9 - Midterm #1 takes place on Friday, October 9 (Week 5) in your scheduled lecture hour (not in your lab period). - For full marks, you must read the [Test Instructions] before the test for important directions on how to enter your answers, your lab (not lecture) section number, and the test version number 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. - I will post a set of practice questions and quizzes for the test soon. From the Class Notes link on the Course Home Page ================================================= - [Course Home Page] - [All Weeks] - Review last week. Did you do everything assigned last week? From the Classroom Whiteboard/Chalkboard ======================================== - **Take notes in class!** Your in-class notes would go here. Disabled SFTP writing on CLS ---------------------------- To improve CLS security, I've disabled the writing or changing of files on the CLS by the SFTP service, as used by file transfer programs such as **WinSCP** and **FileZilla**. You can copy files out of the CLS (e.g. your assignments) using **WinSCP** and friends, but you can't copy files into the CLS unless you use the secure `scp` program. Fifteen minute rule ------------------- Your time as a student is valuable. If you come up against a tough problem and make no progress in fifteen minutes despite best efforts: 1. get help from a professor or lab instructor 2. get help from classmates 3. take a break 4. put it on hold and work on something else This happens to all of us, and we need to watch out for it when it happens. *But what about when it's midnight before the assignment is due?* Remember the "Don't Leave Things to the Last Minute" rule!  ![Take Notes in Class] Commands -------- - The `rmdir` command will only remove an empty directory. - You know this from doing Section 5 of [Worksheet #02 HTML]. - How do you remove a directory *and* everything inside it? (You know the answer from doing the Worksheets, especially Section 5 of [Worksheet #03 HTML].) - The copy command `cp` will not copy directories unless you use the right option. (You know this option from doing Section 3 of [Worksheet #03 HTML].) Attacks on the CLS ================== Number of locked out IP addresses and attempts to use locked-out IP addresses in `/etc/hosts.evil`: $ wc /etc/hosts.evil $ fgrep -c 'refused' /var/log/auth.log $ fgrep 'refused' /var/log/auth.log | less Count the unique locked-out addresses and show the top twenty: $ fgrep 'refused' /var/log/auth.log | awk '{print $NF}' | sort -u | wc $ fgrep 'refused' /var/log/auth.log | awk '{print $NF}' \ | sort | uniq -c | sort -nr | head -n 20 Password failures: $ fgrep -c 'Failed' /var/log/auth.log $ fgrep 'Failed' /var/log/auth.log | less Userid failures: $ fgrep -c 'input_userauth' /var/log/auth.log $ fgrep 'input_userauth' /var/log/auth.log | less You can use the `whois` command on Linux to identify which country is responsible for an IP address, or use a [Web Whois Lookup]. (The Linux `whois` command is blocked from use at Algonquin College, except if you are on the CLS. You can't use the Linux command in your own Linux machines on campus. Use it on the CLS or use the web interface instead.) Locked out of the CLS ===================== I told you not to use a blank userid in the file transfer program: Sep 19 17:05:04 Invalid user from 99.224.109.142 Sep 19 17:05:18 Failed password for invalid user from 99.224.109.142 Sep 19 17:05:41 Failed password for invalid user from 99.224.109.142 Sep 19 17:05:49 Connection closed by 99.224.109.142 Sep 19 17:06:01 Invalid user from 99.224.109.142 Sep 19 17:06:24 Failed password for invalid user from 99.224.109.142 Sep 19 17:06:42 Failed password for invalid user from 99.224.109.142 Sep 19 17:06:46 Connection closed by 99.224.109.142 Sep 19 17:07:28 refused connect from cpe00fc8d413af3-cm00fc8d413af0.cpe.net.cable.rogers.com (99.224.109.142) Sep 19 17:07:58 refused connect from cpe00fc8d413af3-cm00fc8d413af0.cpe.net.cable.rogers.com (99.224.109.142)  ![VOTE] -- | Ian! D. Allen - 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]: week03notes.txt [Week 03 Notes HTML]: week03notes.html [Unix/Linux File System and Pathnames (ROOT, absolute, relative, dot, dot dot]: 160_pathnames.html [Directories: ROOT, /root, HOME, /home, and current]: 170_home_and_HOME.html [Searching for and finding files by name, size, use, modify time, etc.]: 180_finding_files.html [Shell GLOB patterns (wildcard pathname matching)]: 190_glob_patterns.html [The VI (VIM) Text Editor]: 300_vi_text_editor.html [List of Commands You Should Know]: 900_unix_command_list.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 #02 HTML]: assignment02.html [Assignment #03 HTML]: assignment03.html [Assignment #04 HTML]: assignment04.html [download Libre Office here]: 050_course_introduction.html#install-libreoffice-or-openoffice-into-windows [Worksheet #02 ODT]: worksheet02.odt [Worksheet #02 PDF]: worksheet02.pdf [Worksheet #02 HTML]: worksheet02.html [Worksheet #03 ODT]: worksheet03.odt [Worksheet #03 PDF]: worksheet03.pdf [Worksheet #03 HTML]: worksheet03.html [Worksheet #04 ODT]: worksheet04.odt [Worksheet #04 PDF]: worksheet04.pdf [Worksheet #04 HTML]: worksheet04.html [Worksheet #06 HTML]: worksheet06.html [Test Instructions]: 000_test_instructions.html [Take Notes in Class]: data/remember.jpg "Take Notes in Class" [Web Whois Lookup]: http://whois.domaintools.com/ [VOTE]: http://scontent-yyz1-1.xx.fbcdn.net/hphotos-xft1/v/t1.0-9/12038228_10153562822799361_7419787984021110970_n.jpg?oh=6434035a11ad73335ab6941dfebdb620&oe=56A6D21E "VOTE" [Pandoc Markdown]: http://johnmacfarlane.net/pandoc/