mirror of
https://github.com/1Panel-dev/1Panel.git
synced 2026-11-07 00:05:14 +00:00
* feat(sync): sync php extended template * fix(i18n): complete resource sync translations --------- Co-authored-by: ssongliu <sloooop1x@gmail.com>
601 lines
65 KiB
YAML
601 lines
65 KiB
YAML
# базовые ошибки
|
||
ErrInvalidParams: 'Неверный запрос: {{ .detail }}'
|
||
ErrTokenParse: 'Ошибка токена: {{ .detail }}'
|
||
ErrInitialPassword: 'Исходный пароль неверен'
|
||
ErrInternalServer: 'Внутренняя ошибка: {{ .detail }}'
|
||
ErrInternalServerKey: "Внутренняя ошибка сервера:"
|
||
ErrRecordExist: 'Запись уже существует'
|
||
ErrRecordNotFound: 'Запись не найдена'
|
||
ErrStructTransform: 'Ошибка преобразования: {{ .detail }}'
|
||
ErrNotSupportType: 'Тип не поддерживается: {{ .name }}'
|
||
ErrDemoEnvironment: 'Недоступно в демо'
|
||
ErrCmdTimeout: 'Команда завершилась по тайм-ауту'
|
||
ErrPortInUsed: "Порт {{ .name }} уже используется"
|
||
ErrFileNotFound: "Файл {{ .name }} не найден"
|
||
ErrReqFailed: "{{.name}} запрос не удался: {{ .err }}"
|
||
|
||
# запрос и вход безопасности
|
||
ErrNoSuchHost: "Не удалось найти запрашиваемый сервер {{ .err }}"
|
||
ErrHttpReqNotFound: "Не удалось найти запрашиваемый ресурс {{ .err }}"
|
||
ErrHttpReqFailed: "Ошибка запроса {{ .err }}"
|
||
ErrHttpReqTimeOut: "Время ожидания запроса истекло {{ .err }}"
|
||
ErrCreateHttpClient: "Ошибка создания запроса {{ .err }}"
|
||
ErrProxy: 'Запрос не удался: {{ .detail }}'
|
||
ErrProxySetting: "Информация о прокси-сервере недоступна {{ .err }}, проверьте и повторите попытку"
|
||
ErrEntrance: "Ошибка информации о безопасном входе, проверьте и повторите попытку"
|
||
ErrEntranceFormat: "Защищенный вход {{ .name }} в настоящее время не поддерживается. Пожалуйста, проверьте и повторите попытку"
|
||
|
||
# вход и безопасность
|
||
ErrNotLogin: 'Не авторизован: {{ .detail }}'
|
||
ErrSessionDataNotFound: "Текущая сессия истекла"
|
||
ErrSessionDataFormat: "Ненормальный формат данных текущей сессии"
|
||
ErrPasswordExpired: 'Пароль истёк: {{ .detail }}'
|
||
ErrLoginLocked: "Слишком много неудачных попыток. Вход временно заблокирован на 5 минут."
|
||
ErrApiConfigStatusInvalid: 'API отключено: {{ .detail }}'
|
||
ErrApiConfigKeyInvalid: 'Неверный API-ключ: {{ .detail }}'
|
||
ErrApiConfigIPInvalid: 'IP не в списке: {{ .detail }}'
|
||
ErrApiConfigDisable: 'Доступ по API запрещён: {{ .detail }}'
|
||
ErrApiConfigKeyTimeInvalid: 'Неверная метка времени: {{ .detail }}'
|
||
ErrApiConfigKeyExpired: "Срок действия API-ключа истёк. Измените срок действия или замените ключ в разделе управления API-ключами панели."
|
||
ErrPasskeyDisabled: "Для Passkey требуется включить HTTPS"
|
||
ErrPasskeyNotConfigured: "Passkey не настроен"
|
||
ErrPasskeyLimit: "Достигнут лимит Passkey (максимум 5)"
|
||
ErrPasskeySession: "Сеанс Passkey истек или недействителен"
|
||
ErrPasskeyDuplicate: "Passkey уже существует"
|
||
ErrPasskeyVerify: "Не удалось проверить Passkey"
|
||
ErrOIDCNotEnabled: "Аутентификация OIDC не включена"
|
||
ErrOIDCConfigInvalid: "Конфигурация OIDC недействительна"
|
||
ErrOIDCConfigChanged: "Конфигурация OIDC изменилась; запустите аутентификацию заново"
|
||
ErrOIDCDiscoveryFailed: "Не удалось обнаружить конфигурацию Provider OIDC"
|
||
ErrOIDCIssuerMismatch: "Issuer OIDC не совпадает с настроенным Issuer"
|
||
ErrOIDCUnsupportedPKCE: "Provider OIDC не поддерживает требуемый метод PKCE"
|
||
ErrOIDCUnsupportedSigningAlgorithm: "Алгоритм подписи OIDC не поддерживается"
|
||
ErrOIDCInvalidState: "Состояние входа OIDC недействительно или уже использовано"
|
||
ErrOIDCLoginExpired: "Срок действия запроса на вход OIDC истёк; повторите попытку"
|
||
ErrOIDCTokenExchange: "Не удалось обменять код авторизации OIDC"
|
||
ErrOIDCTokenValidation: "Не удалось проверить Token OIDC"
|
||
ErrOIDCUserInfoValidation: "Не удалось проверить сведения о пользователе OIDC"
|
||
ErrOIDCNameClaimMissing: "Настроенный Claim имени пользователя OIDC отсутствует или недействителен"
|
||
ErrOIDCNameConflictLocal: "Имя пользователя OIDC конфликтует с локальным пользователем"
|
||
ErrOIDCNameConflictLDAP: "Имя пользователя OIDC конфликтует с пользователем LDAP"
|
||
ErrOIDCNameConflictOIDC: "Имя пользователя OIDC конфликтует с другой идентичностью OIDC"
|
||
ErrOIDCDefaultRoleInvalid: "Роль по умолчанию, настроенная для OIDC, недоступна"
|
||
ErrOIDCPrivateAddressDenied: "Адрес Endpoint OIDC запрещён политикой сетевой безопасности"
|
||
ErrOIDCTLSValidation: "Не удалось проверить сертификат TLS OIDC"
|
||
ErrOIDCTestExpired: "Срок действия браузерного теста OIDC истёк; запустите тест снова"
|
||
ErrOIDCLocalCredentialsReadonly: "Имена пользователей и пароли OIDC управляются Provider идентификации и не могут быть изменены локально."
|
||
ErrOIDCPasswordExpirationUnsupported: "Для пользователей OIDC не применяется локальная политика истечения срока действия пароля."
|
||
ErrOIDCInternal: "Во время аутентификации OIDC произошла внутренняя ошибка. Повторите попытку позже."
|
||
|
||
# пользователь и права
|
||
ErrNoSuchUser: "Информация о пользователе не найдена. Проверьте и повторите попытку."
|
||
ErrToMaster: "У этого пользователя нет прав для выполнения этой операции на основном узле. Проверьте и повторите попытку."
|
||
ErrToNode: "У этого пользователя нет прав для выполнения этой операции на этом узле. Проверьте и повторите попытку."
|
||
ErrRBAC: "Недостаточно прав пользователя. Операция не может быть выполнена. Проверьте и повторите попытку."
|
||
ErrNoneNode: "У этого пользователя нет прав ни на один узел. Обратитесь к администратору или проверьте и повторите попытку."
|
||
ErrOnlySuperAdmin: "Эта функция доступна только супер администраторам."
|
||
ErrRolePresetCannotDelete: "Системные предустановленные роли нельзя удалять"
|
||
ErrRolePresetCannotUpdate: "Системные предустановленные роли нельзя обновлять"
|
||
ErrRoleBoundToUser: "Эта роль уже привязана к пользователям и не может быть удалена"
|
||
ErrRolePresetCannotBind: "Системные предустановленные роли нельзя назначать пользователям"
|
||
ErrNodeAdminMasterForbidden: "Права администратора узла нельзя добавить к главному узлу"
|
||
ErrSuperAdminCannotDelete: "Пользователей супер-администратора нельзя удалять"
|
||
ErrGroupIsDefault: "Группу по умолчанию нельзя удалить"
|
||
ErrGroupIsInUse: "Группа используется и не может быть удалена."
|
||
|
||
# лицензия
|
||
LicenseCheck: 'Проверить доступность лицензии'
|
||
ErrLicenseInUsed: 'Лицензия уже привязана. Пожалуйста, проверьте и повторите попытку'
|
||
ErrLicenseExpired: 'Срок действия лицензии истек. Пожалуйста, проверьте и повторите попытку'
|
||
ErrLicense: "Неверный формат лицензии, проверьте и повторите попытку"
|
||
ErrLicenseCheck: "Ошибка проверки лицензии, проверьте и повторите попытку"
|
||
ErrXpackVersion: "Ошибка проверки лицензии, лицензия ограничена по версии, проверьте и повторите попытку"
|
||
ErrLicenseSave: "Ошибка сохранения информации о лицензии {{ .err }}, повторите попытку"
|
||
ErrLicenseSync: "Ошибка синхронизации информации о лицензии, информация не найдена в базе данных"
|
||
ErrLicenseExist: "Данная лицензия уже существует. Вы можете перейти на страницу лицензий для привязки узлов."
|
||
ErrXpackNotFound: "Этот раздел доступен в Business Edition. Импортируйте лицензию в Настройки панели > Лицензия"
|
||
ErrXpackExceptional: "Этот раздел доступен в Business Edition. Синхронизируйте статус лицензии в Настройки панели > Лицензия"
|
||
ErrXpackLost: "Достигнут лимит повторных попыток по лицензии. Перейдите в Настройки панели > Лицензия и выполните ручную синхронизацию"
|
||
ErrEnterpriseLicenseRequired: "Лицензия Enterprise Edition не импортирована. Сначала импортируйте лицензию."
|
||
ErrDeviceLost: "Необходимые файлы для проверки лицензии отсутствуют, пожалуйста, проверьте и попробуйте снова"
|
||
ErrDeviceErr: "Текущая среда не соответствует среде импорта лицензии. Отредактируйте лицензию и повторите импорт"
|
||
ErrXpackTimeout: "Время ожидания запроса истекло, возможно нестабильное сетевое соединение, повторите попытку позже"
|
||
ErrUnbindMaster: "В управлении узлами обнаружены узлы, сначала удалите их и повторите попытку"
|
||
ErrFreeNodeLimit: "Достигнут лимит количества узлов, которые можно добавить. Приобретите лицензию и повторите попытку."
|
||
ErrNodeBound: "Эта лицензия уже связана с другим узлом, проверьте и повторите попытку"
|
||
ErrNodeBoundDelete: "Эта лицензия привязана и не поддерживает операции удаления. Пожалуйста, проверьте и попробуйте снова"
|
||
ErrNodeBoundLimit: "Текущий бесплатный узел достиг предела, пожалуйста, проверьте и попробуйте снова"
|
||
ErrLicenseFree: "Бесплатные узлы доступны только при правильной привязке лицензии к узлу. Проверьте и повторите попытку"
|
||
ErrLicenseUnbind: "К этой лицензии всё ещё привязаны узлы Community Edition. Отвяжите их в Настройки панели > Лицензия и повторите попытку"
|
||
ErrLicenseBindCount: "Количество бесплатных узлов в новой лицензии меньше текущего количества привязанных узлов Community Edition. Проверьте и повторите попытку"
|
||
ErrNoSuchNode: "Информация об узле не найдена, проверьте и повторите попытку"
|
||
ErrNodeUnbind: "Обнаружен узел вне области действия лицензии, проверьте и повторите попытку"
|
||
ErrNodeBind: "Этот узел уже связан с лицензией, проверьте и повторите попытку"
|
||
ErrNodeLocalRollback: "Прямой откат на основном узле не поддерживается. Выполните '1pctl restore' вручную для отката"
|
||
ErrIntlLicense: "Текущая версия пока не поддерживает импорт международной лицензии. Скоро будет доступно"
|
||
InvalidRequestBodyType: "Неверный формат тела запроса. Проверьте, соответствует ли содержимое требуемому формату, и повторите попытку"
|
||
InvalidLicenseCodeType: "Указан неверный формат лицензионного кода. Проверьте и повторите попытку"
|
||
LicenseNotFoundType: "Лицензия не найдена. В системе нет записей, соответствующих указанной лицензии. Проверьте и повторите попытку"
|
||
LicenseRevokedType: "Запрошенная лицензия аннулирована и больше не может быть использована. Проверьте и повторите попытку"
|
||
LicenseExpiredType: "Срок действия лицензии истек. Продлите ее или повторно импортируйте в разделе Настройки панели - Лицензия перед повторной попыткой"
|
||
LicenseProductMismatchType: "Лицензия не соответствует запрошенному продукту или услуге"
|
||
InvalidAssigneeType: "Некорректная информация о целевом пользователе или устройстве для назначения лицензии. Проверьте и повторите попытку"
|
||
LicenseUsageNotFoundType: "Записи об использовании отсутствуют. Эта лицензия еще не активирована или не использовалась. Проверьте и повторите попытку"
|
||
LicenseUsageLimitExceededType: "Эта лицензия уже привязана к другому узлу. Проверьте и повторите попытку"
|
||
|
||
# узел и кластер
|
||
MasterNode: "Главный узел"
|
||
Node: "Узел"
|
||
ErrLocalDelete: "Локальный узел нельзя удалить"
|
||
ErrMasterDelete: "Невозможно удалить основной узел, сначала удалите подчиненные узлы."
|
||
ClusterNameIsExist: "Имя кластера уже существует."
|
||
AppStatusUnHealthy: "Получение статуса приложения аномально, пожалуйста, проверьте статус узлов установки в списке узлов."
|
||
MasterNodePortNotAvailable: "Проверка подключения порта {{ .port }} узла {{ .name }} не удалась, пожалуйста, проверьте настройки брандмауэра/группы безопасности и статус главного узла."
|
||
ClusterMasterNotExist: "Основной узел кластера отключен, пожалуйста, удалите дочерние узлы."
|
||
|
||
# приложение
|
||
CustomAppStoreFileValid: "Пакет магазина приложений должен быть в формате .tar.gz"
|
||
AppBackup: 'Резервная копия приложения'
|
||
AppBackupPush: 'Передать файл резервной копии приложения {{.file}} на узел {{ .name }}'
|
||
ErrSourceTargetSame: 'Исходный узел и целевой узел не могут быть одинаковыми'
|
||
AppInstall: 'Установить приложение {{ .name }} на узел {{ .targetNode }}'
|
||
AppInstallCheck: 'Проверить среду установки приложения'
|
||
|
||
# резервное копирование
|
||
ErrBackupInUsed: 'Аккаунт бэкапа занят задачей'
|
||
ErrBackupCheck: 'Проверка подключения не удалась: {{ .err }}'
|
||
ErrBackupLocal: "Локальная учетная запись резервного копирования не поддерживает эту операцию"
|
||
ErrBackupPublic: "Обнаружено, что эта учетная запись резервного копирования не является публичной, проверьте и повторите попытку"
|
||
ErrOSSConn: "Не удалось получить последнюю версию, проверьте подключение сервера к внешней сети."
|
||
MvBackup: "Переместить данные в резервный каталог"
|
||
|
||
# оповещение
|
||
ErrAlertSync: "Ошибка синхронизации информации об оповещениях, пожалуйста, проверьте и повторите попытку"
|
||
|
||
# AI-шлюз
|
||
ErrAIProxyUserGroupIsDefault: "Группу пользователей по умолчанию нельзя удалить."
|
||
ErrAIProxyUserGroupInUse: "Группа пользователей используется и не может быть удалена."
|
||
ErrAIProxyUserGroupExists: "Имя группы пользователей уже существует."
|
||
ErrAIProxyBackendAccountExists: "Этот сервис модели уже импортирован в пул аккаунтов AI Gateway."
|
||
ErrAIProxyModelGroupInUse: "Группа моделей используется и не может быть удалена."
|
||
ErrAIProxyModelGroupExists: "Имя группы моделей уже существует."
|
||
ErrAIProxySensitiveGroupInUse: "Группа чувствительных слов используется и не может быть удалена."
|
||
ErrAIProxySensitiveGroupExists: "Имя группы чувствительных слов уже существует."
|
||
AIProxyContentPolicyViolation: "К сожалению, я не могу обработать этот запрос: его содержимое может не соответствовать политике в отношении контента. Измените запрос и повторите попытку."
|
||
AIBenchmarkRun: "Выполнить тест производительности AI"
|
||
|
||
# задача
|
||
TaskStart: "{{ .name }} задача начата [START]"
|
||
TaskEnd: "{{ .name }} задача завершена [COMPLETED]"
|
||
TaskFailed: "{{ .name }} задача не выполнена"
|
||
TaskTimeout: "{{ .name }} истекло время"
|
||
TaskSuccess: "{{ .name }} задача выполнена успешно"
|
||
TaskRetry: "Начало повторной попытки {{ .name }}"
|
||
SubTaskSuccess: "{{ .name }} успешно"
|
||
SubTaskFailed: "{{ .name }} не удалось: {{ .err }}"
|
||
TaskInstall: "Установить"
|
||
TaskUpgrade: "Обновить"
|
||
TaskSync: 'Синхронизация'
|
||
TaskSyncForNode: "Синхронизировать Данные Узла"
|
||
TaskBackup: "Резервная копия"
|
||
TaskPush: "Отправить"
|
||
TaskRsync: "Синхронизация"
|
||
SuccessStatus: "{{ .name }} успешно"
|
||
FailedStatus: "{{ .name }} не удалось {{ .err }}"
|
||
Start: "Начать"
|
||
SubTask: "Подзадача"
|
||
Skip: "Пропустить ошибки и продолжить..."
|
||
Success: "Успешно"
|
||
|
||
# задачи умной маршрутизации AI-шлюза
|
||
AIProxySmartRouteCreateTask: "Создание образцов умной маршрутизации AI-шлюза"
|
||
AIProxySmartRouteCreateSubTask: "Создание образцов и генерация векторов"
|
||
AIProxySmartRouteCreateStart: "Начато создание образцов, всего: {{ .total }}"
|
||
AIProxySmartRouteCreateFailed: "[{{ .current }}/{{ .total }}] Ошибка создания: type={{ .type }} label={{ .label }} error={{ .err }}"
|
||
AIProxySmartRouteCreateSuccess: "[{{ .current }}/{{ .total }}] Создано: sampleID={{ .id }} type={{ .type }} label={{ .label }}"
|
||
AIProxySmartRouteCreateComplete: "Создание завершено: успешно {{ .success }}, с ошибкой {{ .failed }}"
|
||
AIProxySmartRouteCreateError: "Не удалось создать образцы: ошибок {{ .failed }}, последняя ошибка"
|
||
AIProxySmartRouteRebuildTask: "Перестроение векторов образцов умной маршрутизации AI-шлюза"
|
||
AIProxySmartRouteRebuildSubTask: "Перестроение векторов образцов"
|
||
AIProxySmartRouteEmbeddingRequired: "Требуются endpoint и модель Embedding"
|
||
AIProxySmartRouteRebuildStart: "Начато перестроение векторов образцов, всего: {{ .total }}"
|
||
AIProxySmartRouteRebuildFailed: "[{{ .current }}/{{ .total }}] Ошибка перестроения: sampleID={{ .id }} type={{ .type }} label={{ .label }} error={{ .err }}"
|
||
AIProxySmartRouteRebuildSuccess: "[{{ .current }}/{{ .total }}] Перестроено: sampleID={{ .id }} type={{ .type }} label={{ .label }}"
|
||
AIProxySmartRouteRebuildComplete: "Перестроение завершено: успешно {{ .success }}, с ошибкой {{ .failed }}"
|
||
AIProxySmartRouteRebuildError: "Не удалось перестроить векторы образцов: ошибок {{ .failed }}, последняя ошибка"
|
||
|
||
# пакетная задача агента
|
||
BatchInstallAgent: "Пакетная установка агентов"
|
||
DispatchAgentInstallTasks: "Отправить задачи установки агентов"
|
||
BatchUpgradeAgent: "Пакетное обновление агентов"
|
||
DispatchAgentUpgradeTasks: "Отправить задачи обновления агентов"
|
||
BatchAgentInstallDispatchFailed: "Узел {{ .node }} не смог отправить задачу установки {{ .agentType }} Message: {{ .err }}"
|
||
BatchAgentInstallSubmitted: "Узел {{ .node }} успешно отправил задачу установки {{ .agentType }}!"
|
||
BatchAgentUpgradeDispatchFailed: "Узел {{ .node }} не смог отправить задачу обновления {{ .agentType }} Message: {{ .err }}"
|
||
BatchAgentUpgradeAlreadyLatest: "Узел {{ .node }} {{ .agent }} уже на целевой версии, пропущено"
|
||
BatchAgentUpgradeSubmitted: "Узел {{ .node }} успешно отправил задачу обновления {{ .agent }}!"
|
||
BatchAgentUpgradeFailed: "Узел {{ .node }} не смог отправить задачу обновления {{ .agent }} Message: {{ .err }}"
|
||
BatchInstallAgentSkill: "Пакетная отправка Skill"
|
||
DispatchAgentSkillInstallTasks: "Отправить задачи установки Skill"
|
||
BatchAgentSkillDispatchFailed: "Узел {{ .node }} не смог отправить {{ .skill }} в {{ .target }} Message: {{ .err }}"
|
||
BatchAgentNoAgentsFound: "Узел {{ .node }} не нашел агентов {{ .agentType }}, пропущено"
|
||
BatchAgentSkillSkipped: "Узел {{ .node }} {{ .agent }} пропущен Message: {{ .msg }}"
|
||
BatchAgentSkillInstallSubmitted: "Узел {{ .node }} успешно отправил задачу установки {{ .skill }} в {{ .agent }}!"
|
||
BatchAgentSkillInstallFailed: "Узел {{ .node }} не смог отправить задачу установки {{ .skill }} в {{ .agent }} Message: {{ .err }}"
|
||
BatchAgentOperateDispatchFailed: "Узел {{ .node }} не смог отправить задачу {{ .operate }} для {{ .agentType }} Message: {{ .err }}"
|
||
BatchAgentOperateSkipped: "Узел {{ .node }} {{ .agent }} пропущен Message: {{ .msg }}"
|
||
BatchAgentOperateSubmitted: "Узел {{ .node }} успешно отправил задачу {{ .operate }} для {{ .agent }}!"
|
||
BatchAgentOperateFailed: "Узел {{ .node }} не смог отправить задачу {{ .operate }} для {{ .agent }} Message: {{ .err }}"
|
||
BatchStartAgent: "Пакетный запуск агентов"
|
||
DispatchAgentStartTasks: "Отправить задачи запуска агентов"
|
||
BatchStopAgent: "Пакетная остановка агентов"
|
||
DispatchAgentStopTasks: "Отправить задачи остановки агентов"
|
||
BatchRestartAgent: "Пакетный перезапуск агентов"
|
||
DispatchAgentRestartTasks: "Отправить задачи перезапуска агентов"
|
||
BatchDeleteAgent: "Пакетное удаление агентов"
|
||
DispatchAgentDeleteTasks: "Отправить задачи удаления агентов"
|
||
AgentOperateStart: "Запустить"
|
||
AgentOperateStop: "Остановить"
|
||
AgentOperateRestart: "Перезапустить"
|
||
AgentOperateDelete: "Удалить"
|
||
|
||
# задача приложения и навыка
|
||
PushAppInstallTaskToNode: "Отправить задачу установки приложения на узел [{{ .name }}]"
|
||
AppInstallTask: "Задача установки приложения"
|
||
PushAppFailed: "Не удалось отправить задачу установки приложения"
|
||
SkillHubInstallTask: "Установить навык [{{ .name }}]"
|
||
SkillHubInstallToTarget: "Установить навык [{{ .name }}] в цель [{{ .target }}]"
|
||
|
||
# библиотека скриптов
|
||
ScriptLibrary: "Библиотека скриптов"
|
||
RemoteScriptLibrary: "Удаленная Библиотека Скриптов"
|
||
ScriptSyncSkip: "Текущая библиотека скриптов уже является последней версией"
|
||
DownloadData: "Загрузка файла библиотеки скриптов data.yaml"
|
||
DownloadPackage: "Загрузка архива библиотеки скриптов"
|
||
AnalyticCompletion: "Анализ завершён, начинается синхронизация с базой данных..."
|
||
|
||
# синхронизация узла
|
||
SyncNode: "Синхронизировать данные с узлом {{ .name }}"
|
||
LocalName: "Имя 'local' используется только для локальной идентификации в системе"
|
||
SyncPackageData: "Упаковка данных синхронизации"
|
||
SyncPackageEncrypt: "Шифрование пакета данных"
|
||
SyncRequest: "Запрос API синхронизации узла"
|
||
SyncFailedRetry: "Таймаут синхронизации данных узла (попытка {{ .index }}), повторная попытка..."
|
||
SyncFailed: "Ошибка синхронизации, выполните ручную синхронизацию в списке узлов"
|
||
SyncSystemProxy: "Настройки системного прокси"
|
||
SyncScripts: "Библиотека скриптов"
|
||
SyncBackupAccounts: "Резервные аккаунты"
|
||
SyncAlertSetting: "Настройки оповещений"
|
||
SyncCustomApp: "Пользовательское приложение"
|
||
SyncLanguage: "Язык системы"
|
||
SyncEdition: "Регион работы"
|
||
|
||
# обновление узла
|
||
NodeUpgrade: "Обновление узла {{ .name }}"
|
||
UpgradeCheck: "Проверить обновления узла"
|
||
UpgradeCheckLocal: "Локальные узлы не поддерживают массовое обновление, пропуск..."
|
||
UpgradeCheckLatest: "Узел уже имеет последнюю версию, пропуск..."
|
||
NewSSHClient: "Инициализация SSH-соединения"
|
||
BackupBeforeUpgrade: "Резервное копирование данных перед обновлением"
|
||
UploadUpgradeFile: "Распределение файлов обновления"
|
||
RestartAfterUpgrade: "Запуск службы после обновления"
|
||
LoadAutoUpgradeNodesFailed: "Не удалось загрузить узлы автообновления, ошибка: {{ .err }}"
|
||
AutoUpgradeNodes: "Узлы автообновления: {{ .nodes }}"
|
||
UpdateAutoUpgradeNodesStatusFailed: "Не удалось обновить статус узлов автообновления, ошибка: {{ .err }}"
|
||
|
||
# добавление узла
|
||
MasterData: "Данные главного узла"
|
||
LoadSftpClient: "Загрузить SFTP-клиент"
|
||
PackageMasterData: "Создать архив резервной копии главного узла"
|
||
UploadBackup: "Загрузить резервные данные"
|
||
TaskAddNode: "Добавить узел"
|
||
LoadNodeArch: "Получить информацию об архитектуре узла"
|
||
LoadNodeArchDetail: "Обнаружена архитектура главного узла: {{ .local }}, архитектура дочернего узла: {{ .node }}"
|
||
LoadNodeUpgradeDetail: "Используется каталог установки исторической версии v1: {{ .baseDir }}, порт прослушивания службы: {{ .port }}"
|
||
SyncAgentBaseInfo: "Синхронизировать базовую информацию узла"
|
||
GenerateSSLInfo: "Сгенерировать SSL информацию узла"
|
||
ConnInfoNotMatch: "Информация о соединении не совпадает"
|
||
MakeAgentPackage: "Сгенерировать установочный пакет узла"
|
||
PrepareNodePackage: "Подготовка готового пакета на дочернем узле"
|
||
PrepareNodePackageDetail: "Использование готового пакета на дочернем узле: {{ .name }}"
|
||
SyncNodeConfig: "Синхронизация конфигурации узла"
|
||
ErrNodePackagePath: "Укажите абсолютный путь к файлу пакета на дочернем узле"
|
||
ErrNodePackageFile: "Не удалось обработать файл пакета {{ .name }}: {{ .err }}"
|
||
ErrNodePackageMember: "Пакет содержит недопустимую или повторяющуюся запись: {{ .name }}"
|
||
ErrNodePackageMismatch: "Пакет должен соответствовать версии главного узла {{ .version }} и архитектуре дочернего узла {{ .arch }}"
|
||
ErrNodePackageMissing: "В пакете отсутствует обязательный файл: {{ .name }}"
|
||
ErrNodePackageVersion: "Версия пакета {{ .version }} не совпадает с версией главного узла {{ .expected }}"
|
||
ErrNodePackageArch: "Архитектура исполняемого файла Agent не совпадает с архитектурой дочернего узла {{ .arch }}"
|
||
SendAgent: "Отправить установочный пакет узла"
|
||
StartService: "Запустить сервис"
|
||
NoBackupNode: "Резервный узел в настоящее время пуст. Выберите резервный узел для сохранения и повторите попытку"
|
||
|
||
# синхронизация файлов и образов узла
|
||
LocalNodeIpFailed: "Не удалось получить IP главного узла. Измените главный узел и добавьте IP-адрес и данные аутентификации SSH."
|
||
HandlePrivateKey: "Обработать закрытый ключ узла"
|
||
HandlePublicKey: "Обработать открытый ключ узла"
|
||
ExchangeFile: "Начать синхронизацию {{ .sourcePath }} с узла {{ .source }} на узел {{ .dest }}:{{ .destPath }}"
|
||
NodeFile: "Файл узла"
|
||
ImageSyncTaskName: "Синхронизировать образы: {{ .count }}"
|
||
SSLSyncTaskName: "Синхронизировать сертификаты: {{ .count }}"
|
||
AppSyncTaskName: "Синхронизировать приложение {{ .name }}"
|
||
SSLSyncToNode: "Отправить сертификат [{{ .cert }}] на узел [{{ .node }}]"
|
||
ImageSyncSave: "Сохранить образ {{ .image }}"
|
||
ImageSyncSaveTags: "Сохранить теги образа {{ .tags }}"
|
||
ImageSyncToNode: "Синхронизировать образ {{ .image }} с узлом {{ .node }}"
|
||
ImageSyncLoad: "Загрузить образ {{ .image }} на узел {{ .node }}"
|
||
ImageSyncClean: "Очистить временные файлы образа {{ .image }}"
|
||
ImageSyncNoTag: "У образа {{ .image }} нет тега, поэтому он будет сохранён по ID образа"
|
||
ImageSyncFrontendTagsIgnored: "На исходном узле не найдены теги образа {{ .image }}. Теги из frontend проигнорированы."
|
||
ImageSyncHandlePrivateKey: "Обработать закрытый ключ узла синхронизации образов"
|
||
ImageSyncHandlePublicKey: "Обработать открытый ключ узла синхронизации образов"
|
||
ImageSyncTransfer: "Начать передачу временного файла образа: {{ .source }}:{{ .sourcePath }} -> {{ .dest }}:{{ .destPath }}"
|
||
|
||
# командная строка
|
||
SudoHelper: "Пожалуйста, используйте {{ .cmd }} или переключитесь на пользователя root"
|
||
UsernameNeed: "Для Enterprise-версии необходимо указать --username"
|
||
DBConnErr: "Ошибка: не удалось инициализировать соединение с базой данных, {{ .err }}"
|
||
SystemVersion: "Версия:"
|
||
SystemMode: "Режим:"
|
||
|
||
# командная строка - приложение
|
||
AppVersion: "Версия приложения"
|
||
AppCommands: "Команды приложения"
|
||
AppInit: "Инициализация приложения"
|
||
AppKeyVal: "Ключ приложения (поддерживаются только английские символы)"
|
||
AppCreateFileErr: "Не удалось создать файл {{ .name }} {{ .err }}"
|
||
AppCreateDirErr: "Не удалось создать папку {{ .name }} {{ .err }}"
|
||
AppMissKey: "Отсутствует ключ приложения, используйте -k для указания"
|
||
AppMissVersion: "Отсутствует версия приложения, используйте -v для указания"
|
||
AppVersionExist: "Версия уже существует"
|
||
AppCreateSuccessful: "Успешно создано"
|
||
AppWriteErr: "Не удалось записать файл {{ .name }} {{ .err }}"
|
||
|
||
# командная строка - IP прослушивания
|
||
ListenIPCommands: "Переключить IP для прослушивания"
|
||
ListenIPv4: "Прослушивание IPv4"
|
||
ListenIPv6: "Прослушивание IPv6"
|
||
ListenChangeSuccessful: "Переключено успешно Теперь прослушиваем {{ .value }}"
|
||
|
||
# командная строка - сброс
|
||
ResetCommands: "Сбросить информацию о системе"
|
||
ResetMFA: "Отменить двухфакторную аутентификацию 1Panel"
|
||
ResetHttps: "Отменить вход в 1Panel через https"
|
||
ResetEntrance: "Отменить безопасный вход 1Panel"
|
||
ResetIPs: "Отменить ограничения авторизованных IP для 1Panel"
|
||
ResetDomain: "Отменить привязку домена доступа 1Panel"
|
||
ResetPasskey: "Сбросить passkey 1Panel"
|
||
|
||
# командная строка - пользователь
|
||
UserList: "Получить список пользователей 1Panel"
|
||
UserTableName: "Имя"
|
||
UserTableMFAStatus: "Статус MFA"
|
||
UserTableSuperAdmin: "Суперадмин"
|
||
UserTableCreatedAt: "Создано"
|
||
UserEmptyList: "Пользователи не найдены"
|
||
UserInfo: "Получить информацию о панели"
|
||
UserInfoAddr: "Адрес панели:"
|
||
UserInfoPassHelp: "Подсказка: для изменения пароля можно выполнить команду:"
|
||
|
||
# командная строка - восстановление
|
||
RestoreCommands: "Откатить сервис и данные 1Panel"
|
||
RestoreNoSuchFile: "Файлы для отката не найдены"
|
||
RestoreStep1: "(1/5) Начинаем откат сервиса и данных 1Panel из каталога {{ .name }}..."
|
||
RestoreStep2: "(2/5) Откат бинарного файла 1Panel завершён"
|
||
RestoreStep3: "(3/5) Откат скриптов 1Panel завершён"
|
||
RestoreStep4: "(4/5) Откат сервиса 1Panel завершён"
|
||
RestoreStep5: "(5/5) Откат данных 1Panel завершён"
|
||
RestoreSuccessful: "Откат завершён. Возвращено к версии {{ .version }}. Перезапускаем сервис..."
|
||
|
||
# командная строка - обновление
|
||
UpdateCommands: "Изменить информацию панели"
|
||
UpdateUser: "Изменить информацию пользователя"
|
||
UpdatePassword: "Изменить пароль пользователя"
|
||
UpdatePort: "Изменить порт панели"
|
||
UpdateUserNull: "Ошибка: введён пустой пользователь"
|
||
UpdateUserBlank: "Ошибка: введённый пользователь содержит пробелы"
|
||
UpdateUserFormat: "Ошибка: неверный формат имени пользователя Поддерживаются только английские, китайские символы, цифры и _ , длина 3-30 символов"
|
||
UpdateUserErr: "Ошибка: не удалось изменить пользователя, {{ .err }}"
|
||
UpdateSuccessful: "Успешно изменено"
|
||
UpdateUserResult: "Пользователь: {{ .name }}"
|
||
UpdatePasswordRead: "Ошибка: не удалось прочитать информацию о пароле пользователя, {{ .err }}"
|
||
UpdatePasswordNull: "Ошибка: введён пароль пуст"
|
||
UpdateUPasswordBlank: "Ошибка: введён пароль с пробелами"
|
||
UpdatePasswordFormat: "Ошибка: пароль пользователя должен содержать только буквы, цифры и специальные символы (@#$%*_,.?) и иметь длину 8-30 символов."
|
||
UpdatePasswordLen: "Ошибка: пароль должен быть длиной не менее 6 символов"
|
||
UpdatePasswordRe: "Подтверждение пароля:"
|
||
UpdatePasswordErr: "Ошибка: не удалось изменить пароль пользователя, {{ .err }}"
|
||
UpdatePasswordSame: "Ошибка: пароли не совпадают, пожалуйста, проверьте и попробуйте снова"
|
||
UpdatePasswordResult: "Пароль пользователя: {{ .name }}"
|
||
UpdatePortFormat: "Ошибка: введённый порт должен быть в пределах от 1 до 65535"
|
||
UpdatePortUsed: "Ошибка: этот порт уже занят, пожалуйста, проверьте и попробуйте снова"
|
||
UpdatePortErr: "Ошибка: не удалось изменить порт панели, {{ .err }}"
|
||
UpdatePortResult: "Порт панели: {{ .name }}"
|
||
UpdatePortFirewallAdd: "Не удалось добавить правило фаервола для порта, {{ .err }}, пожалуйста, вручную добавьте порт {{ .name }} в правила фаервола."
|
||
UpdatePortFirewallDel: "Ошибка: не удалось удалить правило фаервола для порта, {{ .err }}"
|
||
UpdatePortFirewallReload: "Не удалось перезагрузить фаервол, {{ .err }}, пожалуйста, вручную перезагрузите фаервол."
|
||
|
||
# мобильное приложение
|
||
ErrVerifyToken: 'шибка проверки токена, пожалуйста, сбросьте и отсканируйте снова.'
|
||
ErrInvalidToken: 'Неверный токен, пожалуйста, сбросьте и отсканируйте снова.'
|
||
ErrExpiredToken: 'QR-код недействителен. Создайте новый и отсканируйте его снова.'
|
||
|
||
# экспорт команд
|
||
Name: "Название"
|
||
Command: "Команда"
|
||
|
||
# LDAP
|
||
ErrLDAPConnectionTest: "Не удалось выполнить проверку подключения LDAP. Проверьте адрес сервера, учетную запись привязки и настройки сети."
|
||
ErrLDAPLoginTest: "Не удалось выполнить проверку входа LDAP. Проверьте имя пользователя и пароль."
|
||
LDAPConnectionTestSuccess: "Проверка подключения LDAP выполнена успешно."
|
||
ErrLDAPDirectorySearch: "Не удалось прочитать пользователей LDAP. Проверьте подключение и настройки поиска."
|
||
ErrLDAPConfigLoad: "Не удалось загрузить конфигурацию LDAP."
|
||
ErrLDAPConfigSave: "Не удалось сохранить конфигурацию LDAP."
|
||
ErrLDAPURLInvalid: "Адрес сервера LDAP должен использовать ldap:// или ldaps:// и содержать допустимый хост."
|
||
ErrLDAPBindDNRequired: "Требуется DN привязки."
|
||
ErrLDAPBindPasswordRequired: "Требуется пароль привязки."
|
||
ErrLDAPUserOURequired: "Требуется OU пользователей."
|
||
ErrLDAPConnectTimeoutRange: "Время ожидания подключения должно быть от 1 до 120 секунд."
|
||
ErrLDAPSearchPageSizeRange: "Размер страницы запроса LDAP должен быть от 1 до 10000."
|
||
ErrLDAPResultPageSizeRange: "Размер страницы результатов не может превышать 200."
|
||
ErrLDAPAttributeMapOnlyName: "Сопоставление атрибутов поддерживает только поле name."
|
||
ErrLDAPNameAttributeRequired: "Требуется атрибут LDAP, сопоставленный с name."
|
||
ErrLDAPAttributeNameInvalid: "Сопоставление содержит недопустимое имя атрибута LDAP."
|
||
ErrLDAPUserFilterRequired: "Требуется фильтр пользователей."
|
||
ErrLDAPUserFilterInvalid: "Фильтр пользователей не является допустимым фильтром LDAP."
|
||
ErrLDAPAttributeMapObject: "Сопоставление атрибутов должно быть допустимым объектом JSON."
|
||
ErrLDAPImportModeInvalid: "Режим импорта должен включать выбранных или всех пользователей."
|
||
ErrLDAPImportSelectionRequired: "Выберите хотя бы одного пользователя LDAP для импорта."
|
||
ErrLDAPImportSelectionInvalid: "Выбранные пользователи LDAP недействительны или больше не существуют. Повторно прочитайте каталог."
|
||
ErrLDAPConfigChanged: "Конфигурация LDAP изменилась. Повторно прочитайте каталог и просмотрите импорт."
|
||
ErrLDAPRoleRequired: "Выберите роль для новых пользователей LDAP."
|
||
ErrLDAPImportPlanIncomplete: "Неполный план импорта LDAP нельзя выполнить."
|
||
ErrLDAPQueryTokenInvalid: "Результат запроса LDAP истек. Повторно прочитайте каталог."
|
||
ErrLDAPPlanTokenInvalid: "Предварительный просмотр импорта LDAP истек. Выполните его повторно."
|
||
ErrLDAPOperationFailed: "Операция LDAP завершилась ошибкой. Повторите попытку."
|
||
ErrLDAPEntryIdentityMissing: "В записи LDAP отсутствует стабильный идентификатор или имя пользователя."
|
||
ErrLDAPDuplicateExternalID: "LDAP вернул повторяющиеся идентификаторы пользователей."
|
||
ErrLDAPUsernameConflict: "Имя пользователя уже используется другим пользователем."
|
||
ErrLDAPUsernameSourceConflict: "Имя пользователя уже используется локальным пользователем или другим источником аутентификации."
|
||
ErrLDAPUsernameConcurrentConflict: "Во время импорта имя пользователя было занято другим пользователем."
|
||
ErrLDAPLocalCredentialsReadonly: "Имена и пароли пользователей LDAP управляются LDAP и не могут быть изменены локально."
|
||
ErrLDAPPasswordExpirationUnsupported: "Для пользователей LDAP не применяется локальная политика срока действия пароля."
|
||
ErrLDAPSyncSourceDisabled: "Включите AD/LDAP перед включением или запуском синхронизации."
|
||
ErrLDAPSyncConfigSave: "Не удалось сохранить настройки синхронизации LDAP."
|
||
ErrLDAPSyncSchedule: "Не удалось обновить расписание синхронизации LDAP."
|
||
ErrLDAPSyncCronInvalid: "Введите корректное пятикомпонентное выражение Cron."
|
||
ErrLDAPSyncWeekdayInvalid: "Выберите корректный день недели."
|
||
ErrLDAPSyncCronRequired: "Введите выражение Cron."
|
||
ErrLDAPSyncScheduleTypeInvalid: "Выберите корректный тип расписания синхронизации."
|
||
ErrLDAPSyncTimeInvalid: "Введите корректное время выполнения."
|
||
ErrLDAPSyncRunning: "Задача синхронизации LDAP уже выполняется."
|
||
ErrLDAPSyncDirectoryIncomplete: "LDAP вернул неполный результат полного запроса. Статусы пользователей не были изменены."
|
||
ErrLDAPSyncFailed: "Не удалось синхронизировать пользователей LDAP."
|
||
LDAPSyncSuccess: "Синхронизация пользователей LDAP успешно завершена."
|
||
ErrSAML2NotEnabled: "Аутентификация SAML2 не включена."
|
||
ErrSAML2ConfigInvalid: "Конфигурация SAML2 недействительна."
|
||
ErrSAML2ConfigChanged: "Конфигурация SAML2 изменилась. Запустите аутентификацию заново."
|
||
ErrSAML2PanelOriginMissing: "Введите корректный публичный URL 1Panel, содержащий только схему, хост и необязательный порт."
|
||
ErrSAML2MetadataInvalid: "Метаданные IdP отсутствуют или недействительны."
|
||
ErrSAML2MetadataURLInvalid: "URL метаданных IdP или одна из конечных точек в метаданных не разрешены."
|
||
ErrSAML2MetadataFetch: "Не удалось загрузить метаданные IdP."
|
||
ErrSAML2MetadataCertificate: "Метаданные IdP не содержат подходящего сертификата подписи."
|
||
ErrSAML2KeyPairInvalid: "Закрытый ключ и сертификат SP недействительны или не соответствуют друг другу."
|
||
ErrSAML2NameAttributeMissing: "Настроенный атрибут имени пользователя SAML2 отсутствует или недействителен."
|
||
ErrSAML2DefaultRoleInvalid: "Роль по умолчанию, настроенная для SAML2, недоступна."
|
||
ErrSAML2SLOUnavailable: "IdP не предоставляет поддерживаемую службу единого выхода."
|
||
ErrSAML2TestExpired: "Срок действия теста SAML2 истек. Запустите его снова."
|
||
ErrSAML2LoginExpired: "Срок действия запроса на вход SAML2 истек. Повторите попытку."
|
||
ErrSAML2InvalidState: "Состояние входа SAML2 недействительно или уже использовано."
|
||
ErrSAML2RequestBuild: "Не удалось сформировать запрос SAML2."
|
||
ErrSAML2ResponseInvalid: "Ответ SAML2 недействителен."
|
||
ErrSAML2SignatureInvalid: "Подпись SAML2 недействительна."
|
||
ErrSAML2Replay: "Сообщение SAML2 уже было использовано."
|
||
ErrSAML2NameIDMissing: "NameID SAML2 отсутствует или недействителен."
|
||
ErrSAML2SessionIndexMissing: "SessionIndex SAML2 отсутствует или недействителен."
|
||
ErrSAML2NameConflictLocal: "Имя пользователя SAML2 конфликтует с локальным пользователем."
|
||
ErrSAML2NameConflictLDAP: "Имя пользователя SAML2 конфликтует с пользователем LDAP."
|
||
ErrSAML2NameConflictOIDC: "Имя пользователя SAML2 конфликтует с пользователем OIDC."
|
||
ErrSAML2NameConflictSAML2: "Имя пользователя SAML2 конфликтует с другой учетной записью SAML2."
|
||
ErrSAML2Internal: "Во время аутентификации SAML2 произошла внутренняя ошибка. Повторите попытку позже."
|
||
ErrSAML2LogoutExpired: "Срок действия запроса на выход SAML2 истек."
|
||
ErrSAML2LogoutInvalid: "Сообщение выхода SAML2 недействительно."
|
||
ErrSAML2LocalCredentialsReadonly: "Имена пользователей и пароли SAML2 управляются поставщиком удостоверений и не могут быть изменены локально."
|
||
ErrSAML2PasswordExpirationUnsupported: "Для пользователей SAML2 не применяется локальная политика срока действия паролей."
|
||
|
||
# API key management
|
||
ErrAPIKeyConflict: "Ключ API изменён. Обновите данные и повторите попытку; при повторном создании используйте исходные параметры"
|
||
ErrAPIKeyNameExists: "Неотозванный ключ API с таким именем уже существует"
|
||
ErrAPIKeyNotFound: "Ключ API не существует или не принадлежит текущему пользователю"
|
||
ErrAPIKeyAppBindingDisabled: "Для этого ключа API привязка приложения через QR-код запрещена"
|
||
ErrAPIKeyTerminalUpgradeRequired: "Не удалось проверить поддержку авторизации терминала по ключу API. Проверьте подключение узла, обновите его Agent и повторите попытку."
|
||
LocalAppSyncDispatch: "Отправка запросов синхронизации локальных приложений"
|
||
LocalAppSyncDispatchNode: "Отправка запроса синхронизации узлу {{.node}} (задача узла: {{.taskID}})"
|
||
ErrLocalAppSyncDisabled: "Синхронизация локальных приложений между узлами отключена"
|
||
|
||
# MCP connection document
|
||
MCPDocumentTitle: "Инструкция для настройки подключения 1Panel MCP"
|
||
MCPDocumentIntro: "Передайте этот файл ИИ-агенту и попросите выполнить настройку по инструкции. Файл содержит полный Token; храните его конфиденциально."
|
||
MCPDocumentTaskTitle: "Задача настройки для ИИ-агента"
|
||
MCPDocumentTask: "Настройте 1Panel MCP в текущей среде для указанного ниже клиента, затем проверьте подключение и обнаружение инструментов. Используйте параметры подключения из приведённого ниже блока конфигурации."
|
||
MCPDocumentClientCodex: "Целевой клиент: Codex. Сначала уточните область действия конфигурации и фактический CODEX_HOME. Используйте действующий config.toml (по умолчанию ~/.codex/config.toml) и объедините приведённый ниже TOML с соответствующей записью mcp_servers."
|
||
MCPDocumentClientClaude: "Целевой клиент: Claude. Сначала уточните фактическую версию клиента. Приведённый ниже JSON предназначен для клиентов с поддержкой настройки MCP по HTTP. Используйте место хранения или способ управления конфигурацией, поддерживаемые этой версией; не добавляйте удалённую конфигурацию HTTP в раздел, предназначенный только для stdio."
|
||
MCPDocumentClientGeneric: "Целевой клиент: универсальный MCP-клиент. Сначала определите используемый клиент и область действия конфигурации. Если это неясно, спросите пользователя; не угадывайте расположение файла. Объедините параметры подключения ниже согласно синтаксису клиента."
|
||
MCPDocumentSteps: |-
|
||
1. Убедитесь, что целевой клиент поддерживает Streamable HTTP и заголовки запросов Bearer. Если версия их не поддерживает, объясните причину.
|
||
2. Прочитайте существующую конфигурацию и создайте резервную копию. Добавьте единственную запись сервера ниже, сохранив остальные настройки MCP и клиента. Если такое имя уже существует, обновите только эту запись.
|
||
3. Запишите URL и Authorization без изменения значений. Не создавайте новый Token и не меняйте права панели или состояние службы. Не помещайте Token в историю команд, журналы, ответы или Git.
|
||
4. Не отключайте проверку сертификатов HTTPS. Для частного CA запросите у пользователя доверенный CA; не доверяйте сертификату сервера автоматически и не отключайте проверку TLS. Используйте HTTP только в доверенных сетях; перед передачей через недоверенную сеть настройте HTTPS.
|
||
5. Перезагрузите конфигурацию средствами клиента и проверьте инициализацию MCP и tools/list. Не выполняйте tools/call или операции записи. Если перезагрузка недоступна, сообщите о необходимости нового сеанса или перезапуска. Сохранение файла само по себе не означает успешного подключения.
|
||
6. Укажите клиент, расположение конфигурации, имя сервера, результаты подключения и обнаружения инструментов, а также нерешённые вопросы. Скройте Token.
|
||
MCPDocumentConfigTitle: "Конфигурация подключения"
|
||
MCPDocumentNotes: "Сервер панели проверяет текущие права на инструменты, узлы и права владельца учётных данных при каждом запросе. После создания нового Token обновите конфигурацию клиента. Доступ отклоняется, если учётные данные отключены, отозваны или просрочены."
|
||
MCPDocumentHTTPWarning: "Этот адрес использует незашифрованный HTTP. Перед использованием в недоверенной сети настройте HTTPS."
|
||
|
||
# MCP management
|
||
ErrMCPConflict: "Конфликт данных MCP. Обновите и проверьте."
|
||
ErrMCPSettingsChanged: "Настройки службы изменились. Обновите и проверьте перед сохранением."
|
||
ErrMCPCredentialChanged: "Учётные данные изменились. Обновите и проверьте перед отправкой."
|
||
ErrMCPCredentialRevoked: "Учётные данные отозваны. Создайте новые."
|
||
ErrMCPCredentialNameExists: "Имя учётных данных уже существует. Выберите другое."
|
||
ErrMCPRequestReused: "Конфликт параметров запроса. Закройте и снова откройте окно."
|
||
ErrMCPInstallationRunning: "Идёт установка. Проверьте журнал установки."
|
||
ErrMCPServiceOperationRunning: "Выполняется операция службы. Обновите после её завершения."
|
||
ErrMCPEndpointManagedByWebsite: "Адрес управляется сайтом. Измените его в настройках сайта."
|
||
ErrMCPWebsiteConfigurationExists: "Есть привязка или незавершённая операция. Отключите «Привязать сайт после установки»."
|
||
ErrMCPWebsiteAlreadyBound: "Сайт уже привязан. Измените или удалите текущую привязку."
|
||
ErrMCPWebsiteNotBound: "Нет привязанного сайта. Обновите перед привязкой."
|
||
ErrMCPWebsiteMissing: "Исходный сайт отсутствует. Удалите недействительную привязку и привяжите снова."
|
||
ErrMCPWebsiteOperationPending: "Операция сайта не подтверждена. Обновите и повторите исходную операцию."
|
||
ErrMCPWebsiteDomainConflict: "Сочетание домена и порта занято. Измените домен или порт."
|
||
ErrMCPWebsiteOwnershipChanged: "Владелец сайта изменился. Проверьте сайт и настройки привязки."
|
||
ErrMCPWebsiteDomainChanged: "Домен сайта изменился. Проверьте его и обновите статус привязки."
|
||
ErrMCPWebsiteDirectoryChanged: "Каталог сайта или права изменились. Восстановите их перед повторной попыткой."
|
||
ErrMCPWebsiteProxyModified: "Конфликт конфигурации прокси. Восстановите настройки прокси MCP."
|
||
ErrMCPWebsiteModified: "Протокол или настройки сайта изменились. Проверьте и обновите."
|
||
ErrMCPWebsiteRequestChanged: "Запись операции не совпадает. Обновите и проверьте результат перед новой операцией."
|
||
ErrMCPWebsiteProxyNotLoaded: "Прокси MCP не загружен. Проверьте настройки сайта и OpenResty."
|
||
ErrMCPWebsiteStateUnconfirmed: "Статус сайта не подтверждён. Проверьте сайт и OpenResty, затем обновите."
|
||
ErrMCPPolicyChanged: "Каталог инструментов или права изменились. Обновите и проверьте перед сохранением."
|
||
ErrMCPCatalogUnavailable: "Каталог инструментов недоступен. Проверьте статус службы."
|
||
ErrMCPDisabled: "Служба MCP не включена."
|
||
ErrMCPSecretKeyUnavailable: "Шифрование учётных данных недоступно. Повторите позже."
|
||
ErrMCPSecretInvalid: "Не удалось расшифровать Token. Создайте его заново."
|
||
ErrMCPCredentialInactive: "Учётные данные отключены, просрочены или отозваны."
|
||
ErrMCPAuditUnavailable: "Аудит операций недоступен. Сначала проверьте результат операции."
|
||
ErrMCPEndpointUnavailable: "Сначала настройте корректный адрес MCP."
|
||
ErrMCPWebsitePending: "Результат операции сайта не подтверждён. Обновите и повторите исходную операцию."
|
||
ErrMCPWebsiteUnavailable: "Привязка сайта недоступна. Проверьте сайт и OpenResty."
|
||
ErrMCPWebsiteServiceRequired: "Сначала установите службу 1Panel MCP."
|
||
|
||
ErrMCPWebsiteHTTPPortRequired: "Для привязки HTTPS используйте HTTP-порт OpenResty."
|
||
|
||
# MCP installation tasks
|
||
PanelMCP: "1Panel MCP"
|
||
MCPInstallPrepare: "Проверить текущую службу MCP"
|
||
MCPInstallPullImage: "Проверить и загрузить образ"
|
||
MCPInstallCatalog: "Проверить контракт инструментов"
|
||
MCPInstallStarting: "Запустить контейнер и проверить его работоспособность"
|
||
MCPInstallSaving: "Сохранить конфигурацию службы"
|
||
MCPInstallCompleted: "Установка службы MCP завершена"
|
||
MCPInstallRollback: "Установка не удалась; восстановить предыдущую службу MCP"
|
||
MCPInstallBindWebsite: "Создать привязанный сайт"
|
||
MCPInstallWebsiteFailed: "Служба установлена, привязка сайта не удалась. Исправьте её в настройках службы."
|
||
MCPInstallInterrupted: "Перезапуск панели прервал установку. Проверьте статус службы."
|
||
MCPInstallFailed: "Установка не удалась. Проверьте Docker, образ и журналы панели."
|
||
MCPInstallRecoveryFailed: "Установка не удалась, служба восстановлена не полностью. Проверьте её статус."
|
||
MCPInstallLocalImage: "Образ уже есть локально; пропустить загрузку"
|
||
MCPInstallVerifyImage: "Проверить версию образа и контракт управляемой службы"
|
||
MCPInstallVerifiedImage: "Образ успешно проверен"
|
||
|
||
PHPExtensionsNoTargets: "После исключения исходного узла не осталось целевых узлов"
|
||
PHPExtensionsSyncTask: "Синхронизация шаблона расширений PHP [{{ .name }}]"
|
||
PHPExtensionsSyncSkipped: "На узле [{{ .node }}] уже есть идентичный шаблон; пропущено"
|
||
MCPInstallCleanup: "Очистка предыдущего контейнера"
|
||
MCPInstallOldContainerRemoved: "Предыдущий контейнер удалён"
|
||
MCPInstallOldImageRemoved: "Предыдущий образ удалён"
|
||
MCPInstallOldImageKept: "Предыдущий образ сохранён"
|
||
MCPInstallOldImageRetained: "Предыдущий образ используется или имеет другие теги; он сохранён."
|
||
MCPInstallCleanupSkipped: "Предыдущий контейнер отсутствует; удаление образа пропущено."
|
||
MCPInstallCleanupFailed: "Служба MCP обновлена, но старые ресурсы очищены не полностью. Проверьте их вручную."
|