The goal of the course is to acquaint students with the principles of UNIX and operating systems based on GNU/Linux. The course focuses primarily on the practical aspects of working in a UNIX-like environment and basic administration tasks. The graduates are expected to be capable of installing, configuring, and (with the use of scripting) effectively using tools and services that serve as the basis of a modern software development infrastructure.
Course completion requirements
The final grade is based on the number of points gained from solving lab assignments. Because this requires systematic work throughout the whole semester, it rules out any retakes.
- Basic concepts. Filesystem. Users, groups, and permissions.
- Administration basics. System installation. Software package management. Network interface configuration.
- Work on remote machines. Authentication, private keys. Data transfer.
- Shell environment. Scripting, regular expressions and text processing.
- Software development infrastructure. Build systems. Version management systems and services.
[ to be announced ]