Текстовый файл занят @ unlink_internal
У меня проблема с refile и vagrant с использованием синхронизированных папок. Проблема в том, что всякий раз, когда я пытаюсь сохранить файл, возникает следующая ошибка:
Errno:: ETXTBSY (текстовый файл занят @ unlink_internal - /vagrant/vidya/tmp/uploads/ca che/2dcd0c3fd391985ffe88ea30d826890c817fe64756f5fb6c92408368caa0):
Вот полная трассировка стека http://pastebin.com/TaUn9eJW
Это, однако, работает в бродячем госте, если оно не находится в синхронизированных папках. Я использовал carrierwave, чтобы проверить, не сработает ли он, однако это не сработало, и carrierwave отлично работает с синхронизированными папками.
Есть ли что-нибудь, что refile и / или rails делает, что этот файл занят?
1 ответ
Я обнаружил, что изменение директории, в которой Refile кэширует и хранит, устраняет проблему. Он должен быть вне синхронизированных папок, в противном случае вы все равно получите сообщение об ошибке. При поиске в Google, похоже, это проблема 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)