warning: Insecure world writable dir when I run a ruby or gem command
Not sure why I'm getting this, but I just installed RVM, the new Ruby 1.9, and reinstalled a bunch of gems, and I get this
/Users/johnsmith/.rv开发者_如何转开发m/rubies/ruby-1.9.1-p378/bin/gem:4: warning: Insecure world writable dir /opt/local/bin in PATH, mode 040777
Everything still runs otherwise, but I was wondering if there was a way I could get rid of it.
Just chmod go-w /opt/local/bin
at a shell prompt (depending on permissions you may need to sudo
to do that).
To clarify, whatever path returns after it says insecure world writeable, is what you use.
So instead of: chmod go-w /opt/local/bin you would replace /opt/local/bin with whatever your path is.
Find your gem path so we can edit the bundler gem. Execute the following in your shell:
$ ruby -r rubygems -e "p Gem.path"
Navigate to your gem path and cd into the version of bundler currently being used. Now navigate to lib -> bundler and open runtime.rb in your favorite text editor. Add “$VERBOSE = nil” to line 2.
require "digest/sha1"
$VERBOSE = nil
module Bundler
class Runtime < Environment
include SharedHelpers
def setup(*groups)
# Has to happen first
clean_load_path
...
In some cases (like mine), the stack goes deeper than opt/local/bin
. In that case, use
sudo chmod go-w opt/local/*/bin usr/local/*/bin opt/local/bin usr/local/bin
In any case, the error prompts where the insecure world is.
If your environment does not allow you to fix this error properly (i.e. ruby lives on a network share or some such), see this answer for a way to suppress the error.
精彩评论