Operating systems: Difference between revisions

From ICO wiki
Jump to navigationJump to search
Edmund (talk | contribs)
 
(60 intermediate revisions by 3 users not shown)
Line 1: Line 1:
=Operating systems subject related info=
=Lecturer=


Lecturer:
Since 2017 autumn the subject is taught by Aleksei Talisainen.


[https://wiki.itcollege.ee/index.php/User:Edmund#in_English Edmund Laugasson]
[https://wiki.itcollege.ee/index.php/User:Edmund#in_English Edmund Laugasson]


 
=Intro=
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.
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.


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


=Deadlines for assignments 2017=
=Portfolio=
Please fulfill [https://goo.gl/forms/BSEkc2NAoFagQ16R2 the following form].
 
=Deadlines for assignments=


'''03.04.2017''' - Submission of wiki article's topic
'''03.04.2017''' - Submission of wiki article's topic
'''02.05.2017''' - lab works defended


'''08.05.2017 23:59''' - Submission of wiki article
'''08.05.2017 23:59''' - Submission of wiki article
Line 37: Line 42:
'''09.05.2017''' - Pre practical test for students, who have done all of their labs
'''09.05.2017''' - Pre practical test for students, who have done all of their labs


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


'''23.05.2017''' - Practical test
'''16.05.2017''' - Practical test




All dates are inclusive.
All dates are inclusive.


=(Occasional) Homework=
=Instant messaging=
* public chat and client software: [https://riot.im Riot.im], [https://riot.im/app Launch Riot here in browser].
* using [https://meet.jit.si/ Jitsi Meet]
* using [http://enos.itcollege.ee/~edmund/materials/terminal-streaming-sharing.txt terminal broadcasting in real-time], e.g. [https://shellshare.net/ shellshare.net] (in view-mode only)


==Week 0 & 1==
=Course materials=


Get familiar with the Unix command line by trying out this Codeacadamy [https://www.codecademy.com/learn/learn-the-command-line short course].
* [http://enos.itcollege.ee/~edmund/osadmin/eng/ Course materials can be found here.]
* [https://echo360.e-ope.ee/ess/portal/section/4ef8a128-857f-4d6c-a532-733f394f70dc recordings are available here]


==Week 11==
==Links==
* [https://www.codecademy.com/courses/learn-the-command-line learn the command line]
* [http://upload.itcollege.ee/edmund/ some VMs, ISOs]
* [http://www.tecmint.com/10-useful-free-linux-ebooks-for-newbies-and-administrators/ 10 Free Linux Administration e-books]
* [https://www.youtube.com/playlist?list=PLmbPuZ0NsyGS8ef6zaHd2qYylzsHxL63x Introduction to operating systems (videos)]
* [https://en.wikipedia.org/wiki/Operating_system Operating systems (wikipedia article)]
* [http://enos.itcollege.ee/~edmund/osadmin/materials/ additional OSadmin materials]
* [http://enos.itcollege.ee/~edmund/materials/ additional materials]
* [http://debian-handbook.info/browse/stable/ Debian Administrator's Handbook]
* [https://help.ubuntu.com/lts/serverguide/ Ubuntu Server Guide]
* [https://linuxjourney.com/ Linux Journey]
*'''[http://enos.itcollege.ee/~edmund/materials/links.html Linux and other free software related links]'''
* [http://enos.itcollege.ee/~edmund/materials/news.html Linux news, magazines]


<span style="color:#FF0000">
==Finding help==
This homework is voluntary! </span>
* https://help.ubuntu.com/ - official documentation
* https://ubuntu-manual.org/


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.
Also some searches:


The promo code to get access to the courses is '''EIK2016'''.
* https://www.startpage.com/do/search?q=ubuntu+tutorial
* https://www.startpage.com/do/search?q=ubuntu+howto
* https://www.startpage.com/do/search?q=ubuntu+guide


Replace the word "ubuntu" with "linux" and there can be find yet more materials.


Please send the feedback to my e-mail address: '''kloodus@itcollege.ee'''
Also I encourage to use YouTube which is full of videotutorials.


Thank you!
* https://www.youtube.com/results?search_query=ubuntu+tutorial
* https://www.youtube.com/results?search_query=ubuntu+howto
* https://www.youtube.com/results?search_query=ubuntu+guide


==Reading materials==
Replace the word "ubuntu" with "linux" and there can be find yet more materials.


[http://www.tecmint.com/10-useful-free-linux-ebooks-for-newbies-and-administrators/ 10 Free Linux Administration e-books]
Certainly all the information might not be trustful but you can test at first in virtual machine if you have doubts. Also ask from instant messenger ([[#Instant messaging|also current course has one]]), IRC-channels. If you search https://www.startpage.com/do/search?q=ubuntu+irc+channel then you will find them. You will also find IRC client howtos.


=Timetable for lectures 2016=
Usually if to search "problem name or error message + operating system name, version" (without quotation marks) then you will find results (e.g.: ''bluetooth ubuntu 16.04''). Usually one of the findings will solve a problem or at least give hints what to do and possible workarounds.


Public chat for any subject related questions that were left unasked during the lecture: https://chatlink.com/#osadmin_ITKolledz
Also using different search engines might give different results. In addition of [https://www.google.com/ Google], you can try also [https://www.startpage.com/ Startpage], [https://duckduckgo.com/ DuckDuckGo] etc - https://en.wikipedia.org/wiki/List_of_search_engines


<span style="color:#FF0000">
=Lab works=
Link to lecture and lab captures:</span> [https://echo360.e-ope.ee/ess/portal/section/d38715c3-2cc6-43ee-bc1c-818df79d0b41 Go to captures]
'''NB! Here are some introductory lab tasks available. Labs for assessment are coming into [https://i-tee.itcollege.ee/ I-Tee virtual laboratory system].'''
 
==Lecture 0==
February 09th 2016 [http://enos.itcollege.ee/~kloodus/opsys/lecture00%20-%20Introduction%20-%202016.odp Lecture 0 - Introduction to subject (OpenDocument)] [http://enos.itcollege.ee/~kloodus/opsys/lecture00%20-%20Introduction%20-%202016.pdf (PDF) ]
 
[http://enos.itcollege.ee/~kloodus/opsys/test_answers_spring2016.txt Test answers].
 
==Lecture 1==
 
February 12th 2016 [http://enos.itcollege.ee/~kloodus/opsys/lecture01%20-%20OS%20introduction.odp Lecture 1 - Operating systems introduction (OpenDocument)] [http://enos.itcollege.ee/~kloodus/opsys/lecture01%20-%20OS%20introduction.pdf (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
 
<span style="color:#FF0000"> Homereading materials:</span>
 
[https://www.youtube.com/playlist?list=PLmbPuZ0NsyGS8ef6zaHd2qYylzsHxL63x Introduction to operating systems (videos)]
 
[https://en.wikipedia.org/wiki/Operating_system Operating systems (wikipedia article)]
 
==Lecture 2==
 
February 16th 2016 [http://enos.itcollege.ee/~kloodus/opsys/lecture02%20-%20user%20management.odp Lecture 2 - User management (OpenDocument)] [http://enos.itcollege.ee/~kloodus/opsys/lecture02%20-%20user%20management.pdf (PDF) ]
 
==Lecture 3==
 
February 23rd 2016 [http://enos.itcollege.ee/~kloodus/opsys/lecture03%20-%20managing%20files%20-%202016.odp Lecture 3 - File permissions (OpenDocument)] [http://enos.itcollege.ee/~kloodus/opsys/lecture03%20-%20managing%20files%20-%202016.pdf (PDF)]
 
==Lecture 4==
March 1st 2016 [http://enos.itcollege.ee/~kloodus/opsys/lecture04%20-%20user%20environment%20and%20processes%20-%202016.odp Lecture 4 - User environment and processes (OpenDocument)] [http://enos.itcollege.ee/~kloodus/opsys/lecture04%20-%20user%20environment%20and%20processes%20-%202016.pdf (PDF)]
 
==Lecture 5==
 
March 8th 2016 Lecture 5 - [http://enos.itcollege.ee/~kloodus/opsys/lecture05%20-%20FHS%20and%20links%20-%202016.odp Filesystem Hierarchy (OpenDocument)] [http://enos.itcollege.ee/~kloodus/opsys/lecture05%20-%20FHS%20and%20links%20-%202016.pdf (PDF)]
 
==Lecture 6==
 
March 15th 2016 [http://enos.itcollege.ee/~kloodus/opsys/lecture06%20-%20Software%20management%20-%202016.odp Lecture 6 - Software management (OpenDocument)] [http://enos.itcollege.ee/~kloodus/opsys/lecture06%20-%20Software%20management%20-%202016.pdf (PDF)]
 
==Lecture 7==
 
March 22nd 2016 - [http://enos.itcollege.ee/~kloodus/opsys/lecture07%20-%20Documentation%20-%202016.odp Lecture 7 - Documentation (OpenDocument)] [http://enos.itcollege.ee/~kloodus/opsys/lecture07%20-%20Documentation%20-%202016.pdf (PDF)]


==Lecture 8==
Please check also [https://enos.itcollege.ee/~edmund/osadmin/eng/labs/ log about lab works].


April 5th 2016 - [http://enos.itcollege.ee/~kloodus/opsys/lecture08%20-%20Security%20session%20-%202016.odp Lecture 8 - Security session (OpenDocument)] [http://enos.itcollege.ee/~kloodus/opsys/lecture08%20-%20Security%20session%20-%202016.pdf (PDF)]
During practices there would be possible to [http://enos.itcollege.ee/~edmund/materials/terminal-streaming-sharing.txt stream a terminal in real-time over web]: https://shellshare.net/r/I800


==Lecture 9==
You can share a code also using
 
* https://codeshare.io/I800
April 12th 2016 - No lecture nor labs - Lecturer is away
* https://kobra.io/#/e/I800
 
Substitute lecture and lab time will be announced later
 
==Lecture 10==
 
April 19th 2016 - [http://enos.itcollege.ee/~kloodus/opsys/lecture10%20-%20Disks%20and%20Swap%20-%202016.odp Lecture 10 - Disks, partitions and swap area (Open Document)] [http://enos.itcollege.ee/~kloodus/opsys/lecture10%20-%20Disks%20and%20Swap%20-%202016.pdf (PDF)]
 
==Lecture 11==
 
April 26th 2016 - [http://enos.itcollege.ee/~kloodus/opsys/lecture11%20-%20RAID,LVM,SAN,NAS%20-%202016.odp Lecture 11 - RAID; LVM, SAN and NAS technologies (Open Document)] [http://enos.itcollege.ee/~kloodus/opsys/lecture11%20-%20RAID,LVM,SAN,NAS%20-%202016.pdf (PDF)]
 
==Lecture 12==
May 3rd 2016 - [http://enos.itcollege.ee/~kloodus/opsys/lecture12%20-%20DAS,SAN,NAS,CAS-%202016.odp Lecture 12 - DAS, SAN, NAS and CAS (group work) technologies (cont.) (OpenDocument)] [http://enos.itcollege.ee/~kloodus/opsys/lecture12%20-%20DAS,SAN,NAS,CAS-%202016.pdf (PDF)]
 
[[http://www.slideshare.net/pranayakumar1986/network-storage Additional reading materials]]
 
==Lecture 13==
 
May 10th 2016 - [http://enos.itcollege.ee/~kloodus/opsys/lecture13%20-%20Backup%20and%20Recovery%20-%202016.odp Lecture 13 - Backup and recovery (OpenDocument)] [http://enos.itcollege.ee/~kloodus/opsys/lecture13%20-%20Backup%20and%20Recovery%20-%202016.pdf (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''' - [http://enos.itcollege.ee/~kloodus/opsys/lecture15%20-%20Monitoring%20-%202016.odp Lecture 9 - Monitoring (substitute lecture) (OpenDocument)] [http://enos.itcollege.ee/~kloodus/opsys/lecture15%20-%20Monitoring%20-%202016.pdf (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==
==Lab 0==


Installing Ubuntu Server 14.04.3 LTS
Installing Ubuntu Server LTS


'''Introduction to Unix command line''' (cd, ls, cat, full path, relative path etc)
'''Introduction to Unix command line''' (cd, ls, cat, full path, relative path etc)
Line 165: Line 118:
==Lab 1==  
==Lab 1==  


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


1) Create a user sysadmin


1) Create a user noodle
2) Add a new group devops and add a the user sysadmin to a previously created group.


2) Add a new group food and add a the user noodle to a group called food.
3) Divert the user sysadmin's password hash via cowsay to a file called hash.txt.


3) Divert the user noodle's password hash via cowsay to a file called cownoodle.txt.
4) Lock the user sysadmin and be ready to show me the indication of the user being locked.  
 
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) 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)
'''Managing files''' (mkdir, cp, mv, rm, touch, nano, less, chmod, chown, rwx, 644 etc)




Line 193: Line 145:




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




Line 207: Line 159:




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


==Lab 2==
==Lab 2==


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


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


=Practical tests=
=Practical test=


==2016==
==2016==
Line 225: Line 175:
[https://docs.google.com/document/d/1ZCqOOMkx0dwP0QXLIK_yk_08a8whfJmQbYR1mAoSh7M/edit Second pracical test 24th of May 2016]
[https://docs.google.com/document/d/1ZCqOOMkx0dwP0QXLIK_yk_08a8whfJmQbYR1mAoSh7M/edit Second pracical test 24th of May 2016]


=Exams=
=Exam=


==2016==
==2016==
Line 233: Line 183:
[https://docs.google.com/document/d/1gkEDb1g1em9UGhj9n_LIwnhp17gY85U9aPtMfGk56_8/edit# Topics] of the oral exam in Spring 2016
[https://docs.google.com/document/d/1gkEDb1g1em9UGhj9n_LIwnhp17gY85U9aPtMfGk56_8/edit# Topics] of the oral exam in Spring 2016


=Wiki article information=
=Wiki article=
 
* 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
 
<span style="color:#FF0000">
Bare in mind that this is an open environment, so everything you write in your wiki article, will be public :) </span>
 
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:===
 
[[User:akerge|Artur Kerge]] is doing an article on [[Irssi]].
 
[[OpenVPN_Access_Server|OpenVPN Access Server]] by  [[User:aovtsinn|Artur Ovtsinnikov]]
 
[[Securing_database_with_command_line_linux#Aim_of_this_page| Securing database with command line Linux]] by  [[User:malyhass|Mohanad Aly]]
 
[[SSH_for_beginners|SSH for beginners]] by [[User:ebarrier|Etienne Barrier]]


[https://wiki.itcollege.ee/index.php/Linux_File_Permissions#References| Linux File Permissions] by Sheela Raj
'''[[OSadmin_wiki_article|for further information please look here]]'''


[https://wiki.itcollege.ee/index.php/User_talk:Lphanvan  Attack A Website by Using Local Method ([[Local Attack]])] by Ender Phan
=Former materials=
* [[Operating systems 2016]]


[https://wiki.itcollege.ee/index.php/Cowsay_English Cowsay] by Meelis Hass
= Students share =
[https://kobra.io/#/e/-KjbPHJ0sBTp6Q3QLoIx] Bad documentation


[https://wiki.itcollege.ee/index.php/Sguil Sguil] by Kustas Kurval
[https://docs.google.com/document/d/1Vu_nzc-8jjalR4kMamVJ3Sw44sDavz9RtqISfehP-So/edit] Good documentation


[https://wiki.itcollege.ee/index.php/Radare2 Radare 2 - An Open Source alternative to IDA] by Indrek Taal
[[Category:Operatsioonisüsteemide administreerimine ja sidumine]]

Latest revision as of 00:42, 24 January 2022

Lecturer

Since 2017 autumn the subject is taught by Aleksei Talisainen.

Edmund Laugasson

Intro

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.

Portfolio

Please fulfill the following form.

Deadlines for assignments

03.04.2017 - Submission of wiki article's topic

02.05.2017 - lab works defended

08.05.2017 23:59 - Submission of wiki article

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

16.05.2017 - Last option to defend lab work

16.05.2017 - Practical test


All dates are inclusive.

Instant messaging

Course materials

Links

Finding help

Also some searches:

Replace the word "ubuntu" with "linux" and there can be find yet more materials.

Also I encourage to use YouTube which is full of videotutorials.

Replace the word "ubuntu" with "linux" and there can be find yet more materials.

Certainly all the information might not be trustful but you can test at first in virtual machine if you have doubts. Also ask from instant messenger (also current course has one), IRC-channels. If you search https://www.startpage.com/do/search?q=ubuntu+irc+channel then you will find them. You will also find IRC client howtos.

Usually if to search "problem name or error message + operating system name, version" (without quotation marks) then you will find results (e.g.: bluetooth ubuntu 16.04). Usually one of the findings will solve a problem or at least give hints what to do and possible workarounds.

Also using different search engines might give different results. In addition of Google, you can try also Startpage, DuckDuckGo etc - https://en.wikipedia.org/wiki/List_of_search_engines

Lab works

NB! Here are some introductory lab tasks available. Labs for assessment are coming into I-Tee virtual laboratory system.

Please check also log about lab works.

During practices there would be possible to stream a terminal in real-time over web: https://shellshare.net/r/I800

You can share a code also using

Lab 0

Installing Ubuntu Server LTS

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

Lab 1

Managing users (adduser, addgroup, passwd, /etc/passwd, /etc/shadow)

1) Create a user sysadmin

2) Add a new group devops and add a the user sysadmin to a previously created group.

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

4) Lock the user sysadmin 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.


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.


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.


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

Lab 2

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

Managing swap (mkswap, swapon, swapoff)

Practical test

2016

First practical test 10th of May 2016

Second pracical test 24th of May 2016

Exam

2016

Practical exam

Topics of the oral exam in Spring 2016

Wiki article

for further information please look here

Former materials

Students share

[1] Bad documentation

[2] Good documentation