www.samag.ru
Журнал «БИТ. Бизнес&Информационные технологии»      
Поиск   
              
 www.samag.ru    Web  0 товаров , сумма 0 руб.
E-mail
Пароль  
 Запомнить меня
Регистрация | Забыли пароль?
Журнал "Системный администратор"
Журнал «БИТ»
Подписка
Архив номеров
Где купить
Авторам
Рекламодателям
Контакты
   

  Опросы
  Статьи

Интеграция Open Source-решений  

Open Source в облачной среде

Облачные решения становятся всё более популярными в мире. Компании стремятся использовать их для

 Читать далее...

Автоматизация  

Нейросеть вам в руки! Как использовать ИИ для автоматизации задач

Использование ИИ для автоматизации задач помогает компании получить конкурентное преимущество, поскольку объединение

 Читать далее...

Рынок труда  

Специалист по этическому ИИ, инженер по квантовым вычислениям или аналитик по метавселенной?

Новые тенденции в развитии ИТ могут привести к возникновению новых специальностей в

 Читать далее...

Книжная полка  

Учитесь убеждать и побеждать

Издательство «БХВ», как всегда, порадовало своих читателей хорошими книжными новинками. Кроме популярных

 Читать далее...

Сетевая инфраструктура  

Как удаленная работа меняет подход к сетевой инфраструктуре?

С увеличением числа сотрудников, работающих из дома, организации сталкиваются с необходимостью создания

 Читать далее...

Мониторинг  

Какой мониторинг нужен сегодня?

По мнению экспертов ГК InfoWatch, действия сотрудников – самая распространенная причина инцидентов

 Читать далее...

Книжная полка  

Руководство для тех, кто увлечен ИИ, программированием. И дизайном

Накануне лета издательство «БХВ» выпустило книжные новинки, от которых любителям чтения будет

 Читать далее...

Мобильные приложения  

Искусственный интеллект в мобильных приложениях: возможности и перспективы

Обзор современных применений ИИ в мобильных приложениях, анализ перспектив развития этой технологии,

 Читать далее...

ИТ-образование  

Как сделать ИТ-образование эффективным?

Эксперты ИТ-отрасли отвечают на вопросы «СА». Обсуждаем ключевые аспекты для улучшения образовательных

 Читать далее...

Work-life balance  

Как айтишнику найти баланс между работой и личной жизнью?

Обсуждаем инструменты для эффективного управления временем, снижения уровня стресса и достижения гармонии. На

 Читать далее...

Книжная полка  

Всё самое нужное – под одной обложкой

Отличительная черта книжных новинок, выпущенных недавно издательством «БХВ» – это их универсальность. Не просто

 Читать далее...

ИТ-инфраструктура  

Системы мониторинга ИТ-инфраструктуры-2025

Без мониторинга ИТ-инфраструктуры не обходится ни одна компания, хотя бы потому, что

 Читать далее...

Открытое ПО  

Безопасность Open Source: рискуем или контролируем?

Компания «Кросс технолоджис» изучила, как используется ПО с открытым кодом в компаниях

 Читать далее...

Работа с нейросетью  

Скажи, есть ли у тебя AI, и я скажу, кто ты

Недавно сервис по поиску работы SuperJob выяснил, что каждый второй россиянин уже

 Читать далее...

1001 и 1 книга  
19.03.2018г.
Просмотров: 9563
Комментарии: 0
Машинное обучение с использованием библиотеки Н2О

 Читать далее...

12.03.2018г.
Просмотров: 9758
Комментарии: 0
Особенности киберпреступлений в России: инструменты нападения и защита информации

 Читать далее...

12.03.2018г.
Просмотров: 7178
Комментарии: 0
Глубокое обучение с точки зрения практика

 Читать далее...

12.03.2018г.
Просмотров: 4472
Комментарии: 0
Изучаем pandas

 Читать далее...

12.03.2018г.
Просмотров: 5274
Комментарии: 0
Программирование на языке Rust (Цветное издание)

 Читать далее...

19.12.2017г.
Просмотров: 5274
Комментарии: 0
Глубокое обучение

 Читать далее...

19.12.2017г.
Просмотров: 7951
Комментарии: 0
Анализ социальных медиа на Python

 Читать далее...

19.12.2017г.
Просмотров: 4635
Комментарии: 0
Основы блокчейна

 Читать далее...

19.12.2017г.
Просмотров: 4886
Комментарии: 0
Java 9. Полный обзор нововведений

 Читать далее...

16.02.2017г.
Просмотров: 8914
Комментарии: 0
Опоздавших не бывает, или книга о стеке

 Читать далее...

17.05.2016г.
Просмотров: 12344
Комментарии: 0
Теория вычислений для программистов

 Читать далее...

30.03.2015г.
Просмотров: 13899
Комментарии: 0
От математики к обобщенному программированию

 Читать далее...

18.02.2014г.
Просмотров: 15674
Комментарии: 0
Рецензия на книгу «Читаем Тьюринга»

 Читать далее...

13.02.2014г.
Просмотров: 10538
Комментарии: 0
Читайте, размышляйте, действуйте

 Читать далее...

12.02.2014г.
Просмотров: 8564
Комментарии: 0
Рисуем наши мысли

 Читать далее...

10.02.2014г.
Просмотров: 6784
Комментарии: 4
Страна в цифрах

 Читать далее...

18.12.2013г.
Просмотров: 5934
Комментарии: 0
Большие данные меняют нашу жизнь

 Читать далее...

18.12.2013г.
Просмотров: 4804
Комментарии: 0
Компьютерные технологии – корень зла для точки роста

 Читать далее...

04.12.2013г.
Просмотров: 4503
Комментарии: 0
Паутина в облаках

 Читать далее...

03.12.2013г.
Просмотров: 4724
Комментарии: 1
Рецензия на книгу «MongoDB в действии»

 Читать далее...

Друзья сайта  

 Linux-инструмент диагностики с графическим интерфейсом – Alt Diagnostic Tool

Архив номеров / 2024 / Выпуск №3 (256) / Linux-инструмент диагностики с графическим интерфейсом – Alt Diagnostic Tool

Рубрика: Администрирование /  Диагностические инструменты компьютера

 ВИЗИТКА 



Aнтон Абрамов,
старший программист «Базальт СПО»

 

Linux-инструмент диагностики
с графическим интерфейсом – Alt Diagnostic Tool

Администратор Linux получает GUI запуска привычных скриптов для системных тестов, пользователь – удобные инструменты поиска неполадок, а техподдержка – отчет со стороны клиентов.

 

В материале пойдет речь про описание утилиты, подготовку и работу с ней, а также приводятся примеры скриптов для системных администраторов, которые бы хотели самостоятельно автоматизировать тестирование Linux-систем в организации.


1. Определение ADT

Активное замещение коммерческих западных цифровых систем в России с 2022 года положило начало широкому распространению операционных систем, создаваемых национальными командами разработчиков. Многие команды собирают дистрибутивы на основе открытой разработки ядра Linux. Необходимость массового внедрения Linux-подобных систем породила целый набор специфических требований к дистрибутивам.

В основном эти требования сводятся к двум сторонам – повышению технической компетенции пользователей, в том числе администраторов, и снижению порога сложности. Облегчение работы или освоения новых дистрибутивов необязательно связано с неопытностью пользователей, оперативный отклик также является важным требованием для сложных информационных систем. Быстрота и подробный анализ ошибок в системе пропорциональны времени решения возникающих проблем.

Рисунок 1: Внешний вид ALT Diagnostic Tool
Рисунок 2: Интерфейсы и методы объекта на шине D-Bus

Разработка «Базальт СПО», о которой пойдет речь – это графическое и терминальное приложение ALT Diagnostic Tool  (ADT) – инструмент диагностики операционной системы. ADT предназначен для запуска инструментов с тестами системы. Это может быть проверка состояния компьютера в домене, диагностики интернет-соединения, здоровья жесткого диска или стабильности RAID-массива.

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

Программа ADT предназначена для:

  1. Системных администраторов.
  2. Опытных пользователей.
  3. Службы технической поддержки.

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

Цель ALT Diagnostic Tool – предоставить удобный интерфейс запуска диагностических инструментов. Такие инструменты можно поместить в инструменты диагностики – формат работы ADT. Файлы со скриптами инструментов упакованы в пакеты и выполняются без привилегий суперпользователя.

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

Для службы технической поддержки ADT позволяет собрать необходимый набор данных со стороны клиента. В таком случае клиенту достаточно только запустить нажатием кнопки в графическом приложении необходимый набор тестов и передать результат.

Утилита предоставляет следующие возможности:

  1. Проводить диагностику системы посредством набора подготовленных тестов.
  2. Выводить на экран результаты диагностики.
  3. Сохранять файл журнала с результатами диагностики.
  4. Выполнять операции, требующие привилегий, от учетной записи непривилегированного пользователя.


2. Работа с ADT

ADT вызывает методы через системную шину системы межпроцессного взаимодействия D-Bus. Такой подход имеет ряд преимуществ:

  • Совместимость со всеми приложениями демона D-Bus.
  • Независимость от окружения рабочего стола.
  • Безопасное выполнение действий с привилегиями суперпользователя.
  • Возможности по ограничению запуска методов через сценарии polki.;
  • Управление polkit-ограничениями через групповые политики.
Рисунок 3: Список доступных тестов инструмента диагностики

Для пользователя работа с ADT сводится к трем шагам: установке пакета приложения, установке пакетов диагностических инструментов, запуску установленного приложения из системного меню или через терминал.

После запуска в графическом окне программы отобразится список из установленных инструментов диагностики, в нашем примере – диагностика состояния клиента в домене. Далее пользователь может перейти в набор тестов, запустив их все сразу или выборочно. Категории тестов делятся на вывод информации и проверку состояния. Итоговый результат в виде отчета программа позволяет сохранить в файл.

При централизованном управлении в «Альт Домене» есть возможность установки пакетов с ADT и инструментами диагностики через групповые политики. Для этого используется машинная политика установки пакета на целевые рабочие места. В ряде случаев администратору необходимо запускать приложения в привилегированном режиме, но на сторонних рабочих местах у пользователя не должно быть доступа к учетной записи локального администратора.

Большое преимущество ADT – запуск любых тестов диагностики не требует (!) привилегий суперпользователя. То есть администратору достаточно установить в систему пакет, попросить пользователя выполнить тест, и переслать файл с отчетом.

Также облегчается задача взаимодействия технической поддержки с пользователем. ADT формирует шаблон отчета и не требует постороннего вмешательства в систему. Запуск программы и выполнение теста не требует высокой технической квалификации от оператора.


3. Разработка собственных инструментов диагностики

Важная деталь – ADT специально спроектирован так, чтобы пользователи могли создавать собственные скрипты диагностики. Опытный администратор, владеющий навыками скриптовых языков, достаточно быстро сможет создать файлы собственных тестов. ADT быстро подхватит backend-файлы новых инструментов с тестами проверки.

Для нового инструмента диагностики потребуется: исполняемый файл скрипта, файл с описанием тестов диагностики *.Diagnostictool (или *.Diag), backend-файл с описанием интерфейсов объекта для шины D-Bus.

Рисунок 4: Пример описания backend-файла
 
Рисунок 5: Пример кода из файла Diagnostictool

Исполняемый файл может быть написан на любом языке, который поддерживает операционная система. Требования к файлу: вывод списка тестов через ключ «-l», вывод отчета с результатом тестирования через ключ «-r».

Тип backend-файла описывает D-Bus интерфейс и его методы. На основании backend-файла alterator-module-executor создаст на шине D-Bus и зарегистрирует интерфейсы. В тексте описания указывается несколько секций: «Alterator Entry», «Info», «Run», «List», «Report».

В первой секции указываются сведения о создаваемом интерфейсе на шине D-Bus. В этой секции обязательны пять ключей: Module (модуль обработки backend-файла), Interface (D-Bus интерфейс, для описания которого создан файл), Name (имя объекта), thread_limit (максимальное число тредов), action_id (ключ для утилиты polkit).

Секции «Info», «Run», «List», «Report» описывают методы создаваемого интерфейса – информация, запуск, список [тестов], отчет. В этих же секциях указывается путь к исполняемому файлу скрипта и внутренние параметры.

Тип файла Diagnostictool описывает тесты в составе инструмента диагностики – перечень для отображения на экране пользователю и описание. В этом файле один обязательный ключ – Name (уникальное имя теста) и три вспомогательных – DisplayName (отображаемое имя),  Comment (краткое описание), Icon (отображаемый значок).

Трех указанных файлов – исполняемого, backend, diagnostictool – уже достаточно, чтобы на системной шине D-Bus появился новый интерфейс с методами, а приложение ADT считало параметры этого интерфейса и отобразило на экране.

Общий вид путей для файлов с установкой из пакета:

/usr/share/alterator/backends/<уникальное имя>.backend
/usr/share/alterator/diagnostictools/<название инструмента>/<уникальное имя инструмента>.diagnostictool

Пути для файлов, самостоятельно разработанных пользователями для расширения функционала:

/etc/alteratot/backends/<уникальное имя>.backend
/etc/alterator/diagnostictools/<название инструмента>/<уникальное имя инструмента>.diagnostictool


4. Безопасность

У специалиста – системного администратора, читающего материал, – появится закономерный вопрос об уязвимостях ALT Diagnostic Tool. Предположим, пользователь (без прав учетной записи root) создаст сценарий командной оболочки bash c командой «rm -rf /» внутри файла, добавит к нему соответствующие diag- и backend-файлы, запустив все это через ADT. Что станет с системой после запуска такого «теста»? Отследим цепочку выполнения элементов утилиты.

Чтобы запустить исполняемый файл необходим файл .backend. Этот файл описывает D-Bus интерфейсы и методы. На основании .backend-файлов alterator-module-executor создаст и зарегистрирует на D-Bus соответствующие объекты. Модуль альтератора требует сохранять .backend-файлы для интерфейса ADT в директориях: /usr/share/alterator/backends/, либо /etc/alterator/backends/. Права на запись и исполнение в директориях /usr и /etc регулирует администратор. По умолчанию в системе установлен запрет на создание файлов в указанных директориях и подкаталогах без прав суперпользователя. Следовательно, ADT не создает дополнительную уязвимость для администратора рабочего места.


5. Тест-драйв

Чтобы посмотреть работу приложения ADT в операционной системе Альт, достаточно выполнить команды:

$su-
#apt-get update
#apt-get dist-upgrade
#apt-get install adt, domain-diag

Тем, кто заинтересуется разработкой собственных тестов для ADT, рекомендуем также ссылки на спецификацию, шаблон примера, документацию и открытый код разработки приложения.


  1. Шаблон примера инструмента диагностики https://gitlab.basealt.space/alt/diag-example
  2. Код проекта https://gitlab.basealt.space/alt/adt
  3. Спецификация https://gitlab.basealt.space/alt/alterator-entry/-/blob/master/doc/README.md

 

Ключевые слова: Альт, Linux, диагностика, тест, Alt Diagnostic Tool, D-Bus


Подпишитесь на журнал

Комментарии отсутствуют

Добавить комментарий

Комментарии могут оставлять только зарегистрированные пользователи

               Copyright © Системный администратор

Яндекс.Метрика
Tel.: (499) 277-12-45
E-mail: sa@samag.ru