Skip to main content

Служебные программы командной строки

GitHub Enterprise Server включает различные утилиты для решения конкретных проблем или выполнения конкретных задач.

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

Все служебные программы принимают -h или --help отображают сведения об использовании.

Общие

ghe-announce

Эта утилита устанавливает баннер вверху каждой GitHub Enterprise страницы. Его можно использовать для трансляции сообщения вашим пользователям.

# Sets a message that's visible to everyone
$ ghe-announce -s MESSAGE
> Announcement message set.
# Removes a previously set message
$ ghe-announce -u
> Removed the announcement message

Чтобы разрешить каждому пользователю отклонить объявление для себя, используйте -d флаг.

# Sets a user-dismissible message that's visible to everyone
$ ghe-announce -d -s MESSAGE
> Announcement message set.
# Removes a previously set message
$ ghe-announce -u
> Removed the announcement message, which was user
> dismissible: MESSAGE

Вы также можете установить баннер объявления, используя корпоративные настройки на GitHub Enterprise Server. Дополнительные сведения см. в разделе Настройка сообщений для пользователей на предприятии.

ghe-aqueduct

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

Эта служебная программа помогает определить, есть ли проблемы с обработкой фоновых заданий на сервере Aqueduct. Любая из следующих ситуаций может свидетельствовать о проблеме с Aqueduct.

  • Количество фоновых заданий увеличивается, а количество активных заданий остается тем же.
  • Веб-каналы событий не обновляются.
  • Веб-перехватчики не активируются.
  • Веб-интерфейс не обновляется после отправки Git.

Если вы подозреваете, что Aqueduct выходит из строя, обратитесь Поддержка GitHub Enterprise за помощью.

С помощью этой команды можно также приостанавливать или возобновлять задания в очереди.

$ ghe-aqueduct status
# lists queues and the number of currently queued jobs
# for all queues
$ ghe-aqueduct queue_depth --queue QUEUE
# lists the number of currently queued jobs for the
# specified queue
$ ghe-aqueduct pause --queue QUEUE
# pauses the specified queue
$ ghe-aqueduct resume --queue QUEUE
# resumes the specified queue

ghe-aqueduct-info

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

ghe-aqueduct-info

С помощью следующих флагов ghe-aqueduct-infoможно использовать.

ФлагDescription
-v/--verboseЗапустите в подробном режиме.
-p/--prettyОтображение в формате таблицы.

ghe-check-disk-usage

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

ghe-check-disk-usage

ghe-cleanup-caches

Эта служебная программа очищает различные кэши, которые могут занимать много дискового пространства в корневом томе. Если вы обнаруживаете, что использование дискового пространства корневого тома с течением времени значительно растет, рекомендуется запустить эту служебную программу и посмотреть, поможет ли она сократить общее использование.

ghe-cleanup-caches

ghe-cleanup-settings

Эта утилита стирает все существующие Консоль управления настройки.

Совет

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

ghe-cleanup-settings

ghe-config

С помощью этой утилиты можно как извлекать, так и изменять настройки .ваш экземпляр GitHub Enterprise Server

$ ghe-config core.github-hostname
# Gets the configuration value of `core.github-hostname`
$ ghe-config core.github-hostname URL
# Sets the configuration value of `core.github-hostname`
# to the specified URL
$ ghe-config -l
# Lists all the configuration values

С ее помощью вы можете найти универсальный уникальный идентификатор (UUID) вашего узла вcluster.conf.

  ghe-config HOSTNAME.uuid

Позволяет исключить список пользователей из ограничений скорости REST API. Однако к этим пользователям по-прежнему будет применяться строгое ограничение в 120 000 запросов. Имена пользователей, предоставляемые для этой команды, чувствительны к регистру. Дополнительные сведения см. в разделе Ограничения скорости для REST API.

$ ghe-config app.github.rate-limiting-exempt-users "hubot github-actions[bot]"
# Exempts the users hubot and github-actions[bot] from rate limits.
# Usernames are case-sensitive.

ghe-config-apply

Эта утилита применяет Консоль управления настройки, перезагружает системные сервисы, готовит устройство хранения, перезагружает сервисы приложений и запускает ожидающие миграции базы данных. Это эквивалентно нажатию «Сохранить настройки» в Консоль управлениявеб-интерфейсе или отправке POST-запроса на /manage/v1/config/apply конечную точку. Начиная с версии 3.16, эта утилита условно применяет изменения конфигурации к соответствующим параметрам. Его можно принудительно запустить безусловно с помощью -f флага.

ghe-config-apply

ghe-config-check

Эта программа проверяет GitHub Enterprise Server файлы конфигурации и проверяет отдельные параметры.

ghe-config-check

Чтобы проверить определенный файл, выполните указанные действия.

ghe-config-check /PATH/TO/github.conf

Чтобы вывести результаты в формате JSON, выполните следующие действия:

ghe-config-check json

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

ghe-config-check github-ssl.

С помощью следующих флагов ghe-config-checkможно использовать.

ФлагDescription
--error-checks-onlyВыполняйте только проверки высокой серьезности, которые должны рассматриваться как блокирующие ошибки.
--warning-checks-onlyВыполняйте только проверки низкой серьезности, которые можно рассматривать как предупреждения.

ghe-crypto

Эта утилита используется для проверки и перечисления Консоль управленияgithub-ssl криптонастроек для TLS и SSH соединений.

Список настраиваемых github-ssl полей можно просмотреть с помощью .ghe-crypto --help

Список наборов шифров и алгоритмов по умолчанию

Команда list возвращает стандартные настройки шифрования для заданного поля. Используйте -o json флаг для вывода результатов в формате JSON.

Чтобы перечислить наборы шифров TLS 1.2:

ghe-crypto list tlsv12-ciphersuites

Чтобы перечислить наборы шифров TLS 1.3:

ghe-crypto list tlsv13-ciphersuites

Чтобы перечислить шифры SSH:

ghe-crypto list ssh-ciphers

Чтобы перечислить алгоритмы SSH MAC:

ghe-crypto list ssh-mac-algorithms

Чтобы перечислить алгоритмы обмена ключами SSH:

ghe-crypto list ssh-kex-algorithms

Чтобы получить список типов сигнатур SSH, выполните следующие действия.

ghe-crypto list ssh-signature-types

Пример вывода в формате JSON:

$ ghe-crypto list tlsv12-ciphersuites -o json
> [
>  "ECDHE-ECDSA-AES128-GCM-SHA256",
>  "ECDHE-ECDSA-CHACHA20-POLY1305",
>  "ECDHE-ECDSA-AES256-GCM-SHA384",
>  "ECDHE-RSA-AES128-GCM-SHA256",
>  "ECDHE-RSA-CHACHA20-POLY1305",
>  "ECDHE-RSA-AES256-GCM-SHA384"
> ]

Проверка наборов шифров и алгоритмов

Команда check проверяет одну строку настроек шифрования, разделенных ., Это полезно перед применением изменений конфигурации.

Чтобы проверить наборы шифров TLS 1.2, выполните следующие действия:

ghe-crypto check tlsv12-ciphersuites CIPHER1,CIPHER2,CIPHER3

Чтобы проверить наборы шифров TLS 1.3, выполните следующие действия:

ghe-crypto check tlsv13-ciphersuites TLS_AES_128_GCM_SHA256,TLS_AES_256_GCM_SHA384,TLS_CHACHA20_POLY1305_SHA256

Чтобы проверить шифры SSH:

ghe-crypto check ssh-ciphers chacha20-poly1305@openssh.com,aes256-gcm@openssh.com,aes128-gcm@openssh.com

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

ghe-console

Эта утилита открывает консоль GitHub Rails на вашем устройстве GitHub Enterprise. Не используйте эту команду без указаний от Поддержка GitHub Enterprise. Неправильное использование может привести к повреждению или потере данных.

ghe-console

ghe-dbconsole

Эта утилита открывает сессию MySQL базы данных на вашем GitHub Enterprise устройстве. Не используйте эту команду без указаний от Поддержка GitHub Enterprise. Неправильное использование может привести к повреждению или потере данных.

ghe-dbconsole

ghe-es-index-status

Эта служебная программа возвращает сводку индексов Elasticsearch в формате CSV.

Вывод сводки индексов со строкой заголовка в STDOUT:

$ ghe-es-index-status -do
> warning: parser/current is loading parser/ruby23, which recognizes
> warning: 2.3.3-compliant syntax, but you are running 2.3.4.
> warning: please see https://github.com/whitequark/parser#compatibility-with-ruby-mri.
> Name,Primary,Searchable,Writable,UpToDate,RepairProgress,Version
> code-search-1,true,true,true,true,100.0,72e27df7c631b45e026b42bfef059328fa040e17
> commits-5,true,true,true,true,100.0,7ed28813100c47813ef654c0ee2bb9abf21ab744
> gists-4,true,true,true,true,100.0,cf8e7d04fcf2564c902e2873c424a279cc41079d
> issues-4,false,false,false,true,100.0,d0bb08f71eebf6e7b070572aa399b185dbdc8a76
> issues-5,true,true,true,true,100.0,d0bb08f71eebf6e7b070572aa399b185dbdc8a76
> projects-2,true,true,true,true,100.0,c5cac1c4b3c66d42e609d088d174dbc3dd44469a
> pull-requests-6,true,true,true,true,100.0,6a466ad6b896a3499509990979bf9a18d7d41de3
> repos-6,true,true,true,true,100.0,6c8b5fbba0fc1e409558db411d05e092c1387082
> users-5,true,true,true,true,100.0,38984875552bb826c9ec42999f409cb2e95556eb
> wikis-4,true,true,true,true,100.0,2613dec44bd14e14577803ac1f9e4b7e07a7c234

Вывод сводки индексов и результатов конвейера в column для удобства чтения:

$ ghe-es-index-status -do | column -ts,
> warning: parser/current is loading parser/ruby23, which recognizes
> warning: 2.3.3-compliant syntax, but you are running 2.3.4.
> warning: please see https://github.com/whitequark/parser#compatibility-with-ruby-mri.
> Name             Primary  Searchable  Writable  UpToDate  RepairProgress  Version
> code-search-1    true     true        true      true      100.0           72e27df7c631b45e026b42bfef059328fa040e17
> commits-5        true     true        true      true      100.0           7ed28813100c47813ef654c0ee2bb9abf21ab744
> gists-4          true     true        true      true      100.0           cf8e7d04fcf2564c902e2873c424a279cc41079d
> issues-4         false    false       false     true      100.0           d0bb08f71eebf6e7b070572aa399b185dbdc8a76
> issues-5         true     true        true      true      100.0           d0bb08f71eebf6e7b070572aa399b185dbdc8a76
> projects-2       true     true        true      true      100.0           c5cac1c4b3c66d42e609d088d174dbc3dd44469a
> pull-requests-6  true     true        true      true      100.0           6a466ad6b896a3499509990979bf9a18d7d41de3
> repos-6          true     true        true      true      100.0           6c8b5fbba0fc1e409558db411d05e092c1387082
> users-5          true     true        true      true      100.0           38984875552bb826c9ec42999f409cb2e95556eb
> wikis-4          true     true        true      true      100.0           2613dec44bd14e14577803ac1f9e4b7e07a7c234

ghe-legacy-github-services-report

Эта утилита содержит список репозиториев вашего устройства, использующих GitHub Services, интеграция, которая была прекращена 1 октября 2018 года. Пользователи вашего устройства могли настроить GitHub сервисы для создания уведомлений о push-запросах в определённые репозитории. Для получения дополнительной информации см. раздел «Объявление об отмене услуг GitHub на the GitHub Blog. Для получения дополнительных сведений об этой команде или дополнительных параметрах используйте флаг -h.

ghe-legacy-github-services-report

ghe-logs-tail

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

ghe-logs-tail

ghe-maintenance

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

ghe-maintenance -h

ghe-motd

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

ghe-motd

ghe-nwo

Эта служебная программа возвращает имя и владельца репозитория на основе идентификатора репозитория.

ghe-nwo REPOSITORY_ID

ghe-org-admin-promote

Используйте эту команду, чтобы предоставить пользователям права владельца организации с правами администратора сайта на устройстве, или предоставить права владельца организации любому отдельному пользователю в одной организации. Необходимо указать пользователя и (или) организацию. Команда ghe-org-admin-promote всегда будет запрашивать подтверждение перед выполнением, если вы не используете флаг -y для обхода подтверждения.

С этой служебной программой можно использовать следующие параметры.

  • Флаг -u задает имя пользователя. Используйте этот флаг, чтобы предоставить права владельца организации конкретному пользователю. Пропустите флаг -u, чтобы повысить уровень всех администраторов сайта до указанной организации.
  • Флаг -o задает организацию. Используйте этот флаг, чтобы предоставить права владельца в определенной организации. Пропустите флаг -o, чтобы предоставить разрешения владельца во всех организациях указанному администратору сайта.
  • Флаг -a предоставляет права владельца во всех организациях всем администраторам сайта.
  • Флаг -y позволяет обойти подтверждение вручную.

Эта служебная программа не может повысить уровень пользователя, не являющегося администратором сайта, до владельца всех организаций. Вы можете повысить уровень обычной учетной записи пользователя до администратора сайта с помощью ghe-user-promote.

Предоставление прав владельца организации в определенной организации определенному администратору сайта

ghe-org-admin-promote -u USERNAME -o ORGANIZATION

Предоставление прав владельца организации во всех организациях определенному администратору сайта

ghe-org-admin-promote -u USERNAME

Предоставление прав владельца организации в определенной организации всем администраторам сайта

ghe-org-admin-promote -o ORGANIZATION

Предоставление прав владельца организации во всех организациях всем администраторам сайта

ghe-org-admin-promote -a

ghe-reactivate-admin-login

Используйте эту команду, чтобы сразу разблокировать Консоль управления после блокировки аккаунта. Для настройки политик ваш экземпляр GitHub Enterprise Serverаутентификации для см. Настройка ограничений скорости.

ghe-reactivate-admin-login

ghe-saml-mapping-csv

Примечание.

Эта программа не работает с конфигурациями, которые используют SAML с подготовкой SCIM. Для версии SCIM этого средства обратитесь к ghe-scim-identities-csv служебной программе.

Эта программа позволяет администраторам выводить или обновлять сопоставления SAML NameID для пользователей в экземпляре. Служебная программа может выводить CSV-файл, который перечисляет все существующие сопоставления. Можно также обновить сопоставления для пользователей в экземпляре, изменив полученный файл, а затем с помощью программы для назначения новых сопоставлений из файла.

Чтобы вывести CSV-файл, содержащий список всех сопоставлений SAML NameID пользователя в экземпляре, выполните следующую команду.

ghe-saml-mapping-csv -d

По умолчанию программа записывает файл /data/user/tmpв .

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

Чтобы подготовиться к сопоставлениям обновлений, измените файл и внесите необходимые изменения. Чтобы увидеть результат обновления сопоставлений с помощью новых значений в измененном CSV-файле, выполните сухой запуск. Выполните следующую команду, заменив /PATH/TO/FILE фактическим путем к измененным файлу.

ghe-saml-mapping-csv -u -n -f /PATH/TO/FILE

Чтобы обновить сопоставления SAML в экземпляре с новыми значениями из файла, выполните следующую команду, заменив /PATH/TO/FILE фактическим путем к измененным файлу.

ghe-saml-mapping-csv -u -f /PATH/TO/FILE

ghe-scim-identities-csv

Примечание.

Эта программа работает только с конфигурациями, которые используют SAML с подготовкой SCIM. Для только версии этого средства SAML обратитесь к служебной программеghe-saml-mapping-csv.

Эта программа позволяет администраторам выводить удостоверения SCIM для пользователей в экземпляре. Служебная программа может выводить CSV-файл, который содержит список всех существующих удостоверений и групп, которые они являются членами.

Чтобы вывести CSV-данные, содержащие список всех удостоверений SCIM пользователя в экземпляре, выполните следующую команду. При этом будет создан файл, расположенный в /data/user/tmp/scim-identities-DATE.csv хранилище удостоверений SCIM.

ghe-scim-identities-csv

Или, если вы хотите указать файл, выполните следующую команду.

ghe-scim-identities-csv -f /PATH/TO/FILE

Рекомендуется писать в /data/user/tmpфайл.

ghe-service-list

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

$ ghe-service-list
active
  - alambic
  - alive
  - aqueduct-lite
  - authzd
  - babeld
  - codeload
  - consul, process 17114
  - consul-template, process 19493
  - driftwood
  - elasticsearch
  - enterprise-manage-unicorn, process 9359
  - ghe-user-disk, process 2545
  - git-daemon
  - github-env
  - github-gitauth
  - github-resqued
  - github-stream-processors
  - github-timerd
  - github-unicorn
  - gitrpcd
  - governor
  - gpgverify
  - grafana-server, process 19314
  - graphite-web, process 20189
  - hookshot-go
  - kafka-lite
  - kredz
  - lfs-server
  - mail-replies
  - memcached
  - minio
  - mysql
  - nginx
  - nomad, process 19562
  - pages
  - postfix
  - redis
  - spokesd
  - spokes-sweeper
  - svnbridge
  - token-scanning-api
  - token-scanning-backfill-worker
  - token-scanning-hydro-consumer
  - token-scanning-incremental-worker
  - token-scanning-udp-backfill-worker
  - treelights
  - turboscan
  - viewscreen

inactive
  - wireguard

ghe-set-password

Эта утилита позволяет установить новый пароль администратора корневых сайтов для аутентификации на Консоль управления. Дополнительные сведения см. в разделе Управление доступом к консоли управления.

ghe-set-password

ghe-setup-network

Эта служебная программа позволяет настроить основной сетевой интерфейс.

Чтобы перейти в визуальный режим, который поможет вам настроить параметры сети:

ghe-setup-network -v

Для получения сведений о дополнительных параметрах используйте флаг -h.

ghe-ssh-check-host-keys

Эта служебная программа проверяет существующие ключи узла SSH на соответствие списку известных украденных ключей узла SSH.

ghe-ssh-check-host-keys

Если украденный ключ узла обнаружен, служебная программа завершает работу с отображением состояния 1 и следующего сообщения:

> One or more of your SSH host keys were found in the blacklist.
> Please reset your host keys using ghe-ssh-roll-host-keys.

Если украденный ключ узла не обнаружен, служебная программа завершает работу с отображением состояния 0 и следующего сообщения:

> The SSH host keys were not found in the SSH host key blacklist.
> No additional steps are needed/recommended at this time.

ghe-ssh-roll-host-keys

Эта служебная программа откатывает ключи узла SSH и заменяет их заново созданными ключами.

$ sudo ghe-ssh-roll-host-keys
Proceed with rolling SSH host keys? This will delete the
existing keys in /etc/ssh/ssh_host_* and generate new ones. [y/N]

# Press 'Y' to confirm deleting, or use the -y switch to bypass this prompt

> SSH host keys have successfully been rolled.

ghe-ssh-weak-fingerprints

Эта утилита возвращает отчет о известнох слабых SSH-ключах, GitHub Enterprise хранящихся на устройстве. При необходимости можно отозвать пользовательские ключи с помощью массового действия. Утилита сообщает о слабых системных ключах, которые нужно отменить вручную в Консоль управления.

# Print a report of weak user and system SSH keys
$ ghe-ssh-weak-fingerprints

# Revoke all weak user keys
$ ghe-ssh-weak-fingerprints --revoke

ghe-ssl-acme

Эта утилита позволяет установить сертификат Let's Encrypt на ваше GitHub Enterprise устройство. Дополнительные сведения см. в разделе Настройка TLS.

Для удаления конфигурации ACME можно использовать флаг -x.

ghe-ssl-acme -e

ghe-ssl-ca-certificate-install

Эта утилита позволяет установить пользовательский корневой сертификат CA на ваш GitHub Enterprise сервер. Сертификат должен быть в формате PEM. Кроме того, если поставщик сертификатов предоставляет несколько сертификатов ЦС в одном файле, их необходимо разделить по отдельным файлам, которые затем передавать в ghe-ssl-ca-certificate-install по одному.

Запустите эту служебную программу, чтобы добавить цепочку сертификатов для проверки сигнатуры фиксации S/MIME. Дополнительные сведения см. в разделе Сведения о проверке подписи фиксации.

Запускайте эту утилиту, если ваш экземпляр GitHub Enterprise Server не может подключиться к другому серверу, потому что тот использует самоподписанный SSL-сертификат или SSL-сертификат, для которого не предоставляется необходимый CA-пакет. Один из способов подтвердить это — убежать openssl s_client -connect host:port -verify 0 -CApath /etc/ssl/certs от ваш экземпляр GitHub Enterprise Server. Если SSL-сертификат удаленного сервера может быть подтвержден, ваш SSL-Session должен иметь код возврата 0, как показано ниже.

SSL-Session:
    Protocol  : TLSv1
    Cipher    : AES128-SHA
    Session-ID: C794EBCC3CBC10F747C9AFC029C03C1048FC99CFC34D13D7444E0F267C58DF4C
    Session-ID-ctx:
    Master-Key: 02A7C47CFD6EEC87D3C710E9DD87390E04EF82DDD7514AE03127D5DC1945FC0CAEFB5395791AEA598667EFA61B9EA8C5
    Key-Arg   : None
    Start Time: 1394581597
    Timeout   : 300 (sec)
    Verify return code: 0 (ok)

Если, с другой стороны, SSL-сертификат удаленного сервера не может быть подтвержден, ваш SSL-Session должен иметь ненулевой код возврата:

SSL-Session:
    Protocol  : TLSv1
    Cipher    : AES128-SHA
    Session-ID: 82CB288051A6DB66094C50A69CF1292AEE7E54C6B01B659B98AB336F8C33863E
    Session-ID-ctx:
    Master-Key: 01B025B2F764043A27919A8D1355AAECD8844FF0831B1D664042334790574A6F4025BAB085D4ED71D71AAB3091B849E5
    Key-Arg   : None
    Start Time: 1394581782
    Timeout   : 300 (sec)
    Verify return code: 27 (certificate not trusted)

С этой служебной программой можно использовать следующие дополнительные параметры.

  • Флаг -r позволяет удалить сертификат ЦС.
  • Флаг -h отображает дополнительные сведения об использовании.
ghe-ssl-ca-certificate-install -c CERTIFICATE_PATH

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

Shell
ghe-config-apply

ghe-ssl-certificate-setup

Эта утилита позволяет обновлять SSL-сертификат для ваш экземпляр GitHub Enterprise Server.

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

/usr/local/share/enterprise/ghe-ssl-certificate-setup

ghe-ssl-generate-csr

Эта служебная программа позволяет создать закрытый ключ и запрос на подпись сертификата (CSR), которые можно предоставить в коммерческий или частный центр сертификации, чтобы получить действительный сертификат для использования с вашим экземпляром. Дополнительные сведения см. в разделе Настройка TLS.

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

ghe-ssl-generate-csr

ghe-storage-extend

Этот скрипт требуется на некоторых платформах для расширения пользовательского тома. Дополнительные сведения см. в разделе Увеличение емкости хранилища.

ghe-storage-extend

ghe-version

Эта утилита печатает версию, платформу и сборку ваш экземпляр GitHub Enterprise Server.

ghe-version

ghe-webhook-logs

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

ghe-webhook-logs

Чтобы отобразить все поставки крюка, отфильтрованные по заданному событию:

ghe-webhook-logs --event issues

Чтобы отобразить все поставки крюка, отфильтрованные заданным событием и действием:

ghe-webhook-logs --event issues.opened
To show all failed hook deliveries in the past day:

```shell
ghe-webhook-logs -f -a YYYY-MM-DD

Дата должна быть указана в формате YYYY-MM-DD, YYYY-MM-DD HH:MM:SS или YYYY-MM-DD HH:MM:SS (+/-) HH:M.

Чтобы отобразить полные полезные данные перехватчика, результат и все исключения для доставки:

ghe-webhook-logs -g DELIVERY_GUID

ghe-governor-summary

Эта программа использует данные от ghe-governor отображения сводки действий Git, включая основные репозитории, пользователи и IP-адреса.

ghe-governor-summary

С помощью следующих флагов ghe-governor-summaryможно использовать.

ФлагDescription
-t/--threshold FLOATОтображение сводки действий только в том случае, если число запросов Git в секунду превышает пороговое значение. По умолчанию — 1.0.
-p/--hours INTEGERУкажите период времени, рассматриваемый в часах. По умолчанию — 24.
-r/--show-reposВсегда отображать верхние репозитории независимо от порогового значения.
-u/--show-usersВсегда показывать лучших пользователей независимо от порогового значения.
-i/--show-ipsВсегда отображать верхние IP-адреса независимо от порогового значения.

Ghe-redis-usage

Эта программа вычисляет использование памяти ключей в Redis.

ghe-redis-usage

С помощью следующих флагов ghe-redis-usageможно использовать.

ФлагDescription
-n/--database NУкажите номер базы данных.
-c/--countПодсчитывать количество ключей вместо вычисления размера.
-s/--summarizeОтображается только общее число.
-H/--human-readableРазмеры печати в формате, доступном для чтения человеком.

ghe-snmpv3-add-user

Эта программа добавляет пользователя только для чтения в конфигурацию ваш экземпляр GitHub Enterprise ServerSNMPv3.

ghe-snmpv3-add-user -A PASSPHRASE -X PASSPHRASE USERNAME

С помощью следующих флагов ghe-snmpv3-add-userможно использовать.

ФлагDescription
-A PASSPHRASEЗадайте парольную фразу проверки подлинности. Должно быть 8 или более символов.
-X PASSPHRASEЗадайте парольную фразу шифрования. Должно быть 8 или более символов. Если пусто, используется парольная фраза проверки подлинности.
-a MD5|SHAЗадайте протокол проверки подлинности. По умолчанию — SHA.
-x DES|AESЗадайте протокол шифрования. По умолчанию — AES.

ghe-snmpv3-hash-password

Эта программа хэширует пароль в соответствии с RFC 2574 для использования с SNMPv3.

ghe-snmpv3-hash-password -s PASSWORD

С помощью следующих флагов ghe-snmpv3-hash-passwordможно использовать.

ФлагDescription
-m/--md5Хэш с помощью алгоритма MD5.
-s/--shaХэш с помощью алгоритма SHA1 (по умолчанию).

ghe-snmpv3-remove-user

Эта программа удаляет пользователя из конфигурации ваш экземпляр GitHub Enterprise ServerSNMPv3.

ghe-snmpv3-remove-user USERNAME

ghe-ssh-audit-login

Эта программа извлекает авторизованных пользователей ключей и отпечатки пальцев для аудита ваш экземпляр GitHub Enterprise Serverвхода SSH.

ghe-ssh-audit-login

С помощью следующих флагов ghe-ssh-audit-loginможно использовать.

ФлагDescription
-a/--allПолучение всех авторизованных пользователей ключей и отпечатков пальцев.
-f/--fingerprint FINGERPRINTНайдите один отпечаток пальца.
-d/--dateВключите дату последнего входа.
-j/--jsonВыходные данные в формате JSON.

ghe-system-info

Эта программа выводит сведения о ваш экземпляр GitHub Enterprise Server системе в формате JSON.

ghe-system-info

Кластеризация

ghe-cluster-balance

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

Чтобы вывести список сбалансируемых заданий и связанных с ними распределения:

ghe-cluster-balance status

Для вывода счетчиков выделения для заданного задания или списка заданий с разделителями-запятыми:

ghe-cluster-balance -j JOB

Чтобы перебалансировать проблемные выделения для определенного задания или списка заданий с разделителями-запятыми:

ghe-cluster-balance rebalance -j JOB

С помощью следующих флагов ghe-cluster-balance rebalanceможно использовать.

ФлагDescription
-j/--job-namesУкажите задания для перебаланса. Принимает имя задания или список имен с разделителями-запятыми.
-n/--dry-runВыводит операции Nomad, которые программа будет выполнять, не выполняя их. Можно использовать в тандеме с -j/--job-name.
-y/--yesПропустите запрос пользователя.
w/--workersУкажите максимальное количество одновременных заданий для остановки и ожидания завершения перемещения. Значение по умолчанию — 4.
-t/--timeoutУкажите, сколько секунд нужно ждать остановленного выделения для замены задания. Значение по умолчанию — 300 секунд.

Чтобы вывести скрипты завершения для данной оболочки:

ghe-cluster-balance completion

Чтобы отобразить краткое описание служебной программы и всех допустимых подкомандах:

ghe-cluster-balance help

ghe-cluster-block-ip

Эта программа добавляет правила брандмауэра на узле кластера, который блокирует весь трафик и из заданного IP-адреса. В настоящее время поддерживает только IPv4-адреса.

ghe-cluster-block-ip IP-ADDRESS

Чтобы удалить блок, используйте ghe-cluster-unblock-ip.

ghe-cluster-config-apply

Эта программа проверяет /data/user/common/cluster.conf файл конфигурации, копирует его на каждый узел в кластере и настраивает каждый узел на основе измененного файла.

ghe-cluster-config-apply

С помощью следующих флагов ghe-cluster-config-applyможно использовать.

ФлагDescription
-f/--forceПринудительно выполните всю логику условной конфигурации.

ghe-cluster-config-check

Эта программа проверяет файл конфигурации кластера и проверяет отдельные параметры.

ghe-cluster-config-check

Чтобы проверить определенный файл, выполните указанные действия.

ghe-cluster-config-check /PATH/TO/cluster.conf

Чтобы вывести результаты в формате JSON, выполните следующие действия:

ghe-cluster-config-check json

ghe-cluster-config-init

Эта программа инициализирует кластер с помощью конфигурации./data/user/common/cluster.conf Перед выполнением этой команды необходимо настроить SSL.

ghe-cluster-config-init

ghe-cluster-diagnostics

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

ghe-cluster-diagnostics

С помощью следующих флагов ghe-cluster-diagnosticsможно использовать.

ФлагDescription
-q/--quietНе печатайте информационные сообщения.
-v/--verboseЗапустите в подробном режиме.

ghe-cluster-each

Эта программа выполняет итерацию по всем узлам в кластере и выполняет команду параллельно.

ghe-cluster-each -- COMMAND

С помощью следующих флагов ghe-cluster-eachможно использовать.

ФлагDescription
-o/--offlineПопробуйте выполнить команду на узлах, помеченных как автономный.
-r/--role ROLEВыполняется только на узлах, которые предоставляют указанную роль.
-d/--datacenter DCВ указанный центр обработки данных включаются только узлы.
--primaryВозвращает только первичные узлы.
--replicaВозвращает только узлы реплики.
-x/--excludeИсключите локальный узел.

ghe-cluster-host-check

Эта программа проверяет, что все узлы в кластере готовы к настройке.

ghe-cluster-host-check

С помощью следующих флагов ghe-cluster-host-checkможно использовать.

ФлагDescription
-vЗапустите с подробными выходными данными.

ghe-cluster-maintenance

С помощью служебной программы ghe-cluster-maintenance можно задать или отменить режим обслуживания для каждого узла в кластере.

$ ghe-cluster-maintenance -h
# Shows options
$ ghe-cluster-maintenance -q
# Queries the current mode
$ ghe-cluster-maintenance -s
# Sets maintenance mode
$ ghe-cluster-maintenance -s "MESSAGE"
# Sets maintenance mode with a custom message
$ ghe-cluster-maintenance -m "MESSAGE"
# Updates the custom message
$ ghe-cluster-maintenance -u
# Unsets maintenance mode

ghe-cluster-nodes

Эта программа содержит узлы в кластере с параметрами фильтрации по роли, центру обработки данных или состоянию.

ghe-cluster-nodes

С помощью следующих флагов ghe-cluster-nodesможно использовать.

ФлагDescription
-o/--offlineВключите автономные узлы.
-i/--ipВозвращает узлы вместе с IP-адресами.
-u/--uuidВозвращает узлы вместе с UUID.
-r/--role ROLEВключают только узлы с указанной ролью.
-d/--datacenter DCВ указанный центр обработки данных включаются только узлы.
--primaryВозвращает только первичные узлы.
--replicaВозвращает только узлы реплики.
-x/--excludeИсключите локальный узел.
--no-cacheИсключите реплики кэша.

ghe-cluster-repl-bootstrap

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

ghe-cluster-repl-bootstrap

ghe-cluster-repl-teardown

Эта программа отключает репликацию на узлы репликации для кластера в конфигурации высокой доступности. Дополнительные сведения см. в разделе Настройка репликации с высоким уровнем доступности для кластера.

ghe-cluster-repl-teardown

состояние ghe-cluster-repl-status

Эта программа отображает состояние репликации для кластера в конфигурации высокой доступности.

ghe-cluster-repl-status

ghe-cluster-set-password

Эта программа обновляет администратор и Консоль управления пароль в интерактивном режиме на всех узлах кластера.

ghe-cluster-set-password

С помощью следующих флагов ghe-cluster-set-passwordможно использовать.

ФлагDescription
--syncСкопируйте файлы паролей на другие серверы без задания нового пароля.
--clearСнимите пароль администратора и Консоль управления на всех серверах.

ghe-cluster-status

Проверьте состояние ваших узлов и сервисов в кластерном развертывании GitHub Enterprise Server.

ghe-cluster-status

ghe-cluster-support-bundle

Эта служебная программа создает тарболл пакета поддержки, содержащий важные журналы из каждого узла в конфигурации георепликации или кластеризации.

По умолчанию команда создает тарболл в разделе /tmp, но вы также можете настроить cat тарболл в STDOUT для простой потоковой передачи по протоколу SSH. Это полезно в том случае, если веб-интерфейс не отвечает, или скачивание пакета поддержки из /setup/support не работает. Эту команду необходимо использовать, если вы хотите создать расширенный пакет, содержащий старые журналы. Вы также можете использовать эту команду, чтобы загрузить пакет поддержки кластера напрямую в GitHub Enterprise службу поддержки.

Чтобы создать стандартный пакет:

ssh -p 122 admin@HOSTNAME -- 'ghe-cluster-support-bundle -o' > cluster-support-bundle.tgz

Чтобы создать стандартный пакет, включая данные за последние 2 дня:

ssh -p 122 admin@HOSTNAME -- "ghe-cluster-support-bundle -p 2days -o" > support-bundle.tgz

Чтобы создать расширенный пакет, включая данные за последние 8 дней:

ssh -p 122 admin@HOSTNAME -- ghe-cluster-support-bundle -x -o' > cluster-support-bundle.tgz

Отправить пакет на Служба поддержки GitHubадрес:

ssh -p 122 admin@HOSTNAME -- 'ghe-cluster-support-bundle -u'

Чтобы отправить бандл в Служба поддержки GitHub и связать его с тикетом:

ssh -p 122 admin@HOSTNAME -- 'ghe-cluster-support-bundle -t TICKET_ID'

ghe-cluster-unblock-ip

Эта программа удаляет правила брандмауэра из узла кластера, который блокирует весь трафик и из заданного IP-адреса. В настоящее время поддерживает только IPv4-адреса.

ghe-cluster-unblock-ip IP-ADDRESS

ghe-cluster-failover

С помощью служебной ghe-cluster-failover программы можно выполнить отработку отказа в кластер реплики. Дополнительные сведения см. в разделе Запуск отработки отказа в кластер реплики.

ghe-cluster-failover

ghe-dpages

Эта утилита позволяет управлять распределённым GitHub Pages сервером.

ghe-dpages

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

ghe-dpages status

Чтобы эвакуировать GitHub Pages сервис хранения перед эвакуацией узла кластера:

ghe-dpages evacuate pages-server-UUID

ghe-remove-node

Эта программа удаляет узел из кластера или дополнительного узла из конфигурации высокого уровня доступности . Для запланированной замены функционального узла кластера настройте узел замены перед использованием этой команды, чтобы удалить старый узел. Для получения дополнительной информации см. Замена узла кластера. Необходимые действия проверки высокого уровня доступности и проверки см. в разделе "Удаление дополнительного узла".

Прежде чем использовать эту команду для запланированного удаления, установите последний выпуск исправлений для выпуска компонента на каждом узле. Каждый узел должен запускать один и тот же выпуск. Дождитесь завершения обновления или настройки перед началом удаления. Сведения о аварийной замене недоступного узла кластера см. в разделе Замена узла кластера.

Эту команду необходимо выполнить с первичного узла MySQL, который обычно является узлом, указанным как mysql-master в файле конфигурации кластера (cluster.conf). В конфигурации высокого уровня доступности выполните команду из основного источника высокого уровня доступности. Удалить или redis-master узел нельзяmysql-master. Дополнительные сведения см. в разделе Инициализация кластера.

ghe-remove-node HOSTNAME

Команда выполняет следующие действия:

  • Эвакуирует данные из всех служб данных, работающих на узле, чтобы оставшиеся узлы содержали копии данных.
  • Очистка рабочих нагрузок с узла
  • Удаляет узел из конфигурации. Если еще один не первичный узел остается, команда запускает ghe-config-apply и останавливает маршрутизацию трафика на удаленный узел. Если не основной узел остается, команда удаляет метаданные кластера и преобразует основной в автономный экземпляр без выполнения ghe-config-apply.

Вы можете выполнить команду со следующими флагами.

ФлагDescription
-ne/--no-evacuateПомечает узел в автономном режиме в конфигурации вместо удаления и пропускает эвакуацию служб данных (предупреждение: может привести к потере данных).
-v/--verboseВыводит дополнительные сведения в консоль.

Примечание.

          * В конфигурации высокого уровня доступности эту команду можно использовать для удаления дополнительного узла. Его нельзя использовать для удаления первичной или реплики высокого уровня доступности.
  • Целевой узел должен сообщать ready о nomad node status завершении удаления. Флаг --no-evacuate не удаляет автономный узел из конфигурации.
  • Эта команда не поддерживает параллельное выполнение. Чтобы удалить несколько узлов, необходимо дождаться завершения этой команды перед запуском другого узла.

ghe-spokesctl

Эта программа позволяет управлять репликацией репозиториев на распределенных серверах Git.

ghe-spokesctl

Чтобы отобразить серверы, на которых хранится репозиторий, выполните следующие действия.

ghe-spokesctl routes

Чтобы эвакуировать службы хранилища в узле кластера:

ghe-spokesctl server set evacuating git-server-UUID

ghe-storage

Эта служебная программа позволяет эвакуировать все службы хранилища перед эвакуацией узла кластера.

ghe-storage evacuate storage-server-UUID

nes

Эта утилита позволяет отслеживать состояние узлов кластера с помощью Node Eligibility Service. По умолчанию Node Eligibility Service он отключён. Дополнительные сведения см. в разделе Мониторинг работоспособности узлов кластера с помощью службы "Соответствие узлам".

Чтобы просмотреть работоспособность узлов кластера, выполните следующие действия.

nes get-cluster-health

Чтобы проверить параметры TTL, выполните следующие действия.

nes get-node-ttl all

Чтобы задать TTL для состояния в минутах fail , выполните следующие действия.

nes set-node-ttl fail MINUTES

TTL для fail состояния должен быть выше, чем срок жизни для warn состояния.

Чтобы задать TTL для состояния в минутах warn , выполните следующие действия.

nes set-node-ttl warn TIME

Чтобы проверить, можно Node Eligibility Service ли предпринимать административные действия, когда узел с именем хоста HOSTNAME выходит из строя:

nes get-node-adminaction HOSTNAME

Чтобы позволить Node Eligibility Service автоматически выполнять административные действия, когда узел с именем хоста HOSTNAME выходит из строя:

nes set-node-adminaction approved HOSTNAME

Чтобы отменить Node Eligibility Serviceвозможность выводить узел с именем хоста HOSTNAME в офлайн:

nes set-node-adminaction none HOSTNAME

Чтобы вручную обновить право узла для повторного добавления в кластер:

nes set-node-eligibility eligible HOSTNAME

Git

ghe-btop

Интерфейс типа top для текущих операций Git.

ghe-btop [ <port number> | --help | --usage ]

ghe-governor

Эта служебная программа помогает анализировать трафик Git. Она запрашивает файлы данных Governor, расположенные в разделе /data/user/governor/. GitHub содержит один час данных на файл, который сохраняется в течение двух недель. Дополнительные сведения см. в разделе Анализ трафика Git в экземпляре GitHub Enterprise Server.

ghe-governor <subcommand> <column> [options]
ghe-governor -h
Usage: ghe-governor [-h] <subcommand> args

OPTIONS:
  -h | --help        Show this message.

Valid subcommands are:
  aggregate              Find the top (n) groups of queries for a grouping function and metric
  health                 Summarize all recent activity on one or more servers
  top                    Find the top (n) queries for a given metric
  dump                   Dump individual operations
  test-quotas            Check quota information

Try ghe-governor <subcommand> --help for more information on the arguments each subcommand takes.

ghe-repo

Эта служебная программа позволяет изменить каталог репозитория и открыть интерактивную оболочку от имени пользователя git. Вы можете выполнить проверку или обслуживание репозитория вручную с помощью таких команд, как git-* или git-nw-*.

ghe-repo USERNAME/REPONAME

ghe-repo-gc

Эта служебная программа вручную перепаковывает сеть репозитория для оптимизации хранилища пакетов. Если у вас есть большой репозиторий, выполнение этой команды поможет уменьшить его общий размер. GitHub Enterprise Эта команда автоматически выполняется на протяжении всего взаимодействия с сетью репозиториев.

ghe-repo-gc USERNAME/REPONAME

Можно добавить необязательный --prune аргумент, чтобы удалить недоступные объекты Git, на которые не ссылается ветвь, тег или любой другой ссылочный аргумент. Это особенно полезно для немедленного удаления ранее отбрасанных конфиденциальных данных. См . раздел AUTOTITLE.

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

ghe-cluster-each -r git -- "ghe-repo-gc --prune USERNAME/REPONAME"

GitHub Actions

ghe-actions-check

Эта коммунальная система проверяет, исправны ли все сервисы GitHub Actions . Дополнительные сведения см. в разделе [AUTOTITLE и Начало работы с GitHub Actions for GitHub Enterprise Server](/admin/managing-github-actions-for-your-enterprise/advanced-configuration-and-troubleshooting/troubleshooting-github-actions-for-your-enterprise).

ghe-actions-check

ghe-actions-precheck

Эта утилита тестирует конфигурацию blob storage для GitHub Actions на ваш экземпляр GitHub Enterprise Server. Вы можете использовать утилиту, чтобы проверить конфигурацию хранилища перед включением GitHub Actions экземпляра.

Для получения дополнительной информации о конфигурации GitHub Actionsсм. Начало работы с GitHub Actions for GitHub Enterprise Server.

Примечание.

Эта программа работает только с конфигурациями, используюющими подключение на основе учетных данных к поставщику хранилища. Чтобы проверить конфигурации OpenID Connect (OIDC), используйте ghe-actions-test-storage-with-oidc.

ghe-actions-precheck -p [PROVIDER] -cs ["CONNECTION-STRING"]

Если ваша система хранения настроена правильно, вы получите следующие выходные данные.

All Storage tests passed

ghe-actions-test-storage-with-oidc

Эта утилита проверяет, что поставщик GitHub Actions blob storage для on ваш экземпляр GitHub Enterprise Server валиден при использовании OpenID Connect (OIDC).

Примечание.

Эта программа работает только с конфигурациями, используюющими конфигурацию OpenID Connect (OIDC). Чтобы проверить конфигурации на основе учетных данных, используйте ghe-actions-precheck.

ghe-actions-test-storage-with-oidc -p [PROVIDER] -cs ["CONNECTION-STRING"]

ghe-actions-stop

Эта утилита перестаёт GitHub Actions работать на ваш экземпляр GitHub Enterprise Server.

Примечание.

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

ghe-actions-start

Эта утилита начинает GitHub Actions работу ваш экземпляр GitHub Enterprise Server после того, как была ранее остановлена.

Примечание.

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

Если система настроена правильно, вы увидите следующие выходные данные:

Actions was enabled!

ghe-actions-cache-disable

Эта программа отключает GitHub Actions службу ваш экземпляр GitHub Enterprise Server кэша и останавливает связанные задания.

ghe-actions-cache-disable

С помощью следующих флагов ghe-actions-cache-disableможно использовать.

ФлагDescription
-y/--yesПропустите запрос предупреждения.
-f/--forceИгнорировать текущее состояние службы.

ghe-actions-cache-enable

Эта программа включает GitHub Actions службу ваш экземпляр GitHub Enterprise Server кэша и запускает связанные задания.

ghe-actions-cache-enable

С помощью следующих флагов ghe-actions-cache-enableможно использовать.

ФлагDescription
-y/--yesПропустите запрос предупреждения.
-f/--forceИгнорировать текущее состояние службы.

ghe-actions-check-connectivity

Эта программа проверяет сетевое подключение между GitHub Actions службами ваш экземпляр GitHub Enterprise Server.

ghe-actions-check-connectivity

С помощью следующих флагов ghe-actions-check-connectivityможно использовать.

ФлагDescription
-s/--sourceИмя исходной службы (actions, mps, token, artifactcache). По умолчанию — token.
-t/--targetИмя целевой службы (actions, mps, token, artifactcache). По умолчанию — mps.

ghe-actions-diagnostics

Эта программа собирает диагностические сведения, относящиеся к GitHub Actionsваш экземпляр GitHub Enterprise Server тому, что вы можете отправить, чтобы Служба поддержки GitHub помочь изучить проблемы.

ghe-actions-diagnostics

ghe-actions-dump

Эта программа создает дампы GitHub Actions служб ваш экземпляр GitHub Enterprise Server. Эту команду можно также использовать для отправки дампа непосредственно в Служба поддержки GitHub.

ghe-actions-dump

С помощью следующих флагов ghe-actions-dumpможно использовать.

ФлагDescription
-u/--uploadОтправьте пакет Служба поддержки GitHubв .
-t/--ticketОтправьте пакет с Служба поддержки GitHub идентификатором билета.
-s/--serviceИмя службы (actions, , mps``token, artifactcache, launch-deployer, launch-receiverили launch-worker``launch-hydro-consumer). По умолчанию — actions.
-r/--roleРоль (frontend, backend, none). По умолчанию — frontend.
-y/--yesПропустите запрос предупреждения.

GitHub Packages

ghe-check-blob-connection

Эта утилита проверяет, что провайдер GitHub Packages blob storage для валиден на ваш экземпляр GitHub Enterprise Server.

ghe-check-blob-connection --help

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

ghe-check-blob-connection

Если система настроена правильно, вы увидите следующие выходные данные:

All Storage tests passed

предварительная проверка ghe-packages

Эта утилита проверяет, что провайдер GitHub Packages blob storage для валиден на ваш экземпляр GitHub Enterprise Server. Используйте это для проверки конфигурации хранилища перед включением GitHub Packages.

ghe-packages-precheck -p PROVIDER -cs "CONNECTION-STRING"

С помощью следующих флагов ghe-packages-precheckможно использовать.

ФлагDescription
-p/--providerИмя поставщика хранилища (AzureилиS3``MinIO). По умолчанию — S3.
-cs/--connection-stringConnection string поставщику хранилища.
-cn/--container-nameИмя контейнера Azure, используемое.

Высокая доступность

ghe-repl-decommission

Эта команда выводит записи базы данных для узла с указанным идентификатором UUID. Эта команда выполняется на новом первичном сервере после выполнения отработки отказа на узел реплики, чтобы удалить записи базы данных из эксплуатации узла. Дополнительные сведения см. в разделе Инициализация отработки отказа на устройство реплики.

ghe-repl-decommission <UUID>

ghe-repl-promote

Эта команда отключает репликацию на существующем узле реплики и преобразует узел реплики в первичный узел, используя те же параметры, что и исходный первичный узел. Все службы репликации включены. Дополнительные сведения см. в разделе Инициализация отработки отказа на устройство реплики.

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

ghe-repl-promote

ghe-repl-setup

Запустите эту программу на существующем узле, чтобы начать настройку высокого уровня доступности. Программа помещает узел в режим ожидания перед началом репликации ghe-repl-start. Дополнительные сведения см. в разделе Создание реплики с высоким уровнем доступности.

После запуска служебной программы на узле происходит следующая конфигурация.

  • Зашифрованный VPN-туннель WireGuard устанавливается для обмена данными между узлами.
  • Службы баз данных настроены для репликации и запущены.
  • Службы приложений отключены. Пытается получить доступ к узлу реплики по протоколу HTTP или HTTPS, Git или другим поддерживаемым протоколам, отобразится сообщение "Сервер в режиме репликации", страница обслуживания или сообщение об ошибке.

При запуске этой служебной программы замените PRIMARY-NODE-IP НА IP-адрес основного узла экземпляра.

ghe-repl-setup PRIMARY-NODE-IP

ghe-repl-start

Эта программа начинает репликацию всех хранилищ данных на узле. Запустите эту программу после выполнения ghe-repl-setup. Дополнительные сведения см. в разделе Создание реплики с высоким уровнем доступности.

ghe-repl-start

ghe-repl-status

Эта программа отображает состояние репликации на узле, возвращая OK``WARNING или CRITICAL состояние для каждого потока репликации хранилища данных. Дополнительные сведения см. в разделе Мониторинг конфигурации высокого уровня доступности.

  • Если любой из каналов репликации находятся в WARNING состоянии, команда завершит работу с кодом 1.
  • Если вы не начали репликацию, команда завершит работу с кодом 1.
  • Если любой из каналов находятся в CRITICAL состоянии, команда завершит работу с кодом 2.
  • Выходные данные соответствуют ожиданиям подключаемого модуля Nagios check_by_ssh. Дополнительные сведения см . на странице официальных подключаемых модулей Nagios check_by_ssh.
ghe-repl-status

Параметры -v и -vv дополнительные сведения о состоянии репликации каждого хранилища данных.

ghe-repl-status -v

ghe-repl-start

Эта команда временно отключает репликацию для всех хранилищ данных на существующем узле реплики. Все службы репликации остановлены. Чтобы возобновить репликацию, используйте ghe-repl-start.

ghe-repl-stop

ghe-repl-teardown

Эта программа полностью отключает репликацию на существующем узле реплики, удалив конфигурацию реплики. Следующую команду можно выполнить из узла реплики, но если узел реплики недоступен, можно также выполнить команду из первичного узла.

ghe-repl-teardown

ghe-repl-stop-all

Эта программа отключает репликацию всех хранилищ данных на всех узлах реплики. Запустите эту программу с первичного узла перед обновлением реплик. Дополнительные сведения см. в разделе Обновление с помощью пакета обновления.

ghe-repl-node

Эта программа управляет параметрами репликации для определенных узлов, включая включение режима активной реплики, настройку серверов кэша и задание назначений центров обработки данных.

ghe-repl-node

С помощью следующих флагов ghe-repl-nodeможно использовать.

ФлагDescription
-a/--activeВключите параметр активной реплики на этом узле.
-i/--inactiveОтключите параметр активной реплики на этом узле.
-c/--cache LOCATIONСделайте этот узел сервером кэша и задайте его расположение.
--cache-domain DOMAINЗадайте имя внешнего домена для расположения кэша (требуется --cache).
-d/--datacenter DATACENTERЗадайте центр обработки данных для этого узла.
--default-datacenterСбросьте значение центра обработки данных по умолчанию.
-v/--verboseЗапустите с подробными выходными данными.

ghe-repl-start-all

Эта программа начинает репликацию всех хранилищ данных на всех узлах реплики. Запустите эту программу с первичного узла после обновления реплик. Дополнительные сведения см. в разделе Обновление с помощью пакета обновления.

Импорт и экспорт данных

ghe-migrator

          `ghe-migrator` — это инструмент высокой точности, который помогает вам переключаться с одного GitHub экземпляра на другой. Вы можете консолидировать свои экземпляры или переместить организацию, пользователей, команды и репозитории с GitHub.com в GitHub Enterprise.

Дополнительные сведения см. в наших руководствах по переносу данных в вашу организации и из нее.

git-import-detect

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

git-import-detect

git-import-hg-raw

Эта служебная программа импортирует репозиторий Mercurial в этот репозиторий Git. Дополнительные сведения см. в разделе Импорт из других систем управления версиями с помощью административной оболочки.

git-import-hg-raw

git-import-svn-raw

Эта служебная программа импортирует журнал Subversion и данные файлов в ветвь Git. Это прямая копия дерева, игнорирующая любые различия магистралей или ветвей. Дополнительные сведения см. в разделе Импорт из других систем управления версиями с помощью административной оболочки.

git-import-svn-raw

git-import-tfs-raw

Эта служебная программа выполняет импорт из системы управления версиями Team Foundation (TFVC). Дополнительные сведения см. в разделе Импорт из других систем управления версиями с помощью административной оболочки.

git-import-tfs-raw

git-import-rewrite

Эта служебная программа перезаписывает импортированный репозиторий. Это дает вам возможность переименовать авторов. Кроме того, для Subversion и TFVC создаются ветви Git на основе папок. Дополнительные сведения см. в разделе Импорт из других систем управления версиями с помощью административной оболочки.

git-import-rewrite

Лицензия

ghe-license

Эта программа позволяет взаимодействовать с текущей активной лицензией или с новыми лицензиями без необходимости импортировать их в первую очередь. Вы также можете напрямую применить лицензию, чтобы внести изменения в силу.--apply Применение изменений с ghe-license помощью служебной программы позволяет избежать запуска конфигурации и перезапускает затронутые службы.

Вы можете просмотреть возможные команды и флаги с помощью ghe-license -h.

В качестве альтернативы можно управлять лицензиями через REST API или .GitHub CLI См. раздел [AUTOTITLE и REST API endpoints для управления GitHub Enterprise Server](/admin/administering-your-instance/administering-your-instance-from-the-command-line/administering-your-instance-using-the-github-cli).

Отображение сведений о лицензии. Кроме того, используйте -j флаг для форматирования JSON.

ghe-license info
# "advanced_security_enabled" : true
# "advanced_security_seats" : 0
# "cluster_support" : false
# "company" : "GitHub"
# "croquet_support" : true
# "custom_terms" : true
# "evaluation" : false
# "expire_at" : "2025-01-01T23:59:59-08:00"
# "insights_enabled" : true
# "insights_expire_at" : "2025-01-01T23:59:59.999-08:00"
# "learning_lab_evaluation_expires" : "2023-01-01T23:59:59.000-08:00"
# "learning_lab_seats" : 100
# "perpetual" : false
# "reference_number" : "123456"
# "seats" : 0
# "ssh_allowed" : true
# "support_key" : null
# "unlimited_seating" : true

Проверьте лицензию.

ghe-license check
# License is valid.

Все команды выполняются для существующей лицензии. Однако вы также можете предоставить лицензию из STDOUT с помощью --pipe.

cat license | ghe-license import --pipe
# License imported at /data/user/common/enterprise.ghl.
# License synchronized.

Вы также можете предоставить лицензию, назначив путь к файлу переменной GHE_LICENSE_FILE среды.

GHE_LICENSE_FILE=/path/license ghe-license import
# License imported at /data/user/common/enterprise.ghl.
# License synchronized.

Migrations

Вяз

          `elm` — это командный инструмент для Enterprise Live Migrations, инструмент для живых миграций в GHE.com. См [. раздел AUTOTITLE](/migrations/elm/elm-cli-reference).

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

ghe-find-insecure-git-operations

Эта служебная программа выполняет поиск по журналам экземпляра и определяет операции Git по протоколу SSH, которые используют небезопасные алгоритмы или хэш-функции, включая шифры DSA, RSA-SHA-1, HMAC-SHA-1 и CBC. Выходные данные можно использовать для поддержки перехода каждого клиента на более безопасное SSH-подключение. Для получения дополнительной информации смотрите the GitHub Blogв разделе AUTOTITLE.

ghe-find-insecure-git-operations

Поддержка

ghe-diagnostics

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

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

ghe-diagnostics

ghe-diagnostics-io

Эта программа собирает пакет диагностики ввода-вывода из ваш экземпляр GitHub Enterprise Server. Пакет включает данные о производительности операций ввода-вывода на диске, которые помогут Служба поддержки GitHub изучить проблемы, связанные с хранилищем.

Совет

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

ghe-diagnostics-io

При необходимости можно указать время ожидания в секундах для сбора данных. Значение по умолчанию — 120 секунд.

ghe-diagnostics-io TIMEOUT

ghe-support-bundle

Примечание.

Если ваш экземпляр GitHub Enterprise Server в конфигурации георепликации или экземпляр является кластером, следует использовать ghe-cluster-support-bundle команду для получения пакета поддержки. Дополнительные сведения см. в разделе Служебные программы командной строки. Эта утилита создаёт тарбол поддержки bundle, содержащий важные логи из вашего экземпляра.

По умолчанию команда создает тарболл в разделе /tmp, но вы также можете настроить cat тарболл в STDOUT для простой потоковой передачи по протоколу SSH. Это полезно в том случае, если веб-интерфейс не отвечает, или скачивание пакета поддержки из /setup/support не работает. Эту команду необходимо использовать, если вы хотите создать расширенный пакет, содержащий старые журналы. Вы также можете использовать эту команду, чтобы загрузить пакет поддержки напрямую в GitHub Enterprise службу поддержки.

Чтобы создать стандартный пакет:

ssh -p 122 admin@HOSTNAME -- 'ghe-support-bundle -o' > support-bundle.tgz

Чтобы создать стандартный пакет, включая данные за последние 2 дня:

ssh -p 122 admin@HOSTNAME -- "ghe-support-bundle -p 2days -o" > support-bundle.tgz

Чтобы создать расширенный пакет, включая данные за последние 8 дней:

ssh -p 122 admin@HOSTNAME -- 'ghe-support-bundle -x -o' > support-bundle.tgz

Отправить пакет на Служба поддержки GitHubадрес:

ssh -p 122 admin@HOSTNAME -- 'ghe-support-bundle -u'

Чтобы отправить бандл в Служба поддержки GitHub и связать его с тикетом:

ssh -p 122 admin@HOSTNAME -- 'ghe-support-bundle -t TICKET_ID'

ghe-support-upload

Эта утилита отправляет информацию от вашего устройства в GitHub Enterprise службу поддержки. Вы можете либо указать локальный файл, либо предоставить поток до 100 МБ данных с помощью STDIN. Отправленные данные можно при необходимости связать с запросом в службу поддержки.

Чтобы отправить файл и Служба поддержки GitHub связать его с тикетом:

ghe-support-upload -f FILE_PATH -t TICKET_ID

Чтобы отправить данные через STDIN и связать их с запросом в службу поддержки:

ghe-repl-status -vv | ghe-support-upload -t TICKET_ID -d "Verbose Replication Status"

В этом примере ghe-repl-status -vv отправляет подробные сведения о состоянии с устройства реплики. Следует заменить ghe-repl-status -vv конкретными данными, которые вы хотите передать в STDIN, и Verbose Replication Status кратким описанием данных. Обычно вы будете выполнять эти действия только в том случае, если вы обратились в службу поддержки, и служба поддержки запросила выполнение этих действий.

Модернизация GitHub Enterprise Server

задания ghe-check-background-upgrade-jobs

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

ghe-check-background-upgrade-jobs

Примечание.

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

миграции ghe-migrations

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

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

ghe-migrations

По умолчанию программа выводит таблицу с 10 строками. Чтобы настроить высоту таблицы в строках:

ghe-migrations -height LINES

По умолчанию визуализатор обновляется каждую секунду. Чтобы указать длительность в секундах для обновления визуализатора:

ghe-migrations -refresh_rate SECONDS

ghe-update-check

Эта утилита проверит, доступен ли новый патч.GitHub Enterprise Если доступен, и в вашем экземпляре достаточно места, программа скачает этот пакет. По умолчанию он сохраняется в /var/lib/ghe-updates. Затем администратор может выполнить обновление.

Файл, содержащий состояние скачивания, можно найти в разделе /var/lib/ghe-updates/ghe-update-check.status.

Чтобы проверить последний GitHub Enterprise релиз, используйте Switch -i .

ssh -p 122 admin@HOSTNAME -- 'ghe-update-check'

ghe-upgrade

Эта служебная программа устанавливает или проверяет пакет обновления. Вы также можете использовать ее для отката выпуска исправлений при сбое или прерывании обновления. Дополнительные сведения см. в разделе Обзор процесса обновления.

Чтобы проверить пакет обновления:

ghe-upgrade --verify UPGRADE-PACKAGE-FILENAME

Чтобы установить пакет обновления:

ghe-upgrade UPGRADE-PACKAGE-FILENAME

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

Операции первого запуска, которые не требуют окна технического обслуживания, запуская фазу до обновления

ghe-upgrade --phase pre-upgrade UPGRADE-PACKAGE-FILENAME

После этого операторы могут завершить обновление, выполнив последние этапы после назначения окна технического обслуживания

ghe-upgrade --phase upgrade UPGRADE-PACKAGE-FILENAME

Обновлённый GitHub Enterprise хост будет перезагружаться этой операцией.

При откате обновления необходимо использовать файл пакета обновления с расширением PKG. Файлы пакетов горячих исправлений с расширением HPKG не поддерживаются.

ghe-upgrade --allow-patch-rollback EARLIER-RELEASE-UPGRADE-PACKAGE.pkg

После выполнения этой команды требуется перезагрузка. Откат не влияет на секцию данных, так как миграция для выпусков исправлений не выполняется.

ghe-upgrade-scheduler

Эта служебная программа управляет запланированной установкой пакетов обновления. Вы можете отображать, создавать новые или удалять запланированные установки. Необходимо создать расписания с помощью выражений cron. Дополнительные сведения см. в статье Википедии о Cron.

Служебная ghe-upgrade-scheduler программа лучше всего подходит для планирования горячих обновлений, которые не требуют режима обслуживания или перезагрузки в большинстве случаев. Эта программа не подходит для полного обновления пакетов, что требует от администратора вручную задать режим обслуживания, перезагрузить экземпляр и отменить режим обслуживания. Дополнительные сведения о различных типах обновлений см. в разделе Обновление с помощью пакета обновления

Чтобы запланировать новую установку для пакета:

ghe-upgrade-scheduler -c "0 2 15 12 *" UPGRADE-PACKAGE-FILENAME

Чтобы отобразить запланированные установки для пакета:

$ ghe-upgrade-scheduler -s UPGRADE PACKAGE FILENAME
> 0 2 15 12 * /usr/local/bin/ghe-upgrade -y -s UPGRADE-PACKAGE-FILENAME > /data/user/common/UPGRADE-PACKAGE-FILENAME.log 2>&1

Чтобы удалить запланированные установки для пакета:

ghe-upgrade-scheduler -r UPGRADE PACKAGE FILENAME

Управление пользователями

Использование ghe-license

Эта служебная программа экспортирует список пользователей установки в формате JSON. Если ваш экземпляр подключён к GitHub Enterprise Cloud, GitHub Enterprise Server использует эту информацию для передачи лицензионной информации в GitHub Enterprise Cloud. Дополнительные сведения см. в разделе Включение GitHub Connect для GitHub.com.

По умолчанию список пользователей в итоговом JSON-файле шифруется. Просмотрите необязательные флаги с помощью ghe-license --help.

ghe-license usage

ghe-org-membership-update

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

ghe-org-membership-update --visibility=SETTING

ghe-user-csv

Эта служебная программа экспортирует список всех пользователей в установке в формате CSV. Этот CSV-файл включает адрес электронной почты, тип пользователя (например, администратор, пользователь), сколько репозиториев имеется, сколько ключей SSH, членство в скольких организациях, последний зарегистрированный IP-адрес и т. д. Используйте флаг -h для дополнительных параметров.

ghe-user-csv -o > users.csv

ghe-user-demote

Эта служебная программа понижает уровень указанного пользователя от администратора до обычного пользователя. Рекомендуется выполнять это действие в пользовательском веб-интерфейсе, а эта служебная программа предоставляется на тот случай, если служебная программа ghe-user-promote будет выполнена с ошибкой, и потребуется снова понизить уровень пользователя из интерфейса командной строки.

ghe-user-demote USERNAME

ghe-user-promote

Эта служебная программа повышает уровень указанной учетной записи пользователя до администратора сайта.

ghe-user-promote USERNAME

ghe-user-suspend

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

ghe-user-suspend USERNAME

ghe-user-unsuspend

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

ghe-user-unsuspend USERNAME

База данных и хранилище

ghe-elasticsearch-watermarks

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

Совет

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

Чтобы задать проценты подложки, выполните приведенные действия.

ghe-elasticsearch-watermarks set LOW-PERCENT HIGH-PERCENT

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

ghe-elasticsearch-watermarks remove

Чтобы отобразить текущие параметры водяного знака, выполните следующие действия.

ghe-elasticsearch-watermarks status

ghe-es-repair-status

Эта программа отображает состояние операций восстановления индекса поиска Elasticsearch.ваш экземпляр GitHub Enterprise Server

ghe-es-repair-status

ghe-es-usage

Эта программа вычисляет использование дисков индексов в Elasticsearch в ваш экземпляр GitHub Enterprise Server.

ghe-es-usage

С помощью следующих флагов ghe-es-usageможно использовать.

ФлагDescription
-s/--summarizeОтображается только общее число.
-H/--human-readableРазмеры печати в формате, доступном для чтения человеком.

ghe-mssql-console

Эта программа открывает сеанс база данных Microsoft SQL Server.ваш экземпляр GitHub Enterprise Server База данных MSSQL используется службами GitHub Actions .

Примечание.

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

ghe-mssql-console

С помощью следующих флагов ghe-mssql-consoleможно использовать.

ФлагDescription
-p/--primaryПодключитесь к основному экземпляру MSSQL.
-q/--queryВыполняемый строковый запрос.
-i/--inputВходной файл скрипта для выполнения.
-n/--no-headersНе отображайте заголовки столбцов.
-r/--read-onlyРежим только для чтения для подключения к репликам только для чтения.
-y/--yesПропустите запрос предупреждения.

ghe-mssql-diagnostics

Эта программа отображает диагностические сведения для Microsoft SQL Server для Служба поддержки GitHub изучения GitHub Actions проблем.

Примечание.

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

ghe-mssql-diagnostics

ghe-mssql-health-check

Эта программа выполняет проверку состояния экземпляра Microsoft SQL Server, ваш экземпляр GitHub Enterprise Serverвключая резервные копии и журналы транзакций.

ghe-mssql-health-check

Зависимости

ghe-dep-graph-enable

Эта программа включает службу ваш экземпляр GitHub Enterprise ServerGraph зависимостей.

ghe-dep-graph-enable

Monitoring

ghe-otelcol-validate

Эта программа проверяет файл конфигурации сборщика OpenTelemetry в ваш экземпляр GitHub Enterprise Server.

ghe-otelcol-validate