2013-07-08 15 views
26

Ho creato un "modello" di modello Rails qualche tempo fa e ora sto cercando di eseguire il server. Dopo un bundle install ottengo:Gemfile.lock errore di scrittura, permessi?

Si è verificato un errore durante il tentativo di scrittura su Gemfile.lock. E 'probabile che è necessario per consentire i permessi di scrittura per il file nel percorso: /home/thiago/model/Gemfile.lock

provato rails s per vedere cosa succede e:

 
/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/[email protected]/gems/rubygems-bundler-1.1.1/lib/rubygems-bundler/noexec.rb:79:in `setup' 
    from /home/thiago/.rvm/gems/[email protected]/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 `' 

Posso impostare le autorizzazioni per la Gemfile.lock così ho può raggruppare ed eseguire il server?

 
$ 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 

File modello creati in modo errato?

+0

Bene, quali sono le autorizzazioni correnti per il file in questione? –

+1

Sembra che tu abbia creato l'app come root. chown tutti i file per te e dovresti essere ok –

risposta

57

La directory principale dell'app (le cui autorizzazioni governano la creazione del file) e i file sono tutti di proprietà dell'utente root (probabilmente perché lo hai fatto sudo rails new -non utilizzare sudo per quello). È possibile modificare le autorizzazioni facendo:

sudo chown -R $(whoami):$(whoami) myappfolder 

Dove "myappfolder" è la directory principale dell'applicazione Rails.

A proposito, un buon consiglio per quanto riguarda sudo è di provare sempre il comando senza prima, quindi, se c'è un errore di autorizzazioni quando viene eseguito, potrebbe essere necessario sudo. Non utilizzare l'impostazione predefinita sudo.

Problemi correlati