代码之家  ›  专栏  ›  技术社区  ›  DEfusion

回形针给出samba安装的权限被拒绝的错误

  •  2
  • DEfusion  · 技术社区  · 15 年前

    在我的开发环境中,代码库是用samba挂载在一个ubuntu服务器VM上的,它被挂载为root,我以root身份运行mongrel。

    我得到以下错误:

    Errno::EACCES (Permission denied - /foo/some/file/path/file-name-style.jpg):
      /usr/lib/ruby/1.8/fileutils.rb:1272:in `chown'
      /usr/lib/ruby/1.8/fileutils.rb:1272:in `copy_metadata'
      /usr/lib/ruby/1.8/fileutils.rb:452:in `copy_entry'
      /usr/lib/ruby/1.8/fileutils.rb:1324:in `traverse'
      /usr/lib/ruby/1.8/fileutils.rb:448:in `copy_entry'
      /usr/lib/ruby/1.8/fileutils.rb:507:in `mv'
      /usr/lib/ruby/1.8/fileutils.rb:1395:in `fu_each_src_dest'
      /usr/lib/ruby/1.8/fileutils.rb:1411:in `fu_each_src_dest0'
      /usr/lib/ruby/1.8/fileutils.rb:1393:in `fu_each_src_dest'
      /usr/lib/ruby/1.8/fileutils.rb:494:in `mv'
      vendor/gems/thoughtbot-paperclip-2.3.0/lib/paperclip/storage.rb:43:in `flush_writes'
      vendor/gems/thoughtbot-paperclip-2.3.0/lib/paperclip/storage.rb:39:in `each'
      vendor/gems/thoughtbot-paperclip-2.3.0/lib/paperclip/storage.rb:39:in `flush_writes'
      vendor/gems/thoughtbot-paperclip-2.3.0/lib/paperclip/attachment.rb:142:in `save'
      vendor/gems/thoughtbot-paperclip-2.3.0/lib/paperclip.rb:331:in `send'
      vendor/gems/thoughtbot-paperclip-2.3.0/lib/paperclip.rb:331:in `save_attached_files'
      vendor/gems/thoughtbot-paperclip-2.3.0/lib/paperclip.rb:324:in `each_attachment'
      vendor/gems/thoughtbot-paperclip-2.3.0/lib/paperclip.rb:323:in `each'
      vendor/gems/thoughtbot-paperclip-2.3.0/lib/paperclip.rb:323:in `each_attachment'
      vendor/gems/thoughtbot-paperclip-2.3.0/lib/paperclip.rb:330:in `save_attached_files'
    

    不过,如果我从挂载代码的文件夹结构中删除/foo/并将其作为指向Ubuntu虚拟机中某个地方的符号链接,那么它就可以正常工作了。

    2 回复  |  直到 15 年前
        1
  •  0
  •   adamaig    15 年前

    因为错误似乎发生在chown调用中,所以我猜测文件被chown'dto/from的用户在mount上没有写权限。可能是虚拟机上的用户在另一个系统上不为人所知,所以当chown发生时,它会被释放。

        2
  •  0
  •   Jared    11 年前

    rescue Errno::EPERM
    

    收件人:

    rescue Errno::EPERM, Errno::EACCES
    

    或者更彻底:

    rescue