#linux #bash #curl #elementary_os
Хочу установить sdkman на elementary OS Loki.
Пытаюсь делать всё по инструкции с сайта, ввожу в консоли curl -s "https://get.sdkman.io"
| bash и ничего не происходит. Разработчики sdkman сказали, что возможно это из-за
блокировок серверов, но у меня стоит vpn и я могу пинговать get.sdkman.io, а также
если я ввожу этот адрес в браузер то у меня открывается их страница, отсюда я сделал
вывод, что дело не в блокировке, в чём тогда может быть проблема?
UPD:
попробовал изменить запрос вот результат
curl -sv "https://get.sdkman.io/" | bash
Rebuilt URL to: https://get.sdkman.io/
Trying 159.89.187.78...
Connected to get.sdkman.io (159.89.187.78) port 443 (#0)
found 148 certificates in /etc/ssl/certs/ca-certificates.crt
found 597 certificates in /etc/ssl/certs
ALPN, offering http/1.1
gnutls_handshake() failed: Error in the push function.
Closing connection 0
UPD2:
ls -l $(which bash)
-rwxr-xr-x 1 root root 1037528 ноя 27 2017 /bin/bash
bash --version
GNU bash, версия 4.3.48(1)-release (x86_64-pc-linux-gnu)
UPD3:
$ wget 'https://get.sdkman.io'
--2018-09-27 16:25:07-- https://get.sdkman.io/
Распознаётся get.sdkman.io (get.sdkman.io)... 159.89.187.78
Подключение к get.sdkman.io (get.sdkman.io)|159.89.187.78|:443...
соединение установлено.
Не удаётся установить SSL-соединение.
UPD4:
Я использую VPN, на сайт get.sdkman.io через браузер я зайти могу.
Ответы
Ответ 1
согласно информации с сайта https://zapret.info/index.php?url=get.sdkman.io: Сожалеем, ресурс get.sdkman.io (159.89.187.78) находится в списке заблокированных ресурсов на территории Российской Федерации! если у вас имеется ssh-доступ к серверу, на котором сайт get.sdkman.io (и api.sdkman.io, к которому происходят обращения уже внутри скрипта, который вы хотите получить и выполнить) не заблокирован, то можете воспользоваться советом из другого моего ответа: Как проксировать http[s] через ssh-туннель? (точнее, первым пунктом из ответа). в отдельном эмуляторе терминала запускаете проксирующий процесс: $ ssh -D 1122 user@server в другом эмуляторе терминала, где собираетесь запускать программу curl, объявляете переменную окружения HTTPS_PROXY, значение которой использует программа: $ export HTTPS_PROXY=socks5://localhost:1122 (номер порта — тот же самый, что вы указывали и при запуске ssh) теперь в этом эмуляторе терминала команда $ curl https://get.sdkman.io | ... благополучно отработает. если вы, как и я, не доверяете всяким левым сайтам и устанавливаете программы с них исключительно в docker-контейнерах, то контейнер надо запускать (хотя бы на стадии запуска скриптов с sdkman.io), например, с опцией --network=host. первый пункт выполняете на хост-машине, второй и третий — внутри контейнера.Ответ 2
Просто используй curl -s "http://get.sdkman.io" | bash
Комментариев нет:
Отправить комментарий