Введение в Linux
Программа курса
Урок 1
Вступление
История Linux. С чего все начиналось, какими ОС пользовались на компьютерах и какие тогда были компьютеры. Проект GNU. GNU и Linux ядро, появление GNU/Linux. Понятие дистрибутива. Преимущества и недостатки Linux, варианты использования Linux как версии Desktop, так и Server. Лицензии GPL. Преимущество GPL v.3 лицензии.
Установка
Обзор разновидностей Linux, их min и max требования. Обзор меню компакт-диска, возможности загрузки и возможности установки. Основные этапы инсталляции. Другие возможности инсталляции *nix-систем: с usb-носителя, автоматическая инсталляция,
с TFTP сервера по сети, с жесткого диска. Знакомство с Linux from scratch. Инсталляция
с Live CD. Понятие структуры корневого каталога. Установка загрузчика. Системные
и загрузочные файлы.
Знакомство с графическим интерфейсом
Обзор графического интерфейса. GUI — использование справки, настройка параметров системы, вызов приложений, использование нескольких рабочих столов, установка приложений, через менеджер приложений. Настройка timezone и локализация интерфейса.
Урок 2
Знакомство с CLI интерфейсом
Инсталляция и работа с программами удаленного доступа (pytty, MobaXterm) Структура файловой системы. Получение информации о дисках. Структура каталогов. Обзор структуры команд Linux.
Работа с файлами
Команды навигации, работы с каталогами и файлами, команды исследования системы. Создание ссылок. Команды архивирования.
Работа с текстовыми файлами
Работа с текстовыми редакторами vi/vim. Создание и редактирование текстовых файлов.
Урок 3
Знакомство с командной оболочкой Bash
Знакомство с командной оболочкой bash. Работа с файловым менеджером Midnight Commander (mc). Управление пользователями и группами в Linux. Права доступа к файлам и каталогами.
Процесс загрузки и демоны (службы)
Знакомство с процессом загрузки компьютера Bios -> MBR -> Boot-sector -> grub. Загрузчики Lilo, Grub2 – инсталляция, настройка, обзор возможностей. Краткое описание ядра Linux, типы ядер. Файлы и модули ядра. Загрузка ядра и его модулей. Расположение модулей ядра. Пример работы модулей ядра на примере службы udev, которая подгружает необходимые модули при обнаружении нового оборудования. Знакомство
с системами загрузки служб: Init-V, Upstart, Systemd.
Урок 4
Файловые системы
Типы файловых систем, поддерживаемых Linux (ext4, ext3, ReiserFS, BtrFS), их особенности и характеристики, возможность добавления разных модулей с поддержкой разных файловых систем. Теория про разделы, разбивка дисков GPT и MBR – преимущества и недостатки, метод именования разделов в Linux (в каталоге /dev). Особенности работы GPT. Работа с разделами с помощью fdisk. Создание файловых систем mkfs (mkfs.ext4, mkfs.ext3, …). Монтирование созданных разделов – mount. Монтирование локальных папок, файлов *.iso, монтирование smb-ресурсов, nfs, ftp. Сохранение монтирования при загрузке в /etc/fstab – его синтаксис-возможности. Возможность использования UUID и LABEL разделов при монтировании. Проверка диска на наличие ошибок fsck, e2fsck, Восстановление fs после случайного удаления. Команды: df, du, dd. Резервное копирование с использованием tar, dd.
Урок 5
Лицензирование ПО
Виды лицензий на программное обеспечение.
Установка ПО
Работа с репозиториями. Содержимое каталога /etc/apt/ обзор содержащихся файлов. Команды apt, dpkg, dpkg-reconfigure. Установка программного обеспечения с компакта с использованием GUI интерфейса и команд apt-cdrom. Personal Package Archives (PPA). Установка программ из исходников. Другие менеджеры пакетов rmp и т. д. Update, upgrade системы.
Устройства. Процессы, потоки, /proc
Устройства в Linux. Графический менеджер устройств. Просмотр параметров системы, hardinfo и т. д. Обзор каталога /dev –устройства sd, hd, ttyS0, ttyS1, mouse, usbhid (null, zero, full random). Информация об оборудовании: lspci, lshw, lsusb. Процессы в памяти. Каталог /proc. Утилиты ps, top, free. Примеры анализа и поиска нужного процесса. Удаление процесса из памяти. Знакомство со стандартными потоками ввода/вывода.
Урок 6
Обзор сетевых возможностей
Обзор поддерживаемых протоколов. Команды работы с сетью. Настройка сети из графического интерфейса. Настройка с помощью NetworkManager. Конфигурирование интерфейсов. Настройка DHCP, secondary interface. Настройка VPN через PPTP. Маршрутизация в Linux. Создание VLAN. Знакомство с межсетевым экраном NetFilter (Firewall). Работа с цепочками обработки пакетов IPTABLES
Урок 7
Права доступа и квоты
Установка и настройка SAMBA сервера. Права доступа к объектам. Команды: chmod, chown, umask. 4–х значное задание доступа (SUID, SGID, стики бит и т. д.). Настройка
и управления квотами на файловую систему.
Аудит, процессы, логи, сron, печать
Ведение логов в Linux. Каталог /var/log. Работа демона syslogd, его настройка в /etc/syslog.conf. Просмотр логов с консоли (команды less, grup, tail и т. д.) Система логирования в systemd демоном journald и команда journalctl. Ротация логов с помощью logrotate. Настройка ротации в /etc/logrotate.d. Демон cron и его настройка. Cron для пользователя. Добавление, удаление задач на выполнение. Cron как способ автоматизации бекапов. Способы печати PostScript и Ghostscript. Команды: lpd , lpr, lpq, lpc, lprm. Печать на удаленный принтер.
Урок 8
X-Server
Знакомство с концепцией X Window System (на основе X.Org Server). Менеджеры окон (оболочки рабочего стола). Знакомство с основными вариантами графических оболочек
и графических библиотек GNOME, KDE. Обзор альтернативных вариантов: Xfce, LXDE, Mezzo, ROX Desktop. Возможности параллельной установки нескольких менеджеров
и надстройки, которые меняют вид рабочего стола (например, Cairo-Doc). Возможность выполнять приложение на X Window System на удаленной машине.
Урок 9
Ядро
Теория про ядро, что оно из себя представляет, его разновидности: литые, микроядерные
и модульные/гибридные ядра. Основные функции ядра. Версии ядра. Установка ядра из репозитория и сборка и установка ядра из исходных текстов. Возможности утилиты make (make menuconfig и т. д). Опции ядра и возможность их отключать, включать и выносить
в модули. Настройки ядра. Файл .config. Завершение сборки ядра make-kpkg (fakeroot make-kpkg) и альтернативное завершение сборки ядра make (make modules, make install).
Scripting Bash. Часть 1
- Bash-скрипты: базовые понятия и синтаксис (переменные, кавычки и т. д.).
- Циклы.
Урок 10
Scripting Bash. Часть 2
- Параметры и ключи командной строки.
- Ввод и вывод.
- Сигналы, фоновые задачи, управление сценариями
- Функции и разработка библиотек.
Урок 11
Scripting Bash. Часть 3
- Sed и обработка текстов.
- Язык обработки данных AWK.
- Регулярные выражения.
- Практические примеры.
- Автоматизация интерактивных утилит.
Расписание
Время проведения курса пока не определено, отправьте нам заявку, пожалуйста.
Возможно, мы предложим пройти курс в дистанционном режиме или организуем выездной курс, если у Вас группа.