RVM отказал в установке - завершение проверки SSL-скручивания
Я работаю над относительно чистой установкой OS X. У меня был Xcode, но я удалил его.
Когда я печатаю rvm install 1.9.3
, я получаю:
max-macbook:~ max$ rvm install 1.9.3 Fetching yaml-0.1.4.tar.gz to /Users/max/.rvm/archives % Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed 0 0 0 0 0 0 0 0 --:--:-- --:--:--
--:--:-- 0 curl: (60) SSL certificate problem, verify that the CA cert is OK. Details: error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed More details here: http://curl.haxx.se/docs/sslcerts.html
curl performs SSL certificate verification by default, using a "bundle" of Certificate Authority (CA) public keys (CA certs). If the default bundle file isn't adequate, you can specify an alternate file using the --cacert option. If this HTTPS server uses a certificate signed by a CA represented in the bundle, the certificate verification probably failed due to a problem with the certificate (it might be expired, or the name might not match the domain name in the URL). If you'd like to turn off curl verification of the certificate, use the -k (or --insecure) option. There was an error, please check /Users/max/.rvm/log//*.log. Next we'll try to fetch via http. Trying ftp:// URL instead. % Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed 0 0 0 0 0 0 0 0 --:--:-- --:--:--
--:--:-- 0 curl: (60) SSL certificate problem, verify that the CA cert is OK. Details: error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed More details here: http://curl.haxx.se/docs/sslcerts.html
curl performs SSL certificate verification by default, using a "bundle" of Certificate Authority (CA) public keys (CA certs). If the default bundle file isn't adequate, you can specify an alternate file using the --cacert option. If this HTTPS server uses a certificate signed by a CA represented in the bundle, the certificate verification probably failed due to a problem with the certificate (it might be expired, or the name might not match the domain name in the URL). If you'd like to turn off curl verification of the certificate, use the -k (or --insecure) option. There was an error, please check /Users/max/.rvm/log//*.log Extracting yaml-0.1.4.tar.gz to /Users/max/.rvm/src Error running 'tar xmzf /Users/max/.rvm/archives/yaml-0.1.4.tar.gz -C /Users/max/.rvm/src ', please read /Users/max/.rvm/log/ruby-1.9.3-p125/yaml/extract.log /Users/max/.rvm/scripts/functions/pkg: line 52: cd: /Users/max/.rvm/src/yaml-0.1.4: No such file or directory Configuring yaml in /Users/max/.rvm/src/yaml-0.1.4. Error running ' ./configure
--prefix="/Users/max/.rvm/usr" ', please read /Users/max/.rvm/log/ruby-1.9.3-p125/yaml/configure.log Compiling yaml in /Users/max/.rvm/src/yaml-0.1.4. Error running 'make ', please read /Users/max/.rvm/log/ruby-1.9.3-p125/yaml/make.log
Database file /Users/max/.rvm/config/packages does not exist.
/Users/max/.rvm/scripts/functions/build: line 28: --version: command not found Installing Ruby from source to: /Users/max/.rvm/rubies/ruby-1.9.3-p125, this may take a while depending on your cpu(s)...
ruby-1.9.3-p125 - #fetching ruby-1.9.3-p125 - #downloading ruby-1.9.3-p125, this may take a while depending on your connection...
Странные вещи, похоже, происходят, как будто у меня нет системы по умолчанию. Это первый раз, когда я пытался установить Ruby (в конечном итоге пытаюсь добраться до Rails), поэтому весь этот процесс для меня совсем незначителен.
Я проверил пару журналов, о которых упоминает выход, и большую часть времени RVM ищет файл, который не существует (однако он говорит, что он был загружен) или программа, которая не существует (она пыталась запустить ./configure
и получил "Файл не найден" ).
Может ли кто-нибудь пролить свет на это? Я хочу, чтобы мои руки были грязными с Rails как можно скорее.
Ответы
Ответ 1
Устаревшие сертификаты RVM истекли, мы перешли на более короткий домен rvm.io, я обновил все ресурсы и код, чтобы указать на новый домен, просто обновить РВМ:
rvm get head # OR:
rvm get stable
также есть новая более короткая команда установщика:
curl -L get.rvm.io | bash -s stable
для более старых версий RVM может потребоваться:
rvm get head
rvm reload
rvm get stable
Ответ 2
мы зафиксировали проблему с:
echo 'insecure' > ~/.curlrc
Ответ 3
У меня возникают те же ошибки, что и установка 1.9.3 на Ubuntu. SSL-сертификат rvm-сайта истек; ошибки исходят от попытки получить yaml-0.1.4.tar.gz.
Похоже, что он правильно перешел на обычный HTTP или FTP после того, как пара повторит попытку, поэтому не стоит беспокоиться (хотя красный текст выглядит зловещим).
Если вы действительно хотите подавить сообщения об ошибках, найдите эти две строки (для меня, строки 62 и 66) в ~/.rvm/scripts/fetch
:
fetch_command="curl -x${rvm_proxy} -f -L --create-dirs -C - " # -s for silent
fetch_command="curl -f -L --create-dirs -C - " # -s for silent
и добавьте флаг -k в curl, чтобы он не подтвердил сертификат SSL:
fetch_command="curl -k -x${rvm_proxy} -f -L --create-dirs -C - " # -s for silent
fetch_command="curl -k -f -L --create-dirs -C - " # -s for silent
Ответ 4
Это дубликат Ошибка сертификата Curl при использовании RVM для установки Ruby 1.9.2
Решение, описанное Wei, отлично работает в моем блоке Debian:
wget http://pyyaml.org/download/libyaml/yaml-0.1.4.tar.gz
cp yaml-0.1.4.tar.gz /home/luc/.rvm/archives
rvm install 1.9.3
Ответ 5
Ответ на @mpapis не работал у меня со 2 ноября 2013 года. В конце концов сообщения об ошибках rvm указали мне на rvm.io/support/fixing-broken-ssl-certificates, где он говорит, чтобы запустить sudo apt-get install ca-certificates
для Ubuntu. Затем работал стандартный /curl -L get.rvm.io | bash -s stable
.