Linux Working program of the academic discipline (Syllabus)

Details of the academic discipline

Level of higher education First (undergraduate)
Branch of knowledge 12 Information technologies
Specialty 121 Software Engineering, 123 Computer Engineering, 126 Information systems and technologies
Educational program Computer Systems Software Engineering, Computer Systems and Networks, Integrated information systems, Information management systems and technologies, Dataware of robotic systems
Discipline status Selective
Form of education full-time/part-time/distance
Year of training, semester 3rd year, autumn semester
Scope of the discipline 120 hours (36 hours – Lectures, 18 hours – Laboratory, 66 hours – IWS) 120 hours (6 hours – Lectures, 6 hours – Laboratory, 108 hours – IWS)
Semester control/ control measures Assessment/assessment work
Lessons schedule http://rozklad.kpi.ua/Schedules/ScheduleGroupSelection.aspx
Language of teaching English
Information about the course leader / teachers Lecturer: senior lecturer Maryna Khmeliuk, m.khmeliuk@kpi.ua , Telegram @Maryna181280 Laboratory: senior lecturer Maryna Khmeliuk, m.khmeliuk@kpi.ua , Telegram @Maryna181280
Placement of the course https://campus.kpi.ua

Program of educational discipline

Description of the educational discipline, its purpose, subject of study and learning outcomes

Description of the discipline. When completing this discipline, students will get acquainted with the system structure, system configuration, command line and its use for working with standard threads, text editors, file management, directories, access rights, users and groups, processes, operation logging, Shell language, scripts, planning and task schedulers in Linux, managing Linux packages, managing hardware in Linux, designing, mounting file systems, configuring network parameters in Linux, configuring the graphical environment. The course provides quality control of the acquired knowledge in the form of modular tests. Express surveys on the material covered will be held at the lectures. The subject of the academic discipline: Linux operating systems, system structure, command line, standard streams stdin, stdout, stderr, text editors, file system, files, directories, access rights, users and groups, processes, operation logs, scripts, task schedulers, Linux packages hardware, network, graphic environment. Interdisciplinary connections. The Linux discipline is based on the following disciplines: Operating systems, Computer networks. The Linux discipline is the basis for the discipline: Information Technology Infrastructure. The purpose of the educational discipline. Training of highly qualified specialists who will have knowledge of the principles of Linux operating systems and apply knowledge in the administration and configuration of Linux operating systems, have skills in the interaction of the Linux OS with hardware, and also be able to configure and apply the Linux operating system to solve certain tasks.

The main tasks of the academic discipline

Knowledge:

  • basic concepts about Unix, Unix-like system, Linux;
  • system structure, features of Linux systems, Linux kernel;
  • Linux command line tools;
  • standard Linux threads;
  • regular expressions
  • file globbing
  • file system structures;
  • access rights to files and directories;
  • about hard and symbolic links;
  • about users, groups;
  • processes in Linux;
  • transaction logging;
  • Shell languages;
  • task planning tools in Linux;
  • Linux libraries;
  • on hardware management in Linux;
  • on media management in Linux;
  • on configuring network parameters in Linux;
  • on configuring the graphical environment in Linux.

Skills:

  • install Linux operating systems.
  • work in the system using the Linux command line;
  • manage data from standard Linux threads;
  • use a regular expression
  • apply file globbing
  • configure the file system depending on the needs of the application;
  • manage access rights to files and directories;
  • work with hard and symbolic links;
  • administer users, groups;
  • manage processes in Linux;
  • configure transaction logs;
  • write scripts in the Shell language;
  • plan automatic execution of tasks in Linux;
  • use Linux libraries;
  • configure the operating system to work with hardware in Linux;
  • configure work with media in Linux, restore lost data;
  • configure network parameters in Linux;
  • configure the graphical environment in Linux.

Pre-requisites and post-requisites of the discipline (place in the structural and logical scheme of training according to the relevant educational program)

Prerequisites: be able to use a computer, have basic knowledge of operating systems, networks.

Post-requisites: administration, configuration of the Linux OS.

After completing the discipline, students will be able to use the acquired knowledge to effectively use the capabilities of the Linux OS to solve certain tasks.

Content of the academic discipline

Full time

Lecture classes

Topic 1. Unix, Unix-like system, Linux, system structure

Topic 2. Bash, standard threads

Topic 3. Files, directories, access rights

Topic 4. Users, groups

Topic 5. Processes

Topic 6. Shell language

Topic 7. Task scheduler in Linux

Topic 8. Linux package management. Management of libraries. Logging operations in Linux

Topic 9. Management of hardware, media in Linux

Topic 10. Maintaining the integrity of the file system

Topic 11. Configuring network parameters in Linux

Topic 12. Configuring the graphics system in Linux

Laboratory classes

1. Installation, configuration of Linux system Ubuntu

2. Interpreter. Interpreter commands. Environment variables (environments)

3. Standard Linux threads

4. File system structure. Ubuntu directory/file management

5. Manage access rights to Linux files and directories

6. User identification. Umask in Linux. Hard and symbolic links

7. Process management

8. Data processing using the shell language. Scripts in Linux. Task scheduler in Linux

Part time

Lecture classes

Topic 1. Unix, Unix-like system, Linux, system structure, Bash

Topic 2. Files, directories, access rights

Topic 3. Shell language.

Laboratory classes

1. Installation, configuration of Linux system Ubuntu. Interpreter. Interpreter commands.

2. File system structure. Ubuntu directory/file management. User identification. Manage access rights to Linux files and directories

3. Data processing using the shell language. Scripts in Linux. Task scheduler in Linux

Educational materials and resources

Basic literature

  1. Khmelyuk M.S. Lectures on the discipline "Linux"

  2. Khmelyuk M.S. Methodical instructions for performing laboratory work for students in the discipline "Linux"

  3. Andrew S. Tanenbaum. Modern operating systems, 4th edition, 2021.

  4. https://uabuntu.com/

  5. William Shotts. The Linux Command Line

    Auxiliary:

  6. Michael Hausenblas. Learning Modern Linux: A Handbook for the Cloud Native Practitioner. 1st Ed. O'Reilly Media, 2022

Educational content

Methods of mastering an educational discipline (educational component)

Full time

Lecture classes

No. z/p The name of the topic of the lecture and a list of the main questions (a list of didactic tools, references to the literature and tasks on the IWS)
Topic 1 Unix, Unix-like Linux system, system structure
1 Lecture 1. Unix, Unix-like Linux system, system structure Unix, a Unix-like system. Linux. Core and main components of the OS. Purpose and functions of Linux, application of Linux L. (1) Tasks on IWS. Familiarity with the operating system Debian, Red Hot
Topic 2 Bash, standard threads
2 Lecture 2. GNU / Linux commands Shell. Environment. Shell command line. Bash commands. Work in the command line. Processing text streams using filters L. (1) **Tasks for IWS.**Dash teams
3 Lecture 3. Standard Linux threads STDIN standard input stream. STDOUT standard output stream. The STDERR standard error stream. Redirection of streams (Redirection Symbols). Utilities for working with streams (xargs, tee). Regular expressions. Search with grep. Editing files (text editors) L. (1) **Tasks for IWS.**Vim text editor
Topic 3 Files, directories, access rights
4 **Lecture 4.**File and directory management Basics of file and directory management. Search commands. File archiving. Archivers. File compression. File-globbing - substitution of file names in Bash L. (1) **Tasks for IWS.**Utility for managing CPIO archives.
5 Lecture 5. Access rights in Linux Access rights in Linux, SetUserID(SUID), SetGroupID(GUID), sticky bit L. (1) **Tasks for IWS.**Access Control Lists (ACLs).
6 Lecture 6. Umask. Hard links. Symbolic links (Symlinks, Softlinks) Umask. Hard links. Symbolic links (Symlinks, Softlinks). L. (1) Tasks for IWS. Utility for working with symbolic links update-alternatives.
Topic 4. Users, groups
7 **Lecture 7.**User and group management Users. User identification. Groups. Passwords. Accounts. L. (1) Tasks for IWS. Working with users and groups in a graphical environment
Topic 5. Processes
8 **Lecture 8.**Processes Process. View running processes. View information about processes. Searching for processes in Linux. Changing the priority of the process. Completion of processes. L. (1) Tasks for IWS. KILL command signals.
Topic 6. Shell language
9 Lecture 9. Shell language. Scripts Shell language commands. Scripts (scenarios) in Linux L. (1) Tasks for IWS. Functions in the Shell language
Topic 7. Task scheduler in Linux
10 Lecture 10. Scheduling tasks in Linux. Task scheduler in Linux. Sron. Crontab. Anacron. At L. (1) Tasks for IWS. Batch
Topic 8. Linux package management. Management of libraries. Logging operations in Linux
11 **Lecture 11.**Linux package management. Management of libraries. Logging operations in Linux. Linux package management (Debian, Ubuntu, Red Hot). Libraries. Logging operations in Linux. Rotation, archiving of magazines. Programs for keeping logs L. (1) Tasks for IWS. Management of libraries
Topic 9. Management of hardware, media in Linux
12 Lecture 12. Hardware management in Linux HAL (Hardware Abstraction Layer). Dbus. UDEV is a device manager. DevfS, Sysfs, ProcfS - Virtual file systems. Connecting devices. BIOS. Management of kernel modules. L. (1) **Tasks for IWS.**Modprobe
13 Lecture 13. Disk management Hard disk management in Linux. MBR partition table. GTP partition table. LVM volume management system. Creation of partitions and file systems L. (1) **Tasks for IWS.**Create a virtual disk, partition the disk using MBR, GTP
Topic 10. Maintaining the integrity of the file system
14 Lecture 14. Maintaining the integrity of the file system File system integrity. File systems ext2, ext3, ext4. The role of Inode in Linux file systems. Mounting and unmounting of file systems. fsck - a tool for checking and restoring the integrity of the file system. Additional utilities for working with FS: dumpe2fs, debugfs, tune2fs L. (1) Tasks for IWS. Mount the file system and configure it
Topic 11. Configuring network parameters in Linux
15 Lecture 15. Basic concepts of Internet protocols Network protocols UDP, TCP, ICMP. IP address. TCP/IP ports. Address mask (subnet). CIDR (Classless Inter-Domain Routing). L. (1) Tasks for IWS.Utilities for working with the network
16 Lecture 16. Configuring network parameters in Linux Configuring network parameters in Linux. Basic approaches to solving network problems. DNS client settings L. (1) Tasks for IWS.Configure DNS client.
Topic 12. Configuring the graphics system in Linux
17 Lecture 17. Configuring the graphics system in Linux Graphical environment X11 (X11 Windows System). Xorg, Gnome, Kde. L. (1) Tasks for IWS.Install the graphic shell.

Laboratory classes

No. z/p Name of laboratory work (computer workshop) Number of aud. hours
1 Installation, configuration of Linux system Ubuntu Download Oracle VM VirtualBox. Install on a computer. Adjust. Download Linux distribution - Ubuntu. Install on a virtual machine.. L. (2) 2
2 Interpreter. Interpreter commands. Variable environments (environments).. Log in to the system using the user created in the previous work. Process commands: env, export, who, path, alias, bind, cd, dirs, echo, enable, history, man, pwd, date, uname. L. (2) 2
3 Linux threads. Log in to the system using the user created in the first job. Familiarize yourself with Linux streams (stdin, stdout, stderr), redirecting data to/from streams. Learn to use data redirection using data redirection symbols; grep search command using regular expressions. L. (2) 2
4 File system structure. Ubuntu directory/file management. Log in to the system using the user created in the first job. Learn to use commands (with keys): cd, ls, mkdir, rm, mv, cp, touch, file, find, apply wildcard symbols (file-globbing) when working with commands. Familiarize yourself with utilities for data compression: tar, gzip/bzip2 and the utility for copying and converting dd files, learn how to use these utilities. L. (2) 2
5 Manage access rights to Linux files and directories. Task 1. Create a file/directory. Create a new user, group. Add file owner and new user to group. Analyze and explain the rights for each of them. Change access rights (write, execute) for ugo. Try to edit file/move directory, execute file. Analyze and explain the result. Task 2 Familiarize yourself with the SUID, SGID, and sticky bits. Learn to use them. L. (2) 4
6 Umask in Linux. Hard and symbolic links. 1) Familiarize yourself with the teamsid, whoami, chown for file/directory/link. Learn to use them. 2) Get to know the teamUmask. Create file and directory, view umask, explain. Change umask for newly created files. 3) Learn about hard and symbolic links. Create a hard and symbolic link. Explain the difference. L. (2) 2
7 Process management. Understand process management commands that allocate necessary computer system resources (ps, bg, fg, jobs, kill, killall, nohup, SIGHUP, SIGTERM, SIGK, pgerp, pkill, screen, htop, top, free, nice, renice. L. (2) 2
8 Data processing using the shell language. Scripts in Linux. Task scheduler in Linux. Task 1. Write a script (optional). Task 2. Set up automatic script launch at a given time. L. (2) 2

Part time

Lecture classes

No. z/p The name of the topic of the lecture and a list of the main questions (a list of didactic tools, references to the literature and tasks on the IWS)
Topic 1 Unix, Unix-like Linux system, system structure
1 Lecture 1. Unix, Unix-like Linux system, system structure Unix, a Unix-like system. Linux. Core and main components of the OS. Purpose and functions of Linux, application of Linux L. (1) Tasks on IWS. Familiarity with the operating system Debian, Red Hot
Topic 3 Files, directories, access rights
2 **Lecture 2.**File and directory management Basics of file and directory management. Search commands. File archiving. Archivers. File compression. File-globbing - substitution of file names in Bash L. (1) **Tasks for IWS.**Utility for managing CPIO archives.
Topic 6. Shell language
3 Lecture 3. Shell language. Scripts Shell language commands. Scripts (scenarios) in Linux L. (1) Tasks for IWS. Functions in the Shell language

Laboratory classes

No. z/p Name of laboratory work (computer workshop) Number of aud. hours
1 Installation, configuration of Linux system Ubuntu. Interpreter. Interpreter commands. Variable environments (environments). Download Oracle VM VirtualBox. Install on a computer. Adjust. Download Linux distribution - Ubuntu. Install on a virtual machine. Log in to the system using the user created in the previous work. Process commands: env, export, who, path, alias, bind, cd, dirs, echo, enable, history, man, pwd, date, uname. L. (2) 2
2 File system structure. Ubuntu directory/file management. Manage access rights to Linux files and directories. Log in to the system using the user created in the first job. Learn to use commands (with keys): cd, ls, mkdir, rm, mv, cp, touch, file, find, apply wildcard symbols (file-globbing) when working with commands. Familiarize yourself with utilities for data compression: tar, gzip/bzip2 and the utility for copying and converting dd files, learn how to use these utilities. Create file/directory. Create a new user, group. Add file owner and new user to group. Analyze and explain the rights for each of them. Change access rights (write, execute) for ugo. Try to edit file/move directory, execute file. Analyze and explain the result. Familiarize yourself with the SUID, SGID, and sticky bits. Learn to use them. L. (2) 2
3 Data processing using the shell language. Scripts in Linux. Task scheduler in Linux. Write a script (optional). Configure the automatic launch of the script at the specified time. L. (2) 2

Independent work of a student/graduate student

Full time

No. z/p The name of the topic submitted for independent processing Number of hours of IWS
1 Familiarity with the operating system Debian, Red Hot 6
2 Dash teams 4
3 Vim text editor 4
4 Utility for managing CPIO archives 2
5 Access Control Lists (ACLs). 4
6 Utility for working with symbolic links update-alternatives 4
7 Working with users and groups in a graphical environment 2
8 KILL command signals 4
9 Functions in the Shell language 4
10 Batch 2
11 Libraries 2
12 Modprobe 4
13 Create a virtual disk, partition the disk using MBR, GTP 6
14 Mount the file system and configure it 6
15 Utilities for working with the network 2
16 Configure DNS client 6
17 Install the graphic shell 4

Part time

No. z/p The name of the topic submitted for independent processing Number of hours of IWS
1 Shell. Environment. Shell command line. Bash, Dash commands. Work in the command line. Processing text streams using filters 8
2 STDIN standard input stream. STDOUT standard output stream. The STDERR standard error stream. Redirection of streams (Redirection Symbols). Utilities for working with streams (xargs, tee). Regular expressions. Search with grep. Editing files (text editors). Vim text editor 8
2 Access rights in Linux, SetUserID(SUID), SetGroupID(GUID), sticky bit. Access Control Lists (ACLs). 8
3 Umask. Hard links. Symbolic links (Symlinks, Softlinks). Utility for working with symbolic links update-alternatives. 8
4 Users. User identification. Groups. Passwords. Accounts. Working with users and groups in a graphical environment 8
5 Process. View running processes. View information about processes. Searching for processes in Linux. Changing the priority of the process. Completion of processes. KILL command signals. 8
6 Task scheduler in Linux. Sron. Crontab. Anacron. At. Batch 8
7 Linux package management (Debian, Ubuntu, Red Hot). Management of libraries. Logging operations in Linux. Rotation, archiving of magazines. Programs for keeping logs 8
8 Hardware management in Linux. HAL (Hardware Abstraction Layer). Dbus. UDEV is a device manager. DevfS, Sysfs, ProcfS - Virtual file systems. Connecting devices. BIOS. Management of kernel modules. Modprobe 9
9 Hard disk management in Linux. MBR partition table. GTP partition table. LVM volume management system. Creation of partitions and file systems 9
10 Maintaining the integrity of the file system. File system integrity. File systems ext2, ext3, ext4. The role of Inode in Linux file systems. Mounting and unmounting of file systems. fsck - a tool for checking and restoring the integrity of the file system. Additional utilities for working with FS: dumpe2fs, debugfs, tune2fs 9
11 Network protocols UDP, TCP, ICMP. IP address. TCP/IP ports. Address mask (subnet). CIDR (Classless Inter-Domain Routing). Utilities for working with the network 8
12 Configuring network parameters in Linux. Basic approaches to solving network problems. DNS client settings 9
13 Configuring the graphics system in Linux. Graphical environment X11 (X11 Windows System). Xorg, Gnome, Kde 8

Policy and control

Policy of academic discipline (educational component)

The system of requirements for the student:

  • attending lectures and laboratory classes is a mandatory component of studying the material;
  • the teacher uses his own presentation material at the lecture; uses Telegram to teach the material of the current lecture, additional resources, laboratory work, etc.; the teacher opens access to a certain Google Drive directory for downloading electronic laboratory reports;
  • during lectures, it is forbidden to distract the teacher from teaching the material, all questions, clarifications, etc. students ask at the end of the lecture in the time allotted for this;
  • laboratory works are defended in two stages - the first stage: demonstration of work results; the second stage is protection of laboratory work. Points for laboratory work are taken into account only if there is an electronic report;
  • modular test papers are written during lectures (tests in Moodle);
  • incentive points are awarded for: active participation in lectures. The number of encouraged points is more than 10;
  • penalty points are issued for: untimely submission of laboratory work. The number of penalty points is more than 10.

Types of control and rating system for evaluating learning outcomes (RS)

The student's rating in the discipline consists of the points he receives for:

  1. execution and protection of 8 laboratory works;

  2. execution of 2 one-hour modular control works (MCW);

  3. incentive and penalty points.

    System of rating points and evaluation criteria

    Laboratory works:

    "excellent", a complete answer to the questions during the defense (at least 90% of the required information) and a properly prepared protocol for laboratory work - 9 points;

    "good", a sufficiently complete answer to the questions during the defense (at least 75% of the required information) and a properly prepared protocol for laboratory work - 7.5 points;

    "satisfactory", incomplete answer to the questions during the defense (at least 60% of the required information), minor errors and a properly prepared protocol for laboratory work - 6 points;

    "unsatisfactory", an unsatisfactory answer and/or an improperly prepared protocol for laboratory work - 0 points.

    For late submission of laboratory work before the deadline, the grade is reduced by 1 point (but not lower than 1 point for each laboratory work).

    Modular control works:

    "excellent", complete answer (at least 90% of the required information) - 14 points;

    "good", a sufficiently complete answer (at least 75% of the required information), or a complete answer with minor errors - 10 points;

    "satisfactory", incomplete answer (but not less than 60% of the required information) and minor errors - 6 points;

    "unsatisfactory", an unsatisfactory answer requires mandatory rewriting at the end of the semester - 0 points.

    Incentive points

    0.5 points for active creative work at lectures.

    Intersessional certification

    According to the results of educational work for the first 7 weeks, the maximum possible number of points is 27 points. At the first certification (8th week), the student receives "credited" if his current rating is at least 18 points.

    According to the results of 13 weeks of training, the maximum possible number of points is 82 points. At the second certification (14th week), the student receives "credited" if his current rating is not less than 57 points.

    The maximum sum of weighted points of control measures during the semester is:

    R=8* rlab +2* rMCW =8*9+2*14=100

    where rlab is a score for laboratory work (0...9);

    rMCW – score for writing MCW (0...14);

    Test:

    Students who do not have arrears from laboratory work, have completed two MCW with a rating of no less than "satisfactory", receive a passing grade (credit) by the so-called "automatic" in accordance with the scored rating (table 1)

    Table 1. Conversion of rating points to grades on the university scale

Grade Rating
100-95 Excellent
94-85 Very good
84-75 Good
74-65 Satisfactorily
64-60 Sufficient
Less than 60 Fail
There are uncredited laboratory works or modular control work is not counted Not allowed

Additional information on the discipline (educational component)

  • the list of theoretical questions submitted for semester control is given in Appendix 1;

Working program of the academic discipline (Syllabus): Made . Senior lecturer Maryna Khmeliuk Approved by the Department of IST (protocol No. 16 dated 12.06.2024) Agreed Methodical commission of the faculty1(protocol No. 10 dated 21 06.2024)

Appendix 1

List of questions for assessment

  1. Unix, a Unix-like system. Linux
  2. Core and main components of the OS
  3. Purpose and functions of Linux, application of Linux
  4. Shell
  5. Environment
  6. Shell command line
  7. Bash commands
  8. Work in the command line
  9. Processing text streams using filters
  10. STDOUT standard output stream
  11. The STDERR standard error stream
  12. Stream Redirection (Redirection Symbols)
  13. Utilities for working with streams (xargs, tee)
  14. Regular expressions
  15. Search with grep
  16. Editing files (text editors)
  17. File and directory management
  18. Search commands
  19. File archiving
  20. Archivers
  21. File compression
  22. File-globbing - substitution of file names in Bash
  23. Access rights in Linux
  24. SetUserID(SUID)
  25. SetGroupID(GUID)
  26. sticky bit
  27. Access Control Lists (ACLs).
  28. Umask
  29. Hard links
  30. Symbolic links (Symlinks, Softlinks).
  31. Utility for working with symbolic links update-alternatives
  32. Users
  33. User identification
  34. Groups
  35. Passwords
  36. Accounts
  37. Process. View running processes. View information about processes
  38. Searching for processes in Linux
  39. Changing the priority of the process
  40. Completion of processes
  41. Shell language commands
  42. Scripts (scenarios) in Linux
  43. Task scheduling in Linux
  44. Sron. Crontab
  45. Anacron
  46. At. Batch
  47. Linux package management (Debian, Ubuntu, Red Hot).
  48. Management of libraries.
  49. Logging operations in Linux.
  50. Rotation of logs (logs)
  51. Log archiving
  52. HAL (Hardware Abstraction Layer)
  53. Dbus
  54. UDEV is a device manager
  55. DevfS, Sysfs, ProcfS - Virtual file systems
  56. Connecting devices
  57. BIOS
  58. Management of kernel modules
  59. Hard disk management in Linux
  60. MBR partition table
  61. GTP partition table
  62. LVM volume management system
  63. Creation of partitions and file systems
  64. File system integrity
  65. File systems ext2, ext3, ext4
  66. The role of Inode in Linux file systems
  67. Mounting and unmounting of file systems.
  68. fsck - a tool for checking and restoring the integrity of the file system
  69. Additional utilities for working with FS: dumpe2fs, debugfs, tune2fs
  70. Network protocols UDP, TCP, ICMP
  71. IP address
  72. TCP/IP ports
  73. Address mask (subnet)
  74. CIDR (Classless Inter-Domain Routing)
  75. Utilities for working with the network
  76. Configuring network parameters in Linux
  77. Basic approaches to solving network problems
  78. DNS client settings
  79. X11 graphical environment (X11 Windows System)
  80. Xorg, Gnome, Kde

  1. Methodical council of the university - for general university disciplines.