Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабораторные работы терминал / Terminal_LR4_Gorodetskiy_BST2154_v2-1.docx
Скачиваний:
12
Добавлен:
28.10.2024
Размер:
2.31 Mб
Скачать

Задание 2. Создание скрипта для получения статистики

Рисунок 22. Создан скрипт для получения статистики: осуществляет сбор статистики использования процессоров и статистики работы процессов средствами mpstat и pidstat, данные сохраняются в текстовый файл с именем yyyy-mm-dd_h:m:s_syslog. Показано содержимое текущей дириктории до и после запуска скрипта, а также его вывод команды ls -l для директории сохранения логов скрипта. Работа скрипта будет прекращена после ручного заврешения пользователем (ctrl+c).

Рисунок 23. Текст созданного скрипта.

Рисунок 24. Содержимое файла лога.

Задание 3. Создание автозапускаемой службы

Рисунок 25. Код написанной новой службы logger.service.

Рисунок 26. Произведена регистрация и запуск службы при помощи команд

sudo systemctl daemon-reload

sudo systemctl start logger.service

Проверка работы службы при помощи команды sudo systemctl status logger.service покзала, что служба была успешно зарегистрирована и запущена. Вывод показывает, что она была остановлена (inactive (dead)) и завершилась успешно (code=exited, status=0/SUCCESS). Однако в логах есть предупреждение о неправильной записи в файле сервиса, это связано с тем, что в файле сервиса logger.service есть ошибочная запись, которую система игнорирует.

Рисунок 27. Созданный ранее скрипт был немного изменен: утилиты вроде mpstat и pidstat часто требуют привилегий суперпользователя для корректной работы. Поэтому было добавлено перед этими командами sudo. В прошлом скрипте logger2.sh происходил сбор статистики с использованием утилит mpstat и pidstat. Однако этот скрипт запускается как служба через systemd. Службы systemd обычно работают в фоновом режиме и без интерактивного ввода, поэтому они также были немного изменены и добавлено ограничение времени.

Рисунок 28. Появился новый файл. Удалить сразу все логи возможно при помощи команды

find . -type f -name '*_syslog' -delete

Рисунок 29. Содержимое файла *_syslog.

Задание 4. Создание таймера

Рисунок 30. Создан таймер со следующими параметрами:

OnCalendar=*:0/1 указывает, что действие должно выполняться каждую минуту (0 минут, 1 час).

AccuracySec=60s задает точность таймера до одной минуты.

Persistent=true делает таймер постоянным, так что он перезапускается после перезагрузки системы.

Unit=logger.service указывает на сервис, который должен быть запущен этим таймером.

WantedBy=multi-user.target указывает, что этот таймер должен быть активирован при переходе в режим мультипользователя (multi-user.target).

Рисунок 31. Введены команды для активации

systemctl daemon-reload

systemctl enable logger.timer

systemctl start logger.timer

Проверить наличие нового таймера удалось при помощи команды

systemctl list-timers

Рисунок 32. Таймер остановлен и отключен командами

sudo systemctl stop logger.timer

sudo systemctl disable logger.timer

Рисунок 33. Просмотр директории выовода скрипта. Новые файлы созданы с минутным интервалом и содержат сопоставимое количество записей.

  1. Вывод

Мониторинг процессов и системное администрирование в Linux предоставляют множество возможностей для отслеживания и управления ресурсами системы. Основные инструменты и утилиты, такие как ps, top, atop, mpstat, pidstat, vmstat, iostat, позволяют получать различную информацию о состоянии системы и процессов.

Утилита ps предоставляет информацию о запущенных процессах, включая идентификаторы процессов (PID), пользователей, владельца процесса, статус процесса и многое другое.

top показывает динамическую статистику системы в реальном времени, позволяя следить за использованием ресурсов ЦПУ, памятью, загруженностью системы и другими параметрами.

Инструмент atop работает аналогично top, но также предоставляет расширенную информацию о загрузке процессора, памяти, дисков и сети. Он поддерживает возможность ведения логов и последующий анализ с помощью инструмента atopsar.

Утилита mpstat предоставляет отчеты о использовании процессоров, показывая нагрузку на каждый отдельный процессор или все процессоры вместе.

pidstat используется для мониторинга определенного процесса в реальном времени, предоставляя детальную информацию о его активности.

vmstat собирает информацию о виртуальной памяти, дисковой подсистеме и центральном процессоре.

iostat отслеживает использование устройств ввода-вывода.

Пакет sysstat включает вышеупомянутые утилиты и облегчает их использование.

Система systemd позволяет планировать выполнение служб и автоматизировать их запуск, используя файлы конфигурации unit для определения поведения сервисов. Эти файлы описывают основные параметры сервиса, такие как его описание, зависимости от других служб, команды для выполнения и условия для запуска и остановки.

Для добавления или изменения конфигурации службы необходимо обновить систему командой sudo systemctl daemon-reload, затем добавить юнит в список служб командой sudo systemctl enable, и наконец запустить службу командой sudo systemctl start. Проверить состояние службы можно командой sudo systemctl status.

Таким образом, благодаря разнообразию инструментов и утилит, Linux предоставляет мощные средства для мониторинга и управления системой, что делает работу с ней удобной и эффективной.

Для выполнения работы был установлен OpenSSHServer и дальнейшее взаимодействие с ОС производилось по средствам терминала MS PoweShell.

Рисунок 34. Информация об ОС в терминале MS PoweShell.