Operating systems 2016

From ICO wiki

Operating systems subject related info

Lecturer:

Katrin Loodus (katrin.loodus@itcollege.ee)

Room 516 (5th floor), phone (6285) 834

All subject related infotmation will be put up on Wiki page, due to the possibility to have access to the materials even after the subject has concluded. Materials, such as tests, lectures and links to additional materials, will remain available throughout the subject teaching period.


Aim of this course

The aim of this course is to introduce the basics of operating systems and IT system life cycle from the viewpoint of the IT system administrator of operating systems. This subject provides hands-on skills needed to complete other field specific subjects in the curriculum.

Lectures give a theoretical background and the labs give hands-on skills on the same topic using Ubuntu Linux Server.


This subject is oriented on hands-on practical assignments to compliment the theoretical side of the subject.

Learning outcome 1:

A student who has completed the subject is able to perform the most common administrative tasks (user management, software management, disk usage, process management) in at least one of the most popular operating system on a server.

Learning outcome 2:

A student who has completed the subject understands and is able to explain orally the basic concepts of operating systems and its security aspects.

Learning outcome 3:

The student is able to document an operating system's service from an IT systems administrator's viewpoint.

Deadlines for assignments 2016

03.04.2016 - Submission of wiki article's topic (Sending an e-mail with the chosen topic is mandatory!)

08.05.2016 23:59 - Submission of wiki article and sending an e-mail to the lecturer in order to get it graded

10.05.2016 - Pre practical test for students, who have done all of their labs

23.05.2016 - Last option to defend lab work (Lab1 and/or Lab2)

24.05.2016 - Practical test

09.06.2016 at 09:00 - Both practical and oral exams are in room 319

All dates are inclusive.

(Occasional) Homework

Week 0 & 1

Get familiar with the Unix command line by trying out this Codeacadamy short course.

Week 11

This homework is voluntary!

Please test these online courses (especially user management) in https://rangeforce.com environment and send the lecturer feedback you feel you would like to share. It can be about the content, the environment, spelling, storyline etc.

The promo code to get access to the courses is EIK2016.


Please send the feedback to my e-mail address: kloodus@itcollege.ee

Thank you!

Reading materials

10 Free Linux Administration e-books

Timetable for lectures 2016

Public chat for any subject related questions that were left unasked during the lecture: https://chatlink.com/#osadmin_ITKolledz

Link to lecture and lab captures: Go to captures

Lecture 0

February 09th 2016 Lecture 0 - Introduction to subject (OpenDocument) (PDF)

Test answers.

Lecture 1

February 12th 2016 Lecture 1 - Operating systems introduction (OpenDocument) (PDF)

  • Lecture will be on the February 12th at 8:15 in room 219
  • Practice will be on the same day at 10:00 in room 410

Homereading materials:

Introduction to operating systems (videos)

Operating systems (wikipedia article)

Lecture 2

February 16th 2016 Lecture 2 - User management (OpenDocument) (PDF)

Lecture 3

February 23rd 2016 Lecture 3 - File permissions (OpenDocument) (PDF)

Lecture 4

March 1st 2016 Lecture 4 - User environment and processes (OpenDocument) (PDF)

Lecture 5

March 8th 2016 Lecture 5 - Filesystem Hierarchy (OpenDocument) (PDF)

Lecture 6

March 15th 2016 Lecture 6 - Software management (OpenDocument) (PDF)

Lecture 7

March 22nd 2016 - Lecture 7 - Documentation (OpenDocument) (PDF)

Lecture 8

April 5th 2016 - Lecture 8 - Security session (OpenDocument) (PDF)

Lecture 9

April 12th 2016 - No lecture nor labs - Lecturer is away

Substitute lecture and lab time will be announced later

Lecture 10

April 19th 2016 - Lecture 10 - Disks, partitions and swap area (Open Document) (PDF)

Lecture 11

April 26th 2016 - Lecture 11 - RAID; LVM, SAN and NAS technologies (Open Document) (PDF)

Lecture 12

May 3rd 2016 - Lecture 12 - DAS, SAN, NAS and CAS (group work) technologies (cont.) (OpenDocument) (PDF)

[Additional reading materials]

Lecture 13

May 10th 2016 - Lecture 13 - Backup and recovery (OpenDocument) (PDF)

Lecture 14 and Lecture 9

May 17th 2016 - Lecture 14 - Miscellaneous topics (will be held in a computer class 319)

May 19th 2016 at 10:00 in room 320 - Lecture 9 - Monitoring (substitute lecture) (OpenDocument) (PDF)

Lecture 15

May 24th 2016 - Lecture 15 - working in IT - merits and demerits

We will not have a lecture in the ordinary sense, instead we'll have a seminar or discussion on important aspects of working in IT. The ethical, social and personal aspects of it. Terms like "imposter syndrome", burnout, teamwork and better work environment will be some of the topics covered. Life is not only technical competence, it's a lot about human interaction as well.

Lab works

Lab 0

Installing Ubuntu Server 14.04.3 LTS

Introduction to Unix command line (cd, ls, cat, full path, relative path etc)

Lab 1

3 points - Managing users (adduser, addgroup, passwd, /etc/passwd, /etc/shadow)


1) Create a user noodle

2) Add a new group food and add a the user noodle to a group called food.

3) Divert the user noodle's password hash via cowsay to a file called cownoodle.txt.

4) Lock the user noodle and be ready to show me the indication of the user being locked.

5) Change the user's current home directory into /home/unknown so that the files will also be moved to the new location.


5 points - Managing files (mkdir, cp, mv, rm, touch, nano, less, chmod, chown, rwx, 644 etc)


1) Create a folder march in root user directory and for every march day a subfolder with a name day1, day2, day3 … day31. (Example: /root/march/day1 or /root/march/day2 etc)

2) Modify the march folder owner so that it will be student and the new group audio.

3) Modify the march folder's and its subfolders so that the user can do anything, group can do ls in the folder and cd into it and others can't do anything with it.

4) Create a hard link called network to a file /etc/network/interfaces

5) Copy /var/log directory into march folder so that the timestamp and user info will be preserved.


4 points - Processes and environment variables (kill, using directing input/output/error: |, <, >, >>; env, PATH, HOME etc)


1) Divert the list with the student user's groups via cowsay into a fail studgroup.txt.

2) Create a environment variable called MYHOME that has the value of the system's HOME environment variable. (Hint: you have tu use variable symbol here!)

3) Send 2 htop's to the background and be ready to present how you send a kill signal to the first htop by job number and term signal to the second htop by a process number.

4) Create an alias called bye that logs you out of the terminal. Make this alias permanent.

5) Execute a programm called espdiff and diver the standardoutput to a file called okay.txt and the standard error to a file called notokay.txt.


3 points - Managing software (installation, updating, deleting, apt and dpkg utils)

Lab 2

7 points - Managing disks by creating partitions (fdisk, mkfs, blkid, mount, umount)

5 points - Managing swap (mkswap, swapon, swapoff)

Practical tests

2016

First practical test 10th of May 2016

Second pracical test 24th of May 2016

Exams

2016

Practical exam

Topics of the oral exam in Spring 2016

Wiki article information

  • Choose a topic from personal experience or from topics found on the wiki page
  • Send the topic to the lecturer kloodus@itcollege.ee
  • Lecturer will confirm the topic
  • Write your article in wiki environment
  • Inform the lecturer when the article is finished
  • Receive feedback with corrections

Bare in mind that this is an open environment, so everything you write in your wiki article, will be public :)

Helpful tips and requirements what is expected of your wiki article: https://docs.google.com/document/d/1TGmcv4CL0csigtzA_1Ti4Ndvvc6AjNchZwJe2Jc7OQc/edit#

List of the topics chosen:

Artur Kerge is doing an article on Irssi.

OpenVPN Access Server by Artur Ovtsinnikov

Securing database with command line Linux by Mohanad Aly

SSH for beginners by Etienne Barrier

Linux File Permissions by Sheela Raj

Attack A Website by Using Local Method (Local Attack) by Ender Phan

Cowsay by Meelis Hass

Sguil by Kustas Kurval

Radare 2 - An Open Source alternative to IDA by IT