一尘不染

在ubuntu 14.04上为所有用户全局设置ruby

jenkins

题:

如何以这种方式安装ruby,使其对ubuntu 14.04服务器上的所有用户可见

嗯,我试图使ruby -v对所有用户可见,但失败了。

问题2: 我可以更改权限吗?如果是这样,怎么办?如果没有,我将如何卸载其他安装?

我有2个主要用户: ubuntu(默认)和jenkins(中学)

我按照以下Tut中的 rbenv设置:

cd
git clone git://github.com/sstephenson/rbenv.git .rbenv
echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bashrc
echo 'eval "$(rbenv init -)"' >> ~/.bashrc
exec $SHELL

git clone git://github.com/sstephenson/ruby-build.git ~/.rbenv/plugins/ruby-build
echo 'export PATH="$HOME/.rbenv/plugins/ruby-build/bin:$PATH"' >> ~/.bashrc
exec $SHELL

rbenv install 2.1.5
rbenv global 2.1.5
ruby -v

但是我是在默认用户下完成的

+whoami
ubuntu
+ruby -v
ruby 2.1.5p273 (2014-11-13 revision 48405) [x86_64-linux]

如果我切换用户:

 +sudo su - jenkins
 +whoami
 jenkins

 +ruby -v
 The program 'ruby' can be found in the following packages:
 * ruby
 * ruby1.8
 Ask your administrator to install one of them

关于权限,我是一个超级菜鸟,希望您能握住我的手

最后,我试图让詹金斯去看红宝石。

我的詹金斯工作失败,因为它找不到红宝石,因为它找不到红宝石:c

4mRunning "test:client" (test) task[24m

[4mRunning "clean:server" (clean) task[24m

[4mRunning "env:all" (env) task[24m

[4mRunning "injector:sass" (injector) task[24m
[90mMissing option `template`, using `dest` as template instead[39m
Injecting [32mscss[39m files [90m(3 files)[39m
[32m>> [39mNothing changed

[4mRunning "concurrent:test" (concurrent) task[24m
    [33mWarning: [4mRunning "sass:server" (sass) task[24m
    [33mWarning: 
    You need to have Ruby and Sass installed and in your PATH for this task to work.
    More info: https://github.com/gruntjs/grunt-contrib-sass
     Use --force to continue.[39m

更新: 所以我在下面重新安装了rbenv sudo su - jenkins,一切正常,但是有没有办法将rbenv作为全局用户安装,或者这不是rbenv应该工作的方式吗?

更新* 2:我的第一个更新无效。这次我是怎么做到的。

sudo su -
sudo apt-get install ruby-full
gem install ...

阅读 281

收藏
2020-07-25

共1个答案

一尘不染

您的更新处于正确的轨道* 2。

如果要为所有用户安装某些软件,请使用

apt-get install

rbenv 如果您必须在不同的ruby环境之间切换(例如,开发多个应用程序,每个应用程序都需要安装自己的,可能会相互冲突的一组依赖项),则该功能非常有用

因此回答“ Q1如何以这样的方式安装ruby,使其对ubuntu 14.04服务器上的所有用户可见”

作为特权用户(root或可能ubuntu)运行

apt-get install ruby-full

问题2-4:我可以更改权限吗?如果是这样,怎么办?如果没有,我将如何卸载其他安装?

我可以更改权限吗?

这不仅仅是权限问题;这是一个PATH和权限问题。作为詹金斯用户,您可以做

export PATH="~ubuntu/.rbenv/plugins/ruby-build/bin:$PATH"

ubuntu用户的.rbenv
添加到您的路径。但是您最好rbenvjenkins用户设置。jenkins用户可能没有权限读取,chdir和执行ubuntu用户的主目录及其.rbenv子目录

如何(我可以更改权限)

您可以使用更改权限chmod。但是更改权限可以轻松破坏您的系统。与木材或纸,最好是找到一种方法,工作 系统(不必更改权限)的谷物,而不是
针对 系统的粮食。

我将如何卸载其他安装

sudo rm -rf ~ubuntu/.rbenv

如果您没有系统管理指南,则可能需要查阅一下。几年前,我从这本书的早期版本中学到了:< http://www.amazon.ca/Essential-
System-Administration-Tools-
Techniques/dp/0596003439 >

2020-07-25