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将拒绝工作。 这可能会令人困惑,因为即使故障存储库与rubyRVM无关,也会发生这种情况。

以下修补程序适用于我(Ubuntu):

运行apt-get update并查看是否有任何错误。 在/etc/apt编辑你的sources.listprecise.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 

请参阅https://stackoverflow.com/a/16759839/1212791

你不需要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/installhttps://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)

我得到了同样的错误。我尝试了大多数以上的答案,但没有为我工作,所以我只是改变服务器

  1. 转到目录etc / apt
  2. 点击Sources.list
  3. 将服务器更改为我们或其他服务器
  4. 重新加载(它会更新您的caching从该服务器)
  5. 然后运行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 

这工作对我来说很好^^