银河麒麟(内核CentOS8)安装rbenv、ruby2.6.5和rails5.2.6

一、安装 rbenv 和 ruby-build

1.安装 rbenv

ruby 复制代码
git clone https://github.com/rbenv/rbenv.git ~/.rbenv

2. 添加 rbenv 到 PATH

ruby 复制代码
echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bashrc
echo 'eval "$(rbenv init -)"' >> ~/.bashrc
source ~/.bashrc

3.安装 ruby-build 插件

ruby 复制代码
git clone https://github.com/rbenv/ruby-build.git ~/.rbenv/plugins/ruby-build

二、安装Ruby 2.6.5

1.确保安装必要的开发工具和库

查看系统信息:

ruby 复制代码
cat /etc/os-release

根据系统选择命令安装开发工具和库。

输出包含 ID="kylin" 或 centos,说明应使用 yum。

使用yum安装依赖

ruby 复制代码
sudo yum install -y autoconf bison gcc make openssl-devel libyaml-devel readline-devel zlib-devel ncurses-devel libffi-devel gdbm-devel

如果不确定系统可能会遇到的问题:

报错:sudo:apt-get:找不到命令

出现 sudo: apt-get 找不到命令错误,是因为 Kylin Linux(麒麟系统)基于 CentOS/Red Hat 系列,默认使用 yum 或 dnf 作为包管理工具,而非 Debian/Ubuntu 的 apt-get。

2.确认 ruby-build 是否为最新版本

Ruby 版本列表由 ruby-build 插件提供,更新它以获取最新版本支持:

通过 Git 安装

ruby 复制代码
cd ~/.rbenv/plugins/ruby-build

git pull

查看可安装的 Ruby 版本(可省略,如果版本太低,不会显示出来)

ruby 复制代码
rbenv install --list

直接手动安装。

3.安装ruby2.6.5

ruby 复制代码
rbenv install 2.6.5

安装前准备工作

手动下载 Ruby 源码包(这一步可以直接执行,或者再解决问题(1)后仍无法安装再执行)

创建缓存目录

ruby 复制代码
mkdir -p ~/.rbenv/cache

手动下载(使用 wget)

ruby 复制代码
wget https://cache.ruby-lang.org/pub/ruby/2.6/ruby-2.6.5.tar.bz2 -P ~/.rbenv/cache

或使用国内镜像(如清华源)

ruby 复制代码
wget https://mirrors.tuna.tsinghua.edu.cn/ruby/ruby/2.6/ruby-2.6.5.tar.bz2 -P ~/.rbenv/cache

检查当前用户对~/.rbenv/cache有写入权限

ruby 复制代码
chmod 755 ~/.rbenv

chmod 755 ~/.rbenv/cache

重新安装并指定源码路径

ruby 复制代码
rbenv install 2.6.5 --verbose

(--verbose是详细输出日志)

问题及解决办法:

(1)curl:(56)OpenSSL SSl_read:连接被对方重设:errno 104

error:failed to download openssl-1.1.1u.tar.gz

手动下载 OpenSSL

wget https://www.openssl.org/source/openssl-1.1.1u.tar.gz -P ~/.rbenv/cache

提示

"正在解析主机www(www) 失败:未知的名称或服务。wget:无法解析主机地址"

检查网络:ping www.baidu.com(需要手动停止,否则会一直输出,停止后会看到"握手次数"及结果)

仍没解决,出现该问题核心在于 DNS 解析失败或网络访问受限。

检查域名解析是否正常

nslookup www.openssl.org

返回 IP 地址:说明 DNS 解析正常,检查网络连通性

检查网络连通性

确认能访问目标服务器的 IP 地址:

如果 ping 通:域名解析已恢复,重新执行 wget

(2)手动下载Ruby源包码后,再次执行rbenv install ruby 2.6.5

提示空间不足,

确认磁盘空间充足:

ruby 复制代码
df -h /tmp

清理临时文件

ruby 复制代码
sudo rm -rf /tmp/ruby-build.* 

再次执行 rbenv ruby 2.6.5

将2.6.5设为全局版本

ruby 复制代码
rbenv global 2.6.5

4.检查ruby是否安装成功

ruby 复制代码
ruby -v

三、安装rails5.2.6

1.安装rails5.2.6步骤

(1)安装 Bundler

ruby 复制代码
gem install bundler

需要的话,使用rbenv的Ruby版本安装特定版本的Rails。

ruby 复制代码
rbenv shell 2.6.5

(2) 安装 Rails 5.2.6

ruby 复制代码
gem install rails -v 5.2.6

(3)验证安装

rails -v # 应该显示 Rails 5.2.6

2.问题及解决办法:

(1)gem install bundler 出现版本不匹配问题

会提示让安装相应的版本,一般是2.4.22

(2)nokogiri版本不匹配问题

根据提示的版本(1.13.10),安装相应的版本

再次执行安装rails的命令,仍提示nokogiri版本问题

解决办法:

安装对应版本的gem

ruby 复制代码
wget https://rubygems.org/rubygems/rubygems-3.2.22.tgz

tar -xzvf rubygems-3.2.22.tgz

cd rubygems-3.2.22

ruby setup.rb

gem -v

再次执行 gem install rails -v 5.2.6

验证是否安装成功:rails -v

相关推荐
木古古181 小时前
搞一个高效的c/c++开发环境,工具VIm+自研vim插件+Shell脚本
linux·编辑器·vim
茫忙然2 小时前
U 盘搭建免驱 Linux 便携系统教程
linux·服务器
一起逃去看海吧3 小时前
dify-03
java·linux·开发语言
fengyehongWorld3 小时前
Linux 根据端口进行的相关查询
linux
lihao lihao3 小时前
linux匿名管道
linux·运维·服务器
うちは止水3 小时前
weston出图调试
linux·wayland·weston
STDD3 小时前
Farming Simulator 25(模拟农场 25) Linux 专服搭建完全指南
linux·运维·javascript
好好风格4 小时前
宝塔面板 HTTPS 端口证书不生效排查记录
linux·运维·nginx
用户2367829801684 小时前
Linux pgrep 命令详解:按名称查找进程 PID 的高效方法
linux