Занятие 31. Linux: Mini project (Финальный проект)

📁 Блок: Linux + Bash + Git ⏱️ Время изучения: ~120 мин 🎯 Сложность: Продвинутая
#linux #cron #bash #ssh #incident-response #post-mortem

⚡ Финальный проект: восстановление Linux-сервера

Роль: веб-разработчик, которому поступила задача восстановить упавший Linux-сервер с MediaWiki на EC2 (Apache httpd).

Цель: подключиться по SSH и восстановить работоспособность — сервис, диск, конфиг, cron.

  • Среда: Amazon EC2, Apache httpd, MediaWiki, SSH
  • Проблема: httpd inactive, диск 100%, access_log = 7 ГБ, некорректный конфиг $wgServer, сломан cron
  • Итог: восстановлены — веб-сервис, дисковое пространство, конфигурационный файл, cron-задание
  • ДЗ: написать «post mortem» отчёт по выполненной работе
Оценка модуля: Домашние задания 30% + Учебный проект 60% + Финальный тест 10%

📖 О чём это занятие

Финальный проект курса Linux & Git — практическая задача в роли веб-разработчика, восстанавливающего Linux-сервер. Проект интегрирует все изученные темы: SSH, диагностика дискового пространства, управление сервисами, bash-скрипты, cron, tar.

Что делаем на проекте

  • Подключаемся к серверу по SSH
  • Диагностируем проблему: sudo service httpd status → inactive
  • Запускаем сервис, обнаруживаем ошибку «No space left on device»
  • Находим причину: access_log 7 ГБ — df -h, find / -type f -size +100M
  • Очищаем лог, восстанавливаем конфигурационный файл LocalSettings.php
  • Исправляем ошибку в $wgServer и некорректный cron root
  • Создаём скрипт backup_logs.sh для архивирования и ротации логов
  • Пишем «post mortem» отчёт по итогам

Организационная часть

Как складывается оценка по модулю

Компонент Вес
Домашние задания 30%
Учебный проект 60%
Финальный тест 10%

Шкала оценок: 1 (отлично) — 100% | 2 (хорошо) — до 80% | 3 (удовл.) — до 60% | 4 (неудовл.) — до 40% | 5 (неудовл.) — до 20%

Все домашние задания нужно сдавать до завершения недели, на которой выполняется учебный проект (до воскресенья).

📚 Что повторить перед проектом

Проект интегрирует весь курс. Для уверенной работы повторите:

Полезны все предыдущие занятия: ssh, chmod, cp, vi, grep, cat.

🎉 Поздравляем с завершением курса!

Вы прошли полный курс Linux & Git — 31 занятие от основ командной строки до командной работы в Git и восстановления production-сервера.

Что вы теперь умеете:

  • Работать в Linux: навигация, права, процессы, сети, архивация
  • Писать bash-скрипты: циклы, условия, cron, обработка логов
  • Использовать Git: коммиты, ветки, rebase, PR, командная работа
  • Диагностировать и восстанавливать Linux-серверы

← Вернуться к оглавлению курса

🎁 Хотите дальше? Загляните в бонус-урок Graphite (gt): стекированные PR — современный подход к code review поверх Git.