run - install ruby gems from gemfile
Gemfile.lock error de escritura, permisos? (3)
Creé un "modelo" de Rails hace un tiempo y ahora estoy intentando ejecutar el servidor. Después de una bundle install
obtengo:
Se produjo un error al intentar escribir en Gemfile.lock. Es probable que necesite permitir permisos de escritura para el archivo en la ruta:
/home/thiago/model/Gemfile.lock
Probé los rails s
para ver qué pasa y:
/home/thiago/.rvm/gems/ruby-1.9.3-p429/gems/bundler-1.3.5/lib/bundler/definition.rb:235:in `rescue in lock'': There was an error while trying to write to Gemfile.lock. It is likely that (Bundler::InstallError) you need to allow write permissions for the file at path: /home/thiago/model/Gemfile.lock from /home/thiago/.rvm/gems/ruby-1.9.3-p429/gems/bundler-1.3.5/lib/bundler/definition.rb:220:in `lock'' from /home/thiago/.rvm/gems/ruby-1.9.3-p429/gems/bundler-1.3.5/lib/bundler/environment.rb:34:in `lock'' from /home/thiago/.rvm/gems/ruby-1.9.3-p429/gems/bundler-1.3.5/lib/bundler/runtime.rb:43:in `setup'' from /home/thiago/.rvm/gems/ruby-1.9.3-p429/gems/bundler-1.3.5/lib/bundler.rb:120:in `setup'' from /home/thiago/.rvm/gems/ruby-1.9.3-p429@global/gems/rubygems-bundler-1.1.1/lib/rubygems-bundler/noexec.rb:79:in `setup'' from /home/thiago/.rvm/gems/ruby-1.9.3-p429@global/gems/rubygems-bundler-1.1.1/lib/rubygems-bundler/noexec.rb:91:in `'' from /home/thiago/.rvm/rubies/ruby-1.9.3-p429/lib/ruby/site_ruby/1.9.1/rubygems/core_ext/kernel_require.rb:110:in `require'' from /home/thiago/.rvm/rubies/ruby-1.9.3-p429/lib/ruby/site_ruby/1.9.1/rubygems/core_ext/kernel_require.rb:110:in `rescue in require'' from /home/thiago/.rvm/rubies/ruby-1.9.3-p429/lib/ruby/site_ruby/1.9.1/rubygems/core_ext/kernel_require.rb:35:in `require'' from /home/thiago/.rvm/gems/ruby-1.9.3-p429/bin/ruby_noexec_wrapper:9:in `''
¿Puedo establecer los permisos para el archivo Gemfile.lock para poder agrupar y ejecutar el servidor?
$ ls -a -l total 80 drwxr-xr-x. 13 root root 4096 May 19 14:08 . drwx------. 41 thiago thiago 4096 Jul 7 23:51 .. drwxr-xr-x. 8 root root 4096 May 19 14:08 app drwxr-xr-x. 5 root root 4096 May 19 14:08 config -rw-r--r--. 1 root root 155 May 19 14:08 config.ru drwxr-xr-x. 2 root root 4096 May 19 14:08 db drwxr-xr-x. 2 root root 4096 May 19 14:08 doc -rw-r--r--. 1 root root 765 May 19 14:08 Gemfile -rw-r--r--. 1 root root 430 May 19 14:08 .gitignore drwxr-xr-x. 4 root root 4096 May 19 14:08 lib drwxr-xr-x. 2 root root 4096 May 19 14:08 log drwxr-xr-x. 2 root root 4096 May 19 14:08 public -rw-r--r--. 1 root root 270 May 19 14:08 Rakefile -rw-r--r--. 1 root root 9208 May 19 14:08 README.rdoc drwxr-xr-x. 2 root root 4096 May 19 14:08 script drwxr-xr-x. 7 root root 4096 May 19 14:08 test drwxr-xr-x. 3 root root 4096 May 19 14:08 tmp drwxr-xr-x. 4 root root 4096 May 19 14:08 vendor
Archivos de modelo creados incorrectamente?
A veces la respuesta anterior:
sudo chown -R $(whoami):$(whoami) myappfolder
te dará el error:
chown: ifeegoo: illegal group name
También puedes probar este tipo de comando:
sudo chown -R ifeegoo: /Users/ifeegoo/workspace/rails/Test
El directorio raíz de la aplicación (cuyos permisos rigen la creación de archivos) y los archivos son propiedad de root en lugar de de su usuario (posiblemente porque sudo rails new
arruinado de sudo rails new
no use sudo
para eso). Puedes cambiar los permisos haciendo:
sudo chown -R $(whoami):$(whoami) myappfolder
Donde "myappfolder" es el directorio raíz de la aplicación Rails.
Por cierto, un buen consejo con respecto a sudo
es probar siempre el comando sin él primero, luego, si hay un error de permisos cuando se ejecuta, es posible que necesite sudo
. No usar de forma predeterminada sudo
.
Tuve el mismo problema, así es como arreglé el mío.
Si está utilizando ZSH entonces goto
perfil -> comando
y marque "Ejecutar comando como shell de inicio de sesión" y cierre el terminal. Encienda su terminal e inicie el comando de bundle install
.