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

Материал из IT в школе
Перейти к навигацииПерейти к поиску
(Добавлены новые команды для версии 5.8)
 
Строка 1: Строка 1:




<big>Утилита помогает настроить компьютерный класс на операционной системе МОС 12 в школе для управления через ssh и Veyon.</big>


<big>Для работы c Veyon и настройки Veyon пользователь должен быть в группе '''wheel'''. Если Veyon не будет настраиваться или будет настраиваться не данной утилитой, то группа wheel не нужна.</big>


<big>Перед использованием основных функций программы необходимо произвести настройку кабинета, переключившись на вкладку '''"Настройка хостов"'''. Для успешной работы все компьютеры в кабинете должны находиться в одной подсети.</big>


Утилита помогает настроить компьютерный класс на операционной системе МОС 12 в школе для управления через ssh и Veyon.
==Установка==
<big>'''Внимание.''' Установка происходит только на компьютере учителя.</big>
<big>sudo dnf --refresh in comp-cab-setup</big>
<big>Или найти и установить '''comp-cab-setup''' через средство установки программ '''dnfdragora''' ('''"Пакеты"''').</big>


Для работы c Veyon и настройки Veyon пользователь должен быть в группе '''wheel'''. Если veyon не будет настраиваться или будет настраиваться не данной утилитой, то группа wheel не нужна.
== Запуск==
<big>Введите в консоли:</big>
<big>comp-cab-setup</big>
<big>Или через '''Главное меню''' -> '''Образование''' -> '''Управление компьютерным классом''' (в главном меню доступен также поиск по названию ''Управление компьютерным классом'').</big>


Перед использованием основных функций программы необходимо произвести настройку кабинета, переключившись на вкладку "Настройка хостов". Для успешной работы все компьютеры в кабинете должны находиться в одной подсети.
==Настройка==
<big>Сначала необходимо заполнить таблицу компьютеров. Для каждого компьютера необходимо указать название и адрес.</big>


== Установка ==
<big>'''''Внимание'':''' если указать адрес не в формате IP, к нему добавляется суффикс <code>.local</code>, необходимый для доступа к компьютеру в школьной сети. Если он не является необходимым, можно отредактировать файл <code>/home/пользователь/.teacher_config/ccs.conf</code>, вписав нужный суффикс или оставив пустой часть строки после знака <code>=</code>, что будет означать пустой суффикс.</big>
Только на компьютере учителя!
sudo dnf --refresh in comp-cab-setup
Или найти и установить comp-cab-setup через средство установки программ dnfdragora ("Пакеты").


== Запуск ==
<big>Остальные поля в таблице не являются обязательными, но необходимы для работы большинства функций программы:</big>
comp-cab-setup
Или через Главное меню -> Образование -> Управление компьютерным классом (в главном меню доступен также поиск по названию Управление компьютерным классом).


== Настройка ==
*<big>'''Выбор:''' логическое значение, которое показывает, будет ли выполнено на компьютере указанное действие. Если нажать на заголовок столбца (надпись "Выбор"), можно выбрать или снять выбор со всех компьютеров.</big>
Сначала необходимо заполнить таблицу компьютеров. Для каждого компьютера необходимо указать название и адрес. '''''Внимание'':''' если указать адрес не в формате IP, к нему добавляется суффикс <code>.local</code>, необходимый для доступа к компьютеру в школьной сети. Если он не является необходимым, можно отредактировать файл <code>/home/пользователь/.teacher_config/ccs.conf</code>, вписав нужный суффикс или оставив пустой часть строки после знака <code>=</code>, что будет означать пустой суффикс.
*<big>'''MAC-адрес:''' можно указать, но он определяется автоматически при установке Veyon.</big>
*<big>'''Логины и пароли ученика и админа:''' можно указать, но в случае, если они одинаковые, проще воспользоваться кнопками '''"Генерация админов"''' и '''"Генерация пользователей"''' в верхней части окна.</big>
<big>'''''Внимание'':''' в целях безопасности вместо паролей в таблице отображаются звёздочки. Посмотреть пароль можно во всплывающей подсказке, наведя на него курсор мыши.</big>
*<big>'''Настроен:''' заполняется автоматически при копировании ключей SSH.</big>
*<big>Удалённый логин: есть ли на хосте возможность удалённого входа в систему.</big>
<big>Также доступен импорт данных в таблицу:</big>
*<big>'''Из текстового файла:''' в файле должны быть в столбик перечислены адреса компьютеров, имена присваиваются автоматически. Например, если при импорте указать универсальное имя comp, то в таблице компьютерам будут даны имена comp1, comp2 и т.д.;</big>
*<big>'''из JSON:''' - импорт всех данных целиком. Импортируемый файл json должен быть создан данной программой при помощи экспорта. Внимание: если в таблице были хосты, не указанные в импортируемом файле JSON, они не удаляются, а остаются в таблице.</big>
<big>При нажатии кнопки '''"Экспорт"''' можно экспортировать список хостов со всеми их настройками в файл json.</big>


Остальные поля в таблице не являются обязательными, но необходимы для работы большинства функций программы:
[[Файл:Настройка хостов (версия 5.9).png|1200px|Настройка хостов (версия 5.9)]]


* Выбор - логическое значение, которое показывает, будет ли выполнено на компьютере указанное действие. Если нажать на заголовок столбца (надпись "Выбор"), можно выбрать или снять выбор со всех компьютеров.
==Действия на вкладке "Настройка хостов"==
* MAC-адрес: можно указать, но он определяется автоматически при установке Veyon.
<big>Начиная с версии 4, все действия на вкладке хостов разнесены на несколько боковых вкладок.</big>
* Логины и пароли ученика и админа: можно указать, но в случае, если они одинаковые, проще воспользоваться кнопками "Генерация админов" и "Генерация пользователей" в верхней части окна. ''Внимание'': в целях безопасности вместо паролей в таблице отображаются звёздочки. Посмотреть пароль можно во всплывающей подсказке, наведя на него курсор мыши.
* Настроен: заполняется автоматически при копировании ключей SSH.
*Удалённый логин: есть ли на хосте возможность удалённого входа в систему.
Также доступен импорт данных в таблицу:
* Из текстового файла: в файле должны быть в столбик перечислены адреса компьютеров, имена присваиваются автоматически. Например, если при импорте указать универсальное имя comp, то в таблице компьютерам будут даны имена comp1, comp2 и т.д.;
* из JSON - импорт всех данных целиком. Импортируемый файл json должен быть создан данной программой при помощи экспорта. Внимание: если в таблице были хосты, не указанные в импортируемом файле JSON, они не удаляются, а остаются в таблице.
При нажатии кнопки Экспорт можно экспортировать список хостов со всеми их настройками в файл json.
[[Файл:Вкладка "Настройка хостов" окна программы управления компьютерным классом.png|альт=Вкладка "Настройка хостов" окна программы управления компьютерным классом|мини|Вкладка "Настройка хостов" окна программы управления компьютерным классом]]


== Действия на вкладке "Настройка хостов" ==
[[Файл:Вкладка Настройка хостов (v 5.9).png|1200px|Вкладка Настройка хостов (v 5.9)]]
Начиная с версии 4, все действия на вкладке хостов разнесены на несколько боковых вкладок.


==== Вкладка "Сеть" ====
====Вкладка "Сеть"====
* Проверить ping. Проверяет, доступны ли отмеченные компьютеры.
*<big>'''Проверить ping.''' Проверяет, доступны ли отмеченные компьютеры.</big>
*Скорость проводных подключений. Выводит текущую скорость проводных подключений на отмеченных хостах или информацию о том, что проводных подключений нет (в случае, когда хосты подключены только по wi-fi).
*<big>'''Скорость проводных подключений.''' Выводит текущую скорость проводных подключений на отмеченных хостах или информацию о том, что проводных подключений нет (в случае, когда хосты подключены только по wi-fi).</big>
* Настроить доступ. Копирует ключи SSH с учительского компьютера на отмеченные компьютеры учеников. Перед копированием необходимо ответить на вопрос, создать ли новый ключ (возможно, с заменой) или использовать существующий на учительском компьютере. Также предлагается выбрать, добавить ли ключи к уже имеющимся на ученических компьютерах или заменить файл <code>authorized_keys</code> в папке <code>/root/.ssh</code>. При успешной настройке в столбце Настроен появится значение Да. ''Внимание'': для настройки доступа по ssh в таблице должны быть заполнены логины и пароли админов на удалённых хостах. Админ - любой пользователь из группы wheel (учитель, администратор), но не root.
*<big>'''Настроить доступ'''. Копирует ключи SSH с учительского компьютера на отмеченные компьютеры учеников. Перед копированием необходимо ответить на вопрос, создать ли новый ключ (возможно, с заменой) или использовать существующий на учительском компьютере. Также предлагается выбрать, добавить ли ключи к уже имеющимся на ученических компьютерах или заменить файл <code>authorized_keys</code> в папке <code>/root/.ssh</code>. При успешной настройке в столбце Настроен появится значение Да.</big>
* Удалить ключи. Позволяет удалить ключи ssh с выбранных компьютеров учеников. ''Внимание'': данная функция удаляет все ключи, а не только скопированные с компьютера учителя.
<big>'''''Внимание'':''' для настройки доступа по ssh в таблице должны быть заполнены логины и пароли админов на удалённых хостах. Админ - любой пользователь из группы wheel (учитель, администратор), но не root.</big>
* Получить IP по MAC. Позволяет при заполненном MAC-адресе получить IP выбранных хостов и внести их в таблицу. Внимание: при выборе данной опции существующие имена хостов будут заменены на их IP.
*<big>'''Удалить ключи'''. Позволяет удалить ключи ssh с выбранных компьютеров учеников. ''Внимание'': данная функция удаляет все ключи, а не только скопированные с компьютера учителя.</big>
*Получить MAC по IP. Позволяет при заполненном IP-адресе получить MAC-адреса выбранных хостов и внести их в таблицу.
*<big>'''Получить IP по MAC'''. Позволяет при заполненном MAC-адресе получить IP выбранных хостов и внести их в таблицу. Внимание: при выборе данной опции существующие имена хостов будут заменены на их IP.</big>
*Сменить machine-id. Позволяет сгенерировать новый уникальный идентификатор для каждого отмеченного хоста.
*<big>'''Получить MAC по IP.''' Позволяет при заполненном IP-адресе получить MAC-адреса выбранных хостов и внести их в таблицу.</big>
*Групповое переименование хостов. Позволяет присвоить хостам локальные имена, отличающиеся только номерами. Может быть полезно при настройке отдельного кабинета.
* <big>'''Сменить machine-id'''. Позволяет сгенерировать новый уникальный идентификатор для каждого отмеченного хоста.</big>
*<big>'''Групповое переименование хостов.''' Позволяет присвоить хостам локальные имена, отличающиеся только номерами. Может быть полезно при настройке отдельного кабинета.</big>


==== Вкладка "Пользователи" ====
====Вкладка "Пользователи"====
* Создать учётные записи учеников. Позволяет создать на выбранных компьютерах учётные записи учеников с указанными в таблице логинами и паролями. На Рабочем столе у созданных учеников также будут созданы папки Задания и Сдать работы.
* <big>'''Создать учётные записи учеников''' - позволяет создать на выбранных компьютерах учётные записи учеников с указанными в таблице логинами и паролями. На Рабочем столе у созданных учеников также будут созданы папки Задания и Сдать работы.</big>
* Удалить учётные записи учеников. Позволяет удалить на выбранных компьютерах учётные записи учеников вместе с их домашними папками.
*<big>'''Удалить учётные записи учеников''' - позволяет удалить на выбранных компьютерах учётные записи учеников вместе с их домашними папками.</big>
* Включить и выключить автологин учеников - позволяет управлять удалённым входом в систему на выбранных компьютерах.
*<big>'''Включить и выключить автологин учеников''' - позволяет управлять удалённым входом в систему на выбранных компьютерах.</big>
*Копировать архив /home с сервера - позволяет скопировать с сервера архив эталонной домашней папки на выбранные хосты для последующего их восстановления также при помощи данной утилиты.
*<big>'''Создать и копировать архив /home с сервера''' - позволяет скопировать с сервера архив эталонной домашней папки на выбранные хосты для последующего их восстановления также при помощи данной утилиты.</big>
*<big>'''Копировать существующий архив /home с сервера''' - позволяет скопировать с сервера существующий архив домашней папки на выбранные хосты.</big>
*<big>'''Копировать архив /home с хоста на сервер''' - позволяет скопировать с хостов существующий архив домашней папки на сервер.</big>


==== Вкладка "Veyon" ====
====Вкладка "Veyon"====  
* Установить Veyon - устанавливает veyon на компьютере учителя (если он уже был установлен, установка не производится) и veyon-core на компьютерах учеников. ''Внимание'': на компьютерах учеников в трее может не появляться значок Veyon, что никак не влияет на его работоспособность.
*<big>'''Установить Veyon''' - устанавливает Veyon на компьютере учителя (если он уже был установлен, установка не производится) и veyon-core на компьютерах учеников.</big>
* Настроить Veyon: позволяет создать кабинет для управления при помощи Veyon и добавить в него выбранные компьютеры. ''Внимание'': если кабинет уже существует, будет предложено заменить его или добавить компьютеры в уже существующий; также если в текущем кабинете уже существуют указанные компьютеры, их тоже можно будет заменить, оставить или добавить копии. ''Внимание'': для корректной работы Veyon пользователь на компьютере учителя должен входить в группу wheel. Также на компьютерах учеников должен быть запущен сеанс X11. Если Veyon установлен, настроен, но компьютеры отображаются как недоступные, вероятно, что проблема в типе сеанса (wayland). В таком случае нужно завершить сеанс и залогиниться заново, выбрав в нижней части экрана тип сеанса Plasma (X11).
<big>'''''Внимание'':''' на компьютерах учеников в трее может не появляться значок Veyon, что никак не влияет на его работоспособность.</big>
*Удалить с сервера ключи Veyon. Удаляет с сервера (компьютер учителя) ключи Veyon. Может быть полезно при полной перенастройке Veyon в кабинете.
*<big>'''Настроить Veyon''' - позволяет создать кабинет для управления при помощи Veyon и добавить в него выбранные компьютеры.</big>
*Удалить с хостов ключи Veyon. Удаляет с отмеченных хостов ключи Veyon. Может быть полезно при полной перенастройке Veyon в кабинете.
'''''<big>Внимание</big>'''''
*Копировать ключ на хосты. Копирует существующий публичный ключ Veyon с сервера на отмеченные хосты. Может быть полезно, если Veyon перестал "видеть" некоторые хосты.
*Проверить ключи на хостах. Позволят проверить совпадение ключей Veyon на сервере и выбранных хостах, а также права доступа к ним.
* Рестарт службы Veyon на сервере и хостах. Перезапускает службу veyon.service на сервере и отмеченных хостах соответственно. Может быть полезно при внесении изменений в настройку Veyon.


==== Вкладка "Выполнение команд" ====
<big>- Если кабинет уже существует, будет предложено заменить его или добавить компьютеры в уже существующий; также если в текущем кабинете уже существуют указанные компьютеры, их тоже можно будет заменить, оставить или добавить копии.</big>
* Выполнить команду от root: отправляет по SSH на выбранные компьютеры введённую команду, которая будет выполнена от root. Также есть возможность выбрать из списка распространённых команд:
** обновить и перезагрузить хосты (с возможность вывода уведомления);
** обновить и выключить хосты (с возможностью уведомления, а также последующего выключения сервера);
** перезагрузить хосты;
** выключить хосты;
** установить программы (будет предложено ввести названия программ в виде списка или выбрать из списка популярных программ);
**удалить программы (аналогично);
**добавить языки ввода;
**очистить буфер обмена (вместе с историей);
** выполнить команду из файла.
Каждую из предложенных команд можно отправить на хосты как последовательно, так и параллельно (не рекомендуется при слабой сети). Последовательное выполнение занимает больше времени, но сервер получает вывод каждой выполняемой команды. При параллельном выполнении команда отправляется на хосты и дальше выполняется там без связи с сервером, освобождая интерфейс утилиты для следующих задач.


* Установить и удалить программы - тот же функционал, что при установке или удалении программ через выполнение команд.
<big>- Для корректной работы Veyon пользователь на компьютере учителя должен входить в группу wheel. Также на компьютерах учеников должен быть запущен сеанс X11. Если Veyon установлен, настроен, но компьютеры отображаются как недоступные, вероятно, что проблема в типе сеанса (wayland). В таком случае нужно завершить сеанс и залогиниться заново, выбрав в нижней части экрана тип сеанса Plasma (X11).</big>
* Скопировать файл - позволяет скопировать файл с сервера на отмеченные хосты. При нажатии данной кнопки будет необходимо выбрать папку на хостах, куда будет произведено копирование. Также есть возможность скопировать файл как правила nftables (для ограничения работы сети на хостах) или скрипт автозагрузки для пользователя - в этом случае проверяется наличие шебанга в начале скрипта.
*<big>'''Удалить с сервера ключи Veyon.''' Удаляет с сервера (компьютер учителя) ключи Veyon. Может быть полезно при полной перенастройке Veyon в кабинете.</big>
*Скопировать папку с хостов - копирование папки с одинаковым расположением на хостах в указанную на сервере локацию.
* <big>'''Удалить с хостов ключи Veyon.''' Удаляет с отмеченных хостов ключи Veyon. Может быть полезно при полной перенастройке Veyon в кабинете.</big>
*Скопировать /etc/skel - копирование /etc/skel с сервера на выбранные хосты для создания эталонной домашней папки.
*<big>'''Копировать ключ на хосты.''' Копирует существующий публичный ключ Veyon с сервера на отмеченные хосты. Может быть полезно, если Veyon перестал "видеть" некоторые хосты.</big>
* Включить удалённый вход в систему - установка на хостах пакета, позволяющего осуществлять удалённый вход пользователей в систему, и запуск соответствующей службы.
*<big>'''Проверить ключи на хостах.''' Позволят проверить совпадение ключей Veyon на сервере и выбранных хостах, а также права доступа к ним.</big>
* Очистка конфигов пользователей - позволяет очистить на хостах конфиги распространённых программ для указанного пользователя (или для всех пользователей).
*<big>'''Рестарт службы Veyon на сервере и хостах.''' Перезапускает службу veyon.service на сервере и отмеченных хостах соответственно. Может быть полезно при внесении изменений в настройку Veyon.</big>
*Включение хостов - позволяет отправить на хосты команду включения по wakeonlan.


==== Вкладка "Ограничения профиля" ====
====Вкладка "Выполнение команд"====
*<big>'''Выполнить команду от root''': отправляет по SSH на выбранные компьютеры введённую команду, которая будет выполнена от root. Также есть возможность выбрать из списка распространённых команд:</big>
**<big>обновить и перезагрузить хосты (с возможность вывода уведомления);</big>
**<big>обновить и выключить хосты (с возможностью уведомления, а также последующего выключения сервера);</big>
**<big>перезагрузить хосты;</big>
** <big>выключить хосты;</big>
**<big>установить программы (будет предложено ввести названия программ в виде списка или выбрать из списка популярных программ);</big>
**<big>удалить программы (аналогично);</big>
**<big>добавить языки ввода;</big>
**<big>очистить буфер обмена (вместе с историей);</big>
**<big>выполнить команду из файла.</big>
<big>Каждую из предложенных команд можно отправить на хосты как последовательно, так и параллельно (не рекомендуется при слабой сети). Последовательное выполнение занимает больше времени, но сервер получает вывод каждой выполняемой команды. При параллельном выполнении команда отправляется на хосты и дальше выполняется там без связи с сервером, освобождая интерфейс утилиты для следующих задач.</big>


* Запретить/разрешить изменения рабочего стола - позволяет запретить указанным пользователям менять элементы рабочего стола. Физически их можно менять, но при перезагрузке рабочий стол вернётся в исходное состояние.
*<big>'''Установить и удалить программы''' - тот же функционал, что при установке или удалении программ через выполнение команд.</big>
* Отключить/ограничить/восстановить интернет на хостах - выполняет указанные действия на отмеченных хостах. Ограничение интернета позволяет оставить доступными ограниченное количество портов и адресов. Более подробно здесь: [[Блокировка интернета в МОС-12 при помощи nftables]]
*<big>'''Скопировать файл на хосты''' - позволяет скопировать файл с сервера на отмеченные хосты. При нажатии данной кнопки будет необходимо выбрать папку на хостах, куда будет произведено копирование. Также есть возможность скопировать файл как правила nftables (для ограничения работы сети на хостах) или скрипт автозагрузки для пользователя - в этом случае проверяется наличие шебанга в начале скрипта.</big>
* Отключить/включить фаервол на хостах: выполняет указанные действия на отмеченных хостах.
*<big>'''Скопировать папку с хостов''' - копирование папки с одинаковым расположением на хостах в указанную на сервере локацию.</big>
* Отключить/включить wi-fi на хостах: выполняет указанные действия на отмеченных хостах.
*<big>'''Скопировать /etc/skel''' - копирование /etc/skel с сервера на выбранные хосты для создания эталонной домашней папки.</big>
* Защитить/разрешить изменения wi-fi на хостах: при включении защиты при попытке изменить настройки беспроводного соединения на отмеченных хостах будет запрашиваться администраторский пароль.
*<big>'''Включить удалённый вход в систему''' - установка на хостах пакета, позволяющего осуществлять удалённый вход пользователей в систему, и запуск соответствующей службы.</big>
* Запретить/разрешить изменения сети на хостах: при включении запрета любому пользователю не из группы wheel будут запрещены любые действия, связанные с настройкой сети, на отмеченных хостах.
*<big>'''Очистка конфигов пользователей''' - позволяет очистить на хостах конфиги распространённых программ для указанного пользователя (или для всех пользователей).</big>
* Отключить/включить устройства ввода на хостах: при отключении на отмеченных хостах будут отключены мышь и клавиатура.
*<big>'''Включение хостов''' - позволяет отправить на хосты команду включения по wakeonlan.</big>
*Установка приложений из магазина: разрешает установку приложений из Магазина приложений только администратору или всем пользователям.
* Защита настроек хостов паролем: при включении защиты вкладка "Настройка хостов" на учительском компьютере будет требовать установленный пароль при переключении на неё. Это может быть полезно в случае, если администратор, настраивающий компьютерный класс при помощи данной утилиты, и учитель, работающий в данном кабинете - разные люди, и администратор хочет быть уверенным в том, что его настройки останутся без изменений.


[[Файл:Вкладка "Учителю" окна программы управления компьютерным классом.png|альт=Вкладка "Учителю" окна программы управления компьютерным классом|мини|Вкладка "Учителю" окна программы управления компьютерным классом]]
====Вкладка "Ограничения профиля"====


== Действия на вкладке "Учителю" ==
*<big>'''Запретить/разрешить изменения рабочего стола''' - позволяет запретить указанным пользователям менять элементы рабочего стола. Физически их можно менять, но при перезагрузке рабочий стол вернётся в исходное состояние.</big>
*<big>'''Отключить/ограничить/восстановить интернет на хостах''' - выполняет указанные действия на отмеченных хостах. Ограничение интернета позволяет оставить доступными ограниченное количество портов и адресов. Более подробно здесь: [[Блокировка интернета в МОС-12 при помощи nftables]]</big>
*<big>'''Отключить/включить фаервол на хостах:''' выполняет указанные действия на отмеченных хостах.</big>
*<big>'''Отключить/включить wi-fi на хостах''': выполняет указанные действия на отмеченных хостах.</big>
*<big>'''Защитить/разрешить изменения wi-fi на хостах''': при включении защиты при попытке изменить настройки беспроводного соединения на отмеченных хостах будет запрашиваться администраторский пароль.</big>
*<big>'''Запретить/разрешить изменения сети на хостах:''' при включении запрета любому пользователю не из группы wheel будут запрещены любые действия, связанные с настройкой сети, на отмеченных хостах.</big>
*<big>'''Отключить/включить устройства ввода на хостах:''' при отключении на отмеченных хостах будут отключены мышь и клавиатура.</big>
*<big>'''Установка приложений из магазина:''' разрешает установку приложений из Магазина приложений только администратору или всем пользователям.</big>
*<big>'''Защита настроек хостов паролем:''' при включении защиты вкладка "Настройка хостов" на учительском компьютере будет требовать установленный пароль при переключении на неё. Это может быть полезно в случае, если администратор, настраивающий компьютерный класс при помощи данной утилиты, и учитель, работающий в данном кабинете - разные люди, и администратор хочет быть уверенным в том, что его настройки останутся без изменений.</big>


==== Верхняя группа кнопок ====
==Действия на вкладке "Учителю" ==


*Выбрать всё - выбор всех компьютеров из списка.
[[Файл:Вкладка Учителю (5.9).png|1200px|Вкладка Учителю (5.9)]]
* Очистить выбор - снятие выбора со всех компьютеров. Также можно выбирать компьютеры мышью при помощи клавиш Ctrl и Shift.
*Генерация пользователей - заполнение таблицы одинаковыми логинами и паролями пользователей.
* Сохранить, удалить профиль и перейти к профилю - позволяет быстро сохранить (требуется только ввод названия), удалить или загрузить список хостов с логинами и паролями пользователей. В отличие от импорта из JSON, здесь существующие в таблице хосты не сохраняются. Опция предназначена для управления несколькими компьютерными кабинетами с одного сервера.


==== Группа "Работы и задания" ====
====Верхняя группа кнопок====  
*Создать папку Сдать работы - создаёт папку Сдать работы на Рабочем столе учеников на выбранных компьютерах. Также, если этой папки не было, она создаётся автоматически при раздаче заданий или неудачной попытке их сбора;
*Собрать работы - позволяет скопировать работы из папки Сдать работы с Рабочего стола учеников в папку Работы на Рабочем столе учителя, где создаются подпапки с указанным именем, а также текущей датой и временем в названии. Здесь и далее при обмене файлами ученик - это текущий пользователь на хосте, включая гостя и пользователя с учётной записью mos.ru;
* Очистить работы - очищает папку Сдать работы на Рабочем столе учеников на выбранных компьютерах;
* Раздать задания - позволяет скопировать выбранные в файловом диалоге файлы с компьютера учителя в папку Задания на Рабочем столе учеников;
* Очистить задания - очищает папку Задания на Рабочем столе учеников на выбранных компьютерах.


==== Группа "Архивация и восстановление" ====
*<big>'''Выбрать всё''' - выбор всех компьютеров из списка.</big>
*Архивировать /home - создаёт архив домашней папки ученика на выбранных компьютерах;
*<big>'''Очистить выбор''' - снятие выбора со всех компьютеров. Также можно выбирать компьютеры мышью при помощи клавиш Ctrl и Shift.</big>
* Восстановить /home - восстанавливает домашнюю папку ученика из архива в случае его наличия на выбранных компьютерах;
*<big>'''Генерация пользователей''' - заполнение таблицы одинаковыми логинами и паролями пользователей.</big>
* Создать снимок /home - создаёт снимок домашней папки выбранной учётной записи на хостах (в случае наличия на них файловой системы BTRFS). Если снимок, созданный данной утилитой, уже существовал, то он перезаписывается;
*<big>'''Сохранить, удалить профиль и перейти к профилю''' - позволяет быстро сохранить (требуется только ввод названия), удалить или загрузить список хостов с логинами и паролями пользователей. В отличие от импорта из JSON, здесь существующие в таблице хосты не сохраняются. Опция предназначена для управления несколькими компьютерными кабинетами с одного сервера.</big>
*Восстановить /home из снимка - восстанавливает домашнюю папку выбранной учётной записи на хостах (в случае наличия на них файловой системы BTRFS и созданного при помощи данной утилиты снимка).


==== Группа "Действия на хостах" ====
====Группа "Работы и задания"====
*Отобразить имя - отображает названия (как в таблице) выбранных компьютеров на их экранах;
*<big>'''Создать папку Сдать работы''' - создаёт папку ''Сдать работы'' на Рабочем столе учеников на выбранных компьютерах. Также, если этой папки не было, она создаётся автоматически при раздаче заданий или неудачной попытке их сбора;</big>
*Поменять обои - устанавливает выбранное изображение в качестве обоев рабочего стола для указанных пользователей на выбранных хостах;
*<big>'''Собрать работы''' - позволяет скопировать работы из папки ''Сдать работы'' с Рабочего стола учеников в папку ''Работы'' на Рабочем столе учителя, где создаются подпапки с указанным именем, а также текущей датой и временем в названии. Здесь и далее при обмене файлами ученик - это текущий пользователь на хосте, включая гостя и пользователя с учётной записью ''mos.ru'';</big>
*Открыть браузер - открывает браузер Chromium с указанной на сервере страницей на выбранных компьютерах;
*<big>'''Очистить работы''' - очищает папку ''Сдать работы'' на Рабочем столе учеников на выбранных компьютерах;</big>
*Удалённая авторизация учеников - при заранее включённой возможности удалённой авторизации осуществляет вход в систему указанных в таблице пользователей на выбранных хостах;
*<big>'''Раздать задания''' - позволяет скопировать выбранные в файловом диалоге файлы с компьютера учителя в папку ''Задания'' на Рабочем столе учеников;</big>
*Удалённый выход из системы - при заранее включённой возможности удалённой авторизации осуществляет выход из системы текущего пользователя на выбранных хостах;
*<big>'''Вернуть на доработку''' - позволяет отправить файл с компьютера учителя на компьютер учеников для последующей работы с данным файлом;</big>
*Регистрация на уроке - открывает на отмеченных хостах экран авторизации, где ученик должен ввести свои фамилию и имя. Полученный результат (имена хостов с именами учеников, которые за ними работают) сохраняется в указанном файле на компьютере учителя и может быть полезен ему при анализе результатов урока, например, собранных или оставленных на компьютерах выполненных работ;
*<big>'''Очистить задания''' - очищает папку ''Задания'' на Рабочем столе учеников на выбранных компьютерах.</big>
*Закрыть окна - закрывает все открытые браузеры на выбранных хостах или блокирует графическую сессию для привлечения внимания учеников к процессу урока;
*Перезагрузить - перезагружает выбранные хосты.


==== Группа "Действия на сервере" ====
====Группа "Архивация и восстановление" ====  
*Открыть проводник - открывает на сервере Dolphin для обзора файловой системы на одном выбранном компьютере;
*<big>'''Архивировать /home''' - создаёт архив домашней папки ученика на выбранных компьютерах;</big>
* Открыть папку Работы - открывает папку Работы с собранными работами учеников на сервере.
*<big>'''Восстановить /home''' - восстанавливает домашнюю папку ученика из архива в случае его наличия на выбранных компьютерах;</big>
*<big>'''Создать снимок /home''' - создаёт снимок домашней папки выбранной учётной записи на хостах (в случае наличия на них файловой системы BTRFS). Если снимок, созданный данной утилитой, уже существовал, то он перезаписывается;</big>
*<big>'''Восстановить /home из снимка''' - восстанавливает домашнюю папку выбранной учётной записи на хостах (в случае наличия на них файловой системы BTRFS и созданного при помощи данной утилиты снимка).</big>


== Меню окна ==
====Группа "Действия на хостах" ====
* <big>'''Отобразить имя''' - отображает названия (как в таблице) выбранных компьютеров на их экранах;</big>
*<big>'''Поменять обои''' - устанавливает выбранное изображение в качестве обоев рабочего стола для указанных пользователей на выбранных хостах;</big>
*<big>'''Открыть браузер''' - открывает браузер Chromium с указанной на сервере страницей на выбранных компьютерах;</big>
*<big>'''Удалённая авторизация учеников''' - при заранее включённой возможности удалённой авторизации осуществляет вход в систему указанных в таблице пользователей на выбранных хостах;</big>
* <big>'''Удалённый выход из системы''' - при заранее включённой возможности удалённой авторизации осуществляет выход из системы текущего пользователя на выбранных хостах;</big>
*<big>'''Регистрация на уроке''' - открывает на отмеченных хостах экран авторизации, где ученик должен ввести свои фамилию и имя. Полученный результат (имена хостов с именами учеников, которые за ними работают) сохраняется в указанном файле на компьютере учителя и может быть полезен ему при анализе результатов урока, например, собранных или оставленных на компьютерах выполненных работ;</big>
*<big>'''Закрыть окна''' - закрывает все открытые браузеры на выбранных хостах или блокирует графическую сессию для привлечения внимания учеников к процессу урока;</big>
*<big>'''Перезагрузить''' - перезагружает выбранные хосты.</big>


* Справка - открывает встроенную в программу справку со ссылками на данную статью, FAQ и changelog.
====Группа "Действия на сервере"====
* Показать лог - открывает проводник с выделенным файлом лога.
*<big>'''Открыть проводник''' - открывает на сервере Dolphin для обзора файловой системы на одном выбранном компьютере;</big>
* Запустить веб-версию - запускает сервер для управления классом с телефона учителя.
*<big>'''Открыть папку Работы''' - открывает папку ''Работы'' с собранными работами учеников на сервере.</big>
* Выход - закрывает программу.


== Часто возникающие проблемы ==
==Меню окна==


* После перенастройки ssh не получается подключиться к хостам. Это может быть связано с тем, что отпечаток хоста хранится в файле ~/.ssh/known_hosts и не совпадает с существующим. Можно удалить отпечаток из known_hosts (при помощи данной программы или вручную). Также можно удалить known_hosts полностью. Ещё может помочь удаление ключей ssh с хостов (выполняется также при помощи данной утилиты).
*<big>'''Справка''' - открывает встроенную в программу справку с ссылками на данную статью, FAQ и changelog.</big>
* После настройки ssh программа всё равно требует пароли на удалённых компьютерах. Это может произойти только вследствие замены ключа. Лучший способ исправить проблему - перенастроить ssh при помощи данной программы.
*<big>'''Показать лог''' - открывает проводник с выделенным файлом лога.</big>
* Устройства недоступны, не проходит пинг. В таком случае следует проверить, корректно ли вписаны адреса. Также адрес может быть по ошибке вписан в поле для названия хоста (см. рисунок). Также в некоторых случаях соединение лучше устанавливается, если использовать не локальное имя, а IP хоста.
*<big>'''Запустить веб-версию''' - запускает сервер для управления классом с телефона учителя.</big>
*При помощи данной утилиты на хосте был отключён wi-fi, являющийся единственным сетевым соединением. В этом случае на данном хосте нужно выполнить команду:  
*<big>'''Выход''' - закрывает программу.</big>
 
==Часто возникающие проблемы==
 
*<big>'''После перенастройки ssh не получается подключиться к хостам.''' Это может быть связано с тем, что отпечаток хоста хранится в файле '''''~/.ssh/known_hosts''''' и не совпадает с существующим. Можно удалить отпечаток из '''known_hosts''' (при помощи данной программы или вручную). Также можно удалить '''known_hosts''' полностью. Ещё может помочь удаление ключей ssh с хостов (выполняется также при помощи данной утилиты).</big>
 
[[Файл:Ошибка после перенастройки хостов.jpg|1000px|Ошибка после перенастройки хостов]]
 
*<big>'''После настройки ssh программа всё равно требует пароли на удалённых компьютерах.''' Это может произойти только вследствие замены ключа. Лучший способ исправить проблему - перенастроить ssh при помощи данной программы.</big>
*<big>'''Устройства недоступны, не проходит пинг.''' В таком случае следует проверить, корректно ли вписаны адреса. Также адрес может быть по ошибке вписан в поле для названия хоста. Также в некоторых случаях соединение лучше устанавливается, если использовать не локальное имя, а IP хоста.</big>
*<big>'''При помощи данной утилиты на хосте был отключён wi-fi, являющийся единственным сетевым соединением.''' В этом случае на данном хосте нужно выполнить команду:</big>
  systemctl unmask wpa_supplicant ; systemctl start wpa_supplicant ; nmcli radio wifi on
  systemctl unmask wpa_supplicant ; systemctl start wpa_supplicant ; nmcli radio wifi on
[[Файл:Ping fail.png|мини|Ошибка заполнения таблицы хостов]]


== Консольная версия ==
[[Файл:5-Ошибка заполнения таблицы хостов (5.9).jpg|1000px|Ошибка заполнения таблицы хостов (5.9)]]
В настоящее время программу можно запускать в консольной версии со следующими параметрами командной строки:
 
==Консольная версия==
<big>В настоящее время программу можно запускать в консольной версии. Для этого введите в консоли <code>comp-cab-setup</code> и нужный параметр из списка команд ниже:</big>


* registration - запуск регистрации на уроке;
*<big><code>help</code> - вывод справки;</big>
* poweroff - выключить хосты;
*<big><code>registration</code> - запуск регистрации на уроке;</big>
* reboot - перезагрузить хосты;
*<big><code>poweroff</code> - выключить хосты;</big>
* end-session - завершить текущую сессию на хостах;
*<big><code>poweron</code> - включить хосты (должен поддерживаться wakeonlan);</big>
* lock-session - заблокировать текущую сессию на хостах;
*<big><code>authorize</code> - авторизация учеников;</big>
* close-browsers - закрыть все браузеры на хостах;
*<big><code>reboot</code> - перезагрузить хосты;</big>
* show-hostnames - отобразить имена хостов;
*<big><code>end-session</code> - завершить текущую сессию на хостах;</big>
* get-works - собрать работы учеников;
*<big><code>lock-session</code> - заблокировать текущую сессию на хостах;</big>
* open-browser - открыть браузер на хостах (следующий параметр - адрес страницы для открытия);
*<big><code>close-browsers</code> - закрыть все браузеры на хостах;</big>
* internet-off - выключить интернет на хостах;
*<big><code>show-hostnames</code> - отобразить имена хостов;</big>
* internet-on - включить интернет на хостах;
*<big><code>get-works</code> - собрать работы учеников;</big>
* input-off - выключить устройства ввода на хостах;
*<big><code>open-browser</code> - открыть браузер на хостах (следующий параметр - адрес страницы для открытия);</big>
* input-on - включить устройства ввода на хостах.
*<big><code>internet-off</code> - выключить интернет на хостах;</big>
*<big><code>internet-on</code> - включить интернет на хостах;</big>
*<big><code>input-off</code> - выключить устройства ввода на хостах;</big>
*<big><code>input-on</code> - включить устройства ввода на хостах.</big>


Данные команды будут отправлены на отмеченные хосты на вкладке настройки хостов на компьютере учителя.
<big>Данные команды будут отправлены на отмеченные хосты на вкладке настройки хостов на компьютере учителя.</big>


== Дополнительно ==
==Дополнительно==
Исходный код: https://hub.mos.ru/mos/src/comp-cab-setup
<big>'''Исходный код:''' https://hub.mos.ru/mos/src/comp-cab-setup</big>


Логи: ~/.teacher_control/log.txt
<big>'''Логи:''' '''''~/.teacher_control/log.txt'''''</big>


Текущий список устройств (не рекомендуется для редактирования вручную): ~/.teacher_control/hosts.json
<big>'''Текущий список устройств''' (не рекомендуется для редактирования вручную): '''''~/.teacher_control/hosts.json'''''</big>


Сохранённый список настроенных хостов: ~/.teacher_control/setup_hosts.json
<big>'''Сохранённый список настроенных хостов''': '''''~/.teacher_control/setup_hosts.json'''''</big>


== Лицензия ==
==Лицензия==
GPLv3
<big>GPLv3</big>


== Авторы ==
==Авторы==
Команда разработки МОС
<big>Команда разработки МОС</big>
[[Категория:МОС12]]
[[Категория:МОС12]]
[[Категория:Приложения]]
[[Категория:Приложения]]
[[Категория:Информатика]]
[[Категория:Информатика]]
[[Категория:ПК и Ноутбуки]]
[[Категория:ПК и Ноутбуки]]

Текущая версия на 14:51, 16 февраля 2026


Утилита помогает настроить компьютерный класс на операционной системе МОС 12 в школе для управления через ssh и Veyon.

Для работы c Veyon и настройки Veyon пользователь должен быть в группе wheel. Если Veyon не будет настраиваться или будет настраиваться не данной утилитой, то группа wheel не нужна.

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

Установка

Внимание. Установка происходит только на компьютере учителя.

sudo dnf --refresh in comp-cab-setup

Или найти и установить comp-cab-setup через средство установки программ dnfdragora ("Пакеты").

Запуск

Введите в консоли:

comp-cab-setup

Или через Главное меню -> Образование -> Управление компьютерным классом (в главном меню доступен также поиск по названию Управление компьютерным классом).

Настройка

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

Внимание: если указать адрес не в формате IP, к нему добавляется суффикс .local, необходимый для доступа к компьютеру в школьной сети. Если он не является необходимым, можно отредактировать файл /home/пользователь/.teacher_config/ccs.conf, вписав нужный суффикс или оставив пустой часть строки после знака =, что будет означать пустой суффикс.

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

  • Выбор: логическое значение, которое показывает, будет ли выполнено на компьютере указанное действие. Если нажать на заголовок столбца (надпись "Выбор"), можно выбрать или снять выбор со всех компьютеров.
  • MAC-адрес: можно указать, но он определяется автоматически при установке Veyon.
  • Логины и пароли ученика и админа: можно указать, но в случае, если они одинаковые, проще воспользоваться кнопками "Генерация админов" и "Генерация пользователей" в верхней части окна.

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

  • Настроен: заполняется автоматически при копировании ключей SSH.
  • Удалённый логин: есть ли на хосте возможность удалённого входа в систему.

Также доступен импорт данных в таблицу:

  • Из текстового файла: в файле должны быть в столбик перечислены адреса компьютеров, имена присваиваются автоматически. Например, если при импорте указать универсальное имя comp, то в таблице компьютерам будут даны имена comp1, comp2 и т.д.;
  • из JSON: - импорт всех данных целиком. Импортируемый файл json должен быть создан данной программой при помощи экспорта. Внимание: если в таблице были хосты, не указанные в импортируемом файле JSON, они не удаляются, а остаются в таблице.

При нажатии кнопки "Экспорт" можно экспортировать список хостов со всеми их настройками в файл json.

Настройка хостов (версия 5.9)

Действия на вкладке "Настройка хостов"

Начиная с версии 4, все действия на вкладке хостов разнесены на несколько боковых вкладок.

Вкладка Настройка хостов (v 5.9)

Вкладка "Сеть"

  • Проверить ping. Проверяет, доступны ли отмеченные компьютеры.
  • Скорость проводных подключений. Выводит текущую скорость проводных подключений на отмеченных хостах или информацию о том, что проводных подключений нет (в случае, когда хосты подключены только по wi-fi).
  • Настроить доступ. Копирует ключи SSH с учительского компьютера на отмеченные компьютеры учеников. Перед копированием необходимо ответить на вопрос, создать ли новый ключ (возможно, с заменой) или использовать существующий на учительском компьютере. Также предлагается выбрать, добавить ли ключи к уже имеющимся на ученических компьютерах или заменить файл authorized_keys в папке /root/.ssh. При успешной настройке в столбце Настроен появится значение Да.

Внимание: для настройки доступа по ssh в таблице должны быть заполнены логины и пароли админов на удалённых хостах. Админ - любой пользователь из группы wheel (учитель, администратор), но не root.

  • Удалить ключи. Позволяет удалить ключи ssh с выбранных компьютеров учеников. Внимание: данная функция удаляет все ключи, а не только скопированные с компьютера учителя.
  • Получить IP по MAC. Позволяет при заполненном MAC-адресе получить IP выбранных хостов и внести их в таблицу. Внимание: при выборе данной опции существующие имена хостов будут заменены на их IP.
  • Получить MAC по IP. Позволяет при заполненном IP-адресе получить MAC-адреса выбранных хостов и внести их в таблицу.
  • Сменить machine-id. Позволяет сгенерировать новый уникальный идентификатор для каждого отмеченного хоста.
  • Групповое переименование хостов. Позволяет присвоить хостам локальные имена, отличающиеся только номерами. Может быть полезно при настройке отдельного кабинета.

Вкладка "Пользователи"

  • Создать учётные записи учеников - позволяет создать на выбранных компьютерах учётные записи учеников с указанными в таблице логинами и паролями. На Рабочем столе у созданных учеников также будут созданы папки Задания и Сдать работы.
  • Удалить учётные записи учеников - позволяет удалить на выбранных компьютерах учётные записи учеников вместе с их домашними папками.
  • Включить и выключить автологин учеников - позволяет управлять удалённым входом в систему на выбранных компьютерах.
  • Создать и копировать архив /home с сервера - позволяет скопировать с сервера архив эталонной домашней папки на выбранные хосты для последующего их восстановления также при помощи данной утилиты.
  • Копировать существующий архив /home с сервера - позволяет скопировать с сервера существующий архив домашней папки на выбранные хосты.
  • Копировать архив /home с хоста на сервер - позволяет скопировать с хостов существующий архив домашней папки на сервер.

Вкладка "Veyon"

  • Установить Veyon - устанавливает Veyon на компьютере учителя (если он уже был установлен, установка не производится) и veyon-core на компьютерах учеников.

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

  • Настроить Veyon - позволяет создать кабинет для управления при помощи Veyon и добавить в него выбранные компьютеры.

Внимание

- Если кабинет уже существует, будет предложено заменить его или добавить компьютеры в уже существующий; также если в текущем кабинете уже существуют указанные компьютеры, их тоже можно будет заменить, оставить или добавить копии.

- Для корректной работы Veyon пользователь на компьютере учителя должен входить в группу wheel. Также на компьютерах учеников должен быть запущен сеанс X11. Если Veyon установлен, настроен, но компьютеры отображаются как недоступные, вероятно, что проблема в типе сеанса (wayland). В таком случае нужно завершить сеанс и залогиниться заново, выбрав в нижней части экрана тип сеанса Plasma (X11).

  • Удалить с сервера ключи Veyon. Удаляет с сервера (компьютер учителя) ключи Veyon. Может быть полезно при полной перенастройке Veyon в кабинете.
  • Удалить с хостов ключи Veyon. Удаляет с отмеченных хостов ключи Veyon. Может быть полезно при полной перенастройке Veyon в кабинете.
  • Копировать ключ на хосты. Копирует существующий публичный ключ Veyon с сервера на отмеченные хосты. Может быть полезно, если Veyon перестал "видеть" некоторые хосты.
  • Проверить ключи на хостах. Позволят проверить совпадение ключей Veyon на сервере и выбранных хостах, а также права доступа к ним.
  • Рестарт службы Veyon на сервере и хостах. Перезапускает службу veyon.service на сервере и отмеченных хостах соответственно. Может быть полезно при внесении изменений в настройку Veyon.

Вкладка "Выполнение команд"

  • Выполнить команду от root: отправляет по SSH на выбранные компьютеры введённую команду, которая будет выполнена от root. Также есть возможность выбрать из списка распространённых команд:
    • обновить и перезагрузить хосты (с возможность вывода уведомления);
    • обновить и выключить хосты (с возможностью уведомления, а также последующего выключения сервера);
    • перезагрузить хосты;
    • выключить хосты;
    • установить программы (будет предложено ввести названия программ в виде списка или выбрать из списка популярных программ);
    • удалить программы (аналогично);
    • добавить языки ввода;
    • очистить буфер обмена (вместе с историей);
    • выполнить команду из файла.

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

  • Установить и удалить программы - тот же функционал, что при установке или удалении программ через выполнение команд.
  • Скопировать файл на хосты - позволяет скопировать файл с сервера на отмеченные хосты. При нажатии данной кнопки будет необходимо выбрать папку на хостах, куда будет произведено копирование. Также есть возможность скопировать файл как правила nftables (для ограничения работы сети на хостах) или скрипт автозагрузки для пользователя - в этом случае проверяется наличие шебанга в начале скрипта.
  • Скопировать папку с хостов - копирование папки с одинаковым расположением на хостах в указанную на сервере локацию.
  • Скопировать /etc/skel - копирование /etc/skel с сервера на выбранные хосты для создания эталонной домашней папки.
  • Включить удалённый вход в систему - установка на хостах пакета, позволяющего осуществлять удалённый вход пользователей в систему, и запуск соответствующей службы.
  • Очистка конфигов пользователей - позволяет очистить на хостах конфиги распространённых программ для указанного пользователя (или для всех пользователей).
  • Включение хостов - позволяет отправить на хосты команду включения по wakeonlan.

Вкладка "Ограничения профиля"

  • Запретить/разрешить изменения рабочего стола - позволяет запретить указанным пользователям менять элементы рабочего стола. Физически их можно менять, но при перезагрузке рабочий стол вернётся в исходное состояние.
  • Отключить/ограничить/восстановить интернет на хостах - выполняет указанные действия на отмеченных хостах. Ограничение интернета позволяет оставить доступными ограниченное количество портов и адресов. Более подробно здесь: Блокировка интернета в МОС-12 при помощи nftables
  • Отключить/включить фаервол на хостах: выполняет указанные действия на отмеченных хостах.
  • Отключить/включить wi-fi на хостах: выполняет указанные действия на отмеченных хостах.
  • Защитить/разрешить изменения wi-fi на хостах: при включении защиты при попытке изменить настройки беспроводного соединения на отмеченных хостах будет запрашиваться администраторский пароль.
  • Запретить/разрешить изменения сети на хостах: при включении запрета любому пользователю не из группы wheel будут запрещены любые действия, связанные с настройкой сети, на отмеченных хостах.
  • Отключить/включить устройства ввода на хостах: при отключении на отмеченных хостах будут отключены мышь и клавиатура.
  • Установка приложений из магазина: разрешает установку приложений из Магазина приложений только администратору или всем пользователям.
  • Защита настроек хостов паролем: при включении защиты вкладка "Настройка хостов" на учительском компьютере будет требовать установленный пароль при переключении на неё. Это может быть полезно в случае, если администратор, настраивающий компьютерный класс при помощи данной утилиты, и учитель, работающий в данном кабинете - разные люди, и администратор хочет быть уверенным в том, что его настройки останутся без изменений.

Действия на вкладке "Учителю"

Вкладка Учителю (5.9)

Верхняя группа кнопок

  • Выбрать всё - выбор всех компьютеров из списка.
  • Очистить выбор - снятие выбора со всех компьютеров. Также можно выбирать компьютеры мышью при помощи клавиш Ctrl и Shift.
  • Генерация пользователей - заполнение таблицы одинаковыми логинами и паролями пользователей.
  • Сохранить, удалить профиль и перейти к профилю - позволяет быстро сохранить (требуется только ввод названия), удалить или загрузить список хостов с логинами и паролями пользователей. В отличие от импорта из JSON, здесь существующие в таблице хосты не сохраняются. Опция предназначена для управления несколькими компьютерными кабинетами с одного сервера.

Группа "Работы и задания"

  • Создать папку Сдать работы - создаёт папку Сдать работы на Рабочем столе учеников на выбранных компьютерах. Также, если этой папки не было, она создаётся автоматически при раздаче заданий или неудачной попытке их сбора;
  • Собрать работы - позволяет скопировать работы из папки Сдать работы с Рабочего стола учеников в папку Работы на Рабочем столе учителя, где создаются подпапки с указанным именем, а также текущей датой и временем в названии. Здесь и далее при обмене файлами ученик - это текущий пользователь на хосте, включая гостя и пользователя с учётной записью mos.ru;
  • Очистить работы - очищает папку Сдать работы на Рабочем столе учеников на выбранных компьютерах;
  • Раздать задания - позволяет скопировать выбранные в файловом диалоге файлы с компьютера учителя в папку Задания на Рабочем столе учеников;
  • Вернуть на доработку - позволяет отправить файл с компьютера учителя на компьютер учеников для последующей работы с данным файлом;
  • Очистить задания - очищает папку Задания на Рабочем столе учеников на выбранных компьютерах.

Группа "Архивация и восстановление"

  • Архивировать /home - создаёт архив домашней папки ученика на выбранных компьютерах;
  • Восстановить /home - восстанавливает домашнюю папку ученика из архива в случае его наличия на выбранных компьютерах;
  • Создать снимок /home - создаёт снимок домашней папки выбранной учётной записи на хостах (в случае наличия на них файловой системы BTRFS). Если снимок, созданный данной утилитой, уже существовал, то он перезаписывается;
  • Восстановить /home из снимка - восстанавливает домашнюю папку выбранной учётной записи на хостах (в случае наличия на них файловой системы BTRFS и созданного при помощи данной утилиты снимка).

Группа "Действия на хостах"

  • Отобразить имя - отображает названия (как в таблице) выбранных компьютеров на их экранах;
  • Поменять обои - устанавливает выбранное изображение в качестве обоев рабочего стола для указанных пользователей на выбранных хостах;
  • Открыть браузер - открывает браузер Chromium с указанной на сервере страницей на выбранных компьютерах;
  • Удалённая авторизация учеников - при заранее включённой возможности удалённой авторизации осуществляет вход в систему указанных в таблице пользователей на выбранных хостах;
  • Удалённый выход из системы - при заранее включённой возможности удалённой авторизации осуществляет выход из системы текущего пользователя на выбранных хостах;
  • Регистрация на уроке - открывает на отмеченных хостах экран авторизации, где ученик должен ввести свои фамилию и имя. Полученный результат (имена хостов с именами учеников, которые за ними работают) сохраняется в указанном файле на компьютере учителя и может быть полезен ему при анализе результатов урока, например, собранных или оставленных на компьютерах выполненных работ;
  • Закрыть окна - закрывает все открытые браузеры на выбранных хостах или блокирует графическую сессию для привлечения внимания учеников к процессу урока;
  • Перезагрузить - перезагружает выбранные хосты.

Группа "Действия на сервере"

  • Открыть проводник - открывает на сервере Dolphin для обзора файловой системы на одном выбранном компьютере;
  • Открыть папку Работы - открывает папку Работы с собранными работами учеников на сервере.

Меню окна

  • Справка - открывает встроенную в программу справку с ссылками на данную статью, FAQ и changelog.
  • Показать лог - открывает проводник с выделенным файлом лога.
  • Запустить веб-версию - запускает сервер для управления классом с телефона учителя.
  • Выход - закрывает программу.

Часто возникающие проблемы

  • После перенастройки ssh не получается подключиться к хостам. Это может быть связано с тем, что отпечаток хоста хранится в файле ~/.ssh/known_hosts и не совпадает с существующим. Можно удалить отпечаток из known_hosts (при помощи данной программы или вручную). Также можно удалить known_hosts полностью. Ещё может помочь удаление ключей ssh с хостов (выполняется также при помощи данной утилиты).

Ошибка после перенастройки хостов

  • После настройки ssh программа всё равно требует пароли на удалённых компьютерах. Это может произойти только вследствие замены ключа. Лучший способ исправить проблему - перенастроить ssh при помощи данной программы.
  • Устройства недоступны, не проходит пинг. В таком случае следует проверить, корректно ли вписаны адреса. Также адрес может быть по ошибке вписан в поле для названия хоста. Также в некоторых случаях соединение лучше устанавливается, если использовать не локальное имя, а IP хоста.
  • При помощи данной утилиты на хосте был отключён wi-fi, являющийся единственным сетевым соединением. В этом случае на данном хосте нужно выполнить команду:
systemctl unmask wpa_supplicant ; systemctl start wpa_supplicant ; nmcli radio wifi on

Ошибка заполнения таблицы хостов (5.9)

Консольная версия

В настоящее время программу можно запускать в консольной версии. Для этого введите в консоли comp-cab-setup и нужный параметр из списка команд ниже:

  • help - вывод справки;
  • registration - запуск регистрации на уроке;
  • poweroff - выключить хосты;
  • poweron - включить хосты (должен поддерживаться wakeonlan);
  • authorize - авторизация учеников;
  • reboot - перезагрузить хосты;
  • end-session - завершить текущую сессию на хостах;
  • lock-session - заблокировать текущую сессию на хостах;
  • close-browsers - закрыть все браузеры на хостах;
  • show-hostnames - отобразить имена хостов;
  • get-works - собрать работы учеников;
  • open-browser - открыть браузер на хостах (следующий параметр - адрес страницы для открытия);
  • internet-off - выключить интернет на хостах;
  • internet-on - включить интернет на хостах;
  • input-off - выключить устройства ввода на хостах;
  • input-on - включить устройства ввода на хостах.

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

Дополнительно

Исходный код: https://hub.mos.ru/mos/src/comp-cab-setup

Логи: ~/.teacher_control/log.txt

Текущий список устройств (не рекомендуется для редактирования вручную): ~/.teacher_control/hosts.json

Сохранённый список настроенных хостов: ~/.teacher_control/setup_hosts.json

Лицензия

GPLv3

Авторы

Команда разработки МОС