Python становится практичным следующим шагом, когда операционная задача перерастает короткий конвейер shell и требует структурированных данных, повторно используемой логики или надежной обработки ошибок. На этом практическом курсе вы создадите небольшие средства автоматизации Linux, используя только Python 3 и его стандартную библиотеку.
Вы будете запускать системные команды, управлять деревьями каталогов, преобразовывать конфигурацию JSON и выполнять HTTP-проверки с ограничением времени без сторонних пакетов. Итоговое испытание объединяет эти навыки в локальном скрипте, записывающем использование диска и состояние веб-службы в машиночитаемый отчет JSON.
Чему вы научитесь
- Использовать REPL Python 3 и писать скрипты для получения сведений о платформе Linux
- Запускать команды через
subprocess.run, захватывать и декодировать вывод и обрабатывать ненулевые коды завершения - Создавать каталоги и файлы, перемещать и копировать элементы с
shutilи обходить деревья черезos.walk - Фильтровать файлы по расширению и создавать резервную копию перед изменением конфигурационных данных
- Загружать JSON в словарь Python, изменять значение и записывать читаемый JSON через
json.dump - Проверять HTTP-статус через
urllib.request, задавать тайм-аут и различать HTTP-ошибки и сбои подключения - Создавать устойчивый к ошибкам скрипт проверки, который записывает результаты для диска и локальной службы в
/tmp/health_report.json
Для кого этот курс
Курс предназначен для изучающих DevOps, системных администраторов и пользователей Bash, желающих добавить в свой набор поддерживаемую автоматизацию на Python.
Предварительные требования: Базовое знакомство с терминалом Linux и файловой системой; опыт программирования на Python не требуется.
Учебная среда: Доступный в браузере терминал Linux с Python 3, Bash, nano, стандартными командами Linux, локальной HTTP-службой для проверок и стандартной библиотекой Python; установка пакетов и облачная учетная запись не нужны.
Часто задаваемые вопросы
Нужны ли сторонние пакеты Python, например Requests?
Нет. Все упражнения используют стандартную библиотеку, включая subprocess, os, shutil, json и urllib. В сетевой лабораторной намеренно применяется urllib.request, а не Requests.
Это общий курс программирования на Python?
Нет. Он знакомит с синтаксисом и управлением потоком, необходимыми для конкретных операционных задач. Классы, упаковка, веб-фреймворки, средства тестирования и общая разработка приложений не рассматриваются.
Изменят ли файловые упражнения важные системные файлы?
Нет. Вы создадите временное дерево test_env в каталоге проекта и потренируетесь переименовывать, перемещать, копировать, обходить и фильтровать его образцы файлов.
Что именно контролирует итоговая проверка здоровья?
Она выполняет df -h, проверяет ответ HTTP 200 от http://localhost, сохраняет вывод о диске и состояние службы online или offline в словаре и записывает корректный JSON с отступами в /tmp/health_report.json. Это локальный скрипт, а не развернутая система мониторинга.



