先说一下我安装后的版本
- Ubuntu Kylin 16.04 LTS
- rvm 1.28.0
- ruby 2.3.3p222 (2016-11-21 revision 56859) [x86_64-linux]
- Rails 5.0.1
(一开始以为kylin会对我友好一点,后来才迟钝的发现它改过UI,但其实都是一样的。。。)
顺带一提,我的教程是假设你刚刚装了一个新的Ubuntu(就是说很新鲜烫手的),没用过其他方法安装ruby(如果有请你先卸载干净装过的ruby)。
如果你试过其他教程,你会发现有两个命令是要等很久的,主要原因是更新的时候都会去链接外国的服务器而不是国内的服务器。理论上可以用vpn的方式解决,但是我不用的。
猛男都是直接让系统去找国内的服务器更新的,这里可以参考Ubuntu论坛的源列表,这个例子中我用的是网易的服务器
说了这么多,能换源的方法是修改 /etc/apt/sources.list 每个人的文件应该略有不同,我这边
deb http://us.archive.ubuntu.com/ubuntu/
说明总是去美国那里更新,肯定很慢,容易掉线。这个文件是不可修改的,最好是打开后再创建一个空白文档,把sources.list的内容复制进去,对新文档进行 find&replace 我就是把所有us.archive.ubuntu.com/ubuntu/换成mirrors.163.com/ubuntu/,之后在自己的文件夹里保存,再想办法替换掉原本的sources.list
代码可以是:
$ sudo cp /etc/apt/sources.list /etc/apt/sources.list.backup #备份
$ sudo rm /etc/apt/sources.list #有备份自然可以删去
$ sudo mv /home/frankscarlet/Documents/sources.list.wangyi /etc/apt/sources.list #将你已经写好的文件移动进去就好了
这一步要经常检查,sudo apt-get update 和rvm requirements 如果很慢,都需要去查看sources.list(我出现过sudo..update很快,突然rvm requirements很慢的情况,回去查看发现sources.list又被改回了美国的服务器,应该是sources.list自身是有备份机制的)
接下来教程就很简单了
1. 更新系统安装包
`$ sudo apt-get update`
- 安装curl(我们用curl 安装rvm 因为这是rvm官方推荐的方式,你可以百度rvm,那个网站我们还要用
到)
`$ sudo apt-get install curl`
2. 安装rvm(rvm官网就有的东西)
`$ gpg –keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3`
`#钥匙一样的东西`
`$ \curl -sSL https://get.rvm.io | bash -s stable #速度慢可以用下面我翻别人教程的一个连接
$ curl -L https://raw.githubusercontent.com/wayneeseguin/rvm/master/binscripts/rvm-installer | bash -s stable #不知道为什么 我用这个很快
之后要重启终端(就是关掉命令窗口再开一次,这样才能载入rvm,虽然也有代码可以代替这一步,但是没必要。)
$ rvm –v #看有没有显示版本吧,有的话就成功了,继续下一步
3. 用rvm安装ruby
$ rvm requirements #如果很慢就需要查看一下sources.list,看是不是又改回去了,我自己是这样
$ echo "ruby_url=https://cache.ruby-china.org/pub/ruby" > ~/.rvm/user/db #修改 RVM 的 Ruby 安装源到 Ruby China 的 Ruby 镜像服务器,这样能提高安装速度
$ rvm install ruby
安装好后如果你尝试 $ ruby –v 是没有版本回复的,并不是你没有安装ruby,而是你没给ruby设置一个身份证一样的东西,请看接下的代码。
- 将ruby设置成默认的
$ rvm list #列表后发现我的ruby 既不是current也不是default ,于是百度或者rvm官网
$ rvm use 2.3.3 –default #一般教程里的代码用这个设置,但是其实也会有问题,我会出现: RVM is not a function, selecting rubies with 'rvm use ...' will not work.,官网上的解决方案就是下面这个代码
$ rvm alias create default 2.3.3
$ rvm list #再次列表会发现我们的ruby 变成了 current&default,但ruby -v命令还是无效
$ rvm use 2.3.3 –default #再次尝试,有了不同的错误信息,提示你要更改终端的profile preferences—command—run command as a login shell ( 勾选这个)#设置后重启终端
$ rvm use 2.3.3 –default #有一行绿色的回复,到这一步我输入ruby –v终于好了
$ gem sources --add https://gems.ruby-china.org/ --remove https://rubygems.org/#同理,将gem的源修改为国内的
$ gem install bundler
$ gem install rails
- 安装好后检查这些命令
$ rvm –v
$ ruby –v
$ rails –v
$ sqlite3 –version
$ sudo apt-get install nodejs #这里别忘记安装node.js,具体命令随机应变,看系统回复的信息
接下来交给 rails入门就好了。一些参考的资料放在下面
参考资料:
http://blog.csdn.net/XIAO_XIAO_C/article/details/51812081 我用的教程
http://wiki.ubuntu.org.cn/%E6%A8%A1%E6%9D%BF:16.04source 16.04的源列表
http://ruby-china.org/wiki/rvm-guide rvm修改源
https://gems.ruby-china.org/ gem修改源
http://www.rvm.io/ rvm设置ruby的时候官网是最有用的。
http://guides.ruby-china.org/getting_started.html 如果你全装成功了,你该去这个教程了。