Интерфейс командной строки — Документация Veyon 4.7.3
Для административных задач доступны Veyon Configurator и инструмент командной строки Veyon CLI. Программу можно запустить с помощью команды veyon-cli в командной строке. В Windows есть дополнительная неконсольная версия veyon-wcli, которая позволяет автоматизировать задачи без раздражающих всплывающих окон командной строки. Если переменная окружения $PATH (Linux) или %PATH% (Windows) не содержит установочный каталог Veyon, вы должны сначала перейти в установочный каталог или добавить каталог к имени программы.
Если программа вызывается с параметром help, отображается список всех доступных модулей. Список может варьироваться в зависимости от установленных плагинов Veyon:
$ veyon-cli help
Available modules:
authkeys - Commands for managing authentication keys
config - Commands for managing the configuration of Veyon
ldap - Commands for configuring and testing LDAP/AD integration
networkobjects - Commands for managing the builtin network object directory
power - Commands for controlling power status of computers
remoteaccess - Remote view or control a computer
service - Commands for configuring and controlling Veyon Service
shell - Commands for shell functionalities
Каждый модуль CLI поддерживает команду help, так что для каждого модуля может быть отображен список всех доступных команд.
Пример вывода для модуля config :
$ veyon-cli config help
Available commands:
clear - Clear system-wide Veyon configuration
export - Export configuration to given file
get - Read and output configuration value for given key
import - Import configuration from given file
list - List all configuration keys and values
set - Write given value to given configuration key
unset - Unset (remove) given configuration key
upgrade - Upgrade and save configuration of program and plugins
Для некоторых модулей команда help может быть снабжена именем команды как дополнительным аргументом для получения конкретной справки по команде:
$ veyon-cli remoteaccess help control remoteaccess control <host>
Управление ключами аутентификации
Модуль authkeys позволяет управлять ключами аутентификации, так что обычные операции, такие как импорт ключа аутентификации или назначение группы пользователей, могут быть легко автоматизированы.
Примечание
Параметр <KEY> всегда ссылается на имя ключа, состоящее из идентификатора имени и типа, например teacher/public. Идентификатор имени должен состоять только из букв. Тип должен быть либо private, либо public.
-
create <NAME> Эта команда создает пару ключей аутентификации с именем <NAME> и сохраняет закрытый и открытый ключи в настроенных каталогах ключей. Параметр должен быть именем ключа, которое может содержать только буквы.
-
delete <KEY> Эта команда удаляет ключ аутентификации <KEY> из настроенного каталога ключей. Пожалуйста, обратите внимание, что после изъятия ключ нельзя будет восстановить.
-
export <KEY> [<FILE>] Эта команда экспортирует <KEY> в <FILE> ключ аутентификации. Если <FILE> не указан, имя будет создано из имени и типа <КЛЮЧА>.

-
extract <KEY> Эта команда извлекает часть открытого ключа из закрытого ключа <KEY> и сохраняет его как связанный открытый ключ. Поэтому при настройке другого главного компьютера достаточно передать только закрытый ключ. Затем открытый ключ может быть извлечен.
-
import <KEY> [<FILE>] Эта команда импортирует ключ аутентификации <KEY> из файла <FILE>. Если файл <FILE> не указан, то его название будет построено на основе данных о названии и типе ключа <KEY>.
-
list [details] В этой команде перечислены все доступные ключи аутентификации в каталоге настроенных ключей. Если указана опция
details, вместо нее будет отображена таблица с подробным описанием ключей. Некоторые детали могут отсутствовать, если ключ недоступен, например, из-за отсутствия прав на чтение.
-
setaccessgroup <KEY> <ACCESS GROUP> Эта команда настраивает права доступа к файлу на <KEY> таким образом, чтобы только пользователи группы <ACCESS GROUP> имели к нему доступ на чтение.

Управление конфигурацией
Локальной конфигурацией Veyon можно управлять с помощью модуля config. Как полная конфигурация, так и отдельные ключи конфигурации могут быть прочитаны или записаны.
-
clear Эта команда сбрасывает всю локальную конфигурацию, удаляя все ключи конфигурации. Используйте эту команду, чтобы воссоздать определенное состояние без старых настроек перед импортом конфигурации.
-
export Эта команда экспортирует локальную конфигурацию в файл. Имя целевого файла должно быть указано в качестве дополнительного параметра:
veyon-cli config export myconfig.json
-
import Эта команда импортирует ранее экспортированный файл конфигурации в локальную конфигурацию. Имя файла конфигурации, который будет импортирован, должно быть указано в качестве дополнительного аргумента:
veyon-cli config import myconfig.
json
-
list [defaults | types] Эта команда показывает список всех ключей конфигурации и их соответствующих значений. Таким образом, вы можете получить имена ключей конфигурации, чтобы прочитать или записать их по отдельности с помощью команд
getилиset. При дополнительном указанииdefaultsвместо фактического настроенного значения печатается значение по умолчанию для каждого ключа конфигурации. В качестве альтернативы типы данных ключей конфигурации можно проверить, указавtypes.
-
get Эта команда позволяет считывать один конфигурационный ключ. Имя ключа должно быть указано в качестве параметра.
veyon-cli config get Network/VeyonServerPort
-
set Эта команда может быть использована для записи одного конфигурационного ключа. Имя ключа и желаемое значение должны быть переданы в качестве дополнительных аргументов:
veyon-cli config set Network/VeyonServerPort 12345 veyon-cli config set Service/Autostart true veyon-cli config set UI/Language de_DE
-
unset С помощью этой команды можно удалить один конфигурационный ключ, т.
е. Затем Veyon использует внутреннее значение по умолчанию. Имя ключа должно быть передано в качестве дополнительного аргумента:veyon-cli config unset Directories/Screenshots
-
upgrade С помощью этой команды конфигурация Veyon и всех плагинов может быть обновлена и сохранена. Это может быть необходимо, если настройки или форматы конфигурации изменились из-за обновлений программы или плагина.
Управление функциями
Модуль feature предоставляет команды для запроса доступных функций и управления ими на удаленных компьютерах.
-
list Показывает список с именами всех доступных функций.
-
show Показывает таблицу с подробной информацией обо всех доступных функциях. Эта информация включает описание, UID, имя плагина, предоставляющего соответствующую функцию, и некоторые другие сведения, которые относятся к реализации.
-
start <FEATURE> <HOST ADRESS> [<ARGUMENTS>] Запускает указанную функцию на указанном хосте путём соединения с запущенным удалённо сервером Veyon.

Функцию можно указать по имени или UID. Воспользуйтесь командойshowдля просмотра списка всех доступных функций. В зависимости от функции, могут указываться дополнительные аргументы (например, текстовое сообщение для показа), которые должны быть закодированы в одну строку JSON. Чтобы узнать больше, обратитесь к документации для разработчиков.
-
stop <FEATURE> <HOST ADRESS> Останавливает указанную функцию на указанном хосте путём соединения с запущенным удалённо сервером Veyon. Функцию можно указать по имени или UID. Воспользуйтесь командой
showдля просмотра списка всех доступных функций.
LDAP
Команды, доступные в модуле ldap, задокументированы в разделе Интерфейс командной строки в главе Интеграция LDAP/AD.
Каталог сетевых объектов
Как описано в разделе Места и компьютеры, Veyon предоставляет встроенный каталог сетевых объектов, который можно использовать, когда сервер LDAP недоступен.
Этим каталогом сетевых объектов можно управлять как в конфигураторе Veyon, так и в командной строке. Некоторые операции, такие как импорт CSV, в настоящее время доступны только в командной строке. Для большинства команд подробное описание с примерами доступно в справке по конкретным командам. В модуле networkobjects можно использовать следующие команды:
-
add <TYPE> <NAME> [<HOST ADDRESS> <MAC ADDRESS> <PARENT>] Эта команда добавляет объект, где
<TYPE>может бытьlocationилиcomputer.<PARENT>может быть указан как имя или UUID.
-
clear Эта команда сбрасывает весь каталог сетевых объектов, т.е. удаляются все местоположения и компьютеры. Эта операция особенно полезна перед любым автоматическим импортом.
-
dump Эта команда выводит полный каталог сетевых объектов в виде плоской таблицы.

Каждое свойство, такое как UID объекта, тип или имя, отображается в виде отдельного столбца.
-
export <FILE> [location <LOCATION>] [format <FORMAT-STRING-WITH-VARIABLES>] Эта команда может быть использована для экспорта либо полного каталога сетевых объектов, либо только указанного местоположения в текстовый файл. Форматированием можно управлять с помощью строки формата, содержащей переменные-заполнители. Это позволяет легко сгенерировать CSV-файл. Допустимыми переменными являются
%type%,%name%,%host%,%mac%и%location%. Различные примеры приведены в справке (veyon-cli networkobjects help export).
Примечание
При использовании этой команды в пакетных файлах или с помощью запланированных задач в Windows убедитесь, что правильно экранирован знак процента, т.е. используйте %%type%% вместо %type%. В противном случае отдельные части строк будут рассматриваться как переменные среды и в большинстве случаев заменяться пустыми строками.
Это приведет к неожиданным ошибкам синтаксического анализа.
-
import <FILE> [location <LOCATION>] [format <FORMAT-STRING-WITH-VARIABLES>] [regex <REGULAR-EXPRESSION-WITH-VARIABLES>] This command can be used to import a text file into the network object directory. The processing of the input data can be controlled via a format string or a regular expression containing placeholder variables. This way both CSV files and other types of structured data can be imported. Valid variables are
%type%,%name%,%host%,%mac%and%location%. Various examples are given in the command help (veyon-cli networkobjects help import).
Примечание
При использовании этой команды в пакетных файлах или с помощью запланированных задач в Windows убедитесь, что правильно экранирован знак процента, т.е. используйте %%type%% вместо %type%.
В противном случае отдельные части строк будут рассматриваться как переменные среды и в большинстве случаев заменяться пустыми строками. Это приведет к неожиданным ошибкам синтаксического анализа.
-
list Эта команда выводит полный каталог сетевых объектов в виде отформатированного списка. В отличие от команды
dump, иерархия местоположений и компьютеров представлена соответствующим форматированием.
-
remove <OBJECT> Эта команда удаляет указанный объект из каталога. ОБЪЕКТ может быть указан по имени или UUID. Удаление местоположения также приведет к удалению всех связанных компьютеров.
Питание
Модуль power позволяет использовать функции, связанные с питанием, из командной строки.
-
on <MAC ADDRESS> Эта команда транслирует пакет Wake-on-LAN (WOL) в сеть с целью включения питания на компьютере с указанным MAC-адресом.

Удалённый доступ
Модуль remoteaccess предоставляет функции для графического удаленного доступа к компьютерам. Это те же функции, к которым можно получить доступ из Veyon Master. Функция, предоставляемая инструментом командной строки, может быть использована, например, для создания ярлыка программы для прямого доступа к определенному компьютеру.
-
control Эта команда открывает окно с функцией дистанционного управления, которое можно использовать для управления удаленным компьютером. Имя компьютера или IP-адрес (и необязательно TCP-порт) должны быть переданы в качестве аргумента:
veyon-cli remoteaccess control 192.168.1.2
-
view Эта команда открывает окно с функцией удаленного просмотра для мониторинга удаленного компьютера. В этом режиме содержимое экрана отображается в режиме реального времени, но взаимодействие с компьютером невозможно до тех пор, пока не будет нажата соответствующая кнопка на панели инструментов.
Компьютер или IP-адрес (и необязательно TCP-порт) должны быть переданы в качестве аргумента:veyon-cli remoteaccess view pc5:5900
Управление сервисам
Модуль service можно использовать для управления локальной службой Veyon.
-
register Эта команда регистрирует Veyon Service как службу в операционной системе, чтобы она автоматически запускалась при загрузке компьютера.
-
unregister Эта команда удаляет Veyon Service как службу в операционной системе, чтобы она более автоматически запускалась при загрузке компьютера.
-
start Эта команда запускает Veyon Service.
-
stop Эта команда останавливает Veyon Service.
-
restart Эта команда перезапускает Veyon Service.
-
status Эта команда запрашивает и отображает статус Veyon Service.

Оболочка
Простые функциональные возможности оболочки предоставляются модулем shell. Если этот модуль вызывается без дополнительных аргументов, запускается интерактивный режим. В этом режиме все команды CLI можно вводить напрямую без необходимости указывать и вызывать программу veyon-cli для каждой команды. Из режима можно выйти, введя ключевое слово exit.
Кроме того, модуль может быть использован для автоматической обработки команд в текстовом файле с целью реализации простой пакетной обработки:
-
run <FILE> Эта команда выполняет команды, указанные в текстовом файле построчно. Операции выполняются независимо от результата предыдущих операций, т.е. ошибка не приводят к завершению.
:: Qbec
Изменить эту страницу
Иногда вам нужно генерировать данные с помощью внешних программ и иметь доступ к ним в ваших компонентах jsonnet.
Это можно сделать с помощью импортера источника данных, который поставляется с qbec.
В то время как дизайн импортера обеспечивает тесную встроенную интеграцию с такими инструментами, как helm , istioctl , kustomize ,
и секретные движки, такие как vault , единственная интеграция, которая в настоящее время реализована, — это exec , которая позволяет вам
запускать внешние программы и использовать стандартный вывод, который они производят, как данные в коде jsonnet.
Пример приложения данных предоставляет рабочий реализация такого импортера и демонстрирует все, что нужно сделать для его настройки.
Рецепт получения дополнительных данных из вывода внешней команды состоит из 3 частей:
Шаг 1: Укажите конфигурацию для вызова команды
Сюда входят имя программы, аргументы, переменные среды и стандартный ввод. Это объект JSON со следующими свойствами:
{
"команда": "/путь/к/исполняемому файлу",
"аргументы": [ "массив", "из", "позиционный", "аргументы"],
"окружение": {
"карта",
"среда": "переменные",
},
"stdin": "стандартный ввод для программы в виде строки",
"наследоватьEnv": ложь,
"тайм-аут": "10 с"
}
Вы создаете этот объект, используя переменную внешнего кода, которую можно определить в qbec.
yaml.
Теперь некоторые аргументы могут различаться в зависимости от среды qbec.
Этого можно добиться с помощью вычисляемых переменных, которые поддерживает qbec. Вычисляемые переменные определяются следующим образом:
спецификация:
вары:
вычислено:
- имя: cmdConfig
код: |
{
команда: 'myCommand.sh',
аргументы: ['--env', std.extVar('qbec.io/env')],
}
В приведенном выше примере аргументы команды создаются динамически на основе среды qbec.
Шаг 2: Создайте источник данных, который ссылается на эту конфигурацию
Добавьте «источник данных» в qbec.yaml следующим образом:
спецификация:
источники данных:
- exec://my-data-source?configVar=cmdConfig
Приведенный выше URL-адрес состоит из 3 частей.
- Схема URL-адреса —
exec, которая представляет собой тип создаваемого источника данных. В настоящее время используется толькоexec.
разрешено, но в будущем мы можем добавить больше схем для нативной интеграции с конкретными инструментами. - Имя хоста в URL — это имя по вашему выбору. Это имя источника данных.
- Параметр запроса
configVar— это ссылка на переменную конфигурации, с помощью которой создается источник данных. инициализирован.
Шаг 3: используйте этот источник данных в коде компонента jsonnet
import 'data://my-data-source/some/path'
- Схема
данныхв приведенном выше URI позволяет qbec определить, что вы хотите импортировать внешние данные. - Имя хоста в URI — это имя объявленного вами источника данных.
- Путь в URI передается команде как переменная среды с именем
__DS_PATH__. - Команда также получает другую переменную среды с именем
__DS_NAME__, которому присвоено имя источника данных.
Простая команда может не учитывать переменную среды __DS_PATH__ и всегда выводить одни и те же данные.
С другой стороны, вы можете написать более сложную интеграцию (скажем, с Vault), заставив команду использовать
информацию в переменной __DS_PATH__ и выдавать секреты, характерные для этого пути.
Команды должны выводить действительный JSON или jsonnet при использовании
import data://my-source, но они могут выводить любую строку (например, YAML) при вызовеimportstr data://my-source. Вы можете постобработать вывод (например, с помощьюparseYaml) в последнем случае.Команды должны вести себя как функции, обеспечивающие один и тот же вывод для одного и того же набора входных данных. Особенно, команды не должны записывать файлы в исходное дерево jsonnet.
Команды запускаются с использованием пакета Go
os/exec, что означает, что они выполняют , а не работают под оболочкой. Вы не можете использовать каналы и перенаправление.
Если вам нужна эта функциональность, вам нужно запустить команду как ['ш', '-с', 'подкоманда1 | подкоманда2']. А еще лучше написать сценарий оболочки, который все это делает.Вы несете ответственность за то, чтобы исполняемый файл, который вы запускаете, был получен из надежного источника. не тянуть отключать исполняемые файлы из Интернета, не проверяя их суммы SHA.
Таким же образом вы несете ответственность за то, чтобы все в команде использовали одну и ту же версию команда, которая вызывается. Одна из стратегий состоит в том, чтобы загрузить нужную команду в
.binкаталог с использованиемMakefileи запустите его оттуда. Makefile загружает одну и ту же версию команды для разных ОС. среды и проверяет их суммы SHA.Выполняемая команда , а не , наследует среду ОС от процесса qbec, если для параметра
inheritEnvне задано значение true. Задаются только переменные окружения, явно определенные в конфиге, а также__DS_NAME__и__DS_PATH__.
/program files/R-3.3.3/bin/x64/R» —no-site-file —no-environ —no-save —no-restore —quiet CMD config CC’ имел статус 2
Ошибка: выполняется команда «D:/program files/R-3.3.3/bin/x64/R» —no-site-file —no-environ —no-save —no-restore —quiet Конфигурация CMD CC ‘имела статус 2
1
Вход в режим редактирования
5,6 года назад
Фрэнсис &утриф; 20
Всем привет. Я хочу установить пакет из gitup на окна.
библиотека (инструменты разработчика)
install_github("satijalab/seurat")
Я выбрал нет, потому что Rtools уже установлен.
Затем возникает ошибка:
Ошибка: выполняется команда «D:/program files/R-3.3.3/bin/x64/R» --no-site-file --no-environ --no- save --no-restore --quiet CMD config CC' имел статус 2
Я проверяю Rtools:
> system('g++ -v')
Использование встроенных спецификаций.
COLLECT_GCC=D:\program files\Rtools\mingw_32\bin\g++.exe
COLLECT_LTO_WRAPPER=D:/program\ files/Rtools/mingw_32/bin/../libexec/gcc/i686-w64-mingw32/4.9.3/lto-wrapper.exe
Цель: i686-w64-mingw32
Настроено с помощью: ../../../src/gcc-4.9.3/configure --host=i686-w64-mingw32 --build=i686-w64-mingw32 --target=i686-w64-mingw32 -- prefix=/mingw32 --with-sysroot=/home/Jeroen/mingw-gcc-4.9.3/i686-493-posix-dwarf-rt_v3-s/mingw32 --with-gxx-include-dir=/mingw32/i686 -w64-mingw32/include/c++ --enable-static --disable-shared --disable-multilib --enable-languages=c,c++,fortran,lto --enable-libstdcxx-time=yes --enable-threads =posix --enable-libgomp --enable-libatomic --enable-lto --enable-graphite --enable-checking=release --enable-full-dynamic-string --enable-version-specific-runtime-libs - -disable-sjlj-exceptions --with-dwarf2 --disable-isl-version-check --disable-cloog-version-check --disable-libstdcxx-pch --disable-libstdcxx-debug --enable-bootstrap -- disable-rpath --disable-win32-registry --disable-nls --disable-werror --disable-symvers --with-gnu-as --with-gnu-ld --with-arch=i686 --with- tune=generic --with-libiconv --with-system-zlib --with-gmp=/home/Jeroen/mingw-gcc-4.




json
е. Затем Veyon использует внутреннее значение по умолчанию. Имя ключа должно быть передано в качестве дополнительного аргумента:


Компьютер или IP-адрес (и необязательно TCP-порт) должны быть переданы в качестве аргумента:
разрешено, но в будущем мы можем добавить больше схем для нативной интеграции с конкретными инструментами.
Если вам нужна эта функциональность, вам нужно запустить команду как 
COLLECT_GCC=D:\program files\Rtools\mingw_32\bin\g++.exe
COLLECT_LTO_WRAPPER=D:/program\ files/Rtools/mingw_32/bin/../libexec/gcc/i686-w64-mingw32/4.9.3/lto-wrapper.exe
Цель: i686-w64-mingw32
Настроено с помощью: ../../../src/gcc-4.9.3/configure --host=i686-w64-mingw32 --build=i686-w64-mingw32 --target=i686-w64-mingw32 -- prefix=/mingw32 --with-sysroot=/home/Jeroen/mingw-gcc-4.9.3/i686-493-posix-dwarf-rt_v3-s/mingw32 --with-gxx-include-dir=/mingw32/i686 -w64-mingw32/include/c++ --enable-static --disable-shared --disable-multilib --enable-languages=c,c++,fortran,lto --enable-libstdcxx-time=yes --enable-threads =posix --enable-libgomp --enable-libatomic --enable-lto --enable-graphite --enable-checking=release --enable-full-dynamic-string --enable-version-specific-runtime-libs - -disable-sjlj-exceptions --with-dwarf2 --disable-isl-version-check --disable-cloog-version-check --disable-libstdcxx-pch --disable-libstdcxx-debug --enable-bootstrap -- disable-rpath --disable-win32-registry --disable-nls --disable-werror --disable-symvers --with-gnu-as --with-gnu-ld --with-arch=i686 --with- tune=generic --with-libiconv --with-system-zlib --with-gmp=/home/Jeroen/mingw-gcc-4.