Основи на Linux за инженери и програмери

Објавено: јули 3, 2020
Можни сертификати:
Број на слушатели:
од 10 до 25 / термин
Цена:

 

Обуката основи на Linux за инженери и програмери организиран од Факултетот за електротехника и информациски технологии им овозможува на слушателите стекнување со продлабочено познавање за оперативниот систем Linux, детално запознавање со концептите и оспособување за работа во овој оперативен систем. По завршување на обуката, слушателите ќе бидат оспособени за самостојно користење на оперативниот систем, негово администрирање во секојдневни работни задачи и поставување на соодветни платформи за развој на софтвер на Linux базирани оперативни системи. Сите концепти се поддржани со практични примери и соодветни вежби во Факултетските лаборатории.

ПРОГРАМА ЗА ОБУКА И ВРЕМЕТРАЕЊЕ

Ден 1-2 (6 часа)

  1. Основи на Linux
    1. Структура на Linux
    2. Јадро на Linux
    3. Датотечен систем во Linux
    4. Linux дистрибуции – видови и генерации
  2. Подготовки за инсталација
    1. Вовед во виртуелизација
    2. Инсталација на VirtualBox
    3. Креирање на виртуелна машина
    4. Избор на дистрибуција (Red Hat, SuSE, Ubuntu)
    5. Хардверски побарувања
    6. Превземање на инсталацијата
  3. Инсталација на Linux
    1. Опис на постапката
    2. Припрема на хард дискот – партиционирање (MBR табела)
    3. Самостојна инсталација од страна на слушателите
    4. Други инсталациски методи
  1. Работа со датотеки и папки

4.1 Концепт на дрво на именици и патеки

  1. Апсолутни патеки
  2. Релативни патеки

4.2 Запознавање со командна линија

  1. Концепт на команди
  2. Структура на команди и агрументи

4.3 Работа преку командна линија

  1. Читање и навигација (cat, more, less, tail, cd, pwd, find, whereis, locate, ls), кратки вежби
  2. Работа со датотеки/папки и пребарување (touch, rm, rmdir, mkdir, mv, cp, ln, grep, tar, cpio, gzip, compress), кратки вежби
  3. креирање на документи и датотеки
  4. графички и текстуални едитори: vi, vim, nano
  5. напредно пребарување:
    • Grep и регуларни изрази
    • awk и sed
  6. Концепт на цевки (pipe= и редирекции
  7. Привилегии на датотеки/папки и сопствеништво (chmod,chgrp, chown), кратки вежби (концепт на корисници и групи)
Ден 3-4 (6 часа)

  1. Уредување на корисничка околина
    1. Концепт на работни околини (школки): bash, csh, zsh
    2. Концепт на системски променливи
    3. Експортирање на променливи
    4. Прилагодување на кориснички околини
      • Профили на корисници и нивно уредување (/etc/profile, .profile)
      • ohmyzsh
    5. Основи на пишување скрипти
      1. разлики во работни околини (школки)
      2. Основни наредби
      3. Работа со променливи и команди
      4. Пишување скрипти
      5. Стартување скрипти и промена на привилегии
Ден 5 (3 часа)

  1. Управување со корисници и групи
    1. Креирање на корисници
    2. Креирање на групи
    3. Управување со корисници и групи
    4. su и sudo команда
  2. Управување со софтвер
    1. GUI пакет менаџери
    2. RPM & YUM/DNF пакет менаџмент
    3. Debian базиран пакет менаџмент
    4. Други командни пакет менаџери (zypper)
    5. Snap и Flatpak
    6. работа со верзионирање на софтвер – git сервер
    7. самостојно компајлирање на програми од изворен код make
Ден 6 (3 часа)

  1. Работа со процеси и сервиси
    1. Стартување на процеси
    2. Мониторирање на активни процеси (ps, pstree, top, jobs, uptime)
    3. Праќање на сигнали кон процесите
    4. Детектирање и прекинување на “заглавени” процеси (kill, killall)
    5. Опис на системските нивоа на работа (runlevels)
    6. Промена на runlevel
    7. Опис на сервисите
    8. Менаџирање со сервиси systemd ( systemctl / service), кратки вежби
  2. Набљудување на системот
    1. Меморија
    2. Процесор
    3. Хард диск
    4. Системски логови
    5. Кратки вежби
Ден 7 (3 часа)

  1. Бекапирање и враќање на податоци
    1. Бесплатни алатки во Linux
      1. Backup и restore со cpio, кратки вежби
      2. Backup и restore со tar, кратки вежби
  • Backup и restore со dd, кратки вежби
  1. Backup и restore со rsync, кратки вежби
  2. Rsync со snapshoots, rsnapshoots, кратки вежби
  3. Backup и restore со rdiff-backup, кратки вежби
  1. Некои комерцијални алатки за бекап и враќање на податоци
  2. Креирање на бекап стратегии
  3. Самостојни вежби
  1. Автоматизирање на задачи
    1. Cron и at задачи
    2. Листање, креирање и едитирање на cron задачи, кратки вежби
    3. Конфигурирање на корисничкиот пристап
Ден 8 (3 часа)

  1. Работа со компјутерски мрежи
    1. Краток вовед во компјутерки мрежи (Адреси и класи)
    2. Hostnames, поставување статички и динамички адреси
    3. Мрежни порти
    4. GUI/TUI алатки во различните дистрибуции
    5. Решавање на проблеми со мрежната конекција
  2. Работа со печатачи
    1. Инсталација и конфигурација на печатачи
    2. Управување со принтерските редови на чекање, кратка вежба
    3. Командни алатки за управување со печатачи (lp,lpmove,enable,disable,lpstat, lpsched, cancel, accept, reject, lpshut, lpadmin),
Ден 9 (3 часа)

  1. Далечинско менаџирање преку SSH
    1. openSSH опис
    2. Конфигурација на ssh сервер
    3. Конфигурација на ssh клиент
    4. Генерирање и поставување на клучеви за ssh сесија
    5. Тунелирање на X апликација преку ssh
    6. Безбедно копирање преку scp/sftp
    7. Креирање на chroot-иран корисник за sftp сесија
    8. Самостојни вежби
  2. Основна безбедност на Linux машина
    1. Системска безбедност
    2. Конфигурирање на безбедни лозинки и полиси за корисниците
    3. Конфигурација на sudo корисници
    4. Безбедност на фајловиот систем
    5. Безбедност на мрежните сервиси (iptables)
      • Опис на безбедносен ѕид
      • Конфигурирање на iptables
      • GUI алатки за конфигурирање
Ден 10 (3 часа)

  1. Поставување околини за развој на софтвер
    1. Креирање на LAMP (Linux, Apache, MariaDB and PHP) сервер – 4 часа
      • Вовед во Apache негово инсталирање и подесување
      • Вовед во MariaDB негово инсталирање и подесување
      • Вовед во PHP негово инсталирање и подесување
      • хостирање на веб апликација
    2. Работа со Docker околина
      • Вовед во работа со контејнери
      • Основи на YAML
      • Поставување Docker околина за работа со контејнери
      • Работа со основни предефинирани контејнери
    3. Прилагодување на текст едитори и IDE околини во Линукс
      • Vim tips and tricks
      • Atom tips and tricks
      • VS code tips and tricks

Забелешка: Обуката е предвиден да се оддржи за 30 часа, односно 10 дена по 3 часа.

НАЧИН НА ИЗВЕДУВАЊЕ НА ОБУКАТА

Начин на изведување: Обуката може да се изведува и online и со физичко присуство, со користење на ресурсите на Факултетот за електротехника и информациски технологии во Скопје.

Динамика на изведување: Обуката ќе се изведува кога ќе се формира група 10-25 пријавени учесници. Ако има поголем интерес, обуката може да се изведува повеќе пати.

Тек на наставата: Обуката ќе се спроведе во тек на 10 работни дена, распоредени во две недели. Во двете недели се предвидени по 3 часа за секоја од предвидените теми во обуката. Проверката на стекнатото знаење ќе се изведе во текот на последниот ден од обуката. За целото времетраење на обуката, учесниците треба да изведуваат самостојна работа.

Потребни предзнаења: Обуката е на ниво за кое е потребно претходни познавања од информациско-комуникациски технологии. Курсот е наменет за дообука на инженери и програмери кои би сакале подетално на давлезат во концептите на Linux и новите платформи за развој на софтвер.

Цел на обуката:  Основи на Linux за инженери и програмери организиран од Факултетот за електротехника и информациски технологии им овозможува на слушателите стекнување со продлабочено познавање за оперативниот систем Linux, детално запознавање со концептите и оспособување за работа во овој оперативен систем. По завршување на курсот, слушателите ќе бидат оспособени за самостојно користење на оперативниот систем, негово администрирање во секојдневни работни задачи и поставување на соодветни платформи за развој на софтвер на Linux базирани оперативни системи. Сите концепти се поддржани со практични примери и соодветни вежби во Факултетските лаборатории.

Самостојна работа и проверка на знаењето: За време на обуката, се предвидува и самостојна работа на учесниците. На крај на обуката, се предвидува проверка на знаењето на учесниците.

Сертификат: По успешно завршување на обуката, учесниците ќе добијат сертификат од ФЕИТ за посетување и успешно завршување на обуката.