macOS. 自带的ruby 版本目录权限比较高, 经常有很多 操作需要权限而不能执行

虽然 macOS 自带了一个 ruby 环境,但是是系统自己使用的,所以权限很小,只有 system。

而/Library 目录是 root 权限,所以很多会提示无权限。
使用自带ruby更新,管理不方便
一系列无原因的报错
permission deny
所以需要自己 安装其他版本的 ruby
删除系统ruby方法[️删除容易出现问题,尽量不要删除,不要删除,不要删除]

起源

我是因为需要用gem 安装软件
gem install xxx
但是总是提示去权限不足 ,好气呀,才选择 用哪个版本管理 ,用自己的ruby 去安装软件

检查

要检查您当前正在使用系统Ruby,请打开终端并输入以下内容:

which ruby

如果您使用的是Ruby系统,OS X将回应:

/usr/bin/ruby

您可以检查使用哪个版本的Ruby OS X:

ruby -v

RVM安装页面

1.安装mpapis公钥。

但是,正如安装页面所记录的,您可能需要gpg。Mac OS X不附带gpg,因此在安装公钥之前,您需要安装gpg。我用Homebrew安装了gpg :

brew install gnupg

2.安装完gpg之后,你可以安装mpapis公钥:

gpg --keyserver hkp://pgp.mit.edu --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB

3.安装最新版本的Ruby的RVM

\curl -sSL https://get.rvm.io | bash -s stable --ruby

注意如果出现 443 请求被拒绝 则 在本地 host 添加 添加指定ip
sudo vim /etc/hosts
然后添加 上 (不知打如何操作vim 这个就自己百度吧),就可以继续步骤三的操作了
199.232.28.133 raw.githubusercontent.com

4.启用RVM(地址,userName 替换成你本机信息)

source /Users/userName/.rvm/scripts/rvm

到此管理工具暂时安装完毕,接下去是使用

使用RVM安装ruby

1.检查

您可以列出可供RVM使用的Ruby版本rvm list

rvm list

查看可用的ruby 版本

rvm list known

可以看到我这里没有可用版本 ,接下去是安装

2.安装指定版本

rvm install 3.0.0

我第一次安装爆了个错,但是重新执行 安装又好了

查询,终于有了

rvm list

指定版本 完成

rvm use 3.0.0

常用指令

ruby rvm

$ ruby -v # 查看ruby 版本
$ rvm list known # 列出已知的 ruby 版本
$ rvm install 2.3.0 # 选择指定 ruby 版本进行更新
$ rvm get stable # 更新 rvm
$ rvm use 2.2.2 # 切换到指定 ruby 版本
$ rvm use 2.2.2 --default # 设置指定 ruby 版本为默认版本
$ rvm list # 查询已安装的 ruby 版本
$ rvm remove 1.9.2 # 卸载移除 指定 ruby 版本 $ curl -L https://get.rvm.io | bash -s stable # 安装 rvm 环境
$ curl -sSL https://get.rvm.io | bash -s stable --ruby # 默认安装 rvm 最新版本
$ curl -sSL https://get.rvm.io | bash -s stable --ruby=2.3.0 # 安装 rvm 指定版本
$ source ~/.rvm/scripts/rvm # 载入 rvm

Gem

$ gem -v # 查看 gem 版本
$ gem source # 查看 gem 配置源
$ gem source -l # 查看 gem 配置源目录
$ gem sources -a url # 添加 gem 配置源(url 需换成网址)
$ gem sources --add url # 添加 gem 配置源(url 需换成网址)
$ gem sources -r url # 删除 gem 配置源(url 需换成网址)
$ gem sources --remove url # 删除 gem 配置源(url 需换成网址)
$ gem update # 更新 所有包
$ gem update --system # 更新 Ruby Gems 软件
$
$ gem install rake # 安装 rake,从本地或远程服务器
$ gem install rake --remote # 安装 rake,从远程服务器
$ gem install watir -v 1.6.2 # 安装 指定版本的 watir
$ gem install watir --version 1.6.2 # 安装 指定版本的 watir
$ gem uninstall rake # 卸载 rake 包
$ gem list d # 列出 本地以 d 打头的包
$ gem query -n ''[0-9]'' --local # 查找 本地含有数字的包
$ gem search log --both # 查找 从本地和远程服务器上查找含有 log 字符串的包
$ gem search log --remoter # 查找 只从远程服务器上查找含有 log 字符串的包
$ gem search -r log # 查找 只从远程服务器上查找含有log字符串的包
$
$ gem help # 提醒式的帮助
$ gem help install # 列出 install 命令 帮助
$ gem help examples # 列出 gem 命令使用一些例子
$ gem build rake.gemspec # 把 rake.gemspec 编译成 rake.gem
$ gem check -v pkg/rake-0.4.0.gem # 检测 rake 是否有效
$ gem cleanup # 清除 所有包旧版本,保留最新版本
$ gem contents rake # 显示 rake 包中所包含的文件
$ gem dependency rails -v 0.10.1 # 列出 与 rails 相互依赖的包
$ gem environment # 查看 gem 的环境
$
$ sudo gem -v # 查看 gem 版本(以管理员权限)
$ sudo gem install cocoa pods # 安装 CocoaPods(以管理员权限)
$ sudo gem install cocoapods # 安装 CocoaPods(以管理员权限)
$ sudo gem install cocoapods --pre # 安装 CocoaPods 至预览版(以管理员权限)
$ sudo gem install cocoapods -v 0.39.0 # 安装 CocoaPods 指定版本(以管理员权限)
$ sudo gem update cocoapods # 更新 CocoaPods 至最新版(以管理员权限)
$ sudo gem update cocoapods --pre # 更新 CocoaPods 至预览版(以管理员权限)
$ sudo gem uninstall cocoapods -v 0.39.0 # 移除 CocoaPods 指定版本(以管理员权限)

ruby 版本管理RVM (ruby version manager)的更多相关文章

  1. RVM Ruby 管理工具

    1.RVM 简介 1.1 Ruby 简介 Ruby 是一种面向对象的脚本语言,简单易用,功能强大.能跨平台和可移植性好等等.其实就是种脚本语言. Ruby 的软件源使用的是亚马逊的云服务,国内网络环境 ...

  2. How to Install Xcode, Homebrew, Git, RVM, Ruby & Rails on Snow Leopard, Lion, Mountain Lion, and Mavericks

    After following many outdated and incomplete instructions for setting up a web development environme ...

  3. 转 CentOS下面安装RVM+ruby+Rails

    CentOS6.2下面安装RVM+ruby+Rails (1)RVM官方网站应该是改版过一次, 使用 curl -L https://get.rvm.io | bash -s stable 下载并安装 ...

  4. 【ruby】安装Ruby

    系统需求 首先确定操作系统环境,不建议在 Windows 上面搞,所以你需要用: Mac OS X 任意 Linux 发行版本 配置系统包 $ sudo apt-get install -y buil ...

  5. nvm(Node Version Manager)管理node版本

    nvm全称Node Version Manager是 Nodejs 版本管理器,它让我们能方便的对 Nodejs 的版 本进行切换. nvm 的官方版本只支持 Linux 和 Mac. Windows ...

  6. linux下安装ruby版本管理器RVM

    这里以ubuntu为例. 直接以如下命令行安装可能会不成功,因为rvm.io站点有时会被墙: curl -sSL https://get.rvm.io | bash -s stable #或者 cur ...

  7. Rails 第一课:环境配置 Ruby Rails RVM Heroku

    安装 上传专案到 Heroku 安装 Ruby 2.3.1 Rails 5.0.0.1 RVM 1.27.0 比较幸运一个问题都未碰到 MacOS 10.12.1 配置完成系统顺利升级到10.12.2 ...

  8. RHEL7在线安装rvm(ruby管理包)

    ttp://blog.csdn.net/lixwjava/article/details/50408070 安装curl sudo yum install curl 然后在在终端中输入命令 curl  ...

  9. 安装Ruby、多版本Ruby共存、Ruby安装慢问题

    rbenv rbenv可以管理多个版本的ruby.可以分为3种范围(或者说不同生效作用域)的版本: local版:本地,针对各项目范围 global版:全局,没有shell和local版时使用glob ...

随机推荐

  1. 线性表是否为空,定位元素下标(基于c语言)

    /*前面已经说过结构体中的n是代表已经放入线性表中元素的个数,所以判断线性表是否为空就是判断n的值是否为空*/ //书中代码如下 int isNullList_seq(PSeqList palist) ...

  2. SpringMVC工作流程 --通透较详细

    SpringMVC工作流程 SpringMVC工作流程 流程说明(重要): (1)客户端发送一个http请求给前端控制器(DispatcherServlet): (2)前端控制器(DispacherS ...

  3. 如何防止 IP 被盗用 保护网络正常运行

    IP被盗用是指盗用者使用未经授权的IP来配置网上的计算机.目前IP盗用行为非常常见,许多"不法之徒"用盗用地址的行为来逃避追踪.隐藏自己的身份.IP的盗用行为侵害了网络正常用户的权 ...

  4. unicode和unicode编码

    unicode编码是什么? 这其实是两个问题,unicode 是什么什么?unicode是怎样编码的? What is Unicode? Unicode provides a unique numbe ...

  5. 从SpringBoot到SpringCloudAlibaba简明教程(一):初识SpringBoot及其基础项目构建

    前言 Spring框架的大名想必大家早已如雷贯耳,我们来看一下springboot诞生的初衷,以及它在springframe的基础上解决了哪些痛点. 很久以前,J2EE还是java企业级应用的标准规范 ...

  6. 无法更新apt镜像源?树莓派安装最新版Debian11(bullseye)arm64位系统步骤

    镜像下载.域名解析.时间同步请点击阿里云开源镜像站 树莓派系统在2022年1月28日迎来了更新,更新了64位的系统,同时也有lite系统供我们使用.32位系统很多软件都用不了,特别是宝塔面板.下面是安 ...

  7. 网络编程 基础 基于socket的tcp和udp连接

    网络开发的框架 C/S B/S 架构 程序都是bs架构的程序(b指浏览器,s指服务器) c(client)是客户端,s(server)是服务器 bs架构是cs架构的一种 未来的趋势, pc端bs架构, ...

  8. 关于python很好的网站和书籍

    https://python-patterns.guide/ https://docs.python-guide.org/ https://www.amazon.com/_/dp/1491946008 ...

  9. C++设计模式 - 访问器模式(Visitor)

    行为变化模式 在组件的构建过程中,组件行为的变化经常导致组件本身剧烈的变化."行为变化" 模式将组件的行为和组件本身进行解耦,从而支持组件行为的变化,实现两者之间的松耦合. 典型模 ...

  10. 一文带你了解Lakehouse的并发控制:我们是否过于乐观

    1. 概述 如今数据湖上的事务被认为是 Lakehouse 的一个关键特征. 但到目前为止,实际完成了什么? 目前有哪些方法? 它们在现实世界中的表现如何? 这些问题是本博客的重点. 有幸从事过各种数 ...