Intenté esto pero no funcionó y parecía ser para osx. Tengo una instalación nueva de Ubuntu 10.10 con rvm, rails 3 y ruby 1.9.2. Tengo una aplicación de rieles nueva, pero el uso de gemas o rieles da como resultado las siguientes advertencias (con retraso).
$ rieles -v
/home/chance/.rvm/gems/ruby-1.9.2-p180@global/gems/railties-3.0.5/lib/rails/script_rails_loader.rb:11: warning: Insecure world writable dir /home/chance in PATH, mode 040777
/home/chance/.rvm/gems/ruby-1.9.2-p180@global/gems/bundler-1.0.10/lib/bundler/runtime.rb:136: warning: Insecure world writable dir /home/chance in PATH, mode 040777
Rails 3.0.5
$ gem -v
/home/chance/.rvm/rubies/ruby-1.9.2-p180/bin/gem:4: warning: Insecure world writable dir /home/chance in PATH, mode 040777
1.6.2
En caso de que importe, aquí está mi Gemfile:
source 'http://rubygems.org'
gem 'rails'
# Bundle edge Rails instead:
# gem 'rails', :git => 'git://github.com/rails/rails.git'
gem 'sqlite3'
gem 'sqlite3-ruby', :require => 'sqlite3'
gem "haml"
gem "formtastic"
gem "will_paginate"
gem "devise"
gem "delayed_job"
gem "whenever"
gem "memcache-client"
gem "capistrano"
group :testing do
gem "rspec"
gem "rspec-rails"
gem "autotest-standalone"
gem "autotest-rails"
gem "autotest-growl"
gem "mocha"
gem "shoulda"
gem "factory_girl_rails"
end
group :development do
gem "cheat"
gem "bullet"
gem "ruby-growl"
end
sudo chmod go-w /usr/local/bin
:? Si es así, intente en suchmod go-w /home/chance
lugar.Respuestas:
Si probó
sudo chmod go-w /usr/local/bin
con la otra respuesta, intente:en lugar.
Lo que parece haber sucedido es que de alguna manera su directorio de inicio (
/home/chance
) se ha agregado a su$PATH
(la lista de directorios que busca el sistema operativo cuando intenta encontrar un ejecutable para iniciar) y también se han cambiado sus permisos para que cualquiera pueda escribir en él. Esto es un problema potencial de seguridad, ya que otro usuario podría poner un ejecutable en este directorio que podría iniciar accidentalmente. Ruby se da cuenta de esto y emite la advertencia.Este comando cambia los permisos del directorio para que ya no sea de escritura mundial.
En Unix, los permisos de archivo se especifican para tres categorías, el propietario del archivo (usuario), el grupo del archivo (grupo) y todos los demás (otros). (Consulte Google para obtener más información sobre los permisos de archivos Unix).
Entonces, desglosando el comando anterior:
chmod
- cambiar el 'modo' del archivo (es decir, sus permisos)go
- para el grupo (g) y otros (o)-w
- (menos w) eliminar el permiso de escritura/home/chance
- el archivo (o directorio) en cuestiónEn la otra respuesta, el directorio que estaba causando el problema era
/usr/local/bin
, que es propiedad de root, por lo quesudo
se requiere cambiar los permisos en él./home/chance
es su directorio de inicio que es propiedad delchance
usuario que puede cambiar los permisos en él, no essudo
necesario.fuente
Lubuntu 16.04
tener la advertencia:Insecure world writable dir /tmp/. in PATH, mode 041777
también estaba causando un bucle infinito en la advertencia. Luego ejecuté elsudo chmod go-w /tmp
comando y resolvió el problema.Utiliza chmod go-w para cualquier ruta que le dé la terminal.
Entonces, si dice / usr / local como ruta en el mensaje de error:
warning: Insecure world writable dir /usr/local in PATH, mode 040777
Usted escribe
fuente
Tuve que usar -R para arreglar el mío:
fuente
(Si está en una Mac) Pruebe la opción "Reparar permisos de disco" de la utilidad de disco
Probablemente un par de líneas en el registro de detalles dirán:
fuente
Estoy en una Mac, por lo que / home / username no funcionó para mí. Sin embargo, cuando intenté cambiar los permisos de / User / username , el error persistió.
Lo que hizo que funcionara fue
chmod go-w /User/username/.rvm
fuente
Si su entorno no le permite corregir este error correctamente (es decir, ruby vive en un recurso compartido de red o algo así), consulte esta respuesta para ver una forma de eliminar el error .
fuente