Остановите конфигурацию ssh на первом соответствии

GB_INIT является символом от gambas и configure запускает компилятор для проверки чего-то об этом с короткой тестовой программой. Необходимо будет проверить что configure делает в том тесте (это - просто длинный и ужасный sh сценарий), и у Вас, вероятно, также есть a config.log файл с некоторой отладочной информацией.

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

Компилятор жалуется на синтаксическую ошибку, таким образом, фактическая ошибка могла быть в autoconf или как это используется в проекте (configure.ac/configure.in) для проверки на этот символ.

18
26.08.2014, 18:18
2 ответа

Вы можете исключить local.dev из ProxyCommand, используя ! перед ним:

Host * !local.dev
    ProxyCommand /usr/local/bin/corkscrew 127.0.0.1 8840 %h %p

Из документации ssh_config :

Если указано более одного шаблона, они должны быть разделены пробелом.

Запись шаблона может быть отменена, поставив перед ней восклицательный знак (`! ') . Если совпадает отрицательная запись, то Хост запись игнорируется, независимо от того, есть ли какие-либо другие шаблоны на соответствие линии. Поэтому отрицательные совпадения полезны для предоставления исключения для совпадений с подстановочными знаками.

В документации также сказано:

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

Таким образом, вы также можете отключить ProxyCommand для local.dev, переопределив значение, которое вы определили в Host * :

Host local.dev
    HostName dev.myserver.com
    User developer
    ProxyCommand none
22
27.01.2020, 19:46

Опция в файле конфигурации применяется при первом совпадении. Так как у вас нет ProxyCommand в записи хоста, будет использована та, что в вашей записи *.

Есть два способа обойти это:

  • Для хостов, на которых вы не хотите использовать команду прокси, просто добавьте строку
    ProxyCommand none
  • Для записи *, обратите особое внимание, что запись не должна применяться к хосту local.dev, отрицая его с помощью !
    Host !local.dev *
8
27.01.2020, 19:46

Теги

Похожие вопросы