Интерфейс командной строки — Документация 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.
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
Эта команда выводит полный каталог сетевых объектов в виде плоской таблицы.
-
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.
![]()