Rubyを1.8.6から1.8.7にアップグレードすることを決定するまで、すべてが正常に機能していました。ソースからRuby 1.8.7をコンパイルすると、/ usr/local/binにインストールされ、Ruby 1.8.6は/ usr/binに残りました。現在、Ruby 1.8.6をアンインストールし、一気に/ usr/localからRuby 1.8.7ファイルを削除しました。
「どのRuby」を試すと、/ usr/localを指します。誰かが私たちが軌道に乗るために必要なことを手伝ってくれるなら、私たちは非常に感謝しています。また、/ usr/localからRubyをアンインストールする方法も考えています。 yum remove Rubyを試してみました。これにより、/ usr/binからRubyが削除されました。ありがとうございます。
/usr/bin
にある1.8.6をアンインストールすることはお勧めできません。これはOSによって所有されており、そこにあると予想されます。
/usr/local/bin
の前に/usr/bin
をPATHに入れると、/usr/local/bin
に同じ名前を持つものの前に/usr/bin
にインストールしたものが見つかり、それらを効果的に上書きまたは更新します。実際にそうせずに。 #!で明示的に/usr/bin
を使用することで、それらに到達できます!コードの先頭にあるインタープリター呼び出し行。
@Anuragは、RVMの使用を推奨しています。 OSの1.8.6に加えて1.8.7および1.9.1を管理するために使用します。
編集:コメントで提案されているとおり。このソリューションはLinux OS用です。 package-managerから手動でRuby=をインストールした場合も同様です。
複数のRubyバージョン、 [〜#〜] rvm [〜#〜] が必要です。その場合、削除する必要はありません。 Ruby古いバージョン。
それでも削除したい場合は、以下の手順に従ってください:
最初に、Ruby is:
whereis Ruby
システム上に存在するすべての場所がリストされます。それらをすべて明示的に削除できます。または、次のようなものを使用できます。
rm -rf /usr/local/lib/Ruby
rm -rf /usr/lib/Ruby
rm -f /usr/local/bin/Ruby
rm -f /usr/bin/Ruby
rm -f /usr/local/bin/irb
rm -f /usr/bin/irb
rm -f /usr/local/bin/gem
rm -f /usr/bin/gem
「Ruby」という名前の/ usr/binに symlink を作成し、インストールされている最新のRubyを指すようにします。
ln -s /usr/bin/Ruby /to/the/installed/Ruby/binary
のようなものを使用できます
お役に立てれば。
Rubyが次の方法でインストールされた場合:
./configure --prefix=/usr/local
make
Sudo make install
次の方法でアンインストールできます。
インストール済みRubyバージョン; 2.1.2を想定してください
wget http://cache.Ruby-lang.org/pub/Ruby/2.1/Ruby-2.1.2.tar.bz2
bunzip ...
tar xfv ...
cd Ruby-2.1.2
./configure --prefix=/usr/local
make
Sudo checkinstall
# will build deb or rpm package and try to install it
インストール後、パッケージを削除できるようになり、ディレクトリ/ファイル/などが削除されます。
Sudo rpm -e Ruby # or dpkg -P Ruby (for Debian-like systems)
いくつかのアーティファクトが残っている可能性があります。
Removing Ruby ...
warning: while removing Ruby, directory '/usr/local/lib/Ruby/gems/2.1.0/gems' not empty so not removed.
...
それらを手動で削除します。
Sudo make uninstall
は、公式ダウンロードページのRuby 2.4 tarを使用して、私のためにトリックを行いました。
このようにします:
Sudo apt purge Ruby