모든 사용자가 Ruby를 사용할 수 있도록 설정

모든 사용자가 Ruby를 사용할 수 있도록 설정

Debian 기반 Occidentals를 실행하는 Raspberry Pi를 프로그래밍할 때 Ruby를 사용할 계획입니다. SSH를 통해 다음을 실행했습니다.

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

Ruby 소스 코드를 다운로드하여 컴파일했습니다. 완료하는 데 약 2시간이 소요됩니다. AdaFruit의 WebIDE를 통해 Ruby를 사용하고 싶습니다 -http://learn.adafruit.com/webide/. 그런데 SSH를 통해 한 Ruby 설치에서는 사용자 디렉터리 .rvm에 이라는 폴더가 생성되었는데 pi, WebIDE는 webide사용자 계정을 사용합니다.

webide사용자 계정이 Ruby에 액세스하도록 허용하는 가장 좋은 방법은 무엇입니까? .rvm폴더를 에서 으로 /home/pi이동 하려고 했지만 /etc/share작동하지 않았습니다. 터미널에서 Ruby를 사용하려고 할 때 "오류: RVM 환경 파일 누락: '/home/pi/.rvm/environments/ruby - 2.0" 오류가 발생했습니다. . 0-p353'" 그래서 일부 링크가 깨졌나 봐요.

더 나은 방법이 있다고 확신하므로 웹사이드 사용자를 위해 추가로 2시간 설치를 실행하고 싶지 않습니다!

답변1

RVM의 가치를 간과하지 마세요

Ruby의 리포지토리 버전을 사용할 수 있지만 Ruby를 관리하려면 RVM을 사용하는 것이 좋습니다. 이로 인해 속도가 느려지는 것처럼 보일 수 있지만 리포지토리를 통해 배포된 Ruby 버전은 사용 가능한 경우 종종 문제를 일으킵니다. 일반적으로 특정 애플리케이션 및/또는 사용 사례에 맞게 특화할 수 있는 전용 버전의 인터프리터와 필수 라이브러리(Gem)를 만드는 것이 가장 좋습니다.

RVM은 단일 사용자(사용자가 수행하는 작업)를 위한 설치 기능과 다중 사용자 설치 기능을 제공합니다.

$ curl -L https://get.rvm.io | sudo bash -s stable

이 방법으로 설치를 실행하면 /usr/local/rvmUnix 그룹의 모든 사용자가 소프트웨어에 액세스할 수 있는 Unix 그룹에 있는 다중 사용자 설치를 위한 RVM이 자동으로 트리거됩니다 rvm.

$ sudo usermod -a -G rvm <user>

<user>사용자는 어디에 있습니까 webide?

루비 설치

이제 각 사용자의 에 다음을 추가합니다 $HOME/.bashrc. 저는 보통 이것을 파일 끝에 넣습니다.

[[ -s /usr/local/rvm/scripts/rvm ]] && source /usr/local/rvm/scripts/rvm

이 경우에는 로그아웃했다가 다시 로그인해야 합니다.

참고 1:gnome-terminal에서 다른 탭을 시작하는 것만으로는 충분하지 않으며 새로 로그인된 세션이어야 합니다. 방금 사용자를 추가한 그룹이 선택됩니다.

노트 2:다음 파일이 여기에 이미 설치되어 있는 경우 위 파일을 추가할 필요가 없습니다. $HOME/.bashrc이렇게 하면 rvm시스템 그룹의 모든 사용자에 대해 위와 같은 작업이 수행됩니다.

$ ls -l /etc/profile.d/rvm.sh 
-rwxr-xr-x 1 root root 1698 Nov 27 21:14 /etc/profile.d/rvm.sh

로그인 후 Ruby를 설치해야 합니다. 다음 단계를 사용하여 사용자로서 이 작업을 수행할 수 있습니다 webide.

어떤 버전을 설치할 수 있나요?

$ rvm list known | less
...
# MRI Rubies
[ruby-]1.8.6[-p420]
[ruby-]1.8.7[-p374]
[ruby-]1.9.1[-p431]
[ruby-]1.9.2[-p320]
[ruby-]1.9.3[-p484]
[ruby-]2.0.0-p195
[ruby-]2.0.0[-p353]
[ruby-]2.1.0-preview2
[ruby-]2.1.0-head
ruby-head
...

노트:Ruby를 처음 설치하는 경우 sudo종속 항목을 설치할 수 있도록 권한이 있는 사용자로 설치해야 합니다. 예를 들어 Ubuntu에서는 이러한 유형의 활동을 볼 수 있습니다. 일단 이것들이 설치되면, 다른 사용자(예를 들어 webide)도 다른 Ruby를 디렉토리에 설치할 수 있어야 합니다 /usr/local/rvm.

Installing requirements for ubuntu.
Updating system..............................................................................................................
Installing required packages: libreadline6-dev, zlib1g-dev, libssl-dev, libyaml-dev, libsqlite3-dev, sqlite3, autoconf, libgdbm-dev, libncurses5-dev, automake, libtool, bison, libffi-dev...............................................................................................
Requirements installation successful.

설치된 버전 보기

$ rvm list

rvm rubies

 * ruby-1.9.3-p484 [ x86_64 ]

# => - current
# =* - current && default
#  * - default

두 번째 Ruby 설치

$ whoami
webide

$ rvm install 2.0.0-p195
...
ruby-2.0.0-p195 - #validate binary
ruby-2.0.0-p195 - #setup
Saving wrappers to '/usr/local/rvm/wrappers/ruby-2.0.0-p195'........
ruby-2.0.0-p195 - #importing default gemsets, this may take time..................

이제 설치된 항목을 나열하면 다음과 같습니다.

$ rvm list

rvm rubies

 * ruby-1.9.3-p484 [ x86_64 ]
   ruby-2.0.0-p195 [ x86_64 ]

# => - current
# =* - current && default
#  * - default

위에서 우리는 사용자가 webideRuby를 설치할 수 있음을 볼 수 있습니다.

모든 rvm 사용자에 대한 기본값 설정

$ rvm use ruby-2.0.0-p195 --default
Using /usr/local/rvm/gems/ruby-2.0.0-p195

$ rvm list

rvm rubies

   ruby-1.9.3-p484 [ x86_64 ]
=* ruby-2.0.0-p195 [ x86_64 ]

# => - current
# =* - current && default
#  * - default

그룹 내 다른 사용자로 로그인하면 rvm기본값 설정 효과를 확인할 수 있습니다.ruby-2.0.0-p195

$ rvm list

rvm rubies

=> ruby-1.9.3-p484 [ x86_64 ]
 * ruby-2.0.0-p195 [ x86_64 ]

# => - current
# =* - current && default
#  * - default

따라서 해당 사용자는 사용하고 ruby-1.9.3-p484있으며 이제 ruby-2.0.0-p195기본값도 사용하도록 구성되었습니다.

느린 다운로드/설치

다운로드 속도가 느린 경우 오프라인 설치 방법을 사용할 수 있습니다. 이렇게 하면 나중에 다시 설치할 수 있습니다. 또는 해당 시스템을 통해 다운로드하는 데 문제가 있을 수 있습니다. 한 시스템에 RVM 설치 프로그램을 다운로드한 다음 scp.

$ curl -L https://github.com/wayneeseguin/rvm/tarball/stable -o rvm-stable.tar.gz

이봐,RVM이 오프라인 모드에 있습니다.자세한 내용을 확인하세요.

인용하다

답변2

데비안 기반 배포판을 실행하고 있으므로 Ruby를 설치하는 가장 쉬운 방법은 루트로 다음 명령을 실행하는 것입니다(예: sudo또는 원하는 방법을 사용하여):

 aptitude install ruby

관련 정보