2015-09-03 2 views
3

У меня проблема с refile и бродягой, использующей синхронизированные папки. Проблема в том, что всякий раз, когда я пытаюсь сохранить файл происходит следующее сообщение об ошибке:Текстовый файл busy @ unlink_internal

Errno :: ETXTBSY (Текстовый файл занят @ unlink_internal -/бродяга/видйа/TMP/загрузки/ча че/2dcd0c3fd391985ffe88ea30d826890c817fe64756f5fb6c92408368caa0):

Вот полная трассировка стека http://pastebin.com/TaUn9eJW

Это, однако, работает в гостевом государстве, если оно не находится в синхронизированных папках. Я использовал несущую волну, чтобы проверить, не сработает ли она, но это не так, и carrierwave отлично работает с синхронизированными папками.

Есть ли что-нибудь, что рефилирует и рельсы делает, что этот файл занят?

ответ

1

Я обнаружил, что изменение директории, в которой Reache кэширует и сохраняет исправления, устраняет проблему. Он должен находиться за пределами синхронизированных папок, иначе вы все равно получите ошибку. Из googling кажется, что это проблема Windows как хозяин.

Если кто-то работает в этом и нуждается быстро исправить, добавьте это в ваш файл application.rb

Refile.store ||= Refile::Backend::FileSystem.new("/tmp/uploads/store".to_s) 
Refile.cache ||= Refile::Backend::FileSystem.new("/tmp/uploads/cache".to_s) 
Смежные вопросы