Ruby RVM apt-get更新错误
尝试使用RVM进行任何安装时,出现以下错误:
Searching for binary rubies, this might take some time. Found remote file https://rvm.io/binaries/ubuntu/13.04/x86_64/ruby-2.1.1.tar.bz2 Checking requirements for ubuntu. Installing requirements for ubuntu. Updating system..kshitiz password required for 'apt-get --quiet --yes update': ............................ Error running 'requirements_debian_update_system ruby-2.1.1', showing last 15 lines of /home/kshitiz/.rvm/log/1400047196_ruby-2.1.1/update_system.log ++ /scripts/functions/logging : rvm_pretty_print() 78 > case "${TERM:-dumb}" in ++ /scripts/functions/logging : rvm_pretty_print() 81 > case "$1" in ++ /scripts/functions/logging : rvm_pretty_print() 83 > [[ -t 2 ]] ++ /scripts/functions/logging : rvm_pretty_print() 83 > return 1 ++ /scripts/functions/logging : rvm_error() 117 > printf %b 'There has been error while updating '\''apt-get'\'', please give it some time and try again later. For 404 errors check your sources configured in: /etc/apt/sources.list /etc/apt/sources.list.d/*.list \n' There has been error while updating 'apt-get', please give it some time and try again later. For 404 errors check your sources configured in: /etc/apt/sources.list /etc/apt/sources.list.d/*.list ++ /scripts/functions/requirements/ubuntu : requirements_debian_update_system() 53 > return 100 Requirements installation failed with status: 100.
我怎样才能解决这个问题?
如果apt-get update
有错误, RVM
不会很好运行。 如果您的apt
sources
有一个无效的存储库,导致404或GPG错误, RVM
将拒绝工作。 这可能会令人困惑,因为即使故障存储库与ruby
或RVM
无关,也会发生这种情况。
以下修补程序适用于我(Ubuntu):
运行apt-get update
并查看是否有任何错误。 在/etc/apt
编辑你的sources.list
和precise.list
以删除有问题的软件仓库。 重复,直到apt-get update
成功,没有任何错误。 然后尝试运行RVM
。
我也不得不删除失败的存储库,但我很难find他们,并根据这里的指示删除它们。 所以我find了这个链接 ,解释了为什么发生这种情况,以及如何删除失败的存储库:
总之,运行以下find失败的存储库:
sudo apt-get update | grep "Failed"
示例输出可以是这样的:
:~# apt-get update | grep "Failed" W: Failed to fetch http://ppa.launchpad.net/upubuntu-com/web/ubuntu/dists/trusty/main/binary-amd64/Packages 404 Not Found W: Failed to fetch http://ppa.launchpad.net/upubuntu-com/web/ubuntu/dists/trusty/main/binary-i386/Packages 404 Not Found E: Some index files failed to download. They have been ignored, or old ones used instead.
最后使用这个命令删除失败的repo:
sudo add-apt-repository --remove ppa:{failing ppa}
对于这个例子,它将看起来像这样:
sudo add-apt-repository --remove ppa:upubuntu-com/web
另外,也可以在rvm中删除废话。 我在文件/ usr / share / rvm / scripts / functions / requirements / ubuntu中编辑requirements_debian_update_system()如下:
requirements_debian_update_system() { echo "*fake* apt-get update" # __rvm_try_sudo apt-get --quiet --yes update || # { # typeset __ret=$? # case ${__ret} in # (100) # rvm_error "There has been error while updating 'apt-get', please give it some time and try again later. #404 errors should be fixed for rvm to proceed. Check your sources configured in: # /etc/apt/sources.list # /etc/apt/sources.list.d/*.list #" # ;; # esac # return ${__ret} # } }
您可以尝试跳过rvm更新系统,以便apt-get不会被调用。
# Disable RVM from trying to install necessary software via apt-get rvm autolibs disable # Then try installing Ruby: rvm install 2.4.0
你不需要apt-get来安装rvm并使用它!
只需curl(apt-get install curl)
启动\curl -sSL https://get.rvm.io | bash -s stable --ruby
\curl -sSL https://get.rvm.io | bash -s stable --ruby
和rvm install 2.1.1
或其他ruby的版本,它的工作原理;)
gem更新等…
RVM将独立于apt-get,所以你不会再发行。
有关更多信息: https://rvm.io/rvm/install
: https://rvm.io/rvm/install
我遇到过同样的问题。 如果没有其他答案的工作尝试这一点。 我运行以下命令来修复它:
sudo apt-get -f install
然后我想起那天早些时候我没有安装一个软件包。 这个命令所做的是解决了那个包的依赖关系,并允许RVM做它的事情。
当我尝试安装一个Ruby版本作为非sudoer用户时,这也发生在我身上。 但是,当我作为我的pipe理员用户(使用sudo权限)login并运行sudo apt-get update | grep "Failed"
sudo apt-get update | grep "Failed"
我会得到没有错误,然而, rvm install xxx
仍然会导致要求密码(当我作为非sudoer用户运行rvm install
。)
因为我不想让我的rvm(普通用户)用户拥有sudo权限,所以我一直在嘲弄我的头脑。 然后,一些在谷歌上徘徊后,我发现我可以作为我的pipe理员用户login。
通过为该用户安装RVM的步骤(按照他们的文档 ):
$ gpg –keyserver hkp://keys.gnupg.net –recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3
$ \ curl -sSL https://get.rvm.io | bash -s稳定
$ source〜/ .rvm / scripts / rvm
然后(作为pipe理员用户)直接跳到安装RVM所需的软件包:
$ rvm requirements
在这一点上它要求我的sudo密码,并在input密码后为整个系统安装所需的apt软件包。
然后我以pipe理员用户的身份从服务器注销,并以rvm用户身份(无sudo权限)重新login,并尝试安装Ruby的一个版本。
$ rvm install xxx
现在它工作。
我刚试过
sudo apt-get update,发现其中一些失败; 例如..
错误http://extras.ubuntu.com raring /主要来源404未find
我继续从这里的列表中删除这些项目。
sudo gedit /etc/apt/sources.list
有效!
运行curl -sSL https://get.rvm.io | bash -s stable --ruby
时遇到类似这样的错误 curl -sSL https://get.rvm.io | bash -s stable --ruby
。 这花了一段时间,但我终于意识到,我突然开放:安装程序无法运行,因为apt被locking
当我的工作目录在一个安装目录里面的时候,我也遇到了这个错误。
修复只是为了:
cd ~
我通过在sudo apt-get update底部看到这一点,我想到了这一点
E: Unable to change to /path/to/my/current/directory/ - chdir (13: Permission denied)
我得到了同样的错误。我尝试了大多数以上的答案,但没有为我工作,所以我只是改变服务器
- 转到目录etc / apt
- 点击Sources.list
- 将服务器更改为我们或其他服务器
- 重新加载(它会更新您的caching从该服务器)
- 然后运行
sudo apt-get update
这个问题导致apt-get update
所以你必须禁用PPA:
系统设置>软件和更新>其他软件
然后重新安装。
在我的情况下rvm错过了一些Linux软件包,不能安装没有sudo。 根本没有apt-get安装错误。
当使用sudo运行rvm install ruby xxx时,rvm安装了需要构buildruby的包并且工作。
apt install libc6:amd64 libc6:amd64 libc6 libc6-dev:amd64 libc6-dev libc-dev-bin libc-bin man-db libc-dev-bin libc6-dev:amd64
这工作对我来说很好^^