Знакомство с курсом
- О курсе
- Спикер курса
- Сертификация
- Информация о практике
1. Процесс установки Linux
Вы узнаете, как проходит процесс установки, из чего состоит ОС, что такое LVM и зачем он нужен.
Теория:
- Процесс установки Linux по этапам
- Описание автоматической установки через графический инсталлятор
- /dev
- /sys
- /proc
- LVM
Практика:
- Установить Linux без использования графического установщика
- Тест на знание начинки и этапов установки.
2. Процессы и права
Вы поймёте, как работают процессы и права, научитесь манипулировать ими через консоль.
Теория:
- Как работают процессы и права
- Методы манипуляции процессами и правами
- /proc
- lsof (сущности, которые «держит» процесс)
- attrs
Практика:
- Выполнить манипуляции с процессами и файлами на стенде: повысить приоритет процесса, поставить процесс на паузу, через ACL выдать группе права на все файлы в директории.
3. Работа в консоли
Вы изучите приёмы ускорения работы в bash и разберёте необходимые в повседневности базовые утилиты. Научитесь быстро манипулировать текстом через консоль с помощью текстового редактора vi/vim или утилит grep, awk и sed.
Теория:
- Основы работы c screen/tmux, watch
- Потоки ввода/вывода/ошибок, cat, echo
- Вывод потоков вывода через перенаправление, передача данных в поток ввода
- Переменные окружения (env)
- Работа с выводом, awk, grep, sed
Практика:
- Заменить строку в ста файлах через sed
- Получить из команды вывод в определенном формате через grep и awk
- Привести команды vim, которой можно в файле изменить одну строку на другую
- Тест на знание базовых команд vim.
4. Написание bash-скриптов
Научитесь писать bash-скрипты с циклами и условиями.
Теория:
- Условия и циклы в bash
- Как писать однострочники
- Как писать файлы сценариев bash
Практика:
- Написать bash-однострочник, который парсит большой файл
- Написать bash-скрипт, который парсит логи Nginx в удобный вид.
5. Системные сервисы
Вы узнаете, как работают сервисы в Linux и как создавать свои. Разберёте, чем отличается Systemd от SysV/OpenRC, и поймёте, что лучше использовать в конкретной ситуации. Научитесь пользоваться crond и systemd.timer.
Теория:
- Systemd (приоритетно) и SysV
- Добавление сервисов в автозагрузку
- Просмотр списка сервисов, получение их статуса
- Crond
- systemd. timer
Практика:
- Создать простой сервис, запускающий в фоне программу
- Создать systemd. timer задание, которое будет парсить логи Nginx раз в минуту и сохранять в файл.
6. Мониторинг и логирование
Вы узнаете, как получить логи на уровне системы, как посмотреть мониторинг ресурсов на уровне системы, как системы мониторинга есть и как они работают.
Теория:
- journalctl
- /var/log
- top/htop/atop
Практика:
- Посчитать количество запросов на Nginx по времени.
7. Безопасность
Вы научитесь настраивать безопасность на уровне ОС и сети, разберётесь в основных принципах.
Теория:
- SElinux (AppArmor)
- iptables/firewalld/(ufw)
- PAM
- SSH и безопасность, двухфакторная аутентификация
Практика:
- Выполнить задания на стенде — настроить безопасность.
8. Работа с systemd-nspawn
Вы научитесь создавать systemd-контейнеры, узнаете, зачем они нужны и как работают.
Теория:
- Создание контейнеров
- Ограничение ресурсов
Практика:
- Развернуть 2 nspawn-контейнера и запустить в них Nginx.
9. Отладка
Вы научитесь определять неполадки в ПО, запущенном на сервере. Изучите принципы работы бекапов: что нужно бекапить и зачем нужны бекапы.
Теория:
- gdb
- strace
- сетевые неполадки (tcpdump) / wireshark
Практика:
- Запустить на стенде программу с проблемой. Задача студента — определить проблему.
10. Сертификация
Цель — определить уровень роста навыков и пройти сертификацию Слёрма.