6

Mi sono rotto la testa per più di 2 giorni e non riesco a capire dove sia il problema. Questo è principalmente un problema legato al mio setup, ma se qualcuno può aiutarmi a trovare una soluzione a questo problema, allora sarò il suo schiavo per l'eternità ..!Pignone rails Errore nella compilazione del CSS assest - CHOWN problema

Sto eseguendo Snow leopard (host) e fusione di VMware su server Ubuntu Lucid (sistema operativo guest). In qualche modo dopo un sacco di head-bang sono riuscito a far condividere il mio spazio di lavoro da Mac a Ubuntu. Quindi, in sostanza, sono stato in grado di isolare il mio ambiente di sviluppo su una VM, il che rende facile per l'intero team di sviluppo essere sullo stesso ambiente indipendentemente dal sistema operativo/impostazioni host, ecc. Mentre, certamente ha reso tutto più semplice , Sono bloccato con un problema specifico che si verifica a causa di ruote dentate (credo). Ogni volta che faccio le modifiche ai miei fogli di stile e ricaricare, ottengo questo errore:

Error compiling CSS asset 

Errno::EPERM: Operation not permitted - /mnt/hgfs/banjarey/tmp/cache/assets/DCF/780/sprockets%2F5f78b3457def1d02bd3fb75d4e0cfb63 

/home/coderboy/.rvm/gems/ruby-1.9.2-p290/gems/activesupport-3.1.0/lib/active_support/core_ext/file/atomic.rb:38:in `chown' 

La cosa strage è però che se ricarico la pagina di due o tre volte, il css compila e tutto funziona bene.

È un vero peccato ricaricare la pagina due volte o tre volte per ogni singolo cambio di CS che faccio. Ho giocato un po 'con le appartenenze e le autorizzazioni, ma sono stato un dilettante che non mi sono cimentato abbastanza in profondità.

Qualche idea?

+0

Sono quasi sicuro che si tratta di un problema con i permessi del filesystem. – thomasfedb

+0

@thomasfedb yup Sono abbastanza sicuro che sia lo stesso ... anche se non riesco davvero a capire perché succede due volte/tre volte ogni volta, e poi semplicemente funziona! – hashpipe

risposta

2

Ho lo stesso problema. la mia soluzione è quella di modificare la concessione file dopo le attività di precompilazione:

#chown apache.root yourapp -R 
#chmod 755 yourapp -R 
2

Un po 'in ritardo con questa risposta, ma ogni volta che l'applicazione è chmod Deploy non sembra essere una buona soluzione. Penso che il problema sia l'istanza di apache e l'istanza del passeggero sia in esecuzione come utenti diversi. Quindi la soluzione è quello di controllare quale utente il server apache è in esecuzione come e impostare il PassengerDefaultUser,

Ad esempio:

PassengerDefaultUser www-data

questo ha funzionato per me. Dato che Passenger stava rendendo i file leggibili solo da nessuno, strano è che se si aggiorna un paio di volte in qualche modo come funziona, ma assicurandosi che siano lo stesso utente si ferma questo errore.

+0

Come hai cambiato questo? – AustinT

1

Ho riscontrato lo stesso errore, ma in fase di sviluppo! risolto dopo le attività pulite e ricompilare:

rake assets:clean && rake assets:precompile 
0

assicurarsi che il file system sottostante supporta l'operazione richiesta. I seguenti comandi lo hanno risolto per me.

mv public/assets /tmp 
ln -s /tmp/assets public/assets 
Problemi correlati