Difference between revisions of "OSL740 Weekly Schedule"

From CDOT Wiki
Jump to: navigation, search
(Creating initial page)
 
m (Putting in the schedule, not the homepage.)
Line 1: Line 1:
 
[[Category:OSL740]][[Category:peter.callaghan]]
 
[[Category:OSL740]][[Category:peter.callaghan]]
{| style="float: right; margin: 0 0 3em 2em; border: 1px solid black;"
+
= Winter 2022 =
!style="background: #cccccc"| Quick Links
+
This schedule is a considered to be a general guideline for week-by-week content. Due dates may vary per instructor.
|-
 
|<div style="background:#ffff00">[[OSL740 Weekly Schedule|Weekly Schedule]]</div>[https://ict.senecacollege.ca/course/OSL740 Course Outline]
 
|-
 
!style="background: #cccccc"| Assignments
 
|-
 
<!--|[https://wiki.cdot.senecacollege.ca/wiki/OSL740_Assignment_1 Assignment 1]-->
 
|Assignment 1
 
|-
 
|Assignment 2
 
<!--[[OSL740 Assignment 2|Assignment 2]]-->
 
|}
 
  
= Welcome to OSL740 - ''Administration of Open Source Systems'' =
+
{| class="wikitable"
{| width="100%" align="right" cellpadding="10"
+
!style="width: 10%"|Week
|- valign="top"
+
!style="width: 30%"|Objectives and Tasks
| width="55%"|
+
!References
== What This Course is About ==
+
!style="width: 30%"|Labs
 +
|- style="vertical-align:top;"
 +
|'''Week 1:'''<br>Jan 10 - Jan 14
 +
|'''Create a CentOS Linux VM in VMware:'''
 +
*Install CentOS (Full Install) in VMware Workstation application (create customized partitions)
 +
*Shell Scripting
 +
*Obtain System Information
 +
|'''Lecture Notes:'''
 +
<!--*[https://ict.senecacollege.ca/~ops245/slides/w1-l1.pptx Welcome to OPS245!]-->
 +
<!--*[https://ict.senecacollege.ca/~ops245/slides/w1-l2.pptx Installing Linux]-->
 +
|<!--[[OPS245 Lab 1|Lab 1: Installing CentOS 7 with VMWare Workstation]]-->
  
<u>This course is the second in a series of courses about Linux technologies</u>
 
  
:* OSL640 taught you to be a Linux ''user''. In OSL740, you will move from being a Linux ''user'' to being a Linux system ''administrator''.
+
<p>'''WARNING:'''
 +
<br>'''If working from home, use VMware Workstation (Windows/Linux) or VMware Fusion (macOS).'''
  
:* As a system administrator, you will be responsible for installing, configuring, adjusting, maintaining, and troubleshooting the operation of computer systems. This is a lot of responsibility, and with that responsibility comes power. You will be able to change anything on the system, and you will also have the ability to damage or destroy the system.
+
<br><br>'''Do not use any other virtualization software!'''
  
:* In addition to manually configuring machines, you will learn to use bash and Python to automate some configuration tasks.  Although this course will not cover the full features of either language, it will serve as an introduction to scripting and automation to make you a more capable and efficient system administrator.
 
  
:* In this course you use an external SSD drive (USB 3) with the lab computers to set up a Linux system. You will also set up at least four additional Linux systems using "Virtual Machines", and therefore gain experience with different types of system configurations as well as setting up networking between systems.
+
|- style="vertical-align:top;"
 +
|'''Week 2:'''<br>Jan 17 - Jan 21
 +
|'''Post-Installation Tasks:'''
 +
*Post-Install Commands
 +
*Bash Shell Scripting Essentials
 +
*Introduction to Python Scripting
 +
*Using a Python Shell Script to Create a Post Installation Report
 +
|'''Lecture Notes:'''
 +
<!--*[https://ict.senecacollege.ca/~ops245/slides/w2-l1.pptx Python Scripting (part 1)]-->
  
:* The next course in the OSL stream will expand on what you learn here and teach you to administer Linux servers (web servers, DNS servers, FTP servers, file sharing servers) -- and to use more complex Python scripting to boost your system administration efficiency.
+
|'''Scripting Practice:'''
 +
<!--*[[OPS245_Scripting_Exercises | OPS245 Scripting Exercises]]-->
  
== Learning by Doing ==
+
|- style="vertical-align:top;"
 +
|'''Week 3:'''<br>Jan 24 - Jan 28
 +
|'''Creating & Using Virtual Machines'''
 +
*Installing and Using Virtualization Software
 +
*Installing Guest VMs
 +
|'''Lecture Notes:'''
 +
<!--*[https://ict.senecacollege.ca/~ops245/slides/w3-l1.pptx Installing Virtual Machines]-->
 +
<!--*[https://ict.senecacollege.ca/~ops245/slides/w3-l2.pptx Python Scripting (part 2)]-->
 +
'''Script Samples:'''
 +
*[https://ict.senecacollege.ca/~ops245/samples/menu.py menu.py]
 +
*[https://ict.senecacollege.ca/~ops245/samples/if1.py if1.py]
 +
*[https://ict.senecacollege.ca/~ops245/samples/twoif.py twoif.py]
 +
*[https://ict.senecacollege.ca/~ops245/samples/if2.py if2.py]
 +
*[https://ict.senecacollege.ca/~ops245/samples/if3.py if3.py]
 +
*[https://ict.senecacollege.ca/~ops245/samples/if4.py if4.py]
 +
*[https://ict.senecacollege.ca/~ops245/samples/if5.py if5.py]
 +
|<!--[[OPS245 Lab 2|Lab 2: Creating and Using Virtual Machines]]-->
  
Most of the learning in this course occurs through the hands-on problem solving that takes place in the eight labs and two assignments.
+
|- style="vertical-align:top;"
 +
|'''Week 4:'''<br>Jan 31 - Feb 4
 +
|'''Creating & Using Virtual Machines / Continued:'''
 +
*Manipulating Virtual Machines
 +
*Backing-up Virtual Machines
 +
*Manipulating Virtual Machines with Shell Scripts
 +
*Decision Making in Python Scripts
 +
|'''Lecture Notes:'''
 +
<!--*[https://ict.senecacollege.ca/~ops245/slides/w4-l1.pptx Managing Virtual Machines]-->
 +
<!--*[https://ict.senecacollege.ca/~ops245/slides/w4-l2.pptx Python Scripting (part 3)]-->
 +
'''Script Samples:'''
 +
*[https://ict.senecacollege.ca/~peter.callaghan/ops245/samples/userprint.py userprint.py]
 +
*[https://ict.senecacollege.ca/~peter.callaghan/ops245/samples/countup.py countup.py]
 +
*[https://ict.senecacollege.ca/~peter.callaghan/ops245/samples/countup2.py countup2.py]
  
<u>Requirements for Success</u>
+
|
  
:* It is very important to stay up-to-date with the coursework, and to practice until you have confidently mastered each task.
 
  
:* All of the software used in this course is ''open source'' software, so you are free to use, modify, and redistribute it. This means that you can install it as many times as you want on as many different computers as you would like. It also means that you can tinker with it -- you can take it apart, see how it works, and put it back together in the same or a different way, limited only by your time and ambition. You are encouraged to experiment and question liberally.
+
|- style="vertical-align:top;"
 +
|'''Week 5:'''<br>Feb 7 - Feb 11
 +
|'''Troubleshooting, Archiving, Package Management:'''
 +
*Common Troubleshooting Examples
 +
*Archiving Files
 +
*Package Management
 +
|'''Lecture Notes:'''
 +
<!--*[https://ict.senecacollege.ca/~ops245/slides/w5-l1.pptx Troubleshooting, Archiving, Package Management]-->
 +
|<!--[[OPS245 Lab 3|Lab 3: Troubleshooting, Archiving, and Packages]]-->
  
:* The notes that you make during the labs and assignments are your reference material for the quizzes, tests, and assignments. Take really good notes, and if you have questions, experiment and consult with your professor.
+
|- style="vertical-align:top;"
 +
|'''Week 6:'''<br>Feb 14 - Feb 18
 +
|'''Managing Users, Groups & Services:'''
 +
*User Management
 +
*Group Management
 +
*Service Status
 +
*Starting / Stopping Services
 +
*Looping in Python scripts
 +
'''Evaluation:'''
 +
*Assignment 1
 +
|'''Lecture Notes:'''
 +
<!--*[https://ict.senecacollege.ca/~ops245/slides/w6-l1.pptx Managing Users, Groups & Services]-->
 +
<!--*[https://ict.senecacollege.ca/~ops245/slides/w6-l2.pptx Managing Sudo]-->
 +
<!--*[https://ict.senecacollege.ca/~ops245/slides/w6-l3.pptx Python Scripting (part 4)]-->
 +
'''Script Samples:'''
  
:* Carefully read ALL lab instructions and check your work regularly. The labs have been designed with backup safeguards to prevent the student from losing their work. On the other hand, students may lose their work if they fail to follow lab instructions or accidentally forget their removable hard disks in the workstation's hard disk bay drive!
+
|<!--[[OPS245 Lab 4|Lab 4: Users, Groups and Services]]
  
== Course Faculty ==
+
|- style="vertical-align:top;"
 +
|'''Week 7:'''<br>Feb 21 - Feb 25<br>(Monday is a holiday)
 +
|'''Evaluation:'''
 +
*Test 1
 +
|
 +
|
  
'''During the <b>Winter 2022</b> semester, OSL740 is taught by:'''
 
  
| width="40% |
+
|- style="vertical-align:top;"
 +
!colspan="4" style="text-align:left;"| '''Study Week:'''<br>Feb 28 - Mar 4
  
==Required Materials==
+
|- style="vertical-align:top;"
<table cellpadding="10" cellspacing="0" width="100%"><tr><td  width="10%" style="border-bottom: thin solid #cccccc;">[[Image:ssd.png|left|95px]]</td><td  width="20%" style="border-bottom: thin solid #cccccc;padding-top:25px;padding-bottom:25px;">'''Solid State Drive (SSD)'''</td><td  width="20%" style="border-bottom: thin solid #cccccc;text-align:right;">'''Minimum Capacity:''' 240 GB</td></tr><tr valign="top"><td  width="10%" style="border-bottom: thin solid #cccccc;">[[Image:blank-cd.png|left|50px]]</td><td  width="20%" style="border-bottom: thin solid #cccccc;">'''CentOS 7 Full Install<br>DVD Image'''</td><td  width="20%" style="border-bottom: thin solid #cccccc;text-align:right;">[https://mirror.senecacollege.ca/centos/7/isos/x86_64/CentOS-7-x86_64-DVD-2009.iso Download at Seneca Lab]<br>[https://mirror.netflash.net/centos/7.9.2009/isos/x86_64/CentOS-7-x86_64-DVD-2009.iso Download from Home]</td></tr><tr><td  width="10%" style="border-bottom: thin solid #cccccc;">[[Image:ubs-key.png|left|50px]]</td><td  width="20%" style="border-bottom: thin solid #cccccc;padding-top:25px;padding-bottom:25px;">'''USB Flash Drive'''<br>(3.0 preferred)</td><td  width="20%" style="border-bottom: thin solid #cccccc;text-align:right;">'''Minimum Capacity:''' 16 GB</td></tr><tr><td  width="10%" style="border-bottom: thin solid #cccccc;">[[Image:log-book.png|left|44px]]</td><td  width="20%" style="border-bottom: thin solid #cccccc;">'''Lab Logbook'''<br>(download &amp; print<br>Both sides per lab permitted)<br><b>NOTE: If you've taken this<br> class in a previous semester, <br>you MAY NOT bring that <br>version of the lab logbook<br>to any testing.</b></td><td  width="20%" style="border-bottom: thin solid #cccccc;text-align:right;">[[:Media:OSL740-Logbook-Online.doc|Download Doc]]</td></tr><tr><td  width="10%" style="border-bottom: thin solid #cccccc;padding-top:25px;padding-bottom:25px;padding-left:25px;"><span style="font-size:3em;font-family:arial;color:red;font-weight:bold;">!</span></td><td  width="20%" style="border-bottom: thin solid #cccccc;">'''Dos and Don'ts'''</td><td  width="20%" style="border-bottom: thin solid #cccccc;text-align:right;">[[OSL740 - Tips|Tips]]</td></tr></table>
+
|'''Week 8:'''<br>Mar 7 - Mar 11
|}
+
|'''Monitoring Disk Space, Intro to LVM'''
{|cellpadding="15" width="70%"
+
*Monitoring Hard Disk Space
|- valign="top"
+
*LVM - Definition
|[[Image:petercallaghan.jpg|thumb|left|223px|<b>Peter Calaghan</b><br>Section '''NAA'''<br />[mailto:peter.callaghan@senecacollege.ca peter.callaghan@senecacollege.ca]<br /> ]]
+
*Using LVM
|[[Image:AhadM_200x200.jpg|thumb|left|230px|<b>Ahad Mammadov</b><br />Section '''NBB'''<br />[mailto:ahad.mammadov@senecacollege.ca ahad.mammmadov@senecacollege.ca]<br /> ]]
+
*Creating Shell Scripts to Flag Low Disk Space
 +
*Error Handling in Python Scripts
 +
|'''Lecture Notes:'''
 +
*<!--[https://ict.senecacollege.ca/~ops245/slides/w8-l1.pptx Monitoring Disk Space, <code>crontab</code>]-->
 +
*<!--[https://ict.senecacollege.ca/~ops245/slides/w8-l2.pptx Python Scripting (part 5)]-->
 +
|<!--[[OPS245 Lab 5|Lab 5: Monitoring Disk Space - Investigation 1]]-->
  
  
 +
|- style="vertical-align:top;"
 +
|'''Week 9:'''<br>Mar 14 - Mar 18
 +
|'''Using LVM'''
 +
*Using Logical Volume Manager (LVM)
 +
*Creating Shell Scripts to Flag Low Disk Space
 +
|'''Lecture Notes:'''
 +
*<!--[https://ict.senecacollege.ca/~ops245/slides/w9-l1.pptx Introduction to LVM]-->
 +
*<!--[https://ict.senecacollege.ca/~ops245/slides/w9-l2.pptx Advanced uses of the <code>awk</code> command]-->
 +
*Demonstration of Growing ''/home'' partition using LVM: [https://youtu.be/4fGQmw9RInYg YouTube]
 +
'''Script Samples:'''
 +
*[https://ict.senecacollege.ca/~ops245/samples/cars cars]
 +
*[https://ict.senecacollege.ca/~ops245/samples/users2.txt users2.txt]
 +
*[https://ict.senecacollege.ca/~peter.callaghan/ops245/samples/awkFile1 awkFile1]
 +
*[https://ict.senecacollege.ca/~peter.callaghan/ops245/samples/awkFile2 awkFile2]
 +
*[https://ict.senecacollege.ca/~peter.callaghan/ops245/samples/awkFile3 awkFile3]
 +
*[https://ict.senecacollege.ca/~peter.callaghan/ops245/samples/awkFile4 awkFile4]
 +
|<!--[[OPS245 Lab 5#INVESTIGATION 2: MANAGING HARD DISK SPACE USING LVM|Lab 5: Using LVM - Investigation 2]]-->
  
  
 +
|- style="vertical-align:top;"
 +
|'''Week 10:'''<br>Mar 21 - Mar 25
 +
|'''Configuring a Network Using Virtual Machines'''
 +
*Static Network Configuration
 +
*Network Configuration with a DHCP client
 +
*Basic TCP/IP network commands: <code>ping</code>, <code>ip</code>, <code>ss</code>
 +
*Using Python Scripts to Access Files
 +
|'''Lecture Notes:'''
 +
<!--*[https://ict.senecacollege.ca/~ops245/slides/w10-l1.pptx Creating a Virtual Network]-->
 +
<!--*[https://ict.senecacollege.ca/~ops245/slides/w10-l2.pptx Python Scripting (part 6)]-->
 +
|<!--[[OPS245 Lab 6|Lab 6: Virtual Networks]]-->
  
|}
 
  
===Evaluation:===
+
|- style="vertical-align:top;"
* Labs and Quizzes - 25%
+
|'''Week 11:'''<br>Mar 28 - Apr 1
* Assignments (minimum of 2) - 30%
+
|'''Setup and Configure Secure Shell Services'''
* Tests (minimum of 1) - 20%
+
*Network Services
* Final Assessment - 25%
+
*SSH
 +
|'''Lecture Notes:'''
 +
*<!--[https://ict.senecacollege.ca/~ops245/slides/w11-l1.pptx Securing Network via SSH]-->
 +
*<!--[https://ict.senecacollege.ca/~ops245/slides/w11-l2.pptx Configuring Firewalls (iptables)]-->
 +
|<!--[[OPS245 Lab 7|Lab 7: Setup and Configure SSH]]-->
  
== Wiki Participation ==
 
  
* You can edit these pages! Please feel free to fix typos or add links to additional resources. Please use this capability responsibly.
+
|- style="vertical-align:top;"
 +
|'''Week 12:'''<br>Apr 4 - Apr 8
 +
|'''Setting Up, Using & Maintaining a DHCP Server'''
 +
*DHCP Server
 +
|'''Lecture Notes:'''
 +
*<!--[https://ict.senecacollege.ca/~ops245/slides/w12-l1.pptx Setting up a DHCP Server]-->
 +
|<!--[[OPS245 Lab 8|Lab 8: Setup and Configure a DHCP Server]]-->
 +
 
 +
 
 +
|- style="vertical-align:top;"
 +
|'''Week 13:'''<br>Apr 11 - Apr 15<br>(Friday is a holiday)
 +
|'''Evaluation:'''
 +
*Assignment 2
 +
*Test 2
 +
|
 +
|
 +
 
 +
|- style="vertical-align:top;"
 +
|'''Week 14:'''<br>Apr 18 - Apr 22
 +
|'''Evaluation:'''
 +
*Final Assessment
 +
|
 +
|

Revision as of 14:47, 8 January 2022

Winter 2022

This schedule is a considered to be a general guideline for week-by-week content. Due dates may vary per instructor.

Week Objectives and Tasks References Labs
Week 1:
Jan 10 - Jan 14
Create a CentOS Linux VM in VMware:
  • Install CentOS (Full Install) in VMware Workstation application (create customized partitions)
  • Shell Scripting
  • Obtain System Information
Lecture Notes:


WARNING:
If working from home, use VMware Workstation (Windows/Linux) or VMware Fusion (macOS).

Do not use any other virtualization software!

Week 2:
Jan 17 - Jan 21
Post-Installation Tasks:
  • Post-Install Commands
  • Bash Shell Scripting Essentials
  • Introduction to Python Scripting
  • Using a Python Shell Script to Create a Post Installation Report
Lecture Notes: Scripting Practice:
Week 3:
Jan 24 - Jan 28
Creating & Using Virtual Machines
  • Installing and Using Virtualization Software
  • Installing Guest VMs
Lecture Notes:

Script Samples:

Week 4:
Jan 31 - Feb 4
Creating & Using Virtual Machines / Continued:
  • Manipulating Virtual Machines
  • Backing-up Virtual Machines
  • Manipulating Virtual Machines with Shell Scripts
  • Decision Making in Python Scripts
Lecture Notes:

Script Samples:


Week 5:
Feb 7 - Feb 11
Troubleshooting, Archiving, Package Management:
  • Common Troubleshooting Examples
  • Archiving Files
  • Package Management
Lecture Notes:
Week 6:
Feb 14 - Feb 18
Managing Users, Groups & Services:
  • User Management
  • Group Management
  • Service Status
  • Starting / Stopping Services
  • Looping in Python scripts

Evaluation:

  • Assignment 1
Lecture Notes:

Script Samples:


Week 9:
Mar 14 - Mar 18
Using LVM
  • Using Logical Volume Manager (LVM)
  • Creating Shell Scripts to Flag Low Disk Space
Lecture Notes:
  • Demonstration of Growing /home partition using LVM: YouTube

Script Samples:


Week 10:
Mar 21 - Mar 25
Configuring a Network Using Virtual Machines
  • Static Network Configuration
  • Network Configuration with a DHCP client
  • Basic TCP/IP network commands: ping, ip, ss
  • Using Python Scripts to Access Files
Lecture Notes:


Week 11:
Mar 28 - Apr 1
Setup and Configure Secure Shell Services
  • Network Services
  • SSH
Lecture Notes:


Week 12:
Apr 4 - Apr 8
Setting Up, Using & Maintaining a DHCP Server
  • DHCP Server
Lecture Notes:


Week 13:
Apr 11 - Apr 15
(Friday is a holiday)
Evaluation:
  • Assignment 2
  • Test 2
Week 14:
Apr 18 - Apr 22
Evaluation:
  • Final Assessment